You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2011/01/17 19:23:18 UTC

svn commit: r1060035 [4/14] - in /incubator/isis/trunk: alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/ alternatives/objectstore/nosql/src/test/java/org/apache/isis/alternatives/objectstore/nosql/ alternatives/objectstore/sql...

Added: 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=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfFacetAnnotationForAction.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/typeof/annotation/TypeOfFacetAnnotationForAction.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,38 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+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);
+    }
+
+}
+

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=1060035&r1=1060034&r2=1060035&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 Mon Jan 17 18:22:58 2011
@@ -31,7 +31,6 @@ 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;
-import org.apache.isis.core.progmodel.facets.properties.accessor.PropertyOrCollectionAccessorFacetViaAccessor;
 
 
 public class CollectionAccessorFacetFactory extends PropertyOrCollectionIdentifyingFacetFactoryAbstract {
@@ -53,7 +52,7 @@ public class CollectionAccessorFacetFact
         processMethodContext.removeMethod(accessorMethod);
         
         final FacetHolder holder = processMethodContext.getFacetHolder();
-        final Facet facet = new PropertyOrCollectionAccessorFacetViaAccessor(accessorMethod, holder);
+        final Facet facet = new CollectionAccessorFacetViaAccessor(accessorMethod, holder);
         FacetUtil.addFacet(facet);
     }
 

Added: 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=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,75 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+package org.apache.isis.core.progmodel.facets.collections.accessor;
+
+import java.lang.reflect.Method;
+import java.util.Collections;
+import java.util.List;
+
+import org.apache.isis.applib.DomainObjectContainer;
+import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
+import org.apache.isis.core.metamodel.adapter.util.AdapterInvokeUtils;
+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;
+    }
+
+}

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=1060035&r1=1060034&r2=1060035&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 Mon Jan 17 18:22:58 2011
@@ -21,10 +21,10 @@
 package org.apache.isis.core.progmodel.facets.collections.aggregated;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.progmodel.facets.object.aggregated.AggregatedFacetImpl;
+import org.apache.isis.core.metamodel.facets.object.aggregated.AggregatedFacetAbstract;
 
 
-public class AggregatedSinceCollection extends AggregatedFacetImpl {
+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/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=1060035&r1=1060034&r2=1060035&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 Mon Jan 17 18:22:58 2011
@@ -25,12 +25,12 @@ import org.apache.isis.core.metamodel.ad
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
-import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet;
-import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetDefaultToObject;
+import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacet;
+import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacetDefaultToObject;
+import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacetInferredFromArray;
+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;
-import org.apache.isis.core.progmodel.facets.actcoll.typeof.TypeOfFacetInferredFromArray;
-import org.apache.isis.core.progmodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics;
 
 
 public class CollectionFacetFactory extends FacetFactoryAbstract implements CollectionTypeRegistryAware, AdapterMapAware {

Added: 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=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutable.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutable.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,39 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+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;
+    }
+
+}

Added: 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=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/disabled/fromimmutable/DisabledFacetForCollectionDerivedFromImmutableTypeFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,53 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+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;
+import org.apache.isis.core.metamodel.facets.AnnotationBasedFacetFactoryAbstract;
+import org.apache.isis.core.metamodel.facets.FacetFactory;
+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);
+            final FacetedMethod facetHolder = processMethodContext.getFacetHolder();
+            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=1060035&r1=1060034&r2=1060035&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 Mon Jan 17 18:22:58 2011
@@ -36,7 +36,6 @@ 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;
-import org.apache.isis.core.progmodel.facets.actcoll.typeof.TypeOfFacetInferredFromSupportingMethods;
 import org.apache.isis.core.progmodel.facets.collections.validate.CollectionValidateAddToFacetViaMethod;
 import org.apache.isis.core.progmodel.facets.collections.validate.CollectionValidateRemoveFromFacetViaMethod;
 

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/TypeOfFacetInferredFromSupportingMethods.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/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?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/TypeOfFacetInferredFromSupportingMethods.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetInferredFromSupportingMethods.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetInferredFromSupportingMethods.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/TypeOfFacetInferredFromSupportingMethods.java Mon Jan 17 18:22:58 2011
@@ -18,10 +18,10 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.actcoll.typeof;
+package org.apache.isis.core.progmodel.facets.collections.modify;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetAbstract;
+import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacetAbstract;
 import org.apache.isis.core.metamodel.spec.SpecificationLookup;
 
 

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/notpersisted/annotation/NotPersistedAnnotationForCollectionFacetFactory.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propcoll/notpersisted/NotPersistedAnnotationFacetFactory.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/notpersisted/annotation/NotPersistedAnnotationForCollectionFacetFactory.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/notpersisted/annotation/NotPersistedAnnotationForCollectionFacetFactory.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propcoll/notpersisted/NotPersistedAnnotationFacetFactory.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propcoll/notpersisted/NotPersistedAnnotationFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/notpersisted/annotation/NotPersistedAnnotationForCollectionFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -18,7 +18,7 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.propcoll.notpersisted;
+package org.apache.isis.core.progmodel.facets.collections.notpersisted.annotation;
 
 
 import org.apache.isis.applib.annotation.NotPersisted;
