You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2017/02/13 18:44:05 UTC

isis git commit: ISIS-1583: already implemented, so this commit is just some tidy up ofcomments and trivial refactorig.

Repository: isis
Updated Branches:
  refs/heads/maint-1.14.0 a00f0c082 -> 3821d529f


ISIS-1583: already implemented, so this commit is just some tidy up ofcomments and trivial refactorig.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/3821d529
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/3821d529
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/3821d529

Branch: refs/heads/maint-1.14.0
Commit: 3821d529fafd8def7159a2de5cb063e9c8dca085
Parents: a00f0c0
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon Feb 13 18:43:56 2017 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon Feb 13 18:43:56 2017 +0000

----------------------------------------------------------------------
 .../apache/isis/applib/annotation/DomainObject.java  |  4 ++--
 .../DomainObjectAnnotationFacetFactory.java          | 15 +++++++++------
 ...ObjectSpecIdFacetDerivedFromClassNameFactory.java |  3 +--
 3 files changed, 12 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/3821d529/core/applib/src/main/java/org/apache/isis/applib/annotation/DomainObject.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/annotation/DomainObject.java b/core/applib/src/main/java/org/apache/isis/applib/annotation/DomainObject.java
index cf0cd58..e653d78 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/annotation/DomainObject.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/annotation/DomainObject.java
@@ -91,11 +91,11 @@ public @interface DomainObject {
 
 
     /**
-     * The action to use in order to perform the auto-complete search
+     * The method (despite its name, not necessarily an action) to use in order to perform the auto-complete search
      * (defaults to &quot;autoComplete&quot;).
      *
      * <p>
-     * The action is required to accept a single string parameter, and must return
+     * The method is required to accept a single string parameter, and must return a list of the domain type.
      */
     String autoCompleteAction() default "autoComplete";
 

http://git-wip-us.apache.org/repos/asf/isis/blob/3821d529/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java
index 588e9eb..2eb5b22 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/DomainObjectAnnotationFacetFactory.java
@@ -239,7 +239,7 @@ public class DomainObjectAnnotationFacetFactory extends FacetFactoryAbstract
         }
 
         final Class<?> repositoryClass = domainObject.autoCompleteRepository();
-        if(repositoryClass == null || repositoryClass == Object.class) {
+        if(repositoryClass == Object.class) {
             return null;
         }
         final String actionName = domainObject.autoCompleteAction();
@@ -284,7 +284,7 @@ public class DomainObjectAnnotationFacetFactory extends FacetFactoryAbstract
             }
         }
         autoCompleteInvalid.addFailure(
-                "%s annotation on %s specifies action '%s' that does not exist in repository '%s'",
+                "%s annotation on %s specifies method '%s' that does not exist in repository '%s'",
                 annotationName, cls.getName(), methodName, repositoryClass.getName());
         return null;
     }
@@ -521,8 +521,13 @@ public class DomainObjectAnnotationFacetFactory extends FacetFactoryAbstract
             @Override
             public boolean visit(final ObjectSpecification thisSpec, final ValidationFailures validationFailures) {
 
+                validate(thisSpec, validationFailures);
+                return true;
+            }
+
+            private void validate(final ObjectSpecification thisSpec, final ValidationFailures validationFailures) {
                 if(!thisSpec.isPersistenceCapableOrViewModel()) {
-                    return true;
+                    return;
                 }
 
                 final Map<ObjectSpecId, ObjectSpecification> specById = Maps.newHashMap();
@@ -546,14 +551,12 @@ public class DomainObjectAnnotationFacetFactory extends FacetFactoryAbstract
                         continue;
                     }
                     validationFailures.add(
-                            "%s: cannot have two entities with same object type (@DomainObject(objectType=...) or @ObjectType); %s " +
+                            "%s: cannot have two entities with same object type (@Discriminator, @DomainObject(objectType=...), @ObjectType or @PersistenceCapable(schema=...)); %s " +
                             "has same value (%s).",
                             existingSpec.getFullIdentifier(),
                             otherSpec.getFullIdentifier(),
                             objectSpecId);
                 }
-
-                return true;
             }
 
         }));

http://git-wip-us.apache.org/repos/asf/isis/blob/3821d529/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java
index 04b6890..3d16efa 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/objectspecid/classname/ObjectSpecIdFacetDerivedFromClassNameFactory.java
@@ -89,8 +89,7 @@ public class ObjectSpecIdFacetDerivedFromClassNameFactory extends FacetFactoryAb
                         ObjectSpecIdFacet objectSpecIdFacet = objectSpec.getFacet(ObjectSpecIdFacet.class);
                         if(objectSpecIdFacet instanceof ObjectSpecIdFacetDerivedFromClassName) {
                             validationFailures.add(
-                                    "The object type must be specified explicitly, none was found for class: '%s'.  "
-                                    + "Defaulting the object type from the package/class/package name can lead to data migration issues for apps deployed to production (if the class is subsequently refactored).  Use @Discriminator, @DomainObject(objectType=...) or @PersistenceCapable(schema=...) to specify explicitly.",
+                                    "%s: the object type must be specified explicitly.  Defaulting the object type from the package/class/package name can lead to data migration issues for apps deployed to production (if the class is subsequently refactored).  Use @Discriminator, @DomainObject(objectType=...) or @PersistenceCapable(schema=...) to specify explicitly.",
                                     objectSpec.getFullIdentifier());
                         }
                     }