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 [13/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/interna...

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertyModifyFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertyModifyFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertyModifyFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertyModifyFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.modify;
 
-package org.apache.isis.core.progmodel.facets.properties.modify;
-
 import java.lang.reflect.Method;
 
 import org.apache.isis.core.commons.lang.NameUtils;
@@ -30,40 +29,41 @@ 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 PropertyModifyFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
-
-    private static final String[] PREFIXES = { MethodPrefixConstants.MODIFY_PREFIX };
-
-    public PropertyModifyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY, PREFIXES);
-    }
-
+
+public class PropertyModifyFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
+
+    private static final String[] PREFIXES = { MethodPrefixConstants.MODIFY_PREFIX };
+
+    public PropertyModifyFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY, PREFIXES);
+    }
+
     @Override
-    public void process(ProcessMethodContext processMethodContext) {
+    public void process(final ProcessMethodContext processMethodContext) {
 
         attachPropertyModifyFacetIfModifyMethodIsFound(processMethodContext);
     }
 
-    private void attachPropertyModifyFacetIfModifyMethodIsFound(ProcessMethodContext processMethodContext) {
-        
+    private void attachPropertyModifyFacetIfModifyMethodIsFound(final ProcessMethodContext processMethodContext) {
+
         final Method getMethod = processMethodContext.getMethod();
         final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
-        
+
         final Class<?> returnType = getMethod.getReturnType();
         final Class<?>[] paramTypes = new Class[] { returnType };
-        
-        Class<?> cls = processMethodContext.getCls();
-        final Method modifyMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.MODIFY_PREFIX + capitalizedName, void.class, paramTypes);
-        
+
+        final Class<?> cls = processMethodContext.getCls();
+        final Method modifyMethod =
+            MethodFinderUtils.findMethod(cls, MethodScope.OBJECT,
+                MethodPrefixConstants.MODIFY_PREFIX + capitalizedName, void.class, paramTypes);
+
         if (modifyMethod == null) {
             return;
-        } 
+        }
         processMethodContext.removeMethod(modifyMethod);
-        
+
         final FacetHolder property = processMethodContext.getFacetHolder();
         FacetUtil.addFacet(new PropertySetterFacetViaModifyMethod(modifyMethod, property));
     }
 
-}
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetAndClearFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetAndClearFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetAndClearFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetAndClearFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.modify;
 
-package org.apache.isis.core.progmodel.facets.properties.modify;
-
 import java.lang.reflect.Method;
 
 import org.apache.isis.core.commons.lang.NameUtils;
@@ -33,41 +32,41 @@ import org.apache.isis.core.progmodel.fa
 import org.apache.isis.core.progmodel.facets.members.disable.DisabledFacet;
 import org.apache.isis.core.progmodel.facets.members.disable.staticmethod.DisabledFacetAlways;
 import org.apache.isis.core.progmodel.facets.properties.derived.inferred.DerivedFacetInferred;
-
-
-public class PropertySetAndClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
-
-    private static final String[] PREFIXES = { MethodPrefixConstants.SET_PREFIX, MethodPrefixConstants.CLEAR_PREFIX };
-
-    public PropertySetAndClearFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY, PREFIXES);
-    }
-
+
+public class PropertySetAndClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
+
+    private static final String[] PREFIXES = { MethodPrefixConstants.SET_PREFIX, MethodPrefixConstants.CLEAR_PREFIX };
+
+    public PropertySetAndClearFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY, PREFIXES);
+    }
+
     @Override
-    public void process(ProcessMethodContext processMethodContext) {
+    public void process(final ProcessMethodContext processMethodContext) {
 
-        Method setMethod = attachPropertyModifyFacetIfSetterIsFound(processMethodContext);
-        Method clearMethod = attachPropertyClearFacetIfClearMethodIsFound(processMethodContext);
+        final Method setMethod = attachPropertyModifyFacetIfSetterIsFound(processMethodContext);
+        final Method clearMethod = attachPropertyClearFacetIfClearMethodIsFound(processMethodContext);
 
         attachPropertyClearFacetUsingSetterIfRequired(processMethodContext, setMethod, clearMethod);
     }
 
     /**
-     * Sets up the {@link PropertySetterFacetViaSetterMethod} to invoke the property's setter if available,
-     * but if none then marks the property as {@link DerivedFacet derived} and {@link DisabledFacet disabled}
-     * otherwise.
+     * Sets up the {@link PropertySetterFacetViaSetterMethod} to invoke the property's setter if available, but if none
+     * then marks the property as {@link DerivedFacet derived} and {@link DisabledFacet disabled} otherwise.
      */
-    private static Method attachPropertyModifyFacetIfSetterIsFound(ProcessMethodContext processMethodContext) {
-        
+    private static Method attachPropertyModifyFacetIfSetterIsFound(final ProcessMethodContext processMethodContext) {
+
         final Method getMethod = processMethodContext.getMethod();
         final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
-        
-        Class<?> cls = processMethodContext.getCls();
+
+        final Class<?> cls = processMethodContext.getCls();
         final Class<?> returnType = getMethod.getReturnType();
         final Class<?>[] paramTypes = new Class[] { returnType };
-        Method setMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.SET_PREFIX + capitalizedName, void.class, paramTypes);
+        final Method setMethod =
+            MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.SET_PREFIX + capitalizedName,
+                void.class, paramTypes);
         processMethodContext.removeMethod(setMethod);
-        
+
         final FacetHolder property = processMethodContext.getFacetHolder();
         if (setMethod != null) {
             FacetUtil.addFacet(new PropertySetterFacetViaSetterMethod(setMethod, property));
@@ -76,40 +75,41 @@ public class PropertySetAndClearFacetFac
             FacetUtil.addFacet(new DerivedFacetInferred(property));
             FacetUtil.addFacet(new DisabledFacetAlways(property));
         }
-        
+
         return setMethod;
     }
 
-    private Method attachPropertyClearFacetIfClearMethodIsFound(ProcessMethodContext processMethodContext) {
-        Class<?> cls = processMethodContext.getCls();
+    private Method attachPropertyClearFacetIfClearMethodIsFound(final ProcessMethodContext processMethodContext) {
+        final Class<?> cls = processMethodContext.getCls();
         final Method getMethod = processMethodContext.getMethod();
         final FacetHolder property = processMethodContext.getFacetHolder();
 
         final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
-        final Method clearMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.CLEAR_PREFIX + capitalizedName, void.class, NO_PARAMETERS_TYPES);
-        
+        final Method clearMethod =
+            MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.CLEAR_PREFIX + capitalizedName,
+                void.class, NO_PARAMETERS_TYPES);
+
         if (clearMethod == null) {
             return null;
-        } 
+        }
         processMethodContext.removeMethod(clearMethod);
-        
+
         FacetUtil.addFacet(new PropertyClearFacetViaClearMethod(clearMethod, property));
-        
+
         return clearMethod;
     }
 
-    private static void attachPropertyClearFacetUsingSetterIfRequired(ProcessMethodContext processMethodContext, Method setMethod,
-        Method clearMethod) {
-        
+    private static void attachPropertyClearFacetUsingSetterIfRequired(final ProcessMethodContext processMethodContext,
+        final Method setMethod, final Method clearMethod) {
+
         if (clearMethod != null) {
             return;
         }
         if (setMethod == null) {
             return;
-        } 
+        }
         final FacetHolder property = processMethodContext.getFacetHolder();
         FacetUtil.addFacet(new PropertyClearFacetViaSetterMethod(setMethod, property));
     }
 
