You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by rm...@apache.org on 2011/01/15 18:43:28 UTC

svn commit: r1059378 - in /incubator/isis/trunk/core: metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ metamodel/src/test/java/org/apache/isis/core/metamodel/testsp...

Author: rmatthews
Date: Sat Jan 15 17:43:27 2011
New Revision: 1059378

URL: http://svn.apache.org/viewvc?rev=1059378&view=rev
Log:
Object specs can now also provide help references (alongside the current name and description).

Modified:
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectSpecification.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java
    incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/testspec/TestProxySpecification.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/AbstractFacetFactoryTest.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/testsystem/TestSpecification.java

Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectSpecification.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectSpecification.java?rev=1059378&r1=1059377&r2=1059378&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectSpecification.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectSpecification.java Sat Jan 15 17:43:27 2011
@@ -33,6 +33,7 @@ import org.apache.isis.core.metamodel.co
 import org.apache.isis.core.metamodel.consent.InteractionInvocationMethod;
 import org.apache.isis.core.metamodel.consent.InteractionResult;
 import org.apache.isis.core.metamodel.facets.collections.modify.CollectionFacet;
+import org.apache.isis.core.metamodel.facets.help.HelpFacet;
 import org.apache.isis.core.metamodel.facets.hide.HiddenFacet;
 import org.apache.isis.core.metamodel.facets.naming.describedas.DescribedAsFacet;
 import org.apache.isis.core.metamodel.facets.naming.named.NamedFacet;
@@ -138,7 +139,16 @@ public interface ObjectSpecification ext
      */
     @Override
     String getDescription();
-
+    
+    /**
+     * Returns a help string or lookup reference, if any, of the specification.
+     * 
+     * <p>
+     * Corresponds to the {@link HelpFacet#value()) value} of {@link HelpFacet}; 
+     * is not necessarily immutable. 
+     */
+    String getHelp();
+    
     /**
      * Returns the title string for the specified object.
      * 

Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java?rev=1059378&r1=1059377&r2=1059378&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java Sat Jan 15 17:43:27 2011
@@ -46,6 +46,7 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet;
 import org.apache.isis.core.metamodel.facets.collections.modify.CollectionFacet;
+import org.apache.isis.core.metamodel.facets.help.HelpFacet;
 import org.apache.isis.core.metamodel.facets.hide.HiddenFacet;
 import org.apache.isis.core.metamodel.facets.naming.describedas.DescribedAsFacet;
 import org.apache.isis.core.metamodel.facets.naming.named.NamedFacet;
@@ -142,6 +143,7 @@ public abstract class ObjectSpecificatio
      * Expect to be populated using {@link #setDescribedAs(String)} but has default name as well.
      */
     private String describedAs = "(no description)";
+    private String help = null; /* help is typically a reference (eg a URL) and so should not default to a textual value if not set up */ 
 
     private Persistability persistability = Persistability.USER_PERSISTABLE;
 
@@ -317,6 +319,9 @@ public abstract class ObjectSpecificatio
 
         final DescribedAsFacet describedAsFacet = getFacet(DescribedAsFacet.class);
         describedAs = describedAsFacet.value();
+        
+        final HelpFacet helpFacet = getFacet(HelpFacet.class);
+        help = helpFacet == null ? null : helpFacet.value();
 
         Persistability persistability = determinePersistability();
         this.persistability = persistability;
@@ -437,6 +442,10 @@ public abstract class ObjectSpecificatio
     public String getDescription() {
         return describedAs == null ? "" : describedAs;
     }
+    
+    public String getHelp() {
+        return help;
+    }
 
     @Override
     public Persistability persistability() {

Modified: incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/testspec/TestProxySpecification.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/testspec/TestProxySpecification.java?rev=1059378&r1=1059377&r2=1059378&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/testspec/TestProxySpecification.java (original)
+++ incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/testspec/TestProxySpecification.java Sat Jan 15 17:43:27 2011
@@ -231,6 +231,10 @@ public class TestProxySpecification exte
     public String getDescription() {
         return getSingularName();
     }
+    
+    public String getHelp() {
+        return null;
+    }
 
     @Override
     public String getTitle(final ObjectAdapter adapter) {

Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/AbstractFacetFactoryTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/AbstractFacetFactoryTest.java?rev=1059378&r1=1059377&r2=1059378&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/AbstractFacetFactoryTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/AbstractFacetFactoryTest.java Sat Jan 15 17:43:27 2011
@@ -26,6 +26,8 @@ import java.util.List;
 import junit.framework.TestCase;
 
 import org.apache.log4j.BasicConfigurator;
+import org.apache.log4j.Level;
+import org.apache.log4j.Logger;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -40,6 +42,7 @@ public abstract class AbstractFacetFacto
 
     @Override
     protected void setUp() throws Exception {
+        Logger.getRootLogger().setLevel(Level.OFF);
         super.setUp();
         BasicConfigurator.configure();
         reflector = new ProgrammableReflector();

Modified: incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/testsystem/TestSpecification.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/testsystem/TestSpecification.java?rev=1059378&r1=1059377&r2=1059378&view=diff
==============================================================================
--- incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/testsystem/TestSpecification.java (original)
+++ incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/testsystem/TestSpecification.java Sat Jan 15 17:43:27 2011
@@ -211,6 +211,10 @@ public class TestSpecification extends F
     public String getDescription() {
         return getSingularName();
     }
+    
+    public String getHelp() {
+        return null;
+    }
 
     @Override
     public String getTitle(final ObjectAdapter adapter) {