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/04/27 00:03:55 UTC
svn commit: r1096928 [3/16] - in
/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel:
facetdecorators/help/ facetdecorators/help/file/
facetdecorators/help/file/internal/ facetdecorators/i18n/
facetdecorators/i18n/internal...
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/PrototypeFacetAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/PrototypeFacetAbstract.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/PrototypeFacetAbstract.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/PrototypeFacetAbstract.java Tue Apr 26 22:03:43 2011
@@ -17,23 +17,21 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.actions.prototype;
-package org.apache.isis.core.progmodel.facets.actions.prototype;
-
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.MarkerFacetAbstract;
import org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet;
-
-
-public abstract class PrototypeFacetAbstract extends MarkerFacetAbstract implements PrototypeFacet {
-
- public static Class<? extends Facet> type() {
- return PrototypeFacet.class;
- }
-
- public PrototypeFacetAbstract(final FacetHolder holder) {
- super(type(), holder);
- }
-
-}
+
+public abstract class PrototypeFacetAbstract extends MarkerFacetAbstract implements PrototypeFacet {
+
+ public static Class<? extends Facet> type() {
+ return PrototypeFacet.class;
+ }
+
+ public PrototypeFacetAbstract(final FacetHolder holder) {
+ super(type(), holder);
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/annotation/PrototypeAnnotationFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/annotation/PrototypeAnnotationFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/annotation/PrototypeAnnotationFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/annotation/PrototypeAnnotationFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,7 @@
* under the License.
*/
-
-package org.apache.isis.core.progmodel.facets.actions.prototype.annotation;
-
+package org.apache.isis.core.progmodel.facets.actions.prototype.annotation;
import org.apache.isis.applib.annotation.Prototype;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -27,22 +25,21 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facets.AnnotationBasedFacetFactoryAbstract;
import org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet;
-
-
-public class PrototypeAnnotationFacetFactory extends AnnotationBasedFacetFactoryAbstract {
-
- public PrototypeAnnotationFacetFactory() {
- super(FeatureType.ACTIONS_ONLY);
- }
-
- @Override
- public void process(ProcessMethodContext processMethodContext) {
- final Prototype annotation = getAnnotation(processMethodContext.getMethod(), Prototype.class);
- FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
- }
-
- private PrototypeFacet create(final Prototype annotation, final FacetHolder holder) {
- return annotation == null ? null : new PrototypeFacetAnnotation(holder);
- }
-
-}
+
+public class PrototypeAnnotationFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+ public PrototypeAnnotationFacetFactory() {
+ super(FeatureType.ACTIONS_ONLY);
+ }
+
+ @Override
+ public void process(final ProcessMethodContext processMethodContext) {
+ final Prototype annotation = getAnnotation(processMethodContext.getMethod(), Prototype.class);
+ FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
+ }
+
+ private PrototypeFacet create(final Prototype annotation, final FacetHolder holder) {
+ return annotation == null ? null : new PrototypeFacetAnnotation(holder);
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/annotation/PrototypeFacetAnnotation.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/annotation/PrototypeFacetAnnotation.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/annotation/PrototypeFacetAnnotation.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/prototype/annotation/PrototypeFacetAnnotation.java Tue Apr 26 22:03:43 2011
@@ -17,18 +17,15 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.actions.prototype.annotation;
-package org.apache.isis.core.progmodel.facets.actions.prototype.annotation;
-
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.progmodel.facets.actions.prototype.PrototypeFacetAbstract;
-
-
-public class PrototypeFacetAnnotation extends PrototypeFacetAbstract {
-
- public PrototypeFacetAnnotation(final FacetHolder holder) {
- super(holder);
- }
-
-}
-
+
+public class PrototypeFacetAnnotation extends PrototypeFacetAbstract {
+
+ public PrototypeFacetAnnotation(final FacetHolder holder) {
+ super(holder);
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfAnnotationForActionsFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfAnnotationForActionsFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfAnnotationForActionsFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfAnnotationForActionsFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.actions.typeof.annotation;
-package org.apache.isis.core.progmodel.facets.actions.typeof.annotation;
-
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.lang.reflect.TypeVariable;
@@ -32,66 +31,70 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacetInferredFromGenerics;
import org.apache.isis.core.metamodel.specloader.collectiontyperegistry.CollectionTypeRegistry;
import org.apache.isis.core.metamodel.specloader.collectiontyperegistry.CollectionTypeRegistryAware;
-
-
-public class TypeOfAnnotationForActionsFacetFactory extends AnnotationBasedFacetFactoryAbstract implements CollectionTypeRegistryAware {
- private CollectionTypeRegistry collectionTypeRegistry;
-
- public TypeOfAnnotationForActionsFacetFactory() {
- super(FeatureType.ACTIONS_ONLY);
- }
-
- @Override
- public void process(ProcessMethodContext processMethodContext) {
-
- final TypeOf annotation = getAnnotation(processMethodContext.getMethod(), TypeOf.class);
-
- final Class<?> methodReturnType = processMethodContext.getMethod().getReturnType();
- if (!collectionTypeRegistry.isCollectionType(methodReturnType) && !collectionTypeRegistry.isArrayType(methodReturnType)) {
- return;
- }
-
- final Class<?> returnType = processMethodContext.getMethod().getReturnType();
- if (returnType.isArray()) {
- final Class<?> componentType = returnType.getComponentType();
- FacetUtil.addFacet(new TypeOfFacetInferredFromArray(componentType, processMethodContext.getFacetHolder(), getSpecificationLookup()));
- return;
- }
-
- if (annotation != null) {
- FacetUtil.addFacet(new TypeOfFacetAnnotationForAction(annotation.value(), processMethodContext.getFacetHolder(), getSpecificationLookup()));
- return;
- }
-
- final Type type = processMethodContext.getMethod().getGenericReturnType();
- if (!(type instanceof ParameterizedType)) {
- return;
- }
-
- final ParameterizedType parameterizedType = (ParameterizedType) type;
- final Type[] actualTypeArguments = parameterizedType.getActualTypeArguments();
- if (actualTypeArguments.length == 0) {
- return;
- }
-
- final Object actualTypeArgument = actualTypeArguments[0];
- if (actualTypeArgument instanceof Class) {
- final Class<?> actualType = (Class<?>) actualTypeArgument;
- FacetUtil.addFacet(new TypeOfFacetInferredFromGenerics(actualType, processMethodContext.getFacetHolder(), getSpecificationLookup()));
- return;
- }
-
- if (actualTypeArgument instanceof TypeVariable) {
-
- // TODO: what to do here?
- return;
- }
-
- }
-
+
+public class TypeOfAnnotationForActionsFacetFactory extends AnnotationBasedFacetFactoryAbstract implements
+ CollectionTypeRegistryAware {
+ private CollectionTypeRegistry collectionTypeRegistry;
+
+ public TypeOfAnnotationForActionsFacetFactory() {
+ super(FeatureType.ACTIONS_ONLY);
+ }
+
+ @Override
+ public void process(final ProcessMethodContext processMethodContext) {
+
+ final TypeOf annotation = getAnnotation(processMethodContext.getMethod(), TypeOf.class);
+
+ final Class<?> methodReturnType = processMethodContext.getMethod().getReturnType();
+ if (!collectionTypeRegistry.isCollectionType(methodReturnType)
+ && !collectionTypeRegistry.isArrayType(methodReturnType)) {
+ return;
+ }
+
+ final Class<?> returnType = processMethodContext.getMethod().getReturnType();
+ if (returnType.isArray()) {
+ final Class<?> componentType = returnType.getComponentType();
+ FacetUtil.addFacet(new TypeOfFacetInferredFromArray(componentType, processMethodContext.getFacetHolder(),
+ getSpecificationLookup()));
+ return;
+ }
+
+ if (annotation != null) {
+ FacetUtil.addFacet(new TypeOfFacetAnnotationForAction(annotation.value(), processMethodContext
+ .getFacetHolder(), getSpecificationLookup()));
+ return;
+ }
+
+ final Type type = processMethodContext.getMethod().getGenericReturnType();
+ if (!(type instanceof ParameterizedType)) {
+ return;
+ }
+
+ final ParameterizedType parameterizedType = (ParameterizedType) type;
+ final Type[] actualTypeArguments = parameterizedType.getActualTypeArguments();
+ if (actualTypeArguments.length == 0) {
+ return;
+ }
+
+ final Object actualTypeArgument = actualTypeArguments[0];
+ if (actualTypeArgument instanceof Class) {
+ final Class<?> actualType = (Class<?>) actualTypeArgument;
+ FacetUtil.addFacet(new TypeOfFacetInferredFromGenerics(actualType, processMethodContext.getFacetHolder(),
+ getSpecificationLookup()));
+ return;
+ }
+
+ if (actualTypeArgument instanceof TypeVariable) {
+
+ // TODO: what to do here?
+ return;
+ }
+
+ }
+
@Override
- public void setCollectionTypeRegistry(final CollectionTypeRegistry collectionTypeRegistry) {
- this.collectionTypeRegistry = collectionTypeRegistry;
- }
-
-}
+ public void setCollectionTypeRegistry(final CollectionTypeRegistry collectionTypeRegistry) {
+ this.collectionTypeRegistry = collectionTypeRegistry;
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfFacetAnnotationForAction.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfFacetAnnotationForAction.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfFacetAnnotationForAction.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfFacetAnnotationForAction.java Tue Apr 26 22:03:43 2011
@@ -17,22 +17,17 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.actions.typeof.annotation;
-package org.apache.isis.core.progmodel.facets.actions.typeof.annotation;
-
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacetAbstract;
import org.apache.isis.core.metamodel.spec.SpecificationLookup;
-
-
-public class TypeOfFacetAnnotationForAction extends TypeOfFacetAbstract {
-
- public TypeOfFacetAnnotationForAction(
- final Class<?> type,
- final FacetHolder holder,
- final SpecificationLookup specificationLookup) {
- super(type, holder, specificationLookup);
- }
-
-}
-
+
+public class TypeOfFacetAnnotationForAction extends TypeOfFacetAbstract {
+
+ public TypeOfFacetAnnotationForAction(final Class<?> type, final FacetHolder holder,
+ final SpecificationLookup specificationLookup) {
+ super(type, holder, specificationLookup);
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/ActionValidationFacetAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/ActionValidationFacetAbstract.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/ActionValidationFacetAbstract.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/ActionValidationFacetAbstract.java Tue Apr 26 22:03:43 2011
@@ -17,32 +17,31 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.actions.validate;
-package org.apache.isis.core.progmodel.facets.actions.validate;
-
import org.apache.isis.applib.events.ValidityEvent;
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.interactions.ActionInvocationContext;
import org.apache.isis.core.metamodel.interactions.ValidityContext;
-
-
-public abstract class ActionValidationFacetAbstract extends FacetAbstract implements ActionValidationFacet {
-
- public static Class<? extends Facet> type() {
- return ActionValidationFacet.class;
- }
-
- public ActionValidationFacetAbstract(final FacetHolder holder) {
- super(type(), holder, false);
- }
-
- public String invalidates(final ValidityContext<? extends ValidityEvent> context) {
- if (!(context instanceof ActionInvocationContext)) {
- return null;
- }
- final ActionInvocationContext actionInvocationContext = (ActionInvocationContext) context;
- return invalidReason(actionInvocationContext.getTarget(), actionInvocationContext.getArgs());
- }
-}
+
+public abstract class ActionValidationFacetAbstract extends FacetAbstract implements ActionValidationFacet {
+
+ public static Class<? extends Facet> type() {
+ return ActionValidationFacet.class;
+ }
+
+ public ActionValidationFacetAbstract(final FacetHolder holder) {
+ super(type(), holder, false);
+ }
+
+ @Override
+ public String invalidates(final ValidityContext<? extends ValidityEvent> context) {
+ if (!(context instanceof ActionInvocationContext)) {
+ return null;
+ }
+ final ActionInvocationContext actionInvocationContext = (ActionInvocationContext) context;
+ return invalidReason(actionInvocationContext.getTarget(), actionInvocationContext.getArgs());
+ }
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaMethod.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaMethod.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.actions.validate.method;
import java.lang.reflect.Method;
@@ -30,33 +29,34 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.progmodel.facets.actions.validate.ActionValidationFacetAbstract;
-
public class ActionValidationFacetViaMethod extends ActionValidationFacetAbstract implements ImperativeFacet {
private final Method method;
- public ActionValidationFacetViaMethod(
- final Method method,
- final FacetHolder holder) {
+ public ActionValidationFacetViaMethod(final Method method, final FacetHolder holder) {
super(holder);
this.method = method;
}
/**
- * Returns a singleton list of the {@link Method} provided in the constructor.
+ * Returns a singleton list of the {@link Method} provided in the constructor.
*/
+ @Override
public List<Method> getMethods() {
- return Collections.singletonList(method);
+ return Collections.singletonList(method);
+ }
+
+ @Override
+ public boolean impliesResolve() {
+ return true;
}
- public boolean impliesResolve() {
- return true;
- }
+ @Override
+ public boolean impliesObjectChanged() {
+ return false;
+ }
- public boolean impliesObjectChanged() {
- return false;
- }
-
+ @Override
public String invalidReason(final ObjectAdapter owningAdapter, final ObjectAdapter[] proposedArgumentAdapters) {
return (String) AdapterInvokeUtils.invoke(method, owningAdapter, proposedArgumentAdapters);
}
@@ -67,4 +67,3 @@ public class ActionValidationFacetViaMet
}
}
-
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -51,14 +51,13 @@ public class ActionValidationFacetViaVal
// ///////////////////////////////////////////////////////
@Override
- public void process(ProcessMethodContext processMethodContext) {
+ public void process(final ProcessMethodContext processMethodContext) {
attachValidatingAdvisorFacetForValidateMethodIfFound(processMethodContext);
}
+ private void attachValidatingAdvisorFacetForValidateMethodIfFound(final ProcessMethodContext processMethodContext) {
- private void attachValidatingAdvisorFacetForValidateMethodIfFound(ProcessMethodContext processMethodContext) {
-
- Class<?> cls = processMethodContext.getCls();
+ final Class<?> cls = processMethodContext.getCls();
final Method actionMethod = processMethodContext.getMethod();
final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName());
@@ -77,7 +76,4 @@ public class ActionValidationFacetViaVal
FacetUtil.addFacet(new ActionValidationFacetViaMethod(validateMethod, facetedMethod));
}
-
-
-
}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.accessor;
-package org.apache.isis.core.progmodel.facets.collections.accessor;
-
import java.lang.reflect.Method;
import java.util.List;
@@ -31,81 +30,79 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.methodutils.MethodScope;
import org.apache.isis.core.progmodel.facets.MethodPrefixConstants;
import org.apache.isis.core.progmodel.facets.PropertyOrCollectionIdentifyingFacetFactoryAbstract;
-
-
-public class CollectionAccessorFacetFactory extends PropertyOrCollectionIdentifyingFacetFactoryAbstract {
-
- private static final String[] PREFIXES = { MethodPrefixConstants.GET_PREFIX };
-
- public CollectionAccessorFacetFactory() {
- super(FeatureType.COLLECTIONS_ONLY, PREFIXES);
- }
-
- @Override
- public void process(ProcessMethodContext processMethodContext) {
-
- attachAccessorFacetForAccessorMethod(processMethodContext);
+
+public class CollectionAccessorFacetFactory extends PropertyOrCollectionIdentifyingFacetFactoryAbstract {
+
+ private static final String[] PREFIXES = { MethodPrefixConstants.GET_PREFIX };
+
+ public CollectionAccessorFacetFactory() {
+ super(FeatureType.COLLECTIONS_ONLY, PREFIXES);
+ }
+
+ @Override
+ public void process(final ProcessMethodContext processMethodContext) {
+
+ attachAccessorFacetForAccessorMethod(processMethodContext);
}
- private void attachAccessorFacetForAccessorMethod(ProcessMethodContext processMethodContext) {
+ private void attachAccessorFacetForAccessorMethod(final ProcessMethodContext processMethodContext) {
final Method accessorMethod = processMethodContext.getMethod();
processMethodContext.removeMethod(accessorMethod);
-
+
final FacetHolder holder = processMethodContext.getFacetHolder();
final Facet facet = new CollectionAccessorFacetViaAccessor(accessorMethod, holder);
FacetUtil.addFacet(facet);
}
-
- // ///////////////////////////////////////////////////////////////
- // PropertyOrCollectionIdentifyingFacetFactory impl.
- // ///////////////////////////////////////////////////////////////
-
- @Override
- public boolean isPropertyOrCollectionAccessorCandidate(final Method method) {
- return method.getName().startsWith(MethodPrefixConstants.GET_PREFIX);
- }
-
- @Override
- public boolean isCollectionAccessor(final Method method) {
- if (!isPropertyOrCollectionAccessorCandidate(method)) {
- return false;
- }
- final Class<?> methodReturnType = method.getReturnType();
- return isCollectionOrArray(methodReturnType);
- }
-
- /**
- * The method way well represent a reference property, but this facet factory does not have any opinion on
- * the matter.
- */
- @Override
- public boolean isPropertyAccessor(final Method method) {
- return false;
- }
-
- /**
- * The method way well represent a value property, but this facet factory does not have any opinion on the
- * matter.
- */
- public boolean isValuePropertyAccessor(final Method method) {
- return false;
- }
-
- @Override
- public void findAndRemoveCollectionAccessors(final MethodRemover methodRemover, final List<Method> methodListToAppendTo) {
- final Class<?>[] collectionClasses = getCollectionTypeRepository().getCollectionType();
- for (int i = 0; i < collectionClasses.length; i++) {
- final Class<?> returnType = collectionClasses[i];
- final List<Method> list = methodRemover.removeMethods(MethodScope.OBJECT, MethodPrefixConstants.GET_PREFIX, returnType, false, 0);
- methodListToAppendTo.addAll(list);
- }
- }
-
- @Override
- public void findAndRemovePropertyAccessors(final MethodRemover methodRemover, final List<Method> methodListToAppendTo) {
- // does nothing
- }
-
-
-}
+ // ///////////////////////////////////////////////////////////////
+ // PropertyOrCollectionIdentifyingFacetFactory impl.
+ // ///////////////////////////////////////////////////////////////
+
+ @Override
+ public boolean isPropertyOrCollectionAccessorCandidate(final Method method) {
+ return method.getName().startsWith(MethodPrefixConstants.GET_PREFIX);
+ }
+
+ @Override
+ public boolean isCollectionAccessor(final Method method) {
+ if (!isPropertyOrCollectionAccessorCandidate(method)) {
+ return false;
+ }
+ final Class<?> methodReturnType = method.getReturnType();
+ return isCollectionOrArray(methodReturnType);
+ }
+
+ /**
+ * The method way well represent a reference property, but this facet factory does not have any opinion on the
+ * matter.
+ */
+ @Override
+ public boolean isPropertyAccessor(final Method method) {
+ return false;
+ }
+
+ /**
+ * The method way well represent a value property, but this facet factory does not have any opinion on the matter.
+ */
+ public boolean isValuePropertyAccessor(final Method method) {
+ return false;
+ }
+
+ @Override
+ public void findAndRemoveCollectionAccessors(final MethodRemover methodRemover,
+ final List<Method> methodListToAppendTo) {
+ final Class<?>[] collectionClasses = getCollectionTypeRepository().getCollectionType();
+ for (final Class<?> returnType : collectionClasses) {
+ final List<Method> list =
+ methodRemover.removeMethods(MethodScope.OBJECT, MethodPrefixConstants.GET_PREFIX, returnType, false, 0);
+ methodListToAppendTo.addAll(list);
+ }
+ }
+
+ @Override
+ public void findAndRemovePropertyAccessors(final MethodRemover methodRemover,
+ final List<Method> methodListToAppendTo) {
+ // does nothing
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.accessor;
-package org.apache.isis.core.progmodel.facets.collections.accessor;
-
import java.lang.reflect.Method;
import java.util.Collections;
import java.util.List;
@@ -30,46 +29,47 @@ import org.apache.isis.core.metamodel.ad
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.accessor.PropertyOrCollectionAccessorFacetAbstract;
-
-
-public class CollectionAccessorFacetViaAccessor extends PropertyOrCollectionAccessorFacetAbstract implements ImperativeFacet {
-
- private final Method method;
-
- public CollectionAccessorFacetViaAccessor(
- final Method method,
- final FacetHolder holder) {
- super(holder);
- this.method = method;
- }
-
- /**
- * Returns a singleton list of the {@link Method} provided in the constructor.
- */
- public List<Method> getMethods() {
- return Collections.singletonList(method);
- }
-
- public boolean impliesResolve() {
- return true;
- }
-
- /**
- * Bytecode cannot automatically call {@link DomainObjectContainer#objectChanged(Object)}
- * because cannot distinguish whether interacting with accessor to read it or to modify its contents.
- */
- public boolean impliesObjectChanged() {
- return false;
- }
-
- @Override
- public Object getProperty(final ObjectAdapter owningAdapter) {
- return AdapterInvokeUtils.invoke(method, owningAdapter);
- }
-
- @Override
- protected String toStringValues() {
- return "method=" + method;
- }
-
-}
+
+public class CollectionAccessorFacetViaAccessor extends PropertyOrCollectionAccessorFacetAbstract implements
+ ImperativeFacet {
+
+ private final Method method;
+
+ public CollectionAccessorFacetViaAccessor(final Method method, final FacetHolder holder) {
+ super(holder);
+ this.method = method;
+ }
+
+ /**
+ * Returns a singleton list of the {@link Method} provided in the constructor.
+ */
+ @Override
+ public List<Method> getMethods() {
+ return Collections.singletonList(method);
+ }
+
+ @Override
+ public boolean impliesResolve() {
+ return true;
+ }
+
+ /**
+ * Bytecode cannot automatically call {@link DomainObjectContainer#objectChanged(Object)} because cannot distinguish
+ * whether interacting with accessor to read it or to modify its contents.
+ */
+ @Override
+ public boolean impliesObjectChanged() {
+ return false;
+ }
+
+ @Override
+ public Object getProperty(final ObjectAdapter owningAdapter) {
+ return AdapterInvokeUtils.invoke(method, owningAdapter);
+ }
+
+ @Override
+ protected String toStringValues() {
+ return "method=" + method;
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/aggregated/AggregatedIfCollectionFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/aggregated/AggregatedIfCollectionFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/aggregated/AggregatedIfCollectionFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/aggregated/AggregatedIfCollectionFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.aggregated;
-package org.apache.isis.core.progmodel.facets.collections.aggregated;
-
import org.apache.isis.core.metamodel.facetapi.FacetUtil;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
@@ -28,26 +27,25 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.progmodel.ProgrammingModel;
import org.apache.isis.core.metamodel.specloader.collectiontyperegistry.CollectionTypeRegistry;
import org.apache.isis.core.progmodel.facets.collections.collection.CollectionFacetFactory;
-
-
-/**
- * All {@link CollectionTypeRegistry collection types} are intrinsically {@link AggregatedFacet aggregeted}.
- *
- *
- * Must be registered in the {@link ProgrammingModel} after {@link CollectionFacetFactory}.
- */
-public class AggregatedIfCollectionFacetFactory extends FacetFactoryAbstract {
-
- public AggregatedIfCollectionFacetFactory() {
- super(FeatureType.OBJECTS_ONLY);
- }
-
- @Override
- public void process(ProcessClassContext processClassContaxt) {
- if (!processClassContaxt.getFacetHolder().containsFacet(CollectionFacet.class)) {
- return;
- }
- FacetUtil.addFacet(new AggregatedSinceCollection(processClassContaxt.getFacetHolder()));
- }
-
-}
+
+/**
+ * All {@link CollectionTypeRegistry collection types} are intrinsically {@link AggregatedFacet aggregeted}.
+ *
+ *
+ * Must be registered in the {@link ProgrammingModel} after {@link CollectionFacetFactory}.
+ */
+public class AggregatedIfCollectionFacetFactory extends FacetFactoryAbstract {
+
+ public AggregatedIfCollectionFacetFactory() {
+ super(FeatureType.OBJECTS_ONLY);
+ }
+
+ @Override
+ public void process(final ProcessClassContext processClassContaxt) {
+ if (!processClassContaxt.getFacetHolder().containsFacet(CollectionFacet.class)) {
+ return;
+ }
+ FacetUtil.addFacet(new AggregatedSinceCollection(processClassContaxt.getFacetHolder()));
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/aggregated/AggregatedSinceCollection.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/aggregated/AggregatedSinceCollection.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/aggregated/AggregatedSinceCollection.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/aggregated/AggregatedSinceCollection.java Tue Apr 26 22:03:43 2011
@@ -17,18 +17,15 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.aggregated;
-package org.apache.isis.core.progmodel.facets.collections.aggregated;
-
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.aggregated.AggregatedFacetAbstract;
-
-
-public class AggregatedSinceCollection extends AggregatedFacetAbstract {
-
- public AggregatedSinceCollection(final FacetHolder holder) {
- super(holder);
- }
-
-}
-
+
+public class AggregatedSinceCollection extends AggregatedFacetAbstract {
+
+ public AggregatedSinceCollection(final FacetHolder holder) {
+ super(holder);
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.clear;
-package org.apache.isis.core.progmodel.facets.collections.clear;
-
import java.lang.reflect.Method;
import org.apache.isis.core.commons.lang.NameUtils;
@@ -35,24 +34,23 @@ import org.apache.isis.core.metamodel.me
import org.apache.isis.core.progmodel.facets.MethodFinderUtils;
import org.apache.isis.core.progmodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.core.progmodel.facets.MethodPrefixConstants;
-
-
-public class CollectionClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract implements
- AdapterMapAware, ObjectDirtierAware {
-
- private static final String[] PREFIXES = { MethodPrefixConstants.CLEAR_PREFIX };
-
+
+public class CollectionClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract implements AdapterMapAware,
+ ObjectDirtierAware {
+
+ private static final String[] PREFIXES = { MethodPrefixConstants.CLEAR_PREFIX };
+
private AdapterMap adapterMap;
- private ObjectDirtier objectDirtier;
-
- public CollectionClearFacetFactory() {
- super(FeatureType.COLLECTIONS_ONLY, PREFIXES);
- }
-
- @Override
- public void process(ProcessMethodContext processMethodContext) {
+ private ObjectDirtier objectDirtier;
+
+ public CollectionClearFacetFactory() {
+ super(FeatureType.COLLECTIONS_ONLY, PREFIXES);
+ }
+
+ @Override
+ public void process(final ProcessMethodContext processMethodContext) {
attachCollectionClearFacets(processMethodContext);
-
+
}
private void attachCollectionClearFacets(final ProcessMethodContext processMethodContext) {
@@ -60,7 +58,7 @@ public class CollectionClearFacetFactory
final Method getMethod = processMethodContext.getMethod();
final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
- Class<?> cls = processMethodContext.getCls();
+ final Class<?> cls = processMethodContext.getCls();
final Method method =
MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.CLEAR_PREFIX + capitalizedName,
void.class, null);
@@ -79,28 +77,26 @@ public class CollectionClearFacetFactory
}
}
+ // ///////////////////////////////////////////////////////
+ // Dependencies (injected)
+ // ///////////////////////////////////////////////////////
-
- // ///////////////////////////////////////////////////////
- // Dependencies (injected)
- // ///////////////////////////////////////////////////////
-
protected AdapterMap getAdapterMap() {
return adapterMap;
}
@Override
- public void setAdapterMap(AdapterMap adapterMap) {
+ public void setAdapterMap(final AdapterMap adapterMap) {
this.adapterMap = adapterMap;
}
protected ObjectDirtier getObjectDirtier() {
return objectDirtier;
}
-
+
@Override
- public void setObjectDirtier(ObjectDirtier objectDirtier) {
+ public void setObjectDirtier(final ObjectDirtier objectDirtier) {
this.objectDirtier = objectDirtier;
}
-
-}
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetViaAccessor.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetViaAccessor.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetViaAccessor.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetViaAccessor.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.collections.clear;
import java.lang.reflect.Method;
@@ -34,18 +33,14 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionClearFacetAbstract;
-
public class CollectionClearFacetViaAccessor extends CollectionClearFacetAbstract implements ImperativeFacet {
private final Method method;
- private final AdapterMap adapterMap;
+ private final AdapterMap adapterMap;
private final ObjectDirtier objectDirtier;
- public CollectionClearFacetViaAccessor(
- final Method method,
- final FacetHolder holder,
- final AdapterMap adapterManager,
- final ObjectDirtier objectDirtier) {
+ public CollectionClearFacetViaAccessor(final Method method, final FacetHolder holder,
+ final AdapterMap adapterManager, final ObjectDirtier objectDirtier) {
super(holder);
this.method = method;
this.adapterMap = adapterManager;
@@ -53,26 +48,26 @@ public class CollectionClearFacetViaAcce
}
/**
- * Returns a singleton list of the {@link Method} provided in the constructor.
+ * Returns a singleton list of the {@link Method} provided in the constructor.
*/
@Override
public List<Method> getMethods() {
- return Collections.singletonList(method);
+ return Collections.singletonList(method);
}
- @Override
+ @Override
public boolean impliesResolve() {
- return true;
- }
+ return true;
+ }
- /**
- * Bytecode cannot automatically call {@link DomainObjectContainer#objectChanged(Object)}
- * because cannot distinguish whether interacting with accessor to read it or to modify its contents.
- */
- @Override
+ /**
+ * Bytecode cannot automatically call {@link DomainObjectContainer#objectChanged(Object)} because cannot distinguish
+ * whether interacting with accessor to read it or to modify its contents.
+ */
+ @Override
public boolean impliesObjectChanged() {
- return false;
- }
+ return false;
+ }
@Override
public void clear(final ObjectAdapter owningAdapter) {
@@ -82,23 +77,21 @@ public class CollectionClearFacetViaAcce
getObjectDirtier().objectChanged(adapter);
}
- @Override
+ @Override
protected String toStringValues() {
return "method=" + method;
}
-
- ///////////////////////////////////////////////////////////
+ // /////////////////////////////////////////////////////////
// Dependencies (from constructor)
- ///////////////////////////////////////////////////////////
+ // /////////////////////////////////////////////////////////
+
+ protected AdapterMap getAdapterMap() {
+ return adapterMap;
+ }
- protected AdapterMap getAdapterMap() {
- return adapterMap;
- }
-
protected ObjectDirtier getObjectDirtier() {
return objectDirtier;
}
-
-}
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetViaMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetViaMethod.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetViaMethod.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.collections.clear;
import java.lang.reflect.Method;
@@ -30,36 +29,36 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionClearFacetAbstract;
-
public class CollectionClearFacetViaMethod extends CollectionClearFacetAbstract implements ImperativeFacet {
private final Method method;
- public CollectionClearFacetViaMethod(
- final Method method,
- final FacetHolder holder) {
+ public CollectionClearFacetViaMethod(final Method method, final FacetHolder holder) {
super(holder);
this.method = method;
}
/**
- * Returns a singleton list of the {@link Method} provided in the constructor.
+ * Returns a singleton list of the {@link Method} provided in the constructor.
*/
+ @Override
public List<Method> getMethods() {
- return Collections.singletonList(method);
+ return Collections.singletonList(method);
}
- public boolean impliesResolve() {
- return true;
- }
+ @Override
+ public boolean impliesResolve() {
+ return true;
+ }
- public boolean impliesObjectChanged() {
- return true;
- }
-
+ @Override
+ public boolean impliesObjectChanged() {
+ return true;
+ }
+ @Override
public void clear(final ObjectAdapter owningAdapter) {
- AdapterInvokeUtils.invoke(method, owningAdapter);
+ AdapterInvokeUtils.invoke(method, owningAdapter);
}
@Override
@@ -68,4 +67,3 @@ public class CollectionClearFacetViaMeth
}
}
-
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/CollectionFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/CollectionFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/CollectionFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/CollectionFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.collection;
-package org.apache.isis.core.progmodel.facets.collections.collection;
-
import org.apache.isis.core.metamodel.adapter.map.AdapterMap;
import org.apache.isis.core.metamodel.adapter.map.AdapterMapAware;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -31,76 +30,73 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacetInferredFromGenerics;
import org.apache.isis.core.metamodel.specloader.collectiontyperegistry.CollectionTypeRegistry;
import org.apache.isis.core.metamodel.specloader.collectiontyperegistry.CollectionTypeRegistryAware;
-
-
-public class CollectionFacetFactory extends FacetFactoryAbstract implements CollectionTypeRegistryAware, AdapterMapAware {
-
- private CollectionTypeRegistry collectionTypeRegistry;
- private AdapterMap adapterMap;
-
- public CollectionFacetFactory() {
- super(FeatureType.OBJECTS_ONLY);
- }
-
-
- @Override
- public void process(ProcessClassContext processClassContaxt) {
-
- if (collectionTypeRegistry.isCollectionType(processClassContaxt.getCls())) {
- processCollectionType(processClassContaxt);
- } else if (collectionTypeRegistry.isArrayType(processClassContaxt.getCls())) {
- processAsArrayType(processClassContaxt);
- }
-
+
+public class CollectionFacetFactory extends FacetFactoryAbstract implements CollectionTypeRegistryAware,
+ AdapterMapAware {
+
+ private CollectionTypeRegistry collectionTypeRegistry;
+ private AdapterMap adapterMap;
+
+ public CollectionFacetFactory() {
+ super(FeatureType.OBJECTS_ONLY);
}
+ @Override
+ public void process(final ProcessClassContext processClassContaxt) {
+
+ if (collectionTypeRegistry.isCollectionType(processClassContaxt.getCls())) {
+ processCollectionType(processClassContaxt);
+ } else if (collectionTypeRegistry.isArrayType(processClassContaxt.getCls())) {
+ processAsArrayType(processClassContaxt);
+ }
+ }
- private void processCollectionType(ProcessClassContext processClassContaxt) {
+ private void processCollectionType(final ProcessClassContext processClassContaxt) {
final FacetHolder facetHolder = processClassContaxt.getFacetHolder();
- final TypeOfFacet typeOfFacet = facetHolder.getFacet(TypeOfFacet.class);
- if (typeOfFacet == null) {
- Class<?> collectionElementType = collectionElementType(processClassContaxt.getCls());
- facetHolder.addFacet(collectionElementType != Object.class ? new TypeOfFacetInferredFromGenerics(
- collectionElementType, facetHolder, getSpecificationLookup()) : new TypeOfFacetDefaultToObject(facetHolder, getSpecificationLookup()));
- } else {
- // nothing
- }
- facetHolder.addFacet(new JavaCollectionFacet(facetHolder, getAdapterMap()));
+ final TypeOfFacet typeOfFacet = facetHolder.getFacet(TypeOfFacet.class);
+ if (typeOfFacet == null) {
+ final Class<?> collectionElementType = collectionElementType(processClassContaxt.getCls());
+ facetHolder.addFacet(collectionElementType != Object.class ? new TypeOfFacetInferredFromGenerics(
+ collectionElementType, facetHolder, getSpecificationLookup()) : new TypeOfFacetDefaultToObject(
+ facetHolder, getSpecificationLookup()));
+ } else {
+ // nothing
+ }
+ facetHolder.addFacet(new JavaCollectionFacet(facetHolder, getAdapterMap()));
return;
- }
+ }
- private void processAsArrayType(ProcessClassContext processClassContaxt) {
+ private void processAsArrayType(final ProcessClassContext processClassContaxt) {
final FacetHolder facetHolder = processClassContaxt.getFacetHolder();
facetHolder.addFacet(new JavaArrayFacet(facetHolder, getAdapterMap()));
- facetHolder.addFacet(new TypeOfFacetInferredFromArray(processClassContaxt.getCls().getComponentType(), facetHolder, getSpecificationLookup()));
+ facetHolder.addFacet(new TypeOfFacetInferredFromArray(processClassContaxt.getCls().getComponentType(),
+ facetHolder, getSpecificationLookup()));
+ }
+
+ private Class<?> collectionElementType(final Class<?> cls) {
+ return Object.class;
}
-
- private Class<?> collectionElementType(final Class<?> cls) {
- return Object.class;
- }
-
-
- ////////////////////////////////////////////////////////////////
- // Dependencies (injected)
- ////////////////////////////////////////////////////////////////
-
- /**
- * Injected since {@link CollectionTypeRegistryAware}.
- */
+ // //////////////////////////////////////////////////////////////
+ // Dependencies (injected)
+ // //////////////////////////////////////////////////////////////
+
+ /**
+ * Injected since {@link CollectionTypeRegistryAware}.
+ */
@Override
- public void setCollectionTypeRegistry(final CollectionTypeRegistry collectionTypeRegistry) {
- this.collectionTypeRegistry = collectionTypeRegistry;
- }
+ public void setCollectionTypeRegistry(final CollectionTypeRegistry collectionTypeRegistry) {
+ this.collectionTypeRegistry = collectionTypeRegistry;
+ }
public AdapterMap getAdapterMap() {
return adapterMap;
}
-
+
@Override
- public void setAdapterMap(AdapterMap adapterManager) {
+ public void setAdapterMap(final AdapterMap adapterManager) {
this.adapterMap = adapterManager;
- }
-
-}
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/JavaArrayFacet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/JavaArrayFacet.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/JavaArrayFacet.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/JavaArrayFacet.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.collections.collection;
import java.util.ArrayList;
@@ -28,7 +27,6 @@ import org.apache.isis.core.metamodel.ad
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.collections.CollectionFacetAbstract;
-
public class JavaArrayFacet extends CollectionFacetAbstract {
private final AdapterMap adapterMap;
@@ -43,8 +41,8 @@ public class JavaArrayFacet extends Coll
*/
@Override
public void init(final ObjectAdapter collectionAdapter, final ObjectAdapter[] initData) {
- int length = initData.length;
- Object[] array = new Object[length];
+ final int length = initData.length;
+ final Object[] array = new Object[length];
for (int i = 0; i < length; i++) {
array[i] = initData[i].getObject();
}
@@ -55,11 +53,11 @@ public class JavaArrayFacet extends Coll
* Expected to be called with a {@link ObjectAdapter} wrapping an array.
*/
@Override
- public Collection<ObjectAdapter> collection(ObjectAdapter collectionAdapter) {
+ public Collection<ObjectAdapter> collection(final ObjectAdapter collectionAdapter) {
final Object[] array = array(collectionAdapter);
- ArrayList<ObjectAdapter> objectCollection = new ArrayList<ObjectAdapter>(array.length);
- for (int i = 0; i < array.length; i++) {
- ObjectAdapter element = getAdapterMap().getAdapterFor(array[i]);
+ final ArrayList<ObjectAdapter> objectCollection = new ArrayList<ObjectAdapter>(array.length);
+ for (final Object element2 : array) {
+ final ObjectAdapter element = getAdapterMap().getAdapterFor(element2);
objectCollection.add(element);
}
return objectCollection;
@@ -95,4 +93,3 @@ public class JavaArrayFacet extends Coll
}
}
-
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/JavaCollectionFacet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/JavaCollectionFacet.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/JavaCollectionFacet.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/JavaCollectionFacet.java Tue Apr 26 22:03:43 2011
@@ -17,39 +17,34 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.collections.collection;
import java.util.Collection;
import java.util.Iterator;
import org.apache.commons.collections.CollectionUtils;
-
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.adapter.map.AdapterMap;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.collections.CollectionFacetAbstract;
-
public class JavaCollectionFacet extends CollectionFacetAbstract {
private final AdapterMap adapterMap;
- public JavaCollectionFacet(
- final FacetHolder holder,
- final AdapterMap adapterManager) {
+ public JavaCollectionFacet(final FacetHolder holder, final AdapterMap adapterManager) {
super(holder);
this.adapterMap = adapterManager;
}
@Override
@SuppressWarnings("unchecked")
- public Collection<ObjectAdapter> collection(ObjectAdapter wrappedCollection) {
- Collection<?> collectionOfUnderlying = collectionOfUnderlying(wrappedCollection);
+ public Collection<ObjectAdapter> collection(final ObjectAdapter wrappedCollection) {
+ final Collection<?> collectionOfUnderlying = collectionOfUnderlying(wrappedCollection);
return CollectionUtils.collect(collectionOfUnderlying, new ObjectToAdapterTransformer(getAdapterMap()));
}
- @Override
+ @Override
public ObjectAdapter firstElement(final ObjectAdapter collection) {
final Iterator<ObjectAdapter> iterator = iterator(collection);
return iterator.hasNext() ? iterator.next() : null;
@@ -65,8 +60,8 @@ public class JavaCollectionFacet extends
public void init(final ObjectAdapter collection, final ObjectAdapter[] initData) {
final Collection javaCollection = collectionOfUnderlying(collection);
javaCollection.clear();
- for (int i = 0; i < initData.length; i++) {
- javaCollection.add(initData[i].getObject());
+ for (final ObjectAdapter element : initData) {
+ javaCollection.add(element.getObject());
}
}
@@ -77,15 +72,12 @@ public class JavaCollectionFacet extends
return (Collection<?>) wrappedCollection.getObject();
}
-
-
- ////////////////////////////////////////////////////////////////////////
+ // //////////////////////////////////////////////////////////////////////
// Dependencies (from constructor)
- ////////////////////////////////////////////////////////////////////////
-
+ // //////////////////////////////////////////////////////////////////////
+
private AdapterMap getAdapterMap() {
- return adapterMap;
- }
+ return adapterMap;
+ }
}
-
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/ObjectToAdapterTransformer.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/ObjectToAdapterTransformer.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/ObjectToAdapterTransformer.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/collection/ObjectToAdapterTransformer.java Tue Apr 26 22:03:43 2011
@@ -17,39 +17,35 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.collection;
-package org.apache.isis.core.progmodel.facets.collections.collection;
-
import org.apache.commons.collections.Transformer;
-
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.adapter.map.AdapterMap;
-
-/**
- * Uses the Commons Collection API to transform {@link Object}s into
- * {@link ObjectAdapter} adapters.
- *
- */
-public final class ObjectToAdapterTransformer implements Transformer {
-
- private final AdapterMap adapterMap;
-
- public ObjectToAdapterTransformer(final AdapterMap adapterManager) {
- this.adapterMap = adapterManager;
- }
-
+
+/**
+ * Uses the Commons Collection API to transform {@link Object}s into {@link ObjectAdapter} adapters.
+ *
+ */
+public final class ObjectToAdapterTransformer implements Transformer {
+
+ private final AdapterMap adapterMap;
+
+ public ObjectToAdapterTransformer(final AdapterMap adapterManager) {
+ this.adapterMap = adapterManager;
+ }
+
@Override
- public Object transform(Object object) {
- return getAdapterMap().adapterFor(object);
- }
-
- // //////////////////////////////////////////////////////////////////
- // Dependencies (from constructor)
- // //////////////////////////////////////////////////////////////////
+ public Object transform(final Object object) {
+ return getAdapterMap().adapterFor(object);
+ }
+
+ // //////////////////////////////////////////////////////////////////
+ // Dependencies (from constructor)
+ // //////////////////////////////////////////////////////////////////
public AdapterMap getAdapterMap() {
return adapterMap;
- }
-
-
+ }
+
}
\ No newline at end of file
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutable.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutable.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutable.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutable.java Tue Apr 26 22:03:43 2011
@@ -17,23 +17,22 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.disabled.fromimmutable;
-package org.apache.isis.core.progmodel.facets.collections.disabled.fromimmutable;
-
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet;
import org.apache.isis.core.progmodel.facets.members.disable.DisabledFacetAbstract;
-
-
-public class DisabledFacetForCollectionDerivedFromImmutable extends DisabledFacetAbstract {
-
- public DisabledFacetForCollectionDerivedFromImmutable(final ImmutableFacet immutableFacet, final FacetHolder holder) {
- super(immutableFacet.value(), holder);
- }
-
- public String disabledReason(final ObjectAdapter target) {
- return when().isNowFor(target) ? "Immutable" : null;
- }
-
-}
+
+public class DisabledFacetForCollectionDerivedFromImmutable extends DisabledFacetAbstract {
+
+ public DisabledFacetForCollectionDerivedFromImmutable(final ImmutableFacet immutableFacet, final FacetHolder holder) {
+ super(immutableFacet.value(), holder);
+ }
+
+ @Override
+ public String disabledReason(final ObjectAdapter target) {
+ return when().isNowFor(target) ? "Immutable" : null;
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,7 @@
* under the License.
*/
-
-package org.apache.isis.core.progmodel.facets.collections.disabled.fromimmutable;
-
+package org.apache.isis.core.progmodel.facets.collections.disabled.fromimmutable;
import org.apache.isis.core.metamodel.facetapi.FacetUtil;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -28,26 +26,26 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-
/**
- * REVIEW: I'm not sure this {@link FacetFactory} actually makes sense. Just because a type is immutable,
- * doesn't imply that the property can't change the instance that it refers to?
- */
-public class DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory extends AnnotationBasedFacetFactoryAbstract {
-
- public DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory() {
- super(FeatureType.COLLECTIONS_ONLY);
- }
-
- @Override
- public void process(ProcessMethodContext processMethodContext) {
- ObjectSpecification spec = getSpecificationLookup().loadSpecification(processMethodContext.getMethod().getDeclaringClass());
- if(spec.containsDoOpFacet(ImmutableFacet.class)) {
- final ImmutableFacet immutableFacet = spec.getFacet(ImmutableFacet.class);
+ * REVIEW: I'm not sure this {@link FacetFactory} actually makes sense. Just because a type is immutable, doesn't imply
+ * that the property can't change the instance that it refers to?
+ */
+public class DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+ public DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory() {
+ super(FeatureType.COLLECTIONS_ONLY);
+ }
+
+ @Override
+ public void process(final ProcessMethodContext processMethodContext) {
+ final ObjectSpecification spec =
+ getSpecificationLookup().loadSpecification(processMethodContext.getMethod().getDeclaringClass());
+ if (spec.containsDoOpFacet(ImmutableFacet.class)) {
+ final ImmutableFacet immutableFacet = spec.getFacet(ImmutableFacet.class);
final FacetedMethod facetHolder = processMethodContext.getFacetHolder();
- FacetUtil.addFacet(new DisabledFacetForCollectionDerivedFromImmutable(immutableFacet, facetHolder));
- }
- }
-
-}
+ FacetUtil.addFacet(new DisabledFacetForCollectionDerivedFromImmutable(immutableFacet, facetHolder));
+ }
+ }
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.modify;
-package org.apache.isis.core.progmodel.facets.collections.modify;
-
import java.lang.reflect.Method;
import org.apache.isis.core.commons.lang.NameUtils;
@@ -38,37 +37,36 @@ import org.apache.isis.core.progmodel.fa
import org.apache.isis.core.progmodel.facets.MethodPrefixConstants;
import org.apache.isis.core.progmodel.facets.collections.validate.CollectionValidateAddToFacetViaMethod;
import org.apache.isis.core.progmodel.facets.collections.validate.CollectionValidateRemoveFromFacetViaMethod;
-
/**
- * TODO: should probably split out into two {@link FacetFactory}s, one for
- * <tt>addTo()</tt>/<tt>removeFrom()</tt> and one for <tt>validateAddTo()</tt>/<tt>validateRemoveFrom()</tt>.
- */
-public class CollectionAddRemoveAndValidateFacetFactory extends MethodPrefixBasedFacetFactoryAbstract implements
- ObjectDirtierAware {
-
- private static final String[] PREFIXES = { };
-
- private ObjectDirtier objectDirtier;
-
- public CollectionAddRemoveAndValidateFacetFactory() {
- super(FeatureType.COLLECTIONS_ONLY, PREFIXES);
- }
-
- @Override
- public void process(ProcessMethodContext processMethodContext) {
+ * TODO: should probably split out into two {@link FacetFactory}s, one for <tt>addTo()</tt>/<tt>removeFrom()</tt> and
+ * one for <tt>validateAddTo()</tt>/<tt>validateRemoveFrom()</tt>.
+ */
+public class CollectionAddRemoveAndValidateFacetFactory extends MethodPrefixBasedFacetFactoryAbstract implements
+ ObjectDirtierAware {
+
+ private static final String[] PREFIXES = {};
+
+ private ObjectDirtier objectDirtier;
+
+ public CollectionAddRemoveAndValidateFacetFactory() {
+ super(FeatureType.COLLECTIONS_ONLY, PREFIXES);
+ }
+
+ @Override
+ public void process(final ProcessMethodContext processMethodContext) {
final Class<?> collectionType = attachAddToFacetAndRemoveFromFacet(processMethodContext);
attachValidateAddToAndRemoveFromFacetIfMethodsFound(processMethodContext, collectionType);
}
- private Class<?> attachAddToFacetAndRemoveFromFacet(ProcessMethodContext processMethodContext) {
+ private Class<?> attachAddToFacetAndRemoveFromFacet(final ProcessMethodContext processMethodContext) {
final Method accessorMethod = processMethodContext.getMethod();
final String capitalizedName = NameUtils.javaBaseName(accessorMethod.getName());
- Class<?> cls = processMethodContext.getCls();
-
+ final Class<?> cls = processMethodContext.getCls();
+
// add
final Method addToMethod =
MethodFinderUtils.findMethod(cls, MethodScope.OBJECT,
@@ -129,7 +127,7 @@ public class CollectionAddRemoveAndValid
+ "both deal with same type of object: " + addType + "; " + removeType);
}
- Class<?> type = addType != null ? addType : removeType;
+ final Class<?> type = addType != null ? addType : removeType;
if (type != null) {
FacetUtil
.addFacet(new TypeOfFacetInferredFromSupportingMethods(type, collection, getSpecificationLookup()));
@@ -137,7 +135,7 @@ public class CollectionAddRemoveAndValid
return type;
}
- private void attachValidateAddToAndRemoveFromFacetIfMethodsFound(ProcessMethodContext processMethodContext,
+ private void attachValidateAddToAndRemoveFromFacetIfMethodsFound(final ProcessMethodContext processMethodContext,
final Class<?> collectionType) {
attachValidateAddToFacetIfValidateAddToMethodIsFound(processMethodContext, collectionType);
attachValidateRemoveFacetIfValidateRemoveFromMethodIsFound(processMethodContext, collectionType);
@@ -149,7 +147,7 @@ public class CollectionAddRemoveAndValid
final Method getMethod = processMethodContext.getMethod();
final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
- Class<?> cls = processMethodContext.getCls();
+ final Class<?> cls = processMethodContext.getCls();
final Class<?>[] paramTypes = MethodFinderUtils.paramTypesOrNull(collectionType);
Method validateAddToMethod =
MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.VALIDATE_ADD_TO_PREFIX
@@ -174,7 +172,7 @@ public class CollectionAddRemoveAndValid
final Method getMethod = processMethodContext.getMethod();
final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
- Class<?> cls = processMethodContext.getCls();
+ final Class<?> cls = processMethodContext.getCls();
final Class<?>[] paramTypes = MethodFinderUtils.paramTypesOrNull(collectionType);
Method validateRemoveFromMethod =
MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.VALIDATE_REMOVE_FROM_PREFIX
@@ -194,19 +192,17 @@ public class CollectionAddRemoveAndValid
FacetUtil.addFacet(new CollectionValidateRemoveFromFacetViaMethod(validateRemoveFromMethod, collection));
}
-
- // ///////////////////////////////////////////////////////
- // Dependencies (injected)
- // ///////////////////////////////////////////////////////
-
+ // ///////////////////////////////////////////////////////
+ // Dependencies (injected)
+ // ///////////////////////////////////////////////////////
protected ObjectDirtier getObjectDirtier() {
return objectDirtier;
}
-
+
@Override
- public void setObjectDirtier(ObjectDirtier objectDirtier) {
+ public void setObjectDirtier(final ObjectDirtier objectDirtier) {
this.objectDirtier = objectDirtier;
}
-
-}
+
+}
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaAccessor.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaAccessor.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaAccessor.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaAccessor.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.collections.modify;
import java.lang.reflect.Method;
@@ -34,43 +33,39 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacetAbstract;
-
public class CollectionAddToFacetViaAccessor extends CollectionAddToFacetAbstract implements ImperativeFacet {
private final Method method;
- private final ObjectDirtier objectDirtier;
+ private final ObjectDirtier objectDirtier;
- public CollectionAddToFacetViaAccessor(
- final Method method,
- final FacetHolder holder,
- final ObjectDirtier objectDirtier) {
+ public CollectionAddToFacetViaAccessor(final Method method, final FacetHolder holder,
+ final ObjectDirtier objectDirtier) {
super(holder);
this.method = method;
this.objectDirtier = objectDirtier;
}
/**
- * Returns a singleton list of the {@link Method} provided in the constructor.
+ * Returns a singleton list of the {@link Method} provided in the constructor.
*/
@Override
public List<Method> getMethods() {
- return Collections.singletonList(method);
+ return Collections.singletonList(method);
}
- @Override
+ @Override
public boolean impliesResolve() {
- return true;
- }
+ return true;
+ }
- /**
- * Bytecode cannot automatically call {@link DomainObjectContainer#objectChanged(Object)}
- * because cannot distinguish whether interacting with accessor to read it or to modify its contents.
- */
- @Override
+ /**
+ * Bytecode cannot automatically call {@link DomainObjectContainer#objectChanged(Object)} because cannot distinguish
+ * whether interacting with accessor to read it or to modify its contents.
+ */
+ @Override
public boolean impliesObjectChanged() {
- return false;
- }
-
+ return false;
+ }
@Override
public void add(final ObjectAdapter owningAdapter, final ObjectAdapter elementAdapter) {
@@ -84,13 +79,11 @@ public class CollectionAddToFacetViaAcce
return "method=" + method;
}
-
- ///////////////////////////////////////////////////////
+ // /////////////////////////////////////////////////////
// Dependencies
- ///////////////////////////////////////////////////////
-
+ // /////////////////////////////////////////////////////
+
protected ObjectDirtier getObjectDirtier() {
return objectDirtier;
}
}
-
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaMethod.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaMethod.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.collections.modify;
import java.lang.reflect.Method;
@@ -30,36 +29,36 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacetAbstract;
-
public class CollectionAddToFacetViaMethod extends CollectionAddToFacetAbstract implements ImperativeFacet {
private final Method method;
- public CollectionAddToFacetViaMethod(
- final Method method,
- final FacetHolder holder) {
+ public CollectionAddToFacetViaMethod(final Method method, final FacetHolder holder) {
super(holder);
this.method = method;
}
/**
- * Returns a singleton list of the {@link Method} provided in the constructor.
+ * Returns a singleton list of the {@link Method} provided in the constructor.
*/
+ @Override
public List<Method> getMethods() {
- return Collections.singletonList(method);
+ return Collections.singletonList(method);
}
- public boolean impliesResolve() {
- return true;
- }
+ @Override
+ public boolean impliesResolve() {
+ return true;
+ }
- public boolean impliesObjectChanged() {
- return true;
- }
-
+ @Override
+ public boolean impliesObjectChanged() {
+ return true;
+ }
+ @Override
public void add(final ObjectAdapter owningAdapter, final ObjectAdapter elementAdapter) {
- AdapterInvokeUtils.invoke(method, owningAdapter, elementAdapter );
+ AdapterInvokeUtils.invoke(method, owningAdapter, elementAdapter);
}
@Override
@@ -68,4 +67,3 @@ public class CollectionAddToFacetViaMeth
}
}
-
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaAccessor.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaAccessor.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaAccessor.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaAccessor.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.collections.modify;
import java.lang.reflect.Method;
@@ -34,42 +33,39 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacetAbstract;
-
public class CollectionRemoveFromFacetViaAccessor extends CollectionRemoveFromFacetAbstract implements ImperativeFacet {
private final Method method;
private final ObjectDirtier objectDirtier;
- public CollectionRemoveFromFacetViaAccessor(
- final Method method,
- final FacetHolder holder,
- final ObjectDirtier objectDirtier) {
+ public CollectionRemoveFromFacetViaAccessor(final Method method, final FacetHolder holder,
+ final ObjectDirtier objectDirtier) {
super(holder);
this.method = method;
this.objectDirtier = objectDirtier;
}
/**
- * Returns a singleton list of the {@link Method} provided in the constructor.
+ * Returns a singleton list of the {@link Method} provided in the constructor.
*/
@Override
public List<Method> getMethods() {
- return Collections.singletonList(method);
+ return Collections.singletonList(method);
}
- @Override
+ @Override
public boolean impliesResolve() {
- return true;
- }
+ return true;
+ }
- /**
- * Bytecode cannot automatically call {@link DomainObjectContainer#objectChanged(Object)}
- * because cannot distinguish whether interacting with accessor to read it or to modify its contents.
- */
- @Override
+ /**
+ * Bytecode cannot automatically call {@link DomainObjectContainer#objectChanged(Object)} because cannot distinguish
+ * whether interacting with accessor to read it or to modify its contents.
+ */
+ @Override
public boolean impliesObjectChanged() {
- return false;
- }
+ return false;
+ }
@Override
public void remove(final ObjectAdapter owningAdapter, final ObjectAdapter elementAdapter) {
@@ -78,21 +74,17 @@ public class CollectionRemoveFromFacetVi
getObjectDirtier().objectChanged(owningAdapter);
}
- @Override
+ @Override
protected String toStringValues() {
return "method=" + method;
}
-
- ///////////////////////////////////////////////////////////
+ // /////////////////////////////////////////////////////////
// Dependencies (from constructor)
- ///////////////////////////////////////////////////////////
+ // /////////////////////////////////////////////////////////
protected ObjectDirtier getObjectDirtier() {
return objectDirtier;
}
-
-
}
-
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaMethod.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaMethod.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
* under the License.
*/
-
package org.apache.isis.core.progmodel.facets.collections.modify;
import java.lang.reflect.Method;
@@ -30,33 +29,34 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacetAbstract;
-
public class CollectionRemoveFromFacetViaMethod extends CollectionRemoveFromFacetAbstract implements ImperativeFacet {
private final Method method;
- public CollectionRemoveFromFacetViaMethod(
- final Method method,
- final FacetHolder holder) {
+ public CollectionRemoveFromFacetViaMethod(final Method method, final FacetHolder holder) {
super(holder);
this.method = method;
}
/**
- * Returns a singleton list of the {@link Method} provided in the constructor.
+ * Returns a singleton list of the {@link Method} provided in the constructor.
*/
+ @Override
public List<Method> getMethods() {
- return Collections.singletonList(method);
+ return Collections.singletonList(method);
}
- public boolean impliesResolve() {
- return true;
- }
+ @Override
+ public boolean impliesResolve() {
+ return true;
+ }
- public boolean impliesObjectChanged() {
- return true;
- }
+ @Override
+ public boolean impliesObjectChanged() {
+ return true;
+ }
+ @Override
public void remove(final ObjectAdapter owningAdapter, final ObjectAdapter elementAdapter) {
AdapterInvokeUtils.invoke(method, owningAdapter, elementAdapter);
}
@@ -67,4 +67,3 @@ public class CollectionRemoveFromFacetVi
}
}
-
Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/TypeOfFacetInferredFromSupportingMethods.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/TypeOfFacetInferredFromSupportingMethods.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/TypeOfFacetInferredFromSupportingMethods.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/TypeOfFacetInferredFromSupportingMethods.java Tue Apr 26 22:03:43 2011
@@ -17,22 +17,17 @@
* under the License.
*/
+package org.apache.isis.core.progmodel.facets.collections.modify;
-package org.apache.isis.core.progmodel.facets.collections.modify;
-
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacetAbstract;
import org.apache.isis.core.metamodel.spec.SpecificationLookup;
-
-
-public class TypeOfFacetInferredFromSupportingMethods extends TypeOfFacetAbstract {
-
- public TypeOfFacetInferredFromSupportingMethods(
- final Class<?> type,
- final FacetHolder holder,
- final SpecificationLookup specificationLookup) {
- super(type, holder, specificationLookup);
- }
-
-}
-
+
+public class TypeOfFacetInferredFromSupportingMethods extends TypeOfFacetAbstract {
+
+ public TypeOfFacetInferredFromSupportingMethods(final Class<?> type, final FacetHolder holder,
+ final SpecificationLookup specificationLookup) {
+ super(type, holder, specificationLookup);
+ }
+
+}