-
-}
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetViaModifyMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetViaModifyMethod.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetViaModifyMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetViaModifyMethod.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
  *  under the License.
  */
 
-
 package org.apache.isis.core.progmodel.facets.properties.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.properties.modify.PropertySetterFacetAbstract;
 
-
 public class PropertySetterFacetViaModifyMethod extends PropertySetterFacetAbstract implements ImperativeFacet {
 
     private final Method method;
 
-    public PropertySetterFacetViaModifyMethod(
-    		final Method method, 
-    		final FacetHolder holder) {
+    public PropertySetterFacetViaModifyMethod(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 setProperty(final ObjectAdapter adapter, final ObjectAdapter valueAdapter) {
         AdapterInvokeUtils.invoke(method, adapter, valueAdapter);
     }
@@ -67,4 +67,3 @@ public class PropertySetterFacetViaModif
     }
 
 }
-

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetViaSetterMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetViaSetterMethod.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetViaSetterMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/modify/PropertySetterFacetViaSetterMethod.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.modify;
 
-package org.apache.isis.core.progmodel.facets.properties.modify;
-
 import java.lang.reflect.Method;
 import java.util.Collections;
 import java.util.List;
@@ -29,41 +28,42 @@ 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.properties.modify.PropertySetterFacetAbstract;
-
-
-public class PropertySetterFacetViaSetterMethod extends PropertySetterFacetAbstract implements ImperativeFacet {
-
-    private final Method method;
-
-    public PropertySetterFacetViaSetterMethod(
-    		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;
-	}
-
-	public boolean impliesObjectChanged() {
-		return true;
-	}
-
-    public void setProperty(final ObjectAdapter adapter, final ObjectAdapter valueAdapter) {
-        AdapterInvokeUtils.invoke(method, adapter, valueAdapter);
-    }
-
-    @Override
-    protected String toStringValues() {
-        return "method=" + method;
-    }
-
-}
+
+public class PropertySetterFacetViaSetterMethod extends PropertySetterFacetAbstract implements ImperativeFacet {
+
+    private final Method method;
+
+    public PropertySetterFacetViaSetterMethod(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;
+    }
+
+    @Override
+    public boolean impliesObjectChanged() {
+        return true;
+    }
+
+    @Override
+    public void setProperty(final ObjectAdapter adapter, final ObjectAdapter valueAdapter) {
+        AdapterInvokeUtils.invoke(method, adapter, valueAdapter);
+    }
+
+    @Override
+    protected String toStringValues() {
+        return "method=" + method;
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/multiline/annotation/MultiLineAnnotationOnPropertyFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/multiline/annotation/MultiLineAnnotationOnPropertyFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/multiline/annotation/MultiLineAnnotationOnPropertyFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/multiline/annotation/MultiLineAnnotationOnPropertyFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,36 +17,34 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.multiline.annotation;
 
-package org.apache.isis.core.progmodel.facets.properties.multiline.annotation;
-
 import org.apache.isis.applib.annotation.MultiLine;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 import org.apache.isis.core.metamodel.facets.AnnotationBasedFacetFactoryAbstract;
 import org.apache.isis.core.metamodel.facets.multiline.MultiLineFacet;
-
-
-public class MultiLineAnnotationOnPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
-
-    public MultiLineAnnotationOnPropertyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        final Class<?> returnType = processMethodContext.getMethod().getReturnType();
-        if (!isString(returnType)) {
-            return;
-        }
-        final MultiLine annotation = getAnnotation(processMethodContext.getMethod(), MultiLine.class);
-        FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
-    }
-
-    private MultiLineFacet create(final MultiLine annotation, final FacetHolder holder) {
-        return (annotation != null) ? new MultiLineFacetAnnotationOnProperty(annotation.numberOfLines(), annotation.preventWrapping(),
-                holder) : null;
-    }
-
-}
+
+public class MultiLineAnnotationOnPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public MultiLineAnnotationOnPropertyFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        final Class<?> returnType = processMethodContext.getMethod().getReturnType();
+        if (!isString(returnType)) {
+            return;
+        }
+        final MultiLine annotation = getAnnotation(processMethodContext.getMethod(), MultiLine.class);
+        FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
+    }
+
+    private MultiLineFacet create(final MultiLine annotation, final FacetHolder holder) {
+        return (annotation != null) ? new MultiLineFacetAnnotationOnProperty(annotation.numberOfLines(),
+            annotation.preventWrapping(), holder) : null;
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/multiline/annotation/MultiLineFacetAnnotationOnProperty.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/multiline/annotation/MultiLineFacetAnnotationOnProperty.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/multiline/annotation/MultiLineFacetAnnotationOnProperty.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/multiline/annotation/MultiLineFacetAnnotationOnProperty.java Tue Apr 26 22:03:43 2011
@@ -17,18 +17,16 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.multiline.annotation;
 
-package org.apache.isis.core.progmodel.facets.properties.multiline.annotation;
-
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.multiline.MultiLineFacetAbstract;
-
-
-public class MultiLineFacetAnnotationOnProperty extends MultiLineFacetAbstract {
-
-    public MultiLineFacetAnnotationOnProperty(final int numberOfLines, final boolean preventWrapping, final FacetHolder holder) {
-        super(numberOfLines, preventWrapping, holder);
-    }
-
-}
-
+
+public class MultiLineFacetAnnotationOnProperty extends MultiLineFacetAbstract {
+
+    public MultiLineFacetAnnotationOnProperty(final int numberOfLines, final boolean preventWrapping,
+        final FacetHolder holder) {
+        super(numberOfLines, preventWrapping, holder);
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/notpersisted/annotation/NotPersistedAnnotationForPropertyFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/notpersisted/annotation/NotPersistedAnnotationForPropertyFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/notpersisted/annotation/NotPersistedAnnotationForPropertyFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/notpersisted/annotation/NotPersistedAnnotationForPropertyFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,7 @@
  *  under the License.
  */
 
-
-package org.apache.isis.core.progmodel.facets.properties.notpersisted.annotation;
-
+package org.apache.isis.core.progmodel.facets.properties.notpersisted.annotation;
 
 import org.apache.isis.applib.annotation.NotPersisted;
 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.notpersisted.NotPersistedFacet;
-
-
-public class NotPersistedAnnotationForPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
-
-    public NotPersistedAnnotationForPropertyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        final NotPersisted annotation = getAnnotation(processMethodContext.getMethod(), NotPersisted.class);
-        FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
-    }
-
-    private NotPersistedFacet create(final NotPersisted annotation, final FacetHolder holder) {
-        return annotation == null ? null : new NotPersistedFacetAnnotationForProperty(holder);
-    }
-
-}
+
+public class NotPersistedAnnotationForPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public NotPersistedAnnotationForPropertyFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        final NotPersisted annotation = getAnnotation(processMethodContext.getMethod(), NotPersisted.class);
+        FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
+    }
+
+    private NotPersistedFacet create(final NotPersisted annotation, final FacetHolder holder) {
+        return annotation == null ? null : new NotPersistedFacetAnnotationForProperty(holder);
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/notpersisted/annotation/NotPersistedFacetAnnotationForProperty.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/notpersisted/annotation/NotPersistedFacetAnnotationForProperty.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/notpersisted/annotation/NotPersistedFacetAnnotationForProperty.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/notpersisted/annotation/NotPersistedFacetAnnotationForProperty.java Tue Apr 26 22:03:43 2011
@@ -17,27 +17,25 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.notpersisted.annotation;
 
-package org.apache.isis.core.progmodel.facets.properties.notpersisted.annotation;
-
 import org.apache.isis.applib.events.UsabilityEvent;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.notpersisted.NotPersistedFacetAbstract;
 import org.apache.isis.core.metamodel.interactions.UsabilityContext;
-
-
-public class NotPersistedFacetAnnotationForProperty extends NotPersistedFacetAbstract {
-
-    public NotPersistedFacetAnnotationForProperty(final FacetHolder holder) {
-        super(holder);
-    }
-
-    /**
-     * Always returns <i>Not Persisted</i>.
-     */
-    public String disables(final UsabilityContext<? extends UsabilityEvent> ic) {
-        return "Not Persisted";
-    }
-
-}
-
+
+public class NotPersistedFacetAnnotationForProperty extends NotPersistedFacetAbstract {
+
+    public NotPersistedFacetAnnotationForProperty(final FacetHolder holder) {
+        super(holder);
+    }
+
+    /**
+     * Always returns <i>Not Persisted</i>.
+     */
+    @Override
+    public String disables(final UsabilityContext<? extends UsabilityEvent> ic) {
+        return "Not Persisted";
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/annotation/TypicalLengthAnnotationOnPropertyFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/annotation/TypicalLengthAnnotationOnPropertyFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/annotation/TypicalLengthAnnotationOnPropertyFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/annotation/TypicalLengthAnnotationOnPropertyFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,33 +17,31 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.typicallen.annotation;
 
-package org.apache.isis.core.progmodel.facets.properties.typicallen.annotation;
-
 import org.apache.isis.applib.annotation.TypicalLength;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 import org.apache.isis.core.metamodel.facets.AnnotationBasedFacetFactoryAbstract;
 import org.apache.isis.core.metamodel.facets.typicallength.TypicalLengthFacet;
-
-
-public class TypicalLengthAnnotationOnPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
-
-    public TypicalLengthAnnotationOnPropertyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        final TypicalLength annotation = getAnnotation(processMethodContext.getMethod(), TypicalLength.class);
-        final TypicalLengthFacet facet = create(annotation, processMethodContext.getFacetHolder());
-
-        FacetUtil.addFacet(facet);
-    }
-
-    private TypicalLengthFacet create(final TypicalLength annotation, final FacetHolder holder) {
-        return annotation != null ? new TypicalLengthFacetAnnotationOnProperty(annotation.value(), holder) : null;
-    }
-
-}
+
+public class TypicalLengthAnnotationOnPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public TypicalLengthAnnotationOnPropertyFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        final TypicalLength annotation = getAnnotation(processMethodContext.getMethod(), TypicalLength.class);
+        final TypicalLengthFacet facet = create(annotation, processMethodContext.getFacetHolder());
+
+        FacetUtil.addFacet(facet);
+    }
+
+    private TypicalLengthFacet create(final TypicalLength annotation, final FacetHolder holder) {
+        return annotation != null ? new TypicalLengthFacetAnnotationOnProperty(annotation.value(), holder) : null;
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/annotation/TypicalLengthFacetAnnotationOnProperty.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/annotation/TypicalLengthFacetAnnotationOnProperty.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/annotation/TypicalLengthFacetAnnotationOnProperty.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/annotation/TypicalLengthFacetAnnotationOnProperty.java Tue Apr 26 22:03:43 2011
@@ -17,26 +17,23 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.typicallen.annotation;
 
-package org.apache.isis.core.progmodel.facets.properties.typicallen.annotation;
-
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.typicallength.TypicalLengthFacetAbstract;
-
-
-public class TypicalLengthFacetAnnotationOnProperty extends TypicalLengthFacetAbstract {
-
-    private final int value;
-
-	public TypicalLengthFacetAnnotationOnProperty(final int value, final FacetHolder holder) {
-        super(holder, false);
-        this.value = value;
-    }
-
-	@Override
-	public int value() {
-		return value;
-	}
-
-}
-
+
+public class TypicalLengthFacetAnnotationOnProperty extends TypicalLengthFacetAbstract {
+
+    private final int value;
+
+    public TypicalLengthFacetAnnotationOnProperty(final int value, final FacetHolder holder) {
+        super(holder, false);
+        this.value = value;
+    }
+
+    @Override
+    public int value() {
+        return value;
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/fromtype/TypicalLengthFacetForPropertyDerivedFromType.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/fromtype/TypicalLengthFacetForPropertyDerivedFromType.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/fromtype/TypicalLengthFacetForPropertyDerivedFromType.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/fromtype/TypicalLengthFacetForPropertyDerivedFromType.java Tue Apr 26 22:03:43 2011
@@ -17,27 +17,27 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.typicallen.fromtype;
 
-package org.apache.isis.core.progmodel.facets.properties.typicallen.fromtype;
-
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.multiline.MultiLineFacet;
 import org.apache.isis.core.metamodel.facets.typicallength.TypicalLengthFacet;
 import org.apache.isis.core.metamodel.facets.typicallength.TypicalLengthFacetAbstract;
-
-
-public class TypicalLengthFacetForPropertyDerivedFromType extends TypicalLengthFacetAbstract {
-
-    private final TypicalLengthFacet typicalLengthFacet;
-
-	public TypicalLengthFacetForPropertyDerivedFromType(final TypicalLengthFacet typicalLengthFacet, final FacetHolder holder) {
-        super(holder, true);
-        this.typicalLengthFacet = typicalLengthFacet;
-    }
-
-    public int value() {
-        final MultiLineFacet facet = getFacetHolder().getFacet(MultiLineFacet.class);
-        return facet.numberOfLines() * typicalLengthFacet.value();
-    }
-
-}
+
+public class TypicalLengthFacetForPropertyDerivedFromType extends TypicalLengthFacetAbstract {
+
+    private final TypicalLengthFacet typicalLengthFacet;
+
+    public TypicalLengthFacetForPropertyDerivedFromType(final TypicalLengthFacet typicalLengthFacet,
+        final FacetHolder holder) {
+        super(holder, true);
+        this.typicalLengthFacet = typicalLengthFacet;
+    }
+
+    @Override
+    public int value() {
+        final MultiLineFacet facet = getFacetHolder().getFacet(MultiLineFacet.class);
+        return facet.numberOfLines() * typicalLengthFacet.value();
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/fromtype/TypicalLengthFacetForPropertyDerivedFromTypeFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/fromtype/TypicalLengthFacetForPropertyDerivedFromTypeFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/fromtype/TypicalLengthFacetForPropertyDerivedFromTypeFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/typicallen/fromtype/TypicalLengthFacetForPropertyDerivedFromTypeFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,7 @@
  *  under the License.
  */
 
-
-package org.apache.isis.core.progmodel.facets.properties.typicallen.fromtype;
-
+package org.apache.isis.core.progmodel.facets.properties.typicallen.fromtype;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
@@ -28,31 +26,30 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.facets.FacetedMethod;
 import org.apache.isis.core.metamodel.facets.typicallength.TypicalLengthFacet;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-
-
-public class TypicalLengthFacetForPropertyDerivedFromTypeFacetFactory extends FacetFactoryAbstract {
-
-    public TypicalLengthFacetForPropertyDerivedFromTypeFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        final Class<?> type = processMethodContext.getMethod().getReturnType();
+
+public class TypicalLengthFacetForPropertyDerivedFromTypeFacetFactory extends FacetFactoryAbstract {
+
+    public TypicalLengthFacetForPropertyDerivedFromTypeFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        final Class<?> type = processMethodContext.getMethod().getReturnType();
         final FacetedMethod facetHolder = processMethodContext.getFacetHolder();
-        addFacetDerivedFromTypeIfPresent(facetHolder, type);
-    }
-
-    private void addFacetDerivedFromTypeIfPresent(final FacetHolder holder, final Class<?> type) {
-        final TypicalLengthFacet facet = getTypicalLengthFacet(type);
-        if (facet != null) {
+        addFacetDerivedFromTypeIfPresent(facetHolder, type);
+    }
+
+    private void addFacetDerivedFromTypeIfPresent(final FacetHolder holder, final Class<?> type) {
+        final TypicalLengthFacet facet = getTypicalLengthFacet(type);
+        if (facet != null) {
             FacetUtil.addFacet(new TypicalLengthFacetForPropertyDerivedFromType(facet, holder));
-        }
-    }
-
-    private TypicalLengthFacet getTypicalLengthFacet(final Class<?> type) {
-        final ObjectSpecification paramTypeSpec = getSpecificationLookup().loadSpecification(type);
-        return paramTypeSpec.getFacet(TypicalLengthFacet.class);
-    }
-
-}
+        }
+    }
+
+    private TypicalLengthFacet getTypicalLengthFacet(final Class<?> type) {
+        final ObjectSpecification paramTypeSpec = getSpecificationLookup().loadSpecification(type);
+        return paramTypeSpec.getFacet(TypicalLengthFacet.class);
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateDefaultFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateDefaultFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateDefaultFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateDefaultFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,7 @@
  *  under the License.
  */
 
-
-package org.apache.isis.core.progmodel.facets.properties.validate;
-
+package org.apache.isis.core.progmodel.facets.properties.validate;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
@@ -27,34 +25,33 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.facets.FacetFactory;
 import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
 import org.apache.isis.core.metamodel.specloader.facetprocessor.FacetProcessor;
-
-
-/**
- * Simply installs a {@link PropertyValidateFacet} onto all properties.
- * 
- * <p>
- * The idea is that this {@link FacetFactory} is included early on in the {@link FacetProcessor}, but
- * other {@link PropertyValidateFacet} implementations will potentially replace these where the property is
- * annotated or otherwise provides a validation mechanism.
- */
-public class PropertyValidateDefaultFacetFactory extends FacetFactoryAbstract {
-
-    public PropertyValidateDefaultFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        FacetUtil.addFacet(create(processMethodContext.getFacetHolder()));
-    }
-
-    @Override
-    public void processParams(ProcessParameterContext processParameterContext) {
-        FacetUtil.addFacet(create(processParameterContext.getFacetHolder()));
-    }
-
-    private PropertyValidateFacet create(final FacetHolder holder) {
-        return new PropertyValidateFacetDefault(holder);
-    }
-
-}
+
+/**
+ * Simply installs a {@link PropertyValidateFacet} onto all properties.
+ * 
+ * <p>
+ * The idea is that this {@link FacetFactory} is included early on in the {@link FacetProcessor}, but other
+ * {@link PropertyValidateFacet} implementations will potentially replace these where the property is annotated or
+ * otherwise provides a validation mechanism.
+ */
+public class PropertyValidateDefaultFacetFactory extends FacetFactoryAbstract {
+
+    public PropertyValidateDefaultFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        FacetUtil.addFacet(create(processMethodContext.getFacetHolder()));
+    }
+
+    @Override
+    public void processParams(final ProcessParameterContext processParameterContext) {
+        FacetUtil.addFacet(create(processParameterContext.getFacetHolder()));
+    }
+
+    private PropertyValidateFacet create(final FacetHolder holder) {
+        return new PropertyValidateFacetDefault(holder);
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetAbstract.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetAbstract.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetAbstract.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
  *  under the License.
  */
 
-
 package org.apache.isis.core.progmodel.facets.properties.validate;
 
 import org.apache.isis.applib.events.ValidityEvent;
@@ -27,7 +26,6 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.interactions.PropertyModifyContext;
 import org.apache.isis.core.metamodel.interactions.ValidityContext;
 
-
 public abstract class PropertyValidateFacetAbstract extends FacetAbstract implements PropertyValidateFacet {
 
     public static Class<? extends Facet> type() {
@@ -38,6 +36,7 @@ public abstract class PropertyValidateFa
         super(type(), holder, false);
     }
 
+    @Override
     public String invalidates(final ValidityContext<? extends ValidityEvent> context) {
         if (!(context instanceof PropertyModifyContext)) {
             return null;
@@ -46,4 +45,3 @@ public abstract class PropertyValidateFa
         return invalidReason(propertyModifyContext.getTarget(), propertyModifyContext.getProposed());
     }
 }
-

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetDefault.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetDefault.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetDefault.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetDefault.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
  *  under the License.
  */
 
-
 package org.apache.isis.core.progmodel.facets.properties.validate;
 
 import org.apache.isis.applib.events.ValidityEvent;
@@ -26,12 +25,12 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.interactions.ValidityContext;
 
-
 /**
  * Non checking property validation facet that provides default behaviour for all properties.
  */
 public class PropertyValidateFacetDefault extends FacetAbstract implements PropertyValidateFacet {
 
+    @Override
     public String invalidates(final ValidityContext<? extends ValidityEvent> ic) {
         return null;
     }
@@ -40,9 +39,9 @@ public class PropertyValidateFacetDefaul
         super(PropertyValidateFacet.class, holder, false);
     }
 
+    @Override
     public String invalidReason(final ObjectAdapter target, final ObjectAdapter proposedValue) {
         return null;
     }
 
 }
-

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.validate;
 
-package org.apache.isis.core.progmodel.facets.properties.validate;
-
 import java.lang.reflect.Method;
 
 import org.apache.isis.core.commons.lang.NameUtils;
@@ -30,39 +29,40 @@ 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 PropertyValidateFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
-
-    private static final String[] PREFIXES = { MethodPrefixConstants.VALIDATE_PREFIX };
-
-    public PropertyValidateFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY, PREFIXES);
-    }
-
+
+public class PropertyValidateFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
+
+    private static final String[] PREFIXES = { MethodPrefixConstants.VALIDATE_PREFIX };
+
+    public PropertyValidateFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY, PREFIXES);
+    }
+
     @Override
-    public void process(ProcessMethodContext processMethodContext) {
+    public void process(final ProcessMethodContext processMethodContext) {
 
         attachValidateFacetIfValidateMethodIsFound(processMethodContext);
     }
 
-    private void attachValidateFacetIfValidateMethodIsFound(ProcessMethodContext processMethodContext) {
-        
+    private void attachValidateFacetIfValidateMethodIsFound(final ProcessMethodContext processMethodContext) {
+
         final Method getMethod = processMethodContext.getMethod();
         final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
-        
+
         final Class<?> returnType = getMethod.getReturnType();
         final Class<?>[] paramTypes = new Class[] { returnType };
-        
-        Class<?> cls = processMethodContext.getCls();
-        final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.VALIDATE_PREFIX + capitalizedName, String.class, paramTypes);
+
+        final Class<?> cls = processMethodContext.getCls();
+        final Method method =
+            MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.VALIDATE_PREFIX
+                + capitalizedName, String.class, paramTypes);
         if (method == null) {
             return;
-        } 
+        }
         processMethodContext.removeMethod(method);
-        
+
         final FacetHolder property = processMethodContext.getFacetHolder();
         FacetUtil.addFacet(new PropertyValidateFacetViaMethod(method, property));
     }
 