@@ -26,13 +26,13 @@ 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;
-import org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet;
+import org.apache.isis.core.metamodel.facets.notpersisted.NotPersistedFacet;
 
 
-public class NotPersistedAnnotationFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+public class NotPersistedAnnotationForCollectionFacetFactory extends AnnotationBasedFacetFactoryAbstract {
 
-    public NotPersistedAnnotationFacetFactory() {
-        super(FeatureType.PROPERTIES_AND_COLLECTIONS);
+    public NotPersistedAnnotationForCollectionFacetFactory() {
+        super(FeatureType.COLLECTIONS_ONLY);
     }
 
     @Override
@@ -42,7 +42,7 @@ public class NotPersistedAnnotationFacet
     }
 
     private NotPersistedFacet create(final NotPersisted annotation, final FacetHolder holder) {
-        return annotation == null ? null : new NotPersistedFacetAnnotation(holder);
+        return annotation == null ? null : new NotPersistedFacetAnnotationForCollection(holder);
     }
 
 }

Added: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/notpersisted/annotation/NotPersistedFacetAnnotationForCollection.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/notpersisted/annotation/NotPersistedFacetAnnotationForCollection.java?rev=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/notpersisted/annotation/NotPersistedFacetAnnotationForCollection.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/notpersisted/annotation/NotPersistedFacetAnnotationForCollection.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,43 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+package org.apache.isis.core.progmodel.facets.collections.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 NotPersistedFacetAnnotationForCollection extends NotPersistedFacetAbstract {
+
+    public NotPersistedFacetAnnotationForCollection(final FacetHolder holder) {
+        super(holder);
+    }
+
+    /**
+     * Always returns <i>Not Persisted</i>.
+     */
+    public String disables(final UsabilityContext<? extends UsabilityEvent> ic) {
+        return "Not Persisted";
+    }
+
+}
+

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/typeof/TypeOfAnnotationForCollectionsFacetFactory.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfAnnotationFacetFactory.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/typeof/TypeOfAnnotationForCollectionsFacetFactory.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/typeof/TypeOfAnnotationForCollectionsFacetFactory.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfAnnotationFacetFactory.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfAnnotationFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/typeof/TypeOfAnnotationForCollectionsFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -18,7 +18,7 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.actcoll.typeof;
+package org.apache.isis.core.progmodel.facets.collections.typeof;
 
 import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
@@ -28,15 +28,17 @@ import org.apache.isis.applib.annotation
 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.typeof.TypeOfFacetInferredFromArray;
