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 2011/01/17 10:27:01 UTC
svn commit: r1059826 [2/8] - in /incubator/isis/trunk:
alternatives/objectstore/sql/persistor/src/main/java/org/apache/isis/alternatives/objectstore/sql/auto/
alternatives/progmodel/groovy/metamodel/src/main/java/org/apache/isis/progmodel/groovy/metamo...
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethod.java (from r1056813, incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetedmethod/FacetedMethod.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethod.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethod.java&p1=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetedmethod/FacetedMethod.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetedmethod/FacetedMethod.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethod.java Mon Jan 17 09:26:54 2011
@@ -18,7 +18,7 @@
*/
-package org.apache.isis.core.metamodel.facetedmethod;
+package org.apache.isis.core.metamodel.facets;
import java.lang.reflect.Method;
import java.util.Collections;
@@ -32,7 +32,6 @@ import org.apache.isis.core.commons.debu
import org.apache.isis.core.commons.lang.StringUtils;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facetapi.IdentifiedHolder;
-import org.apache.isis.core.metamodel.facets.TypedHolderDefault;
/**
@@ -66,7 +65,7 @@ public class FacetedMethod extends Typed
return new FacetedMethod(FeatureType.COLLECTION, declaringType, method, null, emptyParameterList());
}
- public static FacetedMethod createActionPeer(Class<?> declaringType, Method method) {
+ public static FacetedMethod createActionFacetedMethod(Class<?> declaringType, Method method) {
return new FacetedMethod(FeatureType.ACTION, declaringType, method, method.getReturnType(), getParameters(method));
}
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethodParameter.java (from r1056813, incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetedmethod/FacetedMethodParameter.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethodParameter.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethodParameter.java&p1=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetedmethod/FacetedMethodParameter.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetedmethod/FacetedMethodParameter.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethodParameter.java Mon Jan 17 09:26:54 2011
@@ -14,12 +14,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.isis.core.metamodel.facetedmethod;
+package org.apache.isis.core.metamodel.facets;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facets.TypedHolderDefault;
-public final class FacetedMethodParameter extends TypedHolderDefault {
+public class FacetedMethodParameter extends TypedHolderDefault {
public FacetedMethodParameter(Class<?> type) {
super(FeatureType.ACTION_PARAMETER, type);
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodFilteringFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodFilteringFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodFilteringFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodFilteringFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -22,7 +22,6 @@ package org.apache.isis.core.metamodel.f
import java.lang.reflect.Method;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
/**
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodPrefixBasedFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodPrefixBasedFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodPrefixBasedFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodPrefixBasedFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -22,7 +22,6 @@ package org.apache.isis.core.metamodel.f
import java.util.List;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
import org.apache.isis.core.metamodel.specloader.facetprocessor.FacetProcessor;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodRemoverConstants.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodRemoverConstants.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodRemoverConstants.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/MethodRemoverConstants.java Mon Jan 17 09:26:54 2011
@@ -25,7 +25,7 @@ import java.util.ArrayList;
import java.util.List;
import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
+import org.apache.isis.core.metamodel.methodutils.MethodScope;
public class MethodRemoverConstants {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -24,7 +24,6 @@ package org.apache.isis.core.metamodel.f
import java.lang.reflect.Method;
import java.util.List;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
import org.apache.isis.core.metamodel.facetapi.MethodRemover;
import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/When.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/When.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/When.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/When.java Mon Jan 17 09:26:54 2011
@@ -20,6 +20,10 @@
package org.apache.isis.core.metamodel.facets;
+import org.apache.isis.applib.marker.AlwaysImmutable;
+import org.apache.isis.applib.marker.ImmutableOncePersisted;
+import org.apache.isis.applib.marker.ImmutableUntilPersisted;
+import org.apache.isis.applib.marker.NeverImmutable;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
@@ -44,6 +48,19 @@ public final class When extends Enumerat
this == When.UNTIL_PERSISTED && isTransient;
}
+ public static When forCorrespondingMarkerSubType(final Class<?> cls) {
+ if (AlwaysImmutable.class.isAssignableFrom(cls)) {
+ return ALWAYS;
+ } else if (ImmutableOncePersisted.class.isAssignableFrom(cls)) {
+ return ONCE_PERSISTED;
+ } else if (ImmutableUntilPersisted.class.isAssignableFrom(cls)) {
+ return UNTIL_PERSISTED;
+ } else if (NeverImmutable.class.isAssignableFrom(cls)) {
+ return NEVER;
+ }
+ return null;
+ }
+
public static org.apache.isis.core.metamodel.facets.When decode(org.apache.isis.applib.annotation.When when) {
if (when == org.apache.isis.applib.annotation.When.ALWAYS) {
return org.apache.isis.core.metamodel.facets.When.ALWAYS;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/executed/ExecutedFacet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/executed/ExecutedFacet.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/executed/ExecutedFacet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/executed/ExecutedFacet.java Mon Jan 17 09:26:54 2011
@@ -19,6 +19,9 @@
package org.apache.isis.core.metamodel.facets.actions.executed;
+import java.lang.reflect.Method;
+
+import org.apache.isis.core.commons.lang.NameUtils;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facets.EnumerationAbstract;
import org.apache.isis.core.metamodel.spec.Target;
@@ -38,10 +41,23 @@ public interface ExecutedFacet extends F
public static Where LOCALLY = new Where(1, "LOCAL", "Locally");
public static Where REMOTELY = new Where(2, "REMOTE", "Remotely");
+ public static final String REMOTE_PREFIX = "Remote";
+ public static final String LOCAL_PREFIX = "Local";
+
private Where(final int num, final String nameInCode, final String friendlyName) {
super(num, nameInCode, friendlyName);
}
+ public static Where lookup(final Method actionMethod) {
+ final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName());
+ if (capitalizedName.startsWith(LOCAL_PREFIX)) {
+ return LOCALLY;
+ } else if (capitalizedName.startsWith(REMOTE_PREFIX)) {
+ return REMOTELY;
+ }
+ return null;
+ }
+
}
public Where value();
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/invoke/ActionInvocationFacetAbstract.java (from r1056813, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetAbstract.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/invoke/ActionInvocationFacetAbstract.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/invoke/ActionInvocationFacetAbstract.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetAbstract.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/invoke/ActionInvocationFacetAbstract.java Mon Jan 17 09:26:54 2011
@@ -18,12 +18,11 @@
*/
-package org.apache.isis.core.progmodel.facets.actions.invoke;
+package org.apache.isis.core.metamodel.facets.actions.invoke;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.actions.invoke.ActionInvocationFacet;
/**
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionAddToFacetAbstract.java (from r1056813, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetAbstract.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionAddToFacetAbstract.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionAddToFacetAbstract.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetAbstract.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionAddToFacetAbstract.java Mon Jan 17 09:26:54 2011
@@ -18,12 +18,11 @@
*/
-package org.apache.isis.core.progmodel.facets.collections.modify;
+package org.apache.isis.core.metamodel.facets.collections.modify;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacet;
public abstract class CollectionAddToFacetAbstract extends FacetAbstract implements CollectionAddToFacet {
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionClearFacetAbstract.java (from r1056813, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionClearFacetAbstract.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionClearFacetAbstract.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionClearFacetAbstract.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionClearFacetAbstract.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionClearFacetAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionClearFacetAbstract.java Mon Jan 17 09:26:54 2011
@@ -18,12 +18,11 @@
*/
-package org.apache.isis.core.progmodel.facets.collections.modify;
+package org.apache.isis.core.metamodel.facets.collections.modify;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.collections.modify.CollectionClearFacet;
public abstract class CollectionClearFacetAbstract extends FacetAbstract implements CollectionClearFacet {
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionRemoveFromFacetAbstract.java (from r1056813, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetAbstract.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionRemoveFromFacetAbstract.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionRemoveFromFacetAbstract.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetAbstract.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionRemoveFromFacetAbstract.java Mon Jan 17 09:26:54 2011
@@ -18,12 +18,11 @@
*/
-package org.apache.isis.core.progmodel.facets.collections.modify;
+package org.apache.isis.core.metamodel.facets.collections.modify;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacet;
public abstract class CollectionRemoveFromFacetAbstract extends FacetAbstract implements CollectionRemoveFromFacet {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/facets/FacetsFacet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/facets/FacetsFacet.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/facets/FacetsFacet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/facets/FacetsFacet.java Mon Jan 17 09:26:54 2011
@@ -21,7 +21,7 @@
package org.apache.isis.core.metamodel.facets.facets;
import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
+import org.apache.isis.core.metamodel.facets.FacetFactory;
import org.apache.isis.core.metamodel.facets.MultipleValueFacet;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/isis/RemoveSetDomainObjectContainerMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/isis/RemoveSetDomainObjectContainerMethodFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/isis/RemoveSetDomainObjectContainerMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/isis/RemoveSetDomainObjectContainerMethodFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -21,11 +21,9 @@
package org.apache.isis.core.metamodel.facets.object.isis;
import org.apache.isis.applib.DomainObjectContainer;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
-import org.apache.isis.core.metamodel.spec.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.methodutils.MethodScope;
/**
@@ -38,10 +36,9 @@ public class RemoveSetDomainObjectContai
}
@Override
- public boolean process(final Class<?> type, final MethodRemover methodRemover, final FacetHolder holder) {
- methodRemover.removeMethod(MethodScope.OBJECT, "setContainer", void.class, new Class[] { DomainObjectContainer.class });
- methodRemover.removeMethod(MethodScope.OBJECT, "set_Container", void.class, new Class[] { DomainObjectContainer.class });
- return false;
+ public void process(ProcessClassContext processClassContext) {
+ processClassContext.removeMethod(MethodScope.OBJECT, "setContainer", void.class, new Class[] { DomainObjectContainer.class });
+ processClassContext.removeMethod(MethodScope.OBJECT, "set_Container", void.class, new Class[] { DomainObjectContainer.class });
}
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/isis/RemoveStaticGettersAndSettersFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/isis/RemoveStaticGettersAndSettersFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/isis/RemoveStaticGettersAndSettersFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/isis/RemoveStaticGettersAndSettersFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -20,11 +20,9 @@
package org.apache.isis.core.metamodel.facets.object.isis;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
-import org.apache.isis.core.metamodel.spec.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.methodutils.MethodScope;
/**
@@ -37,10 +35,9 @@ public class RemoveStaticGettersAndSette
}
@Override
- public boolean process(final Class<?> type, final MethodRemover methodRemover, final FacetHolder holder) {
- methodRemover.removeMethods(MethodScope.CLASS, "get", null, false, 0);
- methodRemover.removeMethods(MethodScope.CLASS, "set", null, false, 0);
- return false;
+ public void process(ProcessClassContext processClassContext) {
+ processClassContext.removeMethods(MethodScope.CLASS, "get", null, false, 0);
+ processClassContext.removeMethods(MethodScope.CLASS, "set", null, false, 0);
}
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveGetClassMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveGetClassMethodFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveGetClassMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveGetClassMethodFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -20,11 +20,9 @@
package org.apache.isis.core.metamodel.facets.object.java5;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
-import org.apache.isis.core.metamodel.spec.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.methodutils.MethodScope;
/**
@@ -40,9 +38,8 @@ public class RemoveGetClassMethodFacetFa
}
@Override
- public boolean process(final Class<?> type, final MethodRemover methodRemover, final FacetHolder holder) {
- methodRemover.removeMethod(MethodScope.OBJECT, "getClass", Class.class, null);
- return false;
+ public void process(ProcessClassContext processClassContext) {
+ processClassContext.removeMethod(MethodScope.OBJECT, "getClass", Class.class, null);
}
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveInitMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveInitMethodFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveInitMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveInitMethodFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -20,11 +20,9 @@
package org.apache.isis.core.metamodel.facets.object.java5;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
-import org.apache.isis.core.metamodel.spec.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.methodutils.MethodScope;
/**
@@ -37,9 +35,8 @@ public class RemoveInitMethodFacetFactor
}
@Override
- public boolean process(final Class<?> type, final MethodRemover methodRemover, final FacetHolder holder) {
- methodRemover.removeMethod(MethodScope.OBJECT, "init", void.class, new Class[0]);
- return false;
+ public void process(ProcessClassContext processClassContext) {
+ processClassContext.removeMethod(MethodScope.OBJECT, "init", void.class, new Class[0]);
}
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveJavaLangObjectMethodsFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveJavaLangObjectMethodsFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveJavaLangObjectMethodsFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveJavaLangObjectMethodsFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -22,11 +22,9 @@ package org.apache.isis.core.metamodel.f
import java.lang.reflect.Method;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
-import org.apache.isis.core.metamodel.spec.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.methodutils.MethodScope;
/**
@@ -57,13 +55,11 @@ public class RemoveJavaLangObjectMethods
}
@Override
- public boolean process(final Class<?> cls, final MethodRemover methodRemover, final FacetHolder holder) {
+ public void process(ProcessClassContext processClassContext) {
final Method[] methods = Object.class.getMethods();
for (int i = 0; i < methods.length; i++) {
- methodRemover.removeMethod(MethodScope.OBJECT, objectMethodNames[i], null, objectMethodParameters[i]);
+ processClassContext.removeMethod(MethodScope.OBJECT, objectMethodNames[i], null, objectMethodParameters[i]);
}
-
- return false;
}
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveSuperclassMethodsFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveSuperclassMethodsFacetFactory.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveSuperclassMethodsFacetFactory.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/java5/RemoveSuperclassMethodsFacetFactory.java Mon Jan 17 09:26:54 2011
@@ -24,10 +24,9 @@ import java.lang.reflect.Method;
import org.apache.isis.core.commons.lang.JavaClassUtils;
import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.spec.FacetFactoryAbstract;
+import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
/**
@@ -43,9 +42,8 @@ public class RemoveSuperclassMethodsFace
}
@Override
- public boolean process(final Class<?> type, final MethodRemover methodRemover, final FacetHolder holder) {
- removeSuperclassMethods(type, methodRemover);
- return false;
+ public void process(ProcessClassContext processClassContext) {
+ removeSuperclassMethods(processClassContext.getCls(), processClassContext);
}
private void removeSuperclassMethods(final Class<?> type, final MethodRemover methodRemover) {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/notpersistable/InitiatedBy.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/notpersistable/InitiatedBy.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/notpersistable/InitiatedBy.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/notpersistable/InitiatedBy.java Mon Jan 17 09:26:54 2011
@@ -20,6 +20,10 @@
package org.apache.isis.core.metamodel.facets.object.notpersistable;
+import org.apache.isis.applib.annotation.NotPersistable;
+import org.apache.isis.applib.annotation.NotPersistable.By;
+import org.apache.isis.applib.marker.NonPersistable;
+import org.apache.isis.applib.marker.ProgramPersistable;
import org.apache.isis.core.metamodel.facets.EnumerationAbstract;
@@ -30,6 +34,26 @@ public final class InitiatedBy extends E
private InitiatedBy(final int num, final String nameInCode, final String friendlyName) {
super(num, nameInCode, friendlyName);
+ }
+
+ public static InitiatedBy decodeBy(final NotPersistable.By by) {
+ if (by == NotPersistable.By.USER) {
+ return USER;
+ }
+ if (by == NotPersistable.By.USER_OR_PROGRAM) {
+ return USER_OR_PROGRAM;
+ }
+ return null;
+ }
+
+ public static InitiatedBy forCorrespondingMarkerSubType(final Class<?> cls) {
+ InitiatedBy initiatedBy = null;
+ if (ProgramPersistable.class.isAssignableFrom(cls)) {
+ initiatedBy = USER;
+ } else if (NonPersistable.class.isAssignableFrom(cls)) {
+ initiatedBy = USER_OR_PROGRAM;
+ }
+ return initiatedBy;
}
}
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/access/PropertyOrCollectionAccessorFacet.java (from r1056813, incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/access/PropertyAccessorFacet.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/access/PropertyOrCollectionAccessorFacet.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/access/PropertyOrCollectionAccessorFacet.java&p1=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/access/PropertyAccessorFacet.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/access/PropertyAccessorFacet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/access/PropertyOrCollectionAccessorFacet.java Mon Jan 17 09:26:54 2011
@@ -26,12 +26,12 @@ import org.apache.isis.core.metamodel.fa
* The mechanism by which the value of the property can be accessed.
*
* <p>
- * In the standard Apache Isis Programming Model, corresponds to invoking the accessor method for a property.
+ * In the standard Apache Isis Programming Model, corresponds to invoking the accessor method for a property OR a collection.
*/
-public interface PropertyAccessorFacet extends Facet {
+public interface PropertyOrCollectionAccessorFacet extends Facet {
/**
- * Gets the value of this property from this object.
+ * Gets the value of this property or collection from this object.
*/
public Object getProperty(ObjectAdapter inObject);
}
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertyClearFacetAbstract.java (from r1056813, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertyClearFacetAbstract.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertyClearFacetAbstract.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertyClearFacetAbstract.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertyClearFacetAbstract.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertyClearFacetAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertyClearFacetAbstract.java Mon Jan 17 09:26:54 2011
@@ -18,12 +18,11 @@
*/
-package org.apache.isis.core.progmodel.facets.properties.modify;
+package org.apache.isis.core.metamodel.facets.properties.modify;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.properties.modify.PropertyClearFacet;
public abstract class PropertyClearFacetAbstract extends FacetAbstract implements PropertyClearFacet {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertyInitializationFacet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertyInitializationFacet.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertyInitializationFacet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertyInitializationFacet.java Mon Jan 17 09:26:54 2011
@@ -21,7 +21,7 @@ package org.apache.isis.core.metamodel.f
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyAccessorFacet;
+import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyOrCollectionAccessorFacet;
/**
* The mechanism by which the value of the property can be initialised.
@@ -33,7 +33,7 @@ import org.apache.isis.core.metamodel.fa
* <p>
* In the standard Apache Isis Programming Model, corresponds to invoking the mutator method for a property.
*
- * @see PropertyAccessorFacet
+ * @see PropertyOrCollectionAccessorFacet
* @see PropertySetterFacet
* @see PropertyClearFacet
*/
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertySetterFacet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertySetterFacet.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertySetterFacet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertySetterFacet.java Mon Jan 17 09:26:54 2011
@@ -21,7 +21,7 @@ package org.apache.isis.core.metamodel.f
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyAccessorFacet;
+import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyOrCollectionAccessorFacet;
/**
* The mechanism by which the value of the property can be set.
@@ -29,7 +29,7 @@ import org.apache.isis.core.metamodel.fa
* <p>
* In the standard Apache Isis Programming Model, corresponds to invoking the mutator method for a property.
*
- * @see PropertyAccessorFacet
+ * @see PropertyOrCollectionAccessorFacet
* @see PropertyClearFacet
* @see PropertyInitializationFacet
*/
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertySetterFacetAbstract.java (from r1056813, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetAbstract.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertySetterFacetAbstract.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertySetterFacetAbstract.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetAbstract.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/modify/PropertySetterFacetAbstract.java Mon Jan 17 09:26:54 2011
@@ -18,12 +18,11 @@
*/
-package org.apache.isis.core.progmodel.facets.properties.modify;
+package org.apache.isis.core.metamodel.facets.properties.modify;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.properties.modify.PropertySetterFacet;
public abstract class PropertySetterFacetAbstract extends FacetAbstract implements PropertySetterFacet {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/MemberLayoutArranger.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/MemberLayoutArranger.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/MemberLayoutArranger.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/MemberLayoutArranger.java Mon Jan 17 09:26:54 2011
@@ -18,7 +18,7 @@ package org.apache.isis.core.metamodel.l
import java.util.List;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
public interface MemberLayoutArranger {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/MemberLayoutArrangerComposite.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/MemberLayoutArrangerComposite.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/MemberLayoutArrangerComposite.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/MemberLayoutArrangerComposite.java Mon Jan 17 09:26:54 2011
@@ -23,7 +23,7 @@ import org.apache.log4j.Logger;
import com.google.inject.internal.Lists;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
public abstract class MemberLayoutArrangerComposite implements MemberLayoutArranger {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/DeweyOrderSet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/DeweyOrderSet.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/DeweyOrderSet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/DeweyOrderSet.java Mon Jan 17 09:26:54 2011
@@ -28,7 +28,7 @@ import java.util.SortedSet;
import java.util.TreeMap;
import java.util.TreeSet;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.ordering.MemberOrderFacet;
import org.apache.isis.core.metamodel.layout.OrderSet;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberIdentifierComparator.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberIdentifierComparator.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberIdentifierComparator.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberIdentifierComparator.java Mon Jan 17 09:26:54 2011
@@ -24,7 +24,7 @@ import java.io.Serializable;
import java.util.Comparator;
import org.apache.isis.applib.Identifier;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
/**
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberLayoutArrangerUsingMemberOrderFacet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberLayoutArrangerUsingMemberOrderFacet.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberLayoutArrangerUsingMemberOrderFacet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberLayoutArrangerUsingMemberOrderFacet.java Mon Jan 17 09:26:54 2011
@@ -20,7 +20,7 @@ import java.util.List;
import org.apache.log4j.Logger;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.layout.MemberLayoutArranger;
import org.apache.isis.core.metamodel.layout.OrderSet;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberOrderComparator.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberOrderComparator.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberOrderComparator.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberOrderComparator.java Mon Jan 17 09:26:54 2011
@@ -24,7 +24,7 @@ import java.util.Comparator;
import java.util.StringTokenizer;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.ordering.MemberOrderFacet;
import org.apache.isis.core.metamodel.layout.OrderSet;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/ordermethod/MemberLayoutArrangerUsingOrderMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/ordermethod/MemberLayoutArrangerUsingOrderMethod.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/ordermethod/MemberLayoutArrangerUsingOrderMethod.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/ordermethod/MemberLayoutArrangerUsingOrderMethod.java Mon Jan 17 09:26:54 2011
@@ -25,12 +25,12 @@ import org.apache.log4j.Logger;
import org.apache.isis.core.commons.lang.JavaClassUtils;
import org.apache.isis.core.commons.lang.StringUtils;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
-import org.apache.isis.core.metamodel.facetedmethod.MethodFinderUtils;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.ordering.actionorder.ActionOrderFacet;
import org.apache.isis.core.metamodel.layout.MemberLayoutArranger;
import org.apache.isis.core.metamodel.layout.OrderSet;
+import org.apache.isis.core.metamodel.methodutils.MethodFinderUtils;
+import org.apache.isis.core.metamodel.methodutils.MethodScope;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
public class MemberLayoutArrangerUsingOrderMethod implements MemberLayoutArranger {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/ordermethod/SimpleOrderSet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/ordermethod/SimpleOrderSet.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/ordermethod/SimpleOrderSet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/ordermethod/SimpleOrderSet.java Mon Jan 17 09:26:54 2011
@@ -24,7 +24,7 @@ import java.util.List;
import java.util.StringTokenizer;
import org.apache.isis.core.commons.lang.NameUtils;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.layout.OrderSet;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methodutils/MethodFinderUtils.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methodutils/MethodFinderUtils.java?rev=1059826&r1=1056813&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methodutils/MethodFinderUtils.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methodutils/MethodFinderUtils.java Mon Jan 17 09:26:54 2011
@@ -18,7 +18,7 @@
*/
-package org.apache.isis.core.metamodel.facetedmethod;
+package org.apache.isis.core.metamodel.methodutils;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
@@ -30,7 +30,6 @@ import com.google.common.collect.Maps;
import org.apache.isis.core.commons.lang.JavaClassUtils;
import org.apache.isis.core.commons.lang.WrapperUtils;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
/**
Copied: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methodutils/MethodScope.java (from r1056813, incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/MethodScope.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methodutils/MethodScope.java?p2=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methodutils/MethodScope.java&p1=incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/MethodScope.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/MethodScope.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methodutils/MethodScope.java Mon Jan 17 09:26:54 2011
@@ -18,11 +18,42 @@
*/
-package org.apache.isis.core.metamodel.facetapi;
+package org.apache.isis.core.metamodel.methodutils;
+
+import java.lang.reflect.Method;
+import java.lang.reflect.Modifier;
/**
* As used in the <tt>findAndRemove...</tt> methods.
*/
public enum MethodScope {
- CLASS, OBJECT
+ CLASS, OBJECT;
+
+ public boolean isClass() {
+ return this==CLASS;
+ }
+
+ public boolean isObject() {
+ return this==OBJECT;
+ }
+
+ public boolean doesNotMatchScope(Method method) {
+ return !matchesScopeOf(method);
+ }
+
+ public boolean matchesScopeOf(Method method) {
+ return isStatic(method) == this.isClass();
+ }
+
+ public static MethodScope scopeFor(Method method) {
+ return isStatic(method)?CLASS:OBJECT;
+ }
+
+ private static boolean isStatic(Method method) {
+ final int modifiers = method.getModifiers();
+ final boolean isStatic = Modifier.isStatic(modifiers);
+ return isStatic;
+ }
+
+
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModel.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModel.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModel.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModel.java Mon Jan 17 09:26:54 2011
@@ -22,7 +22,7 @@ package org.apache.isis.core.metamodel.p
import java.util.List;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
+import org.apache.isis.core.metamodel.facets.FacetFactory;
public interface ProgrammingModel {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModelAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModelAbstract.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModelAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModelAbstract.java Mon Jan 17 09:26:54 2011
@@ -25,7 +25,7 @@ import java.util.Collections;
import java.util.List;
import org.apache.isis.core.commons.factory.InstanceUtil;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
+import org.apache.isis.core.metamodel.facets.FacetFactory;
public abstract class ProgrammingModelAbstract implements ProgrammingModel {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectActionSet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectActionSet.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectActionSet.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ObjectActionSet.java Mon Jan 17 09:26:54 2011
@@ -205,6 +205,14 @@ public class ObjectActionSet implements
return false;
}
+ /**
+ * Does nothing
+ */
+ @Override
+ public boolean containsDoOpFacet(final Class<? extends Facet> facetType) {
+ return false;
+ }
+
/**
* Does nothing
*/
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ReflectorConstants.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ReflectorConstants.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ReflectorConstants.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ReflectorConstants.java Mon Jan 17 09:26:54 2011
@@ -21,8 +21,8 @@ package org.apache.isis.core.metamodel.s
import org.apache.isis.core.commons.config.ConfigurationConstants;
import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
+import org.apache.isis.core.metamodel.facets.FacetFactory;
import org.apache.isis.core.metamodel.layout.dflt.MemberLayoutArrangerDefault;
import org.apache.isis.core.metamodel.progmodel.ProgrammingModel;
import org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubstitutor;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/facetprocessor/FacetProcessor.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/facetprocessor/FacetProcessor.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/facetprocessor/FacetProcessor.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/facetprocessor/FacetProcessor.java Mon Jan 17 09:26:54 2011
@@ -32,16 +32,24 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+
import org.apache.isis.core.commons.config.IsisConfiguration;
import org.apache.isis.core.commons.lang.ListUtils;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facetapi.MethodRemover;
+import org.apache.isis.core.metamodel.facets.FacetFactory;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethodParameter;
import org.apache.isis.core.metamodel.facets.MethodFilteringFacetFactory;
import org.apache.isis.core.metamodel.facets.MethodPrefixBasedFacetFactory;
import org.apache.isis.core.metamodel.facets.MethodRemoverConstants;
import org.apache.isis.core.metamodel.facets.PropertyOrCollectionIdentifyingFacetFactory;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessMethodContext;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessParameterContext;
import org.apache.isis.core.metamodel.progmodel.ProgrammingModel;
import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
import org.apache.isis.core.metamodel.runtimecontext.RuntimeContextAware;
@@ -62,13 +70,13 @@ public class FacetProcessor implements R
/**
* Class<FacetFactory> => FacetFactory
*/
- private final Map<Class<? extends FacetFactory>, FacetFactory> factoryByFactoryType = new HashMap<Class<? extends FacetFactory>, FacetFactory>();
+ private final Map<Class<? extends FacetFactory>, FacetFactory> factoryByFactoryType = Maps.newHashMap();
/**
* {@link FacetFactory Facet factories}, in order they were {@link #registerFactory(FacetFactory)
* registered}.
*/
- private final List<FacetFactory> factories = new ArrayList<FacetFactory>();
+ private final List<FacetFactory> factories = Lists.newArrayList();
/**
* All method prefixes to check in {@link #recognizes(Method)}.
@@ -269,22 +277,19 @@ public class FacetProcessor implements R
* <p>
* Delegates to {@link FacetFactory#process(Class, FacetHolder)} for each appropriate factory.
*
- * @see FacetFactory#process(Class, MethodRemover, FacetHolder)
+ * @see FacetFactory#process(ProcessClassContext)
*
* @param cls
* - class to process
* @param facetHolder
* - holder to attach facets to.
*
- * @return <tt>true</tt> if any facets were added, <tt>false</tt> otherwise.
*/
- public boolean process(final Class<?> cls, final MethodRemover methodRemover, final FacetHolder facetHolder) {
- boolean facetsAdded = false;
+ public void process(final Class<?> cls, final MethodRemover methodRemover, final FacetHolder facetHolder) {
final List<FacetFactory> factoryList = getFactoryListByFeatureType(FeatureType.OBJECT);
for (final FacetFactory facetFactory : factoryList) {
- facetsAdded = facetFactory.process(cls, removerElseNullRemover(methodRemover), facetHolder) | facetsAdded;
+ facetFactory.process(new ProcessClassContext(cls, removerElseNullRemover(methodRemover), facetHolder));
}
- return facetsAdded;
}
/**
@@ -300,25 +305,21 @@ public class FacetProcessor implements R
* - class in which introspect; allowing the helper methods to be found is subclasses of that which the method was originally found.
* @param method
* - method to process
- * @param facetHolder
+ * @param facetedMethod
* - holder to attach facets to.
* @param featureType
* - what type of feature the method represents (property, action, collection etc)
- *
- * @return <tt>true</tt> if any facets were added, <tt>false</tt> otherwise.
*/
- public boolean process(
+ public void process(
final Class<?> cls,
final Method method,
final MethodRemover methodRemover,
- final FacetHolder facetHolder,
+ final FacetedMethod facetedMethod,
final FeatureType featureType) {
- boolean facetsAdded = false;
final List<FacetFactory> factoryList = getFactoryListByFeatureType(featureType);
for (final FacetFactory facetFactory : factoryList) {
- facetsAdded = facetFactory.process(cls, method, removerElseNullRemover(methodRemover), facetHolder) | facetsAdded;
+ facetFactory.process(new ProcessMethodContext(cls, method, removerElseNullRemover(methodRemover), facetedMethod));
}
- return facetsAdded;
}
/**
@@ -326,26 +327,22 @@ public class FacetProcessor implements R
* parameter}), to the supplied {@link FacetHolder}.
*
* <p>
- * Delegates to {@link FacetFactory#processParams(Method, int, FacetHolder)} for each appropriate factory.
+ * Delegates to {@link FacetFactory#processParams(ProcessParameterContext)} for each appropriate factory.
*
- * @see FacetFactory#processParams(Method, int, FacetHolder)
+ * @see FacetFactory#processParams(ProcessParameterContext)
*
* @param method
* - action method to process
* @param paramNum
* - 0-based
- * @param facetHolder
+ * @param facetedMethodParameter
* - holder to attach facets to.
- *
- * @return <tt>true</tt> if any facets were added, <tt>false</tt> otherwise.
*/
- public boolean processParams(final Method method, final int paramNum, final FacetHolder facetHolder) {
- boolean facetsAdded = false;
+ public void processParams(final Method method, final int paramNum, final FacetedMethodParameter facetedMethodParameter) {
final List<FacetFactory> factoryList = getFactoryListByFeatureType(FeatureType.ACTION_PARAMETER);
for (final FacetFactory facetFactory : factoryList) {
- facetsAdded = facetFactory.processParams(method, paramNum, facetHolder) | facetsAdded;
+ facetFactory.processParams(new ProcessParameterContext(method, paramNum, facetedMethodParameter));
}
- return facetsAdded;
}
private List<FacetFactory> getFactoryListByFeatureType(final FeatureType featureType) {
@@ -378,7 +375,7 @@ public class FacetProcessor implements R
if (cachedMethodPrefixes != null) {
return;
}
- cachedMethodPrefixes = new ArrayList<String>();
+ cachedMethodPrefixes = Lists.newArrayList();
for (final FacetFactory facetFactory : factories) {
if (facetFactory instanceof MethodPrefixBasedFacetFactory) {
final MethodPrefixBasedFacetFactory methodPrefixBasedFacetFactory = (MethodPrefixBasedFacetFactory) facetFactory;
@@ -391,7 +388,7 @@ public class FacetProcessor implements R
if (cachedMethodFilteringFactories != null) {
return;
}
- cachedMethodFilteringFactories = new ArrayList<MethodFilteringFacetFactory>();
+ cachedMethodFilteringFactories = Lists.newArrayList();
for (final FacetFactory factory : factories) {
if (factory instanceof MethodFilteringFacetFactory) {
final MethodFilteringFacetFactory methodFilteringFacetFactory = (MethodFilteringFacetFactory) factory;
@@ -404,7 +401,7 @@ public class FacetProcessor implements R
if (cachedPropertyOrCollectionIdentifyingFactories != null) {
return;
}
- cachedPropertyOrCollectionIdentifyingFactories = new ArrayList<PropertyOrCollectionIdentifyingFacetFactory>();
+ cachedPropertyOrCollectionIdentifyingFactories = Lists.newArrayList();
final Iterator<FacetFactory> iter = factories.iterator();
while (iter.hasNext()) {
final FacetFactory factory = iter.next();
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/package-info.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/package-info.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/package-info.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/package-info.java Mon Jan 17 09:26:54 2011
@@ -31,7 +31,7 @@
* <tt>nof-core</tt>. This implementation defines two further sub-APIs which are based on
* the {@link org.apache.isis.core.metamodel.facetapi.Facet}s and {@link org.apache.isis.core.metamodel.facetdecorator.FacetDecorator}s:
* <ul>
- * <li> the {@link ProgrammingModelInstaller} is used to specify the collection of {@link org.apache.isis.core.metamodel.facetapi.FacetFactory}s
+ * <li> the {@link ProgrammingModelInstaller} is used to specify the collection of {@link org.apache.isis.core.metamodel.facets.FacetFactory}s
* that will be used to actually process and build up the metamodel.
* <li> the {@link FacetDecoratorInstaller} API specifies how {@link org.apache.isis.core.metamodel.facetapi.Facet}, once created,
* can be additionally decorated to modify their behaviour. A number of other components are implemented as
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java Mon Jan 17 09:26:54 2011
@@ -35,16 +35,17 @@ import org.apache.isis.core.commons.exce
import org.apache.isis.core.commons.lang.ListUtils;
import org.apache.isis.core.commons.lang.ToString;
import org.apache.isis.core.metamodel.exceptions.MetaModelException;
-import org.apache.isis.core.metamodel.facetapi.FacetFactory;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.facetapi.MethodScope;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethodParameter;
-import org.apache.isis.core.metamodel.facetedmethod.MethodFinderUtils;
+import org.apache.isis.core.metamodel.facets.FacetFactory;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethodParameter;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet;
import org.apache.isis.core.metamodel.facets.facets.FacetsFacet;
+import org.apache.isis.core.metamodel.methodutils.MethodFinderUtils;
+import org.apache.isis.core.metamodel.methodutils.MethodScope;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.SpecificationLoader;
import org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubstitutor;
@@ -79,6 +80,9 @@ public class FacetedMethodsBuilder {
@Override
public void removeMethod(final Method method) {
+ if(method==null) {
+ return;
+ }
for (int i = 0; i < methods.size(); i++) {
if (methods.get(i) == null) {
continue;
@@ -193,7 +197,7 @@ public class FacetedMethodsBuilder {
throw new IsisException(e);
}
getFacetProcessor().injectDependenciesInto(facetFactory);
- facetFactory.process(introspectedClass, methodRemover, spec);
+ facetFactory.process(new ProcessClassContext(introspectedClass, methodRemover, spec));
}
}
}
@@ -392,7 +396,7 @@ public class FacetedMethodsBuilder {
return null;
}
- final FacetedMethod action = FacetedMethod.createActionPeer(introspectedClass, actionMethod);
+ final FacetedMethod action = FacetedMethod.createActionFacetedMethod(introspectedClass, actionMethod);
// process facets on the action & parameters
getFacetProcessor()
@@ -436,6 +440,7 @@ public class FacetedMethodsBuilder {
}
if (getFacetProcessor().recognizes(actionMethod)) {
+ // a bit of a hack
if (actionMethod.getName().startsWith("set")) {
return false;
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionImpl.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionImpl.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionImpl.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionImpl.java Mon Jan 17 09:26:54 2011
@@ -39,8 +39,8 @@ import org.apache.isis.core.metamodel.co
import org.apache.isis.core.metamodel.consent.InteractionInvocationMethod;
import org.apache.isis.core.metamodel.consent.InteractionResultSet;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethodParameter;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethodParameter;
import org.apache.isis.core.metamodel.facets.SpecificationFacets;
import org.apache.isis.core.metamodel.facets.TypedHolder;
import org.apache.isis.core.metamodel.facets.actions.ActionTypeFacets;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java Mon Jan 17 09:26:54 2011
@@ -141,6 +141,11 @@ public abstract class ObjectActionParame
}
@Override
+ public boolean containsDoOpFacet(final Class<? extends Facet> facetType) {
+ return peer == null ? false : peer.containsDoOpFacet(facetType);
+ }
+
+ @Override
public <T extends Facet> T getFacet(final Class<T> cls) {
return peer != null ? peer.getFacet(cls) : null;
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstract.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstract.java Mon Jan 17 09:26:54 2011
@@ -23,7 +23,7 @@ package org.apache.isis.core.metamodel.s
import org.apache.isis.core.commons.exceptions.NotYetImplementedException;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet;
import org.apache.isis.core.metamodel.facets.properties.choices.PropertyChoicesFacet;
import org.apache.isis.core.metamodel.facets.propparam.validate.mandatory.MandatoryFacet;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java Mon Jan 17 09:26:54 2011
@@ -34,7 +34,7 @@ import org.apache.isis.core.metamodel.co
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facetapi.MultiTypedFacet;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
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;
@@ -123,6 +123,11 @@ public abstract class ObjectMemberAbstra
}
@Override
+ public boolean containsDoOpFacet(final Class<? extends Facet> facetType) {
+ return getFacetedMethod().containsDoOpFacet(facetType);
+ }
+
+ @Override
public <T extends Facet> T getFacet(final Class<T> cls) {
return getFacetedMethod().getFacet(cls);
}
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyAssociationImpl.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyAssociationImpl.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyAssociationImpl.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyAssociationImpl.java Mon Jan 17 09:26:54 2011
@@ -29,13 +29,13 @@ 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.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionClearFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionFacetUtils;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacet;
-import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyAccessorFacet;
+import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyOrCollectionAccessorFacet;
import org.apache.isis.core.metamodel.interactions.CollectionAddToContext;
import org.apache.isis.core.metamodel.interactions.CollectionRemoveFromContext;
import org.apache.isis.core.metamodel.interactions.CollectionUsabilityContext;
@@ -150,7 +150,7 @@ public class OneToManyAssociationImpl ex
@Override
public ObjectAdapter get(final ObjectAdapter ownerAdapter) {
- final PropertyAccessorFacet accessor = getFacet(PropertyAccessorFacet.class);
+ final PropertyOrCollectionAccessorFacet accessor = getFacet(PropertyOrCollectionAccessorFacet.class);
final Object collection = accessor.getProperty(ownerAdapter);
if (collection == null) {
return null;
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationImpl.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationImpl.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationImpl.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationImpl.java Mon Jan 17 09:26:54 2011
@@ -32,9 +32,9 @@ 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.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.SpecificationFacets;
-import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyAccessorFacet;
+import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyOrCollectionAccessorFacet;
import org.apache.isis.core.metamodel.facets.properties.choices.PropertyChoicesFacet;
import org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet;
import org.apache.isis.core.metamodel.facets.properties.modify.PropertyClearFacet;
@@ -135,7 +135,7 @@ public class OneToOneAssociationImpl ext
@Override
public ObjectAdapter get(final ObjectAdapter ownerAdapter) {
- final PropertyAccessorFacet facet = getFacet(PropertyAccessorFacet.class);
+ final PropertyOrCollectionAccessorFacet facet = getFacet(PropertyOrCollectionAccessorFacet.class);
final Object referencedPojo = facet.getProperty(ownerAdapter);
if (referencedPojo == null) {
Modified: incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/dflt/ObjectSpecificationDefault.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/dflt/ObjectSpecificationDefault.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/dflt/ObjectSpecificationDefault.java (original)
+++ incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/dflt/ObjectSpecificationDefault.java Mon Jan 17 09:26:54 2011
@@ -46,7 +46,7 @@ import org.apache.isis.core.metamodel.ad
import org.apache.isis.core.metamodel.exceptions.MetaModelException;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.ImperativeFacetUtils;
import org.apache.isis.core.metamodel.facets.naming.named.NamedFacet;
Modified: incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java (original)
+++ incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java Mon Jan 17 09:26:54 2011
@@ -37,7 +37,7 @@ import org.apache.isis.core.metamodel.ad
import org.apache.isis.core.metamodel.consent.InteractionInvocationMethod;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.hide.HiddenFacet;
import org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet;
import org.apache.isis.core.metamodel.facets.properties.choices.PropertyChoicesFacet;
@@ -46,7 +46,6 @@ import org.apache.isis.core.metamodel.in
import org.apache.isis.core.metamodel.interactions.VisibilityContext;
import org.apache.isis.core.metamodel.spec.Instance;
import org.apache.isis.core.metamodel.spec.feature.ObjectMemberContext;
-import org.apache.isis.core.metamodel.specloader.specimpl.ObjectAssociationAbstract;
import org.apache.isis.core.metamodel.testspec.TestProxySpecification;
@@ -120,6 +119,12 @@ public class ObjectAssociationAbstractTe
public Instance getInstance(ObjectAdapter adapter) {
return null;
}
+
+ @Override
+ public boolean containsDoOpFacet(Class<? extends Facet> facetType) {
+ // TODO Auto-generated method stub
+ return false;
+ }
};
}
Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/util/ArrayUtil.java (from r1056832, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ArrayUtil.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/util/ArrayUtil.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/util/ArrayUtil.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ArrayUtil.java&r1=1056832&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ArrayUtil.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/util/ArrayUtil.java Mon Jan 17 09:26:54 2011
@@ -18,7 +18,7 @@
*/
-package org.apache.isis.core.progmodel.facets;
+package org.apache.isis.core.progmodel.util;
import java.lang.reflect.Array;
import java.lang.reflect.Constructor;
Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/util/ClassUtil.java (from r1056832, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ClassUtil.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/util/ClassUtil.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/util/ClassUtil.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ClassUtil.java&r1=1056832&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ClassUtil.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/util/ClassUtil.java Mon Jan 17 09:26:54 2011
@@ -18,7 +18,7 @@
*/
-package org.apache.isis.core.progmodel.facets;
+package org.apache.isis.core.progmodel.util;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;