-}
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetNone.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetNone.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetNone.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetNone.java Tue Apr 26 22:03:43 2011
@@ -17,33 +17,31 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.validate;
 
-package org.apache.isis.core.progmodel.facets.properties.validate;
-
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-
-
-public class PropertyValidateFacetNone extends PropertyValidateFacetAbstract {
-
-    public PropertyValidateFacetNone(final FacetHolder holder) {
-        super(holder);
-    }
-
-    /**
-     * Returns <tt>null</tt>, ie property is valid.
-     * 
-     * <p>
-     * Subclasses should override as required.
-     */
-    public String invalidReason(final ObjectAdapter inObject, final ObjectAdapter value) {
-        return null;
-    }
-
-    @Override
-    public boolean isNoop() {
-        return true;
-    }
-
-}
-
+
+public class PropertyValidateFacetNone extends PropertyValidateFacetAbstract {
+
+    public PropertyValidateFacetNone(final FacetHolder holder) {
+        super(holder);
+    }
+
+    /**
+     * Returns <tt>null</tt>, ie property is valid.
+     * 
+     * <p>
+     * Subclasses should override as required.
+     */
+    @Override
+    public String invalidReason(final ObjectAdapter inObject, final ObjectAdapter value) {
+        return null;
+    }
+
+    @Override
+    public boolean isNoop() {
+        return true;
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetViaMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetViaMethod.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/PropertyValidateFacetViaMethod.java Tue Apr 26 22:03:43 2011
@@ -17,7 +17,6 @@
  *  under the License.
  */
 
-
 package org.apache.isis.core.progmodel.facets.properties.validate;
 
 import java.lang.reflect.Method;
@@ -29,7 +28,6 @@ import org.apache.isis.core.metamodel.ad
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
 
-
 public class PropertyValidateFacetViaMethod extends PropertyValidateFacetAbstract implements ImperativeFacet {
 
     private final Method method;
@@ -40,20 +38,24 @@ public class PropertyValidateFacetViaMet
     }
 
     /**
-     * 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 false;
-	}
+    @Override
+    public boolean impliesObjectChanged() {
+        return false;
+    }
 
+    @Override
     public String invalidReason(final ObjectAdapter owningAdapter, final ObjectAdapter proposedAdapter) {
         return (String) AdapterInvokeUtils.invoke(method, owningAdapter, proposedAdapter);
     }
@@ -64,4 +66,3 @@ public class PropertyValidateFacetViaMet
     }
 
 }
-

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maskannot/MaskAnnotationForPropertyFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maskannot/MaskAnnotationForPropertyFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maskannot/MaskAnnotationForPropertyFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maskannot/MaskAnnotationForPropertyFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,7 @@
  *  under the License.
  */
 
-
-package org.apache.isis.core.progmodel.facets.properties.validate.maskannot;
-
+package org.apache.isis.core.progmodel.facets.properties.validate.maskannot;
 
 import org.apache.isis.applib.annotation.Mask;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -30,69 +28,72 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.progmodel.facets.object.mask.MaskFacet;
 import org.apache.isis.core.progmodel.facets.object.mask.TitleFacetBasedOnMask;
-
-
-public class MaskAnnotationForPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
-
-    public MaskAnnotationForPropertyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    /**
-     * In readiness for supporting <tt>@Value</tt> in the future.
-     */
-    @Override
-    public void process(ProcessClassContext processClassContaxt) {
-        final Mask annotation = getAnnotation(processClassContaxt.getCls(), Mask.class);
-        FacetUtil.addFacet(createMaskFacet(annotation, processClassContaxt.getFacetHolder()));
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        if (processMethodContext.getMethod().getReturnType() == void.class) {
-            return;
-        }
-
-        final Mask annotation = getAnnotation(processMethodContext.getMethod(), Mask.class);
-        addMaskFacetAndCorrespondingTitleFacet(processMethodContext.getFacetHolder(), annotation, processMethodContext.getMethod().getReturnType());
-    }
-
-    @Override
-    public void processParams(ProcessParameterContext processParameterContext) {
-        final Class<?>[] parameterTypes = processParameterContext.getMethod().getParameterTypes();
-        if (processParameterContext.getParamNum() >= parameterTypes.length) {
-            // ignore
-            return;
-        }
-
-        final java.lang.annotation.Annotation[] parameterAnnotations = getParameterAnnotations(processParameterContext.getMethod())[processParameterContext.getParamNum()];
-        for (int i = 0; i < parameterAnnotations.length; i++) {
-            if (parameterAnnotations[i] instanceof Mask) {
-                final Mask annotation = (Mask) parameterAnnotations[i];
-                addMaskFacetAndCorrespondingTitleFacet(processParameterContext.getFacetHolder(), annotation, parameterTypes[i]);
-                return;
-            }
-        }
-    }
-
-    private MaskFacet createMaskFacet(final Mask annotation, final FacetHolder holder) {
-        return annotation != null ? new MaskFacetAnnotationForProperty(annotation.value(), null, holder) : null;
-    }
-
-    private boolean addMaskFacetAndCorrespondingTitleFacet(final FacetHolder holder, final Mask annotation, Class<?> cls) {
-        final MaskFacet maskFacet = createMaskFacet(annotation, holder);
-        if (maskFacet == null) {
-            return false;
-        }
-        FacetUtil.addFacet(maskFacet);
-
-        ObjectSpecification type = getSpecificationLookup().loadSpecification(cls);
-        final TitleFacet underlyingTitleFacet = type.getFacet(TitleFacet.class);
-        if (underlyingTitleFacet != null) {
-            final TitleFacet titleFacet = new TitleFacetBasedOnMask(maskFacet, underlyingTitleFacet);
-            FacetUtil.addFacet(titleFacet);
-        }
-        return true;
-    }
-
-}
+
+public class MaskAnnotationForPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public MaskAnnotationForPropertyFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    /**
+     * In readiness for supporting <tt>@Value</tt> in the future.
+     */
+    @Override
+    public void process(final ProcessClassContext processClassContaxt) {
+        final Mask annotation = getAnnotation(processClassContaxt.getCls(), Mask.class);
+        FacetUtil.addFacet(createMaskFacet(annotation, processClassContaxt.getFacetHolder()));
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        if (processMethodContext.getMethod().getReturnType() == void.class) {
+            return;
+        }
+
+        final Mask annotation = getAnnotation(processMethodContext.getMethod(), Mask.class);
+        addMaskFacetAndCorrespondingTitleFacet(processMethodContext.getFacetHolder(), annotation, processMethodContext
+            .getMethod().getReturnType());
+    }
+
+    @Override
+    public void processParams(final ProcessParameterContext processParameterContext) {
+        final Class<?>[] parameterTypes = processParameterContext.getMethod().getParameterTypes();
+        if (processParameterContext.getParamNum() >= parameterTypes.length) {
+            // ignore
+            return;
+        }
+
+        final java.lang.annotation.Annotation[] parameterAnnotations =
+            getParameterAnnotations(processParameterContext.getMethod())[processParameterContext.getParamNum()];
+        for (int i = 0; i < parameterAnnotations.length; i++) {
+            if (parameterAnnotations[i] instanceof Mask) {
+                final Mask annotation = (Mask) parameterAnnotations[i];
+                addMaskFacetAndCorrespondingTitleFacet(processParameterContext.getFacetHolder(), annotation,
+                    parameterTypes[i]);
+                return;
+            }
+        }
+    }
+
+    private MaskFacet createMaskFacet(final Mask annotation, final FacetHolder holder) {
+        return annotation != null ? new MaskFacetAnnotationForProperty(annotation.value(), null, holder) : null;
+    }
+
+    private boolean addMaskFacetAndCorrespondingTitleFacet(final FacetHolder holder, final Mask annotation,
+        final Class<?> cls) {
+        final MaskFacet maskFacet = createMaskFacet(annotation, holder);
+        if (maskFacet == null) {
+            return false;
+        }
+        FacetUtil.addFacet(maskFacet);
+
+        final ObjectSpecification type = getSpecificationLookup().loadSpecification(cls);
+        final TitleFacet underlyingTitleFacet = type.getFacet(TitleFacet.class);
+        if (underlyingTitleFacet != null) {
+            final TitleFacet titleFacet = new TitleFacetBasedOnMask(maskFacet, underlyingTitleFacet);
+            FacetUtil.addFacet(titleFacet);
+        }
+        return true;
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maskannot/MaskFacetAnnotationForProperty.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maskannot/MaskFacetAnnotationForProperty.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maskannot/MaskFacetAnnotationForProperty.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maskannot/MaskFacetAnnotationForProperty.java Tue Apr 26 22:03:43 2011
@@ -17,37 +17,35 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.validate.maskannot;
 
-package org.apache.isis.core.progmodel.facets.properties.validate.maskannot;
-
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.progmodel.facets.object.mask.MaskEvaluator;
 import org.apache.isis.core.progmodel.facets.object.mask.MaskFacetAbstract;
-
-
-public class MaskFacetAnnotationForProperty extends MaskFacetAbstract {
-    private final MaskEvaluator evaluator;
-
-    public MaskFacetAnnotationForProperty(final String outputMask, String inputMask, final FacetHolder holder) {
-        super(outputMask, holder);
-        evaluator = inputMask == null ? null : new MaskEvaluator(inputMask);
-    }
-
-    public boolean doesNotMatch(final ObjectAdapter adapter) {
-        if (evaluator == null) {
-            return false;
-        } else {
-            if (adapter == null) {
-                return false;
-            }
-            final Object object = adapter.getObject();
-            if (object == null) {
-                return false;
-            }
-            return !evaluator.evaluate(object.toString());
-        }
-    }
-
-}
-
+
+public class MaskFacetAnnotationForProperty extends MaskFacetAbstract {
+    private final MaskEvaluator evaluator;
+
+    public MaskFacetAnnotationForProperty(final String outputMask, final String inputMask, final FacetHolder holder) {
+        super(outputMask, holder);
+        evaluator = inputMask == null ? null : new MaskEvaluator(inputMask);
+    }
+
+    @Override
+    public boolean doesNotMatch(final ObjectAdapter adapter) {
+        if (evaluator == null) {
+            return false;
+        } else {
+            if (adapter == null) {
+                return false;
+            }
+            final Object object = adapter.getObject();
+            if (object == null) {
+                return false;
+            }
+            return !evaluator.evaluate(object.toString());
+        }
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maxlenannot/MaxLengthAnnotationForPropertyFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maxlenannot/MaxLengthAnnotationForPropertyFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maxlenannot/MaxLengthAnnotationForPropertyFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maxlenannot/MaxLengthAnnotationForPropertyFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,7 @@
  *  under the License.
  */
 
-
-package org.apache.isis.core.progmodel.facets.properties.validate.maxlenannot;
-
+package org.apache.isis.core.progmodel.facets.properties.validate.maxlenannot;
 
 import org.apache.isis.applib.annotation.MaxLength;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -27,21 +25,20 @@ 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.propparam.maxlength.MaxLengthFacet;
-
-
-public class MaxLengthAnnotationForPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
-
-    public MaxLengthAnnotationForPropertyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        final MaxLength annotation = getAnnotation(processMethodContext.getMethod(), MaxLength.class);
-        FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
-    }
-
-    private MaxLengthFacet create(final MaxLength annotation, final FacetHolder holder) {
-        return annotation == null ? null : new MaxLengthFacetAnnotationForProperty(annotation.value(), holder);
-    }
-}
+
+public class MaxLengthAnnotationForPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public MaxLengthAnnotationForPropertyFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        final MaxLength annotation = getAnnotation(processMethodContext.getMethod(), MaxLength.class);
+        FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
+    }
+
+    private MaxLengthFacet create(final MaxLength annotation, final FacetHolder holder) {
+        return annotation == null ? null : new MaxLengthFacetAnnotationForProperty(annotation.value(), holder);
+    }
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maxlenannot/MaxLengthFacetAnnotationForProperty.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maxlenannot/MaxLengthFacetAnnotationForProperty.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maxlenannot/MaxLengthFacetAnnotationForProperty.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/maxlenannot/MaxLengthFacetAnnotationForProperty.java Tue Apr 26 22:03:43 2011
@@ -17,18 +17,15 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.validate.maxlenannot;
 
-package org.apache.isis.core.progmodel.facets.properties.validate.maxlenannot;
-
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.propparam.maxlength.MaxLengthFacetAbstract;
-
-
-public class MaxLengthFacetAnnotationForProperty extends MaxLengthFacetAbstract {
-
-    public MaxLengthFacetAnnotationForProperty(final int value, final FacetHolder holder) {
-        super(value, holder);
-    }
-
-}
-
+
+public class MaxLengthFacetAnnotationForProperty extends MaxLengthFacetAbstract {
+
+    public MaxLengthFacetAnnotationForProperty(final int value, final FacetHolder holder) {
+        super(value, holder);
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/perspec/MustSatisfySpecificationOnPropertyFacet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/perspec/MustSatisfySpecificationOnPropertyFacet.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/perspec/MustSatisfySpecificationOnPropertyFacet.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/perspec/MustSatisfySpecificationOnPropertyFacet.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.validate.perspec;
 
-package org.apache.isis.core.progmodel.facets.properties.validate.perspec;
-
 import java.util.List;
 
 import org.apache.isis.applib.events.ValidityEvent;
@@ -32,32 +31,33 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.interactions.ProposedHolder;
 import org.apache.isis.core.metamodel.interactions.ValidatingInteractionAdvisor;
 import org.apache.isis.core.metamodel.interactions.ValidityContext;
-
-public class MustSatisfySpecificationOnPropertyFacet extends FacetAbstract implements ValidatingInteractionAdvisor {
-
-    public static Class<? extends Facet> type() {
-        return MustSatisfySpecificationOnPropertyFacet.class;
-    }
-
-    private final List<Specification> specifications;
-
-    public MustSatisfySpecificationOnPropertyFacet(final List<Specification> specifications, final FacetHolder holder) {
-        super(type(), holder, false);
-        this.specifications = specifications;
-    }
-
-    public String invalidates(final ValidityContext<? extends ValidityEvent> validityContext) {
-        if (!(validityContext instanceof ProposedHolder)) {
-            return null;
-        }
-        ProposedHolder proposedHolder = (ProposedHolder) validityContext;
-        final ObjectAdapter targetNO = proposedHolder.getProposed();
-        final Object targetObject = targetNO.getObject();
-        ReasonBuffer buf = new ReasonBuffer();
-        for(Specification specification: specifications) {
-            buf.append(specification.satisfies(targetObject));
-        }
-        return buf.getReason();
-    }
-
-}
+
+public class MustSatisfySpecificationOnPropertyFacet extends FacetAbstract implements ValidatingInteractionAdvisor {
+
+    public static Class<? extends Facet> type() {
+        return MustSatisfySpecificationOnPropertyFacet.class;
+    }
+
+    private final List<Specification> specifications;
+
+    public MustSatisfySpecificationOnPropertyFacet(final List<Specification> specifications, final FacetHolder holder) {
+        super(type(), holder, false);
+        this.specifications = specifications;
+    }
+
+    @Override
+    public String invalidates(final ValidityContext<? extends ValidityEvent> validityContext) {
+        if (!(validityContext instanceof ProposedHolder)) {
+            return null;
+        }
+        final ProposedHolder proposedHolder = (ProposedHolder) validityContext;
+        final ObjectAdapter targetNO = proposedHolder.getProposed();
+        final Object targetObject = targetNO.getObject();
+        final ReasonBuffer buf = new ReasonBuffer();
+        for (final Specification specification : specifications) {
+            buf.append(specification.satisfies(targetObject));
+        }
+        return buf.getReason();
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/perspec/MustSatisfySpecificationOnPropertyFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/perspec/MustSatisfySpecificationOnPropertyFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/perspec/MustSatisfySpecificationOnPropertyFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/perspec/MustSatisfySpecificationOnPropertyFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.validate.perspec;
 
-package org.apache.isis.core.progmodel.facets.properties.validate.perspec;
-
 import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.List;
@@ -31,49 +30,48 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 import org.apache.isis.core.metamodel.facets.AnnotationBasedFacetFactoryAbstract;
-
-public class MustSatisfySpecificationOnPropertyFacetFactory  extends AnnotationBasedFacetFactoryAbstract {
-
-    public MustSatisfySpecificationOnPropertyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        FacetUtil.addFacet(create(processMethodContext.getMethod(), processMethodContext.getFacetHolder()));
-    }
-
-    private Facet create(Method method, FacetHolder holder) {
-        return create(getAnnotation(method, MustSatisfy.class), holder);
-    }
-
-
-    private Facet create(final MustSatisfy annotation, final FacetHolder holder) {
-        if (annotation == null) {
-            return null;
-        }
-        Class<?>[] values = annotation.value();
-        List<Specification> specifications = new ArrayList<Specification>();
-        for(Class<?> value: values) {
-            Specification specification = newSpecificationElseNull(value);
-            if (specification != null) {
-                specifications.add(specification);
-            }
-        }
-        return specifications.size() > 0 ? new MustSatisfySpecificationOnPropertyFacet(specifications, holder) : null;
-    }
-
-    private static Specification newSpecificationElseNull(Class<?> value) {
-        if (!(Specification.class.isAssignableFrom(value))) {
-            return null;
-        }
-        try {
-            return (Specification) value.newInstance();
-        } catch (InstantiationException e) {
-            return null;
-        } catch (IllegalAccessException e) {
-            return null;
-        }
-    }
-
-}
+
+public class MustSatisfySpecificationOnPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public MustSatisfySpecificationOnPropertyFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        FacetUtil.addFacet(create(processMethodContext.getMethod(), processMethodContext.getFacetHolder()));
+    }
+
+    private Facet create(final Method method, final FacetHolder holder) {
+        return create(getAnnotation(method, MustSatisfy.class), holder);
+    }
+
+    private Facet create(final MustSatisfy annotation, final FacetHolder holder) {
+        if (annotation == null) {
+            return null;
+        }
+        final Class<?>[] values = annotation.value();
+        final List<Specification> specifications = new ArrayList<Specification>();
+        for (final Class<?> value : values) {
+            final Specification specification = newSpecificationElseNull(value);
+            if (specification != null) {
+                specifications.add(specification);
+            }
+        }
+        return specifications.size() > 0 ? new MustSatisfySpecificationOnPropertyFacet(specifications, holder) : null;
+    }
+
+    private static Specification newSpecificationElseNull(final Class<?> value) {
+        if (!(Specification.class.isAssignableFrom(value))) {
+            return null;
+        }
+        try {
+            return (Specification) value.newInstance();
+        } catch (final InstantiationException e) {
+            return null;
+        } catch (final IllegalAccessException e) {
+            return null;
+        }
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/regexannot/RegExFacetAnnotationForProperty.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/regexannot/RegExFacetAnnotationForProperty.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/regexannot/RegExFacetAnnotationForProperty.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/regexannot/RegExFacetAnnotationForProperty.java Tue Apr 26 22:03:43 2011
@@ -17,48 +17,44 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.validate.regexannot;
 
-package org.apache.isis.core.progmodel.facets.properties.validate.regexannot;
-
 import java.util.regex.Pattern;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.progmodel.facets.object.regex.RegExFacetAbstract;
-
-
-public class RegExFacetAnnotationForProperty extends RegExFacetAbstract {
-
-    private final Pattern pattern;
-
-    public RegExFacetAnnotationForProperty(
-            final String validation,
-            final String format,
-            final boolean caseSensitive,
-            final FacetHolder holder) {
-        super(validation, format, caseSensitive, holder);
-        pattern = Pattern.compile(validation(), patternFlags());
-    }
-
-    public String format(final String text) {
-        if (text == null) {
-            return "<not a string>";
-        }
-        if (format() == null || format().length() == 0) {
-            return text;
-        }
-        return pattern.matcher(text).replaceAll(format());
-    }
-
-    public boolean doesNotMatch(final String text) {
-        if (text == null) {
-            return true;
-        }
-        return !pattern.matcher(text).matches();
-    }
-
-    private int patternFlags() {
-        return !caseSensitive() ? Pattern.CASE_INSENSITIVE : 0;
-    }
-
-}
-
+
+public class RegExFacetAnnotationForProperty extends RegExFacetAbstract {
+
+    private final Pattern pattern;
+
+    public RegExFacetAnnotationForProperty(final String validation, final String format, final boolean caseSensitive,
+        final FacetHolder holder) {
+        super(validation, format, caseSensitive, holder);
+        pattern = Pattern.compile(validation(), patternFlags());
+    }
+
+    @Override
+    public String format(final String text) {
+        if (text == null) {
+            return "<not a string>";
+        }
+        if (format() == null || format().length() == 0) {
+            return text;
+        }
+        return pattern.matcher(text).replaceAll(format());
+    }
+
+    @Override
+    public boolean doesNotMatch(final String text) {
+        if (text == null) {
+            return true;
+        }
+        return !pattern.matcher(text).matches();
+    }
+
+    private int patternFlags() {
+        return !caseSensitive() ? Pattern.CASE_INSENSITIVE : 0;
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/regexannot/RegExFacetAnnotationForPropertyFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/regexannot/RegExFacetAnnotationForPropertyFacetFactory.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/regexannot/RegExFacetAnnotationForPropertyFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/validate/regexannot/RegExFacetAnnotationForPropertyFacetFactory.java Tue Apr 26 22:03:43 2011
@@ -17,9 +17,8 @@
  *  under the License.
  */
 
+package org.apache.isis.core.progmodel.facets.properties.validate.regexannot;
 
-package org.apache.isis.core.progmodel.facets.properties.validate.regexannot;
-
 import org.apache.isis.applib.annotation.RegEx;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
@@ -28,49 +27,48 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.facets.object.title.TitleFacet;
 import org.apache.isis.core.progmodel.facets.object.regex.RegExFacet;
 import org.apache.isis.core.progmodel.facets.object.regex.TitleFacetFormattedByRegex;
-
-
-public class RegExFacetAnnotationForPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
-
-    public RegExFacetAnnotationForPropertyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY);
-    }
-
-    @Override
-    public void process(ProcessMethodContext processMethodContext) {
-        final Class<?> returnType = processMethodContext.getMethod().getReturnType();
-        if (!isString(returnType)) {
-            return;
-        }
-        final RegEx annotation = getAnnotation(processMethodContext.getMethod(), RegEx.class);
-        addRegexFacetAndCorrespondingTitleFacet(processMethodContext.getFacetHolder(), annotation);
-    }
-
-    private void addRegexFacetAndCorrespondingTitleFacet(final FacetHolder holder, final RegEx annotation) {
-        final RegExFacet regexFacet = createRegexFacet(annotation, holder);
-        if (regexFacet == null) {
-            return;
-        }
-        FacetUtil.addFacet(regexFacet);
-
-        final TitleFacet titleFacet = createTitleFacet(regexFacet);
-        FacetUtil.addFacet(titleFacet);
-    }
-
-    private RegExFacet createRegexFacet(final RegEx annotation, final FacetHolder holder) {
-        if (annotation == null) {
-            return null;
-        }
-
-        final String validationExpression = annotation.validation();
-        final boolean caseSensitive = annotation.caseSensitive();
-        final String formatExpression = annotation.format();
-
-        return new RegExFacetAnnotationForProperty(validationExpression, formatExpression, caseSensitive, holder);
-    }
-
-    private TitleFacet createTitleFacet(final RegExFacet regexFacet) {
-        return new TitleFacetFormattedByRegex(regexFacet);
-    }
-
-}
+
+public class RegExFacetAnnotationForPropertyFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public RegExFacetAnnotationForPropertyFacetFactory() {
+        super(FeatureType.PROPERTIES_ONLY);
+    }
+
+    @Override
+    public void process(final ProcessMethodContext processMethodContext) {
+        final Class<?> returnType = processMethodContext.getMethod().getReturnType();
+        if (!isString(returnType)) {
+            return;
+        }
+        final RegEx annotation = getAnnotation(processMethodContext.getMethod(), RegEx.class);
+        addRegexFacetAndCorrespondingTitleFacet(processMethodContext.getFacetHolder(), annotation);
+    }
+
+    private void addRegexFacetAndCorrespondingTitleFacet(final FacetHolder holder, final RegEx annotation) {
+        final RegExFacet regexFacet = createRegexFacet(annotation, holder);
+        if (regexFacet == null) {
+            return;
+        }
+        FacetUtil.addFacet(regexFacet);
+
+        final TitleFacet titleFacet = createTitleFacet(regexFacet);
+        FacetUtil.addFacet(titleFacet);
+    }
+
+    private RegExFacet createRegexFacet(final RegEx annotation, final FacetHolder holder) {
+        if (annotation == null) {
+            return null;
+        }
+
+        final String validationExpression = annotation.validation();
+        final boolean caseSensitive = annotation.caseSensitive();
+        final String formatExpression = annotation.format();
+
+        return new RegExFacetAnnotationForProperty(validationExpression, formatExpression, caseSensitive, holder);
+    }
+
+    private TitleFacet createTitleFacet(final RegExFacet regexFacet) {
+        return new TitleFacetFormattedByRegex(regexFacet);
+    }
+
+}

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateAndTimeValueSemanticsProviderAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateAndTimeValueSemanticsProviderAbstract.java?rev=1096928&r1=1096927&r2=1096928&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateAndTimeValueSemanticsProviderAbstract.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateAndTimeValueSemanticsProviderAbstract.java Tue Apr 26 22:03:43 2011
@@ -17,25 +17,23 @@
  *  under the License.
  */
 
-
 package org.apache.isis.core.progmodel.facets.value;
 
 import java.text.DateFormat;
 import java.util.Map;
 
-import com.google.inject.internal.Maps;
-
 import org.apache.isis.applib.adapters.Localization;
 import org.apache.isis.core.commons.config.ConfigurationConstants;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.progmodel.facets.object.value.ValueSemanticsProviderContext;
 
+import com.google.inject.internal.Maps;
 
 public abstract class DateAndTimeValueSemanticsProviderAbstract<T> extends ValueSemanticsProviderAbstractTemporal<T> {
 
-    private static Map<String,DateFormat> formats = Maps.newHashMap();
-    
+    private static Map<String, DateFormat> formats = Maps.newHashMap();
+
     static {
         formats.put("iso", createDateFormat("yyyy-MM-dd HH:mm"));
         formats.put("iso_short", createDateFormat("yyyyMMdd'T'HHmm"));
@@ -53,19 +51,14 @@ public abstract class DateAndTimeValueSe
     private static final Object DEFAULT_VALUE = null; // no default
     private static final int TYPICAL_LENGTH = 18;
 
-
     @SuppressWarnings("unchecked")
-    public DateAndTimeValueSemanticsProviderAbstract(
-            final FacetHolder holder,
-            final Class<T> adaptedClass,
-            final boolean immutable,
-            final boolean equalByContent,
-            final IsisConfiguration configuration, 
-            final ValueSemanticsProviderContext context) {
-        super("datetime", holder, adaptedClass, TYPICAL_LENGTH, immutable, equalByContent, (T) DEFAULT_VALUE, configuration, context);
+    public DateAndTimeValueSemanticsProviderAbstract(final FacetHolder holder, final Class<T> adaptedClass,
+        final boolean immutable, final boolean equalByContent, final IsisConfiguration configuration,
+        final ValueSemanticsProviderContext context) {
+        super("datetime", holder, adaptedClass, TYPICAL_LENGTH, immutable, equalByContent, (T) DEFAULT_VALUE,
+            configuration, context);
 
-        final String formatRequired = configuration.getString(
-                ConfigurationConstants.ROOT + "value.format.datetime");
+        final String formatRequired = configuration.getString(ConfigurationConstants.ROOT + "value.format.datetime");
         if (formatRequired == null) {
             format = formats().get(defaultFormat());
         } else {
@@ -95,9 +88,11 @@ public abstract class DateAndTimeValueSe
     protected Map<String, DateFormat> formats() {
         return formats;
     }
-    
-    protected DateFormat format(Localization localization) {
-        DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, localization.getLocale());
+
+    @Override
+    protected DateFormat format(final Localization localization) {
+        final DateFormat dateFormat =
+            DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM, localization.getLocale());
         dateFormat.setTimeZone(localization.getTimeZone());
         return dateFormat;
     }