+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 TypeOfAnnotationFacetFactory extends AnnotationBasedFacetFactoryAbstract implements CollectionTypeRegistryAware {
+public class TypeOfAnnotationForCollectionsFacetFactory extends AnnotationBasedFacetFactoryAbstract implements CollectionTypeRegistryAware {
     private CollectionTypeRegistry collectionTypeRegistry;
 
-    public TypeOfAnnotationFacetFactory() {
-        super(FeatureType.COLLECTIONS_AND_ACTIONS);
+    public TypeOfAnnotationForCollectionsFacetFactory() {
+        super(FeatureType.COLLECTIONS_ONLY);
     }
 
     @Override
@@ -57,7 +59,7 @@ public class TypeOfAnnotationFacetFactor
         }
 
         if (annotation != null) {
-            FacetUtil.addFacet(new TypeOfFacetViaAnnotation(annotation.value(), processMethodContext.getFacetHolder(), getSpecificationLookup()));
+            FacetUtil.addFacet(new TypeOfFacetAnnotationForCollection(annotation.value(), processMethodContext.getFacetHolder(), getSpecificationLookup()));
             return;
         }
 

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/typeof/TypeOfFacetAnnotationForCollection.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetViaAnnotation.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/typeof/TypeOfFacetAnnotationForCollection.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/typeof/TypeOfFacetAnnotationForCollection.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetViaAnnotation.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetViaAnnotation.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/typeof/TypeOfFacetAnnotationForCollection.java Mon Jan 17 18:22:58 2011
@@ -18,16 +18,16 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.actcoll.typeof;
+package org.apache.isis.core.progmodel.facets.collections.typeof;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetAbstract;
+import org.apache.isis.core.metamodel.facets.typeof.TypeOfFacetAbstract;
 import org.apache.isis.core.metamodel.spec.SpecificationLookup;
 
 
-public class TypeOfFacetViaAnnotation extends TypeOfFacetAbstract {
+public class TypeOfFacetAnnotationForCollection extends TypeOfFacetAbstract {
 
-    public TypeOfFacetViaAnnotation(
+    public TypeOfFacetAnnotationForCollection(
             final Class<?> type, 
             final FacetHolder holder, 
             final SpecificationLookup specificationLookup) {

Added: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsAnnotationOnMemberFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsAnnotationOnMemberFacetFactory.java?rev=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsAnnotationOnMemberFacetFactory.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsAnnotationOnMemberFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,67 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+package org.apache.isis.core.progmodel.facets.members.describedas.annotation;
+
+import org.apache.isis.applib.annotation.DescribedAs;
+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.describedas.DescribedAsFacet;
+import org.apache.isis.core.metamodel.spec.ObjectSpecification;
+
+
+public class DescribedAsAnnotationOnMemberFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public DescribedAsAnnotationOnMemberFacetFactory() {
+        super(FeatureType.MEMBERS);
+    }
+
+    @Override
+    public void process(ProcessMethodContext processMethodContext) {
+
+        // look for annotation on the property
+        final DescribedAs annotation = getAnnotation(processMethodContext.getMethod(), DescribedAs.class);
+        DescribedAsFacet facet = create(annotation, processMethodContext.getFacetHolder());
+        if (facet != null) {
+            FacetUtil.addFacet(facet);
+            return;
+        }
+
+        // otherwise, look for annotation on the type
+        final Class<?> returnType = processMethodContext.getMethod().getReturnType();
+        final DescribedAsFacet returnTypeDescribedAsFacet = getDescribedAsFacet(returnType);
+        if (returnTypeDescribedAsFacet != null) {
+            facet = new DescribedAsFacetForMemberDerivedFromType(returnTypeDescribedAsFacet, processMethodContext.getFacetHolder());
+            FacetUtil.addFacet(facet);
+        }
+    }
+
+    private DescribedAsFacet create(final DescribedAs annotation, final FacetHolder holder) {
+        return annotation == null ? null : new DescribedAsFacetAnnotationOnMember(annotation.value(), holder);
+    }
+
+    private DescribedAsFacet getDescribedAsFacet(final Class<?> type) {
+        final ObjectSpecification paramTypeSpec = getSpecificationLookup().loadSpecification(type);
+        return paramTypeSpec.getFacet(DescribedAsFacet.class);
+    }
+
+}

Added: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsFacetAnnotationOnMember.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsFacetAnnotationOnMember.java?rev=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsFacetAnnotationOnMember.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsFacetAnnotationOnMember.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,34 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+package org.apache.isis.core.progmodel.facets.members.describedas.annotation;
+
+import org.apache.isis.core.metamodel.facetapi.FacetHolder;
+import org.apache.isis.core.metamodel.facets.describedas.DescribedAsFacetAbstract;
+
+
+public class DescribedAsFacetAnnotationOnMember extends DescribedAsFacetAbstract {
+
+    public DescribedAsFacetAnnotationOnMember(final String value, final FacetHolder holder) {
+        super(value, holder);
+    }
+
+}
+

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsFacetForMemberDerivedFromType.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/describedas/annotation/DescribedAsFacetDerivedFromType.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsFacetForMemberDerivedFromType.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsFacetForMemberDerivedFromType.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/describedas/annotation/DescribedAsFacetDerivedFromType.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/describedas/annotation/DescribedAsFacetDerivedFromType.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/annotation/DescribedAsFacetForMemberDerivedFromType.java Mon Jan 17 18:22:58 2011
@@ -18,16 +18,16 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.describedas.annotation;
+package org.apache.isis.core.progmodel.facets.members.describedas.annotation;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.naming.describedas.DescribedAsFacet;
-import org.apache.isis.core.metamodel.facets.naming.describedas.DescribedAsFacetAbstract;
+import org.apache.isis.core.metamodel.facets.describedas.DescribedAsFacet;
+import org.apache.isis.core.metamodel.facets.describedas.DescribedAsFacetAbstract;
 
 
-public class DescribedAsFacetDerivedFromType extends DescribedAsFacetAbstract {
+public class DescribedAsFacetForMemberDerivedFromType extends DescribedAsFacetAbstract {
 
-    public DescribedAsFacetDerivedFromType(final DescribedAsFacet describedAsFacet, final FacetHolder holder) {
+    public DescribedAsFacetForMemberDerivedFromType(final DescribedAsFacet describedAsFacet, final FacetHolder holder) {
         super(describedAsFacet.value(), holder);
     }
 

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -28,7 +28,7 @@ import org.apache.isis.core.metamodel.fa
 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.naming.describedas.DescribedAsFacet;
+import org.apache.isis.core.metamodel.facets.describedas.DescribedAsFacet;
 import org.apache.isis.core.metamodel.methodutils.MethodScope;
 import org.apache.isis.core.progmodel.facets.MethodFinderUtils;
 import org.apache.isis.core.progmodel.facets.MethodPrefixBasedFacetFactoryAbstract;
@@ -45,7 +45,7 @@ public class DescribedAsFacetViaDescript
      * Note that the {@link Facet}s registered are the generic ones from noa-architecture (where they exist)
      */
     public DescribedAsFacetViaDescriptionMethodFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS, PREFIXES);
+        super(FeatureType.MEMBERS, PREFIXES);
     }
 
     // ///////////////////////////////////////////////////////

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaMethod.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaMethod.java Mon Jan 17 18:22:58 2011
@@ -26,7 +26,7 @@ import java.util.List;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
-import org.apache.isis.core.metamodel.facets.naming.describedas.DescribedAsFacetAbstract;
+import org.apache.isis.core.metamodel.facets.describedas.DescribedAsFacetAbstract;
 
 
 public class DescribedAsFacetViaMethod extends DescribedAsFacetAbstract implements ImperativeFacet {

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/annotation/DisabledAnnotationFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/annotation/DisabledAnnotationFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/annotation/DisabledAnnotationFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/annotation/DisabledAnnotationFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -33,7 +33,7 @@ import org.apache.isis.core.progmodel.fa
 public class DisabledAnnotationFacetFactory extends AnnotationBasedFacetFactoryAbstract {
 
     public DisabledAnnotationFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS);
+        super(FeatureType.MEMBERS);
     }
 
     @Override

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/forsession/DisableForSessionFacetViaMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/forsession/DisableForSessionFacetViaMethod.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/forsession/DisableForSessionFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/forsession/DisableForSessionFacetViaMethod.java Mon Jan 17 18:22:58 2011
@@ -25,10 +25,10 @@ import java.util.Collections;
 import java.util.List;
 
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
+import org.apache.isis.core.commons.authentication.AuthenticationSessionUtils;
 import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
-import org.apache.isis.core.progmodel.authentication.AuthenticationSessionUtils;
 import org.apache.isis.core.progmodel.facets.members.disable.DisableForSessionFacetAbstract;
 
 

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -40,7 +40,7 @@ public class DisabledFacetViaDisableForS
      * Note that the {@link Facet}s registered are the generic ones from noa-architecture (where they exist)
      */
     public DisabledFacetViaDisableForSessionMethodFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS, PREFIXES);
+        super(FeatureType.MEMBERS, PREFIXES);
     }
 
     // ///////////////////////////////////////////////////////

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/method/DisabledFacetViaDisableMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/method/DisabledFacetViaDisableMethodFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/method/DisabledFacetViaDisableMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/method/DisabledFacetViaDisableMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -43,7 +43,7 @@ public class DisabledFacetViaDisableMeth
      * Note that the {@link Facet}s registered are the generic ones from noa-architecture (where they exist)
      */
     public DisabledFacetViaDisableMethodFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS, PREFIXES);
+        super(FeatureType.MEMBERS, PREFIXES);
     }
 
     // ///////////////////////////////////////////////////////

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -41,7 +41,7 @@ public class DisabledFacetViaProtectMeth
      * Note that the {@link Facet}s registered are the generic ones from noa-architecture (where they exist)
      */
     public DisabledFacetViaProtectMethodFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS, PREFIXES);
+        super(FeatureType.MEMBERS, PREFIXES);
     }
 
     // ///////////////////////////////////////////////////////

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenAnnotationForMemberFacetFactory.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenAnnotationFacetFactory.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenAnnotationForMemberFacetFactory.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenAnnotationForMemberFacetFactory.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenAnnotationFacetFactory.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenAnnotationFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenAnnotationForMemberFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -30,27 +30,21 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.facets.hide.HiddenFacet;
 
 
-public class HiddenAnnotationFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+public class HiddenAnnotationForMemberFacetFactory extends AnnotationBasedFacetFactoryAbstract {
 
-    public HiddenAnnotationFacetFactory() {
-        super(FeatureType.EVERYTHING_BUT_PARAMETERS);
+    public HiddenAnnotationForMemberFacetFactory() {
+        super(FeatureType.MEMBERS);
     }
 
     
     @Override
-    public void process(ProcessClassContext processClassContaxt) {
-        final Hidden annotation = getAnnotation(processClassContaxt.getCls(), Hidden.class);
-        FacetUtil.addFacet(create(annotation, processClassContaxt.getFacetHolder()));
-    }
-
-    @Override
     public void process(ProcessMethodContext processMethodContext) {
         final Hidden annotation = getAnnotation(processMethodContext.getMethod(), Hidden.class);
         FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
     }
 
-    private HiddenFacet create(final Hidden annotation, final FacetHolder holder) {
-        return annotation == null ? null : new HiddenFacetAnnotation(When.decode(annotation.value()), holder);
+    private static HiddenFacet create(final Hidden annotation, final FacetHolder holder) {
+        return annotation == null ? null : new HiddenFacetForMemberAnnotation(When.decode(annotation.value()), holder);
     }
 
 }

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenFacetForMemberAnnotation.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenFacetAnnotation.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenFacetForMemberAnnotation.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenFacetForMemberAnnotation.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenFacetAnnotation.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenFacetAnnotation.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/annotation/HiddenFacetForMemberAnnotation.java Mon Jan 17 18:22:58 2011
@@ -25,9 +25,9 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.progmodel.facets.members.hide.HiddenFacetImpl;
 
 
-public class HiddenFacetAnnotation extends HiddenFacetImpl {
+public class HiddenFacetForMemberAnnotation extends HiddenFacetImpl {
 
-    public HiddenFacetAnnotation(final When value, final FacetHolder holder) {
+    public HiddenFacetForMemberAnnotation(final When value, final FacetHolder holder) {
         super(value, holder);
     }
 

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -41,7 +41,7 @@ public class HiddenFacetViaHideForSessio
      * Note that the {@link Facet}s registered are the generic ones from noa-architecture (where they exist)
      */
     public HiddenFacetViaHideForSessionMethodFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS, PREFIXES);
+        super(FeatureType.MEMBERS, PREFIXES);
     }
 
     // ///////////////////////////////////////////////////////

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/forsession/HideForSessionFacetViaMethod.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/forsession/HideForSessionFacetViaMethod.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/forsession/HideForSessionFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/forsession/HideForSessionFacetViaMethod.java Mon Jan 17 18:22:58 2011
@@ -25,10 +25,10 @@ import java.util.Collections;
 import java.util.List;
 
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
+import org.apache.isis.core.commons.authentication.AuthenticationSessionUtils;
 import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
-import org.apache.isis.core.progmodel.authentication.AuthenticationSessionUtils;
 import org.apache.isis.core.progmodel.facets.members.hide.HideForSessionFacetAbstract;
 
 

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/method/HiddenFacetViaHideMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/method/HiddenFacetViaHideMethodFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/method/HiddenFacetViaHideMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/method/HiddenFacetViaHideMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -39,7 +39,7 @@ public class HiddenFacetViaHideMethodFac
      * Note that the {@link Facet}s registered are the generic ones from noa-architecture (where they exist)
      */
     public HiddenFacetViaHideMethodFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS, PREFIXES);
+        super(FeatureType.MEMBERS, PREFIXES);
     }
 
     // ///////////////////////////////////////////////////////

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -41,7 +41,7 @@ public class HiddenFacetViaAlwaysHideMet
      * Note that the {@link Facet}s registered are the generic ones from noa-architecture (where they exist)
      */
     public HiddenFacetViaAlwaysHideMethodFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS, PREFIXES);
