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/14 21:47:04 UTC

[1/4] isis git commit: ISIS-1587: excludes JAXB DTO view models from objectType checking.

Repository: isis
Updated Branches:
  refs/heads/master 98f9fa9b2 -> 9a74a71f5


ISIS-1587: excludes JAXB DTO view models from objectType checking.

These are often code-generated from XSD schemas.


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

Branch: refs/heads/master
Commit: aec90dfe89a2fc4a4f03218da01714b390e4aac5
Parents: 794dce5
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Tue Feb 14 17:21:35 2017 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Tue Feb 14 17:21:35 2017 +0000

----------------------------------------------------------------------
 .../ObjectSpecIdFacetDerivedFromClassNameFactory.java         | 7 +++++++
 1 file changed, 7 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/aec90dfe/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 32731ef..943cd13 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
@@ -30,6 +30,8 @@ import org.apache.isis.core.metamodel.facetapi.MetaModelValidatorRefiner;
 import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
 import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet;
 import org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet;
+import org.apache.isis.core.metamodel.facets.object.recreatable.RecreatableObjectFacetForXmlRootElementAnnotation;
+import org.apache.isis.core.metamodel.facets.object.viewmodel.ViewModelFacet;
 import org.apache.isis.core.metamodel.services.ServiceUtil;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.spec.feature.Contributed;
@@ -134,6 +136,11 @@ public class ObjectSpecIdFacetDerivedFromClassNameFactory extends FacetFactoryAb
                             return true;
                         }
                         if (objectSpec.isViewModel()) {
+                            ViewModelFacet viewModelFacet = objectSpec.getFacet(ViewModelFacet.class);
+                            if(viewModelFacet instanceof RecreatableObjectFacetForXmlRootElementAnnotation) {
+                                // JAXB DTOs are excluded
+                                return false;
+                            }
                             return true;
                         }
                         if (objectSpec.isService()) {


[4/4] isis git commit: Merge branch 'maint-1.14.0'

Posted by da...@apache.org.
Merge branch 'maint-1.14.0'


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

Branch: refs/heads/master
Commit: 9a74a71f5b6862e62d8f9b94de9ac4d2d7abf1fe
Parents: 98f9fa9 c9f99b4
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Tue Feb 14 21:46:48 2017 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Tue Feb 14 21:46:48 2017 +0000

----------------------------------------------------------------------
 ...tSpecIdFacetDerivedFromClassNameFactory.java | 70 ++++++++++++--------
 1 file changed, 43 insertions(+), 27 deletions(-)
----------------------------------------------------------------------



[3/4] isis git commit: ISIS-1587: makes the check to filter ObjectSpecifications (for 'explicitObjectTypes') public so can be used elsewhere.

Posted by da...@apache.org.
ISIS-1587: makes the check to filter ObjectSpecifications (for 'explicitObjectTypes') public so can be used elsewhere.


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

Branch: refs/heads/master
Commit: c9f99b4efd5ea28c7d7fc3d3873f43037cabf4f6
Parents: 97db698
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Tue Feb 14 21:46:28 2017 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Tue Feb 14 21:46:28 2017 +0000

----------------------------------------------------------------------
 ...tSpecIdFacetDerivedFromClassNameFactory.java | 79 ++++++++++----------
 1 file changed, 40 insertions(+), 39 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/c9f99b4e/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 7d38a38..1cdfabb 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
@@ -129,47 +129,48 @@ public class ObjectSpecIdFacetDerivedFromClassNameFactory extends FacetFactoryAb
                         return !check(objectSpec);
                     }
 
-                    private boolean check(final ObjectSpecification objectSpec) {
-                        if(objectSpec.isAbstract()) {
-                            return false;
-                        }
-                        if (objectSpec.isPersistenceCapable()) {
-                            return true;
-                        }
-                        if (objectSpec.isViewModel()) {
-                            final ViewModelFacet viewModelFacet = objectSpec.getFacet(ViewModelFacet.class);
-                            // don't check JAXB DTOs
-                            final XmlType xmlType = objectSpec.getCorrespondingClass().getAnnotation(XmlType.class);
-                            if(xmlType != null) {
-                                return false;
-                            }
-                            return true;
-                        }
-                        if(objectSpec.isMixin()) {
-                            return false;
-                        }
-                        if (objectSpec.isService()) {
-                            // don't check if domain service isn't a target in public API (UI/REST)
-                            final DomainServiceFacet domainServiceFacet = objectSpec.getFacet(DomainServiceFacet.class);
-                            if(domainServiceFacet != null) {
-                                if(domainServiceFacet.getNatureOfService() == NatureOfService.DOMAIN ||
-                                   domainServiceFacet.getNatureOfService() == NatureOfService.VIEW_CONTRIBUTIONS_ONLY) {
-                                    return false;
-                                }
-                            }
-
-                            // don't check if domain service has only programmatic methods
-                            final List<ObjectAction> objectActions = objectSpec.getObjectActions(Contributed.INCLUDED);
-                            if(objectActions.isEmpty()) {
-                                return false;
-                            }
-
-                            return true;
-                        }
-                        return false;
-                    }
+
                 });
         metaModelValidator.add(validator);
     }
 