+        super(FeatureType.MEMBERS, PREFIXES);
     }
 
     // ///////////////////////////////////////////////////////

Added: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/annotation/NamedAnnotationOnMemberFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/annotation/NamedAnnotationOnMemberFacetFactory.java?rev=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/annotation/NamedAnnotationOnMemberFacetFactory.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/annotation/NamedAnnotationOnMemberFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,47 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+package org.apache.isis.core.progmodel.facets.members.named.annotation;
+
+import org.apache.isis.applib.annotation.Named;
+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.named.NamedFacet;
+
+
+public class NamedAnnotationOnMemberFacetFactory extends AnnotationBasedFacetFactoryAbstract {
+
+    public NamedAnnotationOnMemberFacetFactory() {
+        super(FeatureType.MEMBERS);
+    }
+
+    @Override
+    public void process(ProcessMethodContext processMethodContext) {
+        final Named annotation = getAnnotation(processMethodContext.getMethod(), Named.class);
+        FacetUtil.addFacet(create(annotation, processMethodContext.getFacetHolder()));
+    }
+
+    private NamedFacet create(final Named annotation, final FacetHolder holder) {
+        return annotation != null ? new NamedFacetAnnotationOnMember(annotation.value(), holder) : null;
+    }
+
+}

Added: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/annotation/NamedFacetAnnotationOnMember.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/annotation/NamedFacetAnnotationOnMember.java?rev=1060035&view=auto
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/annotation/NamedFacetAnnotationOnMember.java (added)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/annotation/NamedFacetAnnotationOnMember.java Mon Jan 17 18:22:58 2011
@@ -0,0 +1,34 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+
+package org.apache.isis.core.progmodel.facets.members.named.annotation;
+
+import org.apache.isis.core.metamodel.facetapi.FacetHolder;
+import org.apache.isis.core.metamodel.facets.named.NamedFacetAbstract;
+
+
+public class NamedFacetAnnotationOnMember extends NamedFacetAbstract {
+
+    public NamedFacetAnnotationOnMember(final String value, final FacetHolder holder) {
+        super(value, holder);
+    }
+
+}
+

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaMethod.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/name/staticmethod/NamedFacetViaMethod.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaMethod.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaMethod.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/name/staticmethod/NamedFacetViaMethod.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/name/staticmethod/NamedFacetViaMethod.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaMethod.java Mon Jan 17 18:22:58 2011
@@ -18,7 +18,7 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.members.name.staticmethod;
+package org.apache.isis.core.progmodel.facets.members.named.staticmethod;
 
 import java.lang.reflect.Method;
 import java.util.Collections;
@@ -26,7 +26,7 @@ import java.util.List;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
-import org.apache.isis.core.metamodel.facets.naming.named.NamedFacetAbstract;
+import org.apache.isis.core.metamodel.facets.named.NamedFacetAbstract;
 
 
 public class NamedFacetViaMethod extends NamedFacetAbstract implements ImperativeFacet {

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/name/staticmethod/NamedFacetViaNameMethodFacetFactory.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/name/staticmethod/NamedFacetViaNameMethodFacetFactory.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/name/staticmethod/NamedFacetViaNameMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.core.progmodel.facets.members.name.staticmethod;
+package org.apache.isis.core.progmodel.facets.members.named.staticmethod;
 
 import java.lang.reflect.Method;
 
@@ -28,7 +28,7 @@ import org.apache.isis.core.metamodel.fa
 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.naming.named.NamedFacet;
+import org.apache.isis.core.metamodel.facets.named.NamedFacet;
 import org.apache.isis.core.metamodel.methodutils.MethodScope;
 import org.apache.isis.core.progmodel.facets.MethodFinderUtils;
 import org.apache.isis.core.progmodel.facets.MethodPrefixBasedFacetFactoryAbstract;
@@ -46,7 +46,7 @@ public class NamedFacetViaNameMethodFace
      * Note that the {@link Facet}s registered are the generic ones from noa-architecture (where they exist)
      */
     public NamedFacetViaNameMethodFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS, PREFIXES);