+    public static boolean check(final ObjectSpecification objectSpec) {
+        if(objectSpec.isAbstract()) {
+            return false;
+        }
+        if (objectSpec.isPersistenceCapable()) {
+            return true;
+        }
+        if (objectSpec.isViewModel()) {
+            final ViewModelFacet viewModelFacet = objectSpec.getFacet(ViewModelFacet.class);
+            // don't check JAXB DTOs
+            final XmlType xmlType = objectSpec.getCorrespondingClass().getAnnotation(XmlType.class);
+            if(xmlType != null) {
+                return false;
+            }
+            return true;
+        }
+        if(objectSpec.isMixin()) {
+            return false;
+        }
+        if (objectSpec.isService()) {
+            // don't check if domain service isn't a target in public API (UI/REST)
+            final DomainServiceFacet domainServiceFacet = objectSpec.getFacet(DomainServiceFacet.class);
+            if(domainServiceFacet != null) {
+                if(domainServiceFacet.getNatureOfService() == NatureOfService.DOMAIN ||
+                        domainServiceFacet.getNatureOfService() == NatureOfService.VIEW_CONTRIBUTIONS_ONLY) {
+                    return false;
+                }
+            }
+
+            // don't check if domain service has only programmatic methods
+            final List<ObjectAction> objectActions = objectSpec.getObjectActions(Contributed.INCLUDED);
+            if(objectActions.isEmpty()) {
+                return false;
+            }
+
+            return true;
+        }
+        return false;
+    }
 }


[2/4] isis git commit: ISIS-1587: for 'explicitObjectTypes' exclude mixins and contributed services. Also JAXB DTO view models.

Posted by da...@apache.org.
ISIS-1587: for 'explicitObjectTypes' exclude mixins and contributed services.  Also JAXB DTO view models.


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

Branch: refs/heads/master
Commit: 97db6986121c385848df812e6326c7870f955198
Parents: aec90df
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Tue Feb 14 18:11:58 2017 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Tue Feb 14 18:11:58 2017 +0000

----------------------------------------------------------------------
 ...tSpecIdFacetDerivedFromClassNameFactory.java | 28 +++++++++++++-------
 1 file changed, 18 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/97db6986/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 943cd13..7d38a38 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
@@ -21,6 +21,8 @@ package org.apache.isis.core.metamodel.facets.object.objectspecid.classname;
 
 import java.util.List;
 
+import javax.xml.bind.annotation.XmlType;
+
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -30,7 +32,6 @@ import org.apache.isis.core.metamodel.facetapi.MetaModelValidatorRefiner;
 import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
 import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet;
 import org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet;
-import org.apache.isis.core.metamodel.facets.object.recreatable.RecreatableObjectFacetForXmlRootElementAnnotation;
 import org.apache.isis.core.metamodel.facets.object.viewmodel.ViewModelFacet;
 import org.apache.isis.core.metamodel.services.ServiceUtil;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
@@ -136,22 +137,29 @@ public class ObjectSpecIdFacetDerivedFromClassNameFactory extends FacetFactoryAb
                             return true;
                         }
                         if (objectSpec.isViewModel()) {
-                            ViewModelFacet viewModelFacet = objectSpec.getFacet(ViewModelFacet.class);
-                            if(viewModelFacet instanceof RecreatableObjectFacetForXmlRootElementAnnotation) {
-                                // JAXB DTOs are excluded
+                            final ViewModelFacet viewModelFacet = objectSpec.getFacet(ViewModelFacet.class);
+                            // don't check JAXB DTOs
+                            final XmlType xmlType = objectSpec.getCorrespondingClass().getAnnotation(XmlType.class);
+                            if(xmlType != null) {
                                 return false;
                             }
                             return true;
                         }
+                        if(objectSpec.isMixin()) {
+                            return false;
+                        }
                         if (objectSpec.isService()) {
-                            // don't care about domain services.
-                            DomainServiceFacet domainServiceFacet = objectSpec.getFacet(DomainServiceFacet.class);
-                            if(domainServiceFacet != null && domainServiceFacet.getNatureOfService() == NatureOfService.DOMAIN) {
-                                return false;
+                            // don't check if domain service isn't a target in public API (UI/REST)
+                            final DomainServiceFacet domainServiceFacet = objectSpec.getFacet(DomainServiceFacet.class);
+                            if(domainServiceFacet != null) {
+                                if(domainServiceFacet.getNatureOfService() == NatureOfService.DOMAIN ||
+                                   domainServiceFacet.getNatureOfService() == NatureOfService.VIEW_CONTRIBUTIONS_ONLY) {
+                                    return false;
+                                }
                             }
 
-                            // we don't care about services that have only programmatic methods
-                            List<ObjectAction> objectActions = objectSpec.getObjectActions(Contributed.INCLUDED);
+                            // don't check if domain service has only programmatic methods
+                            final List<ObjectAction> objectActions = objectSpec.getObjectActions(Contributed.INCLUDED);
                             if(objectActions.isEmpty()) {
                                 return false;
                             }