+        super(FeatureType.MEMBERS, PREFIXES);
     }
 
     // ///////////////////////////////////////////////////////

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderAnnotationFacetFactory.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderAnnotationFacetFactory.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderAnnotationFacetFactory.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderAnnotationFacetFactory.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderAnnotationFacetFactory.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderAnnotationFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderAnnotationFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -18,7 +18,7 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.ordering.memberorder;
+package org.apache.isis.core.progmodel.facets.members.order;
 
 
 import org.apache.isis.applib.annotation.MemberOrder;
@@ -26,13 +26,13 @@ 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;
-import org.apache.isis.core.metamodel.facets.ordering.MemberOrderFacet;
+import org.apache.isis.core.metamodel.facets.member.ordering.MemberOrderFacet;
 
 
 public class MemberOrderAnnotationFacetFactory extends AnnotationBasedFacetFactoryAbstract {
 
     public MemberOrderAnnotationFacetFactory() {
-        super(FeatureType.PROPERTIES_COLLECTIONS_AND_ACTIONS);
+        super(FeatureType.MEMBERS);
     }
 
     @Override

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderFacetAbstract.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderFacetAbstract.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderFacetAbstract.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderFacetAbstract.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderFacetAbstract.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderFacetAbstract.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderFacetAbstract.java Mon Jan 17 18:22:58 2011
@@ -18,12 +18,12 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.ordering.memberorder;
+package org.apache.isis.core.progmodel.facets.members.order;
 
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.MultipleValueFacetAbstract;
-import org.apache.isis.core.metamodel.facets.ordering.MemberOrderFacet;
+import org.apache.isis.core.metamodel.facets.member.ordering.MemberOrderFacet;
 
 
 public abstract class MemberOrderFacetAbstract extends MultipleValueFacetAbstract implements MemberOrderFacet {

Copied: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderFacetAnnotation.java (from r1059849, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderFacetAnnotation.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderFacetAnnotation.java?p2=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderFacetAnnotation.java&p1=incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderFacetAnnotation.java&r1=1059849&r2=1060035&rev=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderFacetAnnotation.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/order/MemberOrderFacetAnnotation.java Mon Jan 17 18:22:58 2011
@@ -18,7 +18,7 @@
  */
 
 
-package org.apache.isis.core.progmodel.facets.ordering.memberorder;
+package org.apache.isis.core.progmodel.facets.members.order;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/aggregated/annotation/AggregatedFacetAnnotation.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/aggregated/annotation/AggregatedFacetAnnotation.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/aggregated/annotation/AggregatedFacetAnnotation.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/aggregated/annotation/AggregatedFacetAnnotation.java Mon Jan 17 18:22:58 2011
@@ -21,10 +21,10 @@
 package org.apache.isis.core.progmodel.facets.object.aggregated.annotation;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.progmodel.facets.object.aggregated.AggregatedFacetImpl;
+import org.apache.isis.core.metamodel.facets.object.aggregated.AggregatedFacetAbstract;
 
 
-public class AggregatedFacetAnnotation extends AggregatedFacetImpl {
+public class AggregatedFacetAnnotation extends AggregatedFacetAbstract {
 
     public AggregatedFacetAnnotation(final FacetHolder holder) {
         super(holder);

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/create/CreatedCallbackFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/create/CreatedCallbackFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/create/CreatedCallbackFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/create/CreatedCallbackFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -31,13 +31,12 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.methodutils.MethodScope;
 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 CreatedCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
-    private static final String CREATED_PREFIX = "created";
-
-    private static final String[] PREFIXES = { CREATED_PREFIX, };
+    private static final String[] PREFIXES = { MethodPrefixConstants.CREATED_PREFIX, };
 
     public CreatedCallbackFacetFactory() {
         super(FeatureType.OBJECTS_ONLY, PREFIXES);
@@ -52,7 +51,7 @@ public class CreatedCallbackFacetFactory
         final List<Method> methods = new ArrayList<Method>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, CREATED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.CREATED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             facets.add(new CreatedCallbackFacetViaMethod(method, holder));

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/load/LoadCallbackFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/load/LoadCallbackFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/load/LoadCallbackFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/load/LoadCallbackFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -31,14 +31,12 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.methodutils.MethodScope;
 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 LoadCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
-    private static final String LOADED_PREFIX = "loaded";
-    private static final String LOADING_PREFIX = "loading";
-
-    private static final String[] PREFIXES = { LOADED_PREFIX, LOADING_PREFIX, };
+    private static final String[] PREFIXES = { MethodPrefixConstants.LOADED_PREFIX, MethodPrefixConstants.LOADING_PREFIX, };
 
     public LoadCallbackFacetFactory() {
         super(FeatureType.OBJECTS_ONLY, PREFIXES);
@@ -53,13 +51,13 @@ public class LoadCallbackFacetFactory ex
         final List<Method> methods = new ArrayList<Method>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, LOADING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.LOADING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             facets.add(new LoadingCallbackFacetViaMethod(method, facetHolder));
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, LOADED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.LOADED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             facets.add(new LoadedCallbackFacetViaMethod(method, facetHolder));

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/persist/PersistCallbackFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/persist/PersistCallbackFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/persist/PersistCallbackFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/persist/PersistCallbackFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -33,14 +33,12 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.methodutils.MethodScope;
 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 PersistCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
-    private static final String PERSISTED_PREFIX = "persisted";
-    private static final String PERSISTING_PREFIX = "persisting";
-
-    private static final String[] PREFIXES = { PERSISTED_PREFIX, PERSISTING_PREFIX, };
+    private static final String[] PREFIXES = { MethodPrefixConstants.PERSISTED_PREFIX, MethodPrefixConstants.PERSISTING_PREFIX, };
 
     public PersistCallbackFacetFactory() {
         super(FeatureType.OBJECTS_ONLY, PREFIXES);
@@ -55,7 +53,7 @@ public class PersistCallbackFacetFactory
         final List<Method> methods = new ArrayList<Method>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, PERSISTING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.PERSISTING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             PersistingCallbackFacet facet = facetHolder.getFacet(PersistingCallbackFacet.class);
@@ -66,7 +64,7 @@ public class PersistCallbackFacetFactory
             }
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, PERSISTED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.PERSISTED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             PersistedCallbackFacet facet = facetHolder.getFacet(PersistedCallbackFacet.class);

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/persist/PersistCallbackViaSaveMethodFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/persist/PersistCallbackViaSaveMethodFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/persist/PersistCallbackViaSaveMethodFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/persist/PersistCallbackViaSaveMethodFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -33,14 +33,12 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.methodutils.MethodScope;
 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 PersistCallbackViaSaveMethodFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
-    private static final String SAVED_PREFIX = "saved";
-    private static final String SAVING_PREFIX = "saving";
-
-    private static final String[] PREFIXES = { SAVED_PREFIX, SAVING_PREFIX, };
+    private static final String[] PREFIXES = { MethodPrefixConstants.SAVED_PREFIX, MethodPrefixConstants.SAVING_PREFIX, };
 
     public PersistCallbackViaSaveMethodFacetFactory() {
         super(FeatureType.OBJECTS_ONLY, PREFIXES);
@@ -55,7 +53,7 @@ public class PersistCallbackViaSaveMetho
         final List<Method> methods = new ArrayList<Method>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, SAVING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.SAVING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             PersistingCallbackFacet facet = facetHolder.getFacet(PersistingCallbackFacet.class);
@@ -66,7 +64,7 @@ public class PersistCallbackViaSaveMetho
             }
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, SAVED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.SAVED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             PersistedCallbackFacet facet = facetHolder.getFacet(PersistedCallbackFacet.class);

Modified: incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/remove/RemoveCallbackFacetFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/remove/RemoveCallbackFacetFactory.java?rev=1060035&r1=1060034&r2=1060035&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/remove/RemoveCallbackFacetFactory.java (original)
+++ incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/callbacks/remove/RemoveCallbackFacetFactory.java Mon Jan 17 18:22:58 2011
@@ -33,14 +33,12 @@ import org.apache.isis.core.metamodel.fa
 import org.apache.isis.core.metamodel.methodutils.MethodScope;
 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 RemoveCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
-    private static final String REMOVED_PREFIX = "removed";
-    private static final String REMOVING_PREFIX = "removing";
-
-    private static final String[] PREFIXES = { REMOVED_PREFIX, REMOVING_PREFIX, };
+    private static final String[] PREFIXES = { MethodPrefixConstants.REMOVED_PREFIX, MethodPrefixConstants.REMOVING_PREFIX, };
 
     public RemoveCallbackFacetFactory() {
         super(FeatureType.OBJECTS_ONLY, PREFIXES);
@@ -55,7 +53,7 @@ public class RemoveCallbackFacetFactory 
         final List<Method> methods = new ArrayList<Method>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, REMOVING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.REMOVING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             RemovingCallbackFacet facet = facetHolder.getFacet(RemovingCallbackFacet.class);
@@ -66,7 +64,7 @@ public class RemoveCallbackFacetFactory 
             }
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, REMOVED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.REMOVED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             methods.add(method);
             RemovedCallbackFacet facet = facetHolder.getFacet(RemovedCallbackFacet.class);