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 2012/12/06 17:59:46 UTC

[9/52] [partial] ISIS-188: more reorganizing of artifacts into physical directories.

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetFactoryProcessObject.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetFactoryProcessObject.java b/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetFactoryProcessObject.java
deleted file mode 100644
index fa0f288..0000000
--- a/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetFactoryProcessObject.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- *  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.metamodel.examples.facets.jsr303;
-
-import static org.junit.Assert.fail;
-
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JMock;
-import org.jmock.integration.junit4.JUnit4Mockery;
-import org.jmock.lib.legacy.ClassImposteriser;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.apache.isis.metamodel.examples.facets.jsr303.Jsr303FacetFactory;
-import org.apache.isis.metamodel.facets.FacetHolder;
-import org.apache.isis.metamodel.facets.MethodRemover;
-
-
-@RunWith(JMock.class)
-public class Jsr303FacetFactoryProcessObject {
-
-    private Mockery mockery = new JUnit4Mockery() {
-        {
-            setImposteriser(ClassImposteriser.INSTANCE);
-        }
-    };
-    
-    private Jsr303FacetFactory facetFactory;
-    private MethodRemover mockMethodRemover;
-    private FacetHolder mockFacetHolder;
-
-    private Class<DomainObjectVanilla> domainObjectClass;
-
-    @Before
-    public void setUp() throws Exception {
-        facetFactory = new Jsr303FacetFactory();
-        mockMethodRemover = mockery.mock(MethodRemover.class);
-        mockFacetHolder = mockery.mock(FacetHolder.class);
-        domainObjectClass = DomainObjectVanilla.class;
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        facetFactory = null;
-        mockMethodRemover = null;
-        mockFacetHolder = null;
-    }
-
-    @Ignore("TODO")
-    @Test
-    public void process() {
-        facetFactory.process(domainObjectClass, mockMethodRemover, mockFacetHolder);
-        fail();
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetFactoryProcessProperty.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetFactoryProcessProperty.java b/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetFactoryProcessProperty.java
deleted file mode 100644
index 0049e33..0000000
--- a/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetFactoryProcessProperty.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- *  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.metamodel.examples.facets.jsr303;
-
-import static org.apache.isis.metamodel.commons.matchers.NofMatchers.anInstanceOf;
-
-import java.lang.reflect.Method;
-
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JMock;
-import org.jmock.integration.junit4.JUnit4Mockery;
-import org.jmock.lib.legacy.ClassImposteriser;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.apache.isis.metamodel.examples.facets.jsr303.Jsr303FacetFactory;
-import org.apache.isis.metamodel.examples.facets.jsr303.Jsr303PropertyValidationFacet;
-import org.apache.isis.metamodel.facets.FacetHolder;
-import org.apache.isis.metamodel.facets.MethodRemover;
-
-@RunWith(JMock.class)
-public class Jsr303FacetFactoryProcessProperty {
-
-    private Mockery mockery = new JUnit4Mockery() {
-        {
-            setImposteriser(ClassImposteriser.INSTANCE);
-        }
-    };
-    
-    private Jsr303FacetFactory facetFactory;
-    private MethodRemover mockMethodRemover;
-    private FacetHolder mockFacetHolder;
-
-    private Class<DomainObjectVanilla> domainObjectClass;
-    private Method firstNameMethod;
-
-    @Before
-    public void setUp() throws Exception {
-        facetFactory = new Jsr303FacetFactory();
-        mockMethodRemover = mockery.mock(MethodRemover.class);
-        mockFacetHolder = mockery.mock(FacetHolder.class);
-        domainObjectClass = DomainObjectVanilla.class;
-        firstNameMethod = domainObjectClass.getMethod("getFirstName");
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        facetFactory = null;
-        mockMethodRemover = null;
-        mockFacetHolder = null;
-    }
-
-    @Test
-    public void alwaysAddsAJsr303FacetToHolder() {
-        mockery.checking(new Expectations() {{
-            one(mockFacetHolder).addFacet(with(anInstanceOf(Jsr303PropertyValidationFacet.class)));
-        }});
-
-        facetFactory.process(firstNameMethod, mockMethodRemover, mockFacetHolder);
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetInstantiation.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetInstantiation.java b/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetInstantiation.java
deleted file mode 100644
index e1619fd..0000000
--- a/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetInstantiation.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- *  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.metamodel.examples.facets.jsr303;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.apache.isis.metamodel.examples.facets.jsr303.Jsr303PropertyValidationFacet;
-import org.apache.isis.metamodel.facets.FacetHolderImpl;
-
-
-public class Jsr303FacetInstantiation {
-
-    private FacetHolderImpl holder;
-
-    @Before
-    public void setUp() throws Exception {
-        holder = new FacetHolderImpl();
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        holder = null;
-    }
-
-    @Test
-    public void canInstantiate() {
-        new Jsr303PropertyValidationFacet(holder);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetValidatingInteraction.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetValidatingInteraction.java b/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetValidatingInteraction.java
deleted file mode 100644
index 50e4664..0000000
--- a/examples/metamodel-examples/jsr303/src/test/java/org/apache/isis/metamodel/examples/facets/jsr303/Jsr303FacetValidatingInteraction.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- *  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.metamodel.examples.facets.jsr303;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.not;
-import static org.hamcrest.CoreMatchers.nullValue;
-import static org.junit.Assert.assertThat;
-
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JMock;
-import org.jmock.integration.junit4.JUnit4Mockery;
-import org.jmock.lib.legacy.ClassImposteriser;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.apache.isis.applib.Identifier;
-import org.apache.isis.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.metamodel.examples.facets.jsr303.Jsr303PropertyValidationFacet;
-import org.apache.isis.metamodel.interactions.PropertyModifyContext;
-import org.apache.isis.metamodel.spec.identifier.Identified;
-
-
-@RunWith(JMock.class)
-public class Jsr303FacetValidatingInteraction {
-
-    private final Mockery mockery = new JUnit4Mockery() {
-        {
-            setImposteriser(ClassImposteriser.INSTANCE);
-        }
-    };
-
-    private Jsr303PropertyValidationFacet facet;
-    private Identified mockHolder;
-
-    private PropertyModifyContext mockContext;
-    private ObjectAdapter mockTargetObjectAdapter;
-    private ObjectAdapter mockProposedObjectAdapter;
-
-    private DomainObjectWithCustomValidation domainObjectWithCustomValidation;
-
-    private DomainObjectWithBuiltInValidation domainObjectWithBuiltInValidation;
-    
-    @Before
-    public void setUp() throws Exception {
-        mockHolder = mockery.mock(Identified.class);
-        facet = new Jsr303PropertyValidationFacet(mockHolder);
-        mockContext = mockery.mock(PropertyModifyContext.class);
-        mockTargetObjectAdapter = mockery.mock(ObjectAdapter.class, "target");
-        mockProposedObjectAdapter = mockery.mock(ObjectAdapter.class, "proposed");
-
-        domainObjectWithBuiltInValidation = new DomainObjectWithBuiltInValidation();
-        domainObjectWithCustomValidation = new DomainObjectWithCustomValidation();
-
-        mockery.checking(new Expectations() {
-            {
-                one(mockHolder).getIdentifier();
-                will(returnValue(Identifier.propertyOrCollectionIdentifier(DomainObjectWithBuiltInValidation.class, "serialNumber")));
-
-                one(mockContext).getTarget();
-                will(returnValue(mockTargetObjectAdapter));
-
-                one(mockContext).getProposed();
-                will(returnValue(mockProposedObjectAdapter));
-            }
-        });
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        mockHolder = null;
-        facet = null;
-        mockContext = null;
-    }
-
-    @Test
-    public void invalidatesWhenBuiltInConstraintVetoes() {
-        mockery.checking(new Expectations() {
-            {
-                one(mockTargetObjectAdapter).getObject();
-                will(returnValue(domainObjectWithBuiltInValidation));
-
-                one(mockProposedObjectAdapter).getObject();
-                will(returnValue("NONSENSE"));
-            }
-        });
-
-        final String reason = facet.invalidates(mockContext);
-        assertThat(reason, is(not(nullValue())));
-        assertThat(reason, is("serialNumber is invalid: must match ....-....-...."));
-    }
-
-    @Test
-    public void validatesWhenBuiltInConstraintIsMet() {
-        mockery.checking(new Expectations() {
-            {
-                one(mockTargetObjectAdapter).getObject();
-                will(returnValue(domainObjectWithBuiltInValidation));
-
-                one(mockProposedObjectAdapter).getObject();
-                will(returnValue("1234-5678-9012"));
-            }
-        });
-
-        final String reason = facet.invalidates(mockContext);
-        assertThat(reason, is(nullValue()));
-    }
-
-    @Test
-    public void invalidatesWhenFailsCustomConstraint() {
-        mockery.checking(new Expectations() {
-            {
-                one(mockTargetObjectAdapter).getObject();
-                will(returnValue(domainObjectWithCustomValidation));
-
-                one(mockProposedObjectAdapter).getObject();
-                will(returnValue("NONSENSE"));
-            }
-        });
-
-        final String reason = facet.invalidates(mockContext);
-        assertThat(reason, is(not(nullValue())));
-        assertThat(reason, is("serialNumber is invalid: must match ....-....-...."));
-    }
-
-    @Test
-    public void validatesWhenFailsCustomConstraint() {
-        mockery.checking(new Expectations() {
-            {
-                one(mockTargetObjectAdapter).getObject();
-                will(returnValue(domainObjectWithCustomValidation));
-
-                one(mockProposedObjectAdapter).getObject();
-                will(returnValue("1234-5678-9012"));
-            }
-        });
-
-        final String reason = facet.invalidates(mockContext);
-        assertThat(reason, is(nullValue()));
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/pom.xml
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/pom.xml b/examples/metamodel-examples/namefile/pom.xml
deleted file mode 100644
index bb57242..0000000
--- a/examples/metamodel-examples/namefile/pom.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-
-	<parent>
-		<groupId>org.apache.isis</groupId>
-		<artifactId>isis</artifactId>
-		<version>0.3.1-SNAPSHOT</version>
-	</parent>
-
-    <groupId>org.apache.isis.examples.progmodel</groupId>
-	<artifactId>namefile</artifactId>
-    
-	<name>Example ProgModel: Namefile Facet</name>
-
-	<dependencies>
-		<dependency>
-			<groupId>org.apache.isis.runtimes.dflt</groupId>
-			<artifactId>runtime</artifactId>
-			<version>0.3.1-SNAPSHOT</version>
-		</dependency>
-	</dependencies>
-	
-</project>

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacet.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacet.java b/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacet.java
deleted file mode 100644
index f97e76e..0000000
--- a/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacet.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.named.NamedFacet;
-
-public class NameFileFacet extends FacetAbstract implements NamedFacet {
-
-    public static Class<? extends Facet> type() {
-        return NamedFacet.class;
-    }
-
-    private final String name;
-
-    public NameFileFacet(final FacetHolder holder, final String name) {
-        super(type(), holder, Derivation.NOT_DERIVED);
-        this.name = name;
-    }
-
-    @Override
-    public String value() {
-        return name;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactory.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactory.java b/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactory.java
deleted file mode 100644
index ee7bc34..0000000
--- a/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactory.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import java.io.IOException;
-import java.util.List;
-
-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.facetapi.IdentifiedHolder;
-import org.apache.isis.core.metamodel.facets.FacetFactory;
-
-public class NameFileFacetFactory implements FacetFactory {
-
-    private final NameFileParser nameFileParser;
-
-    public NameFileFacetFactory() {
-        nameFileParser = new NameFileParser();
-        try {
-            nameFileParser.parse();
-        } catch (final IOException ex) {
-            throw new RuntimeException(ex);
-        }
-    }
-
-    @Override
-    public List<FeatureType> getFeatureTypes() {
-        return FeatureType.EVERYTHING_BUT_PARAMETERS;
-    }
-
-    /**
-     * Simply attaches a {@link NameFileFacet}.
-     */
-    @Override
-    public void process(final ProcessClassContext processClassContaxt) {
-        FacetUtil.addFacet(create(processClassContaxt.getCls(), processClassContaxt.getFacetHolder()));
-    }
-
-    private NameFileFacet create(final Class<?> cls, final FacetHolder holder) {
-        final String memberNameInFile = nameFileParser.getName(cls);
-        return memberNameInFile != null ? new NameFileFacet(holder, memberNameInFile) : null;
-    }
-
-    /**
-     * Simply attaches a {@link NameFileFacet}.
-     */
-    @Override
-    public void process(final ProcessMethodContext processMethodContext) {
-        if (!(processMethodContext.getFacetHolder() instanceof IdentifiedHolder)) {
-            return;
-        }
-        final IdentifiedHolder identifiedHolder = processMethodContext.getFacetHolder();
-        final Class<?> declaringClass = processMethodContext.getMethod().getDeclaringClass();
-        final String memberName = identifiedHolder.getIdentifier().getMemberName();
-        FacetUtil.addFacet(create(declaringClass, memberName, processMethodContext.getFacetHolder()));
-    }
-
-    private NameFileFacet create(final Class<?> declaringClass, final String memberName, final FacetHolder holder) {
-        final String memberNameInFile = nameFileParser.getMemberName(declaringClass, memberName);
-        return memberNameInFile != null ? new NameFileFacet(holder, memberNameInFile) : null;
-    }
-
-    @Override
-    public void processParams(final ProcessParameterContext processParameterContext) {
-        // nothing to do
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParser.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParser.java b/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParser.java
deleted file mode 100644
index 88c0ce2..0000000
--- a/examples/metamodel-examples/namefile/src/main/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParser.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Properties;
-
-public class NameFileParser {
-
-    private static final String CONFIG_NAMEFILE_PROPERTIES = "config/namefile.properties";
-    private Properties properties;
-
-    public void parse() throws IOException {
-        InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream(CONFIG_NAMEFILE_PROPERTIES);
-        if (in == null) {
-            in = getClass().getClassLoader().getResourceAsStream(CONFIG_NAMEFILE_PROPERTIES);
-        }
-        if (in == null) {
-            throw new NullPointerException("Cannot locate resource '" + CONFIG_NAMEFILE_PROPERTIES + "'");
-        }
-        properties = new Properties();
-        properties.load(in);
-    }
-
-    public String getName(final Class<?> cls) {
-        return properties.getProperty(cls.getCanonicalName());
-    }
-
-    public String getMemberName(final Class<?> cls, final String memberName) {
-        return properties.getProperty(cls.getCanonicalName() + "#" + memberName);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/DomainObjectWithNameFileEntry.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/DomainObjectWithNameFileEntry.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/DomainObjectWithNameFileEntry.java
deleted file mode 100644
index 079834c..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/DomainObjectWithNameFileEntry.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import org.apache.isis.applib.AbstractDomainObject;
-
-public class DomainObjectWithNameFileEntry extends AbstractDomainObject {
-
-    private String lastName;
-
-    public String getLastName() {
-        resolve(lastName);
-        return lastName;
-    }
-
-    public void setLastName(final String lastName) {
-        this.lastName = lastName;
-        objectChanged();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/DomainObjectWithoutNameFileEntry.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/DomainObjectWithoutNameFileEntry.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/DomainObjectWithoutNameFileEntry.java
deleted file mode 100644
index 083ad41..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/DomainObjectWithoutNameFileEntry.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import org.apache.isis.applib.AbstractDomainObject;
-
-public class DomainObjectWithoutNameFileEntry extends AbstractDomainObject {
-
-    private String lastName;
-
-    public String getLastName() {
-        resolve(lastName);
-        return lastName;
-    }
-
-    public void setLastName(final String lastName) {
-        this.lastName = lastName;
-        objectChanged();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFacetHolderTest.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFacetHolderTest.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFacetHolderTest.java
deleted file mode 100644
index cc56196..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFacetHolderTest.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.junit.Assert.assertThat;
-
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JMock;
-import org.jmock.integration.junit4.JUnit4Mockery;
-import org.jmock.lib.legacy.ClassImposteriser;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-
-@RunWith(JMock.class)
-public class NameFileFacetFacetHolderTest {
-
-    private final Mockery mockery = new JUnit4Mockery() {
-        {
-            setImposteriser(ClassImposteriser.INSTANCE);
-        }
-    };
-
-    private NameFileFacet facet;
-    private FacetHolder mockHolder;
-
-    @Before
-    public void setUp() throws Exception {
-        mockHolder = mockery.mock(FacetHolder.class);
-        facet = new NameFileFacet(mockHolder, "Foobar");
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        mockHolder = null;
-        facet = null;
-    }
-
-    @Test
-    public void facetHolder() {
-        assertThat(facet.getFacetHolder(), is(mockHolder));
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryFeatureTypesTest.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryFeatureTypesTest.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryFeatureTypesTest.java
deleted file mode 100644
index 24c197e..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryFeatureTypesTest.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.Matchers.hasItem;
-import static org.junit.Assert.assertThat;
-
-import java.util.List;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-import org.apache.isis.core.metamodel.facetapi.FeatureType;
-
-public class NameFileFacetFactoryFeatureTypesTest {
-
-    private NameFileFacetFactory facetFactory;
-
-    @Before
-    public void setUp() throws Exception {
-        facetFactory = new NameFileFacetFactory();
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        facetFactory = null;
-    }
-
-    @Test
-    public void featureTypesLength() {
-        final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
-        assertThat(featureTypes.size(), is(4));
-    }
-
-    @Test
-    public void featureTypesContainsTypeRepresentingObject() {
-        final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
-        assertThat(featureTypes, hasItem(FeatureType.OBJECT));
-    }
-
-    @Test
-    public void featureTypesContainsTypeRepresentingProperty() {
-        final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
-        assertThat(featureTypes, hasItem(FeatureType.PROPERTY));
-    }
-
-    @Test
-    public void featureTypesContainsTypeRepresentingCollection() {
-        final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
-        assertThat(featureTypes, hasItem(FeatureType.COLLECTION));
-    }
-
-    @Test
-    public void featureTypesContainsTypeRepresentingAction() {
-        final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
-        assertThat(featureTypes, hasItem(FeatureType.ACTION));
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryInstantiationTest.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryInstantiationTest.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryInstantiationTest.java
deleted file mode 100644
index 3e13fa1..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryInstantiationTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import org.junit.Test;
-
-public class NameFileFacetFactoryInstantiationTest {
-
-    @Test
-    public void canInstantiate() {
-        new NameFileFacetFactory();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryProcessTest.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryProcessTest.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryProcessTest.java
deleted file mode 100644
index 3f99b4b..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetFactoryProcessTest.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import static org.apache.isis.core.commons.matchers.IsisMatchers.anInstanceOf;
-
-import java.lang.reflect.Method;
-
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JMock;
-import org.jmock.integration.junit4.JUnit4Mockery;
-import org.jmock.lib.legacy.ClassImposteriser;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-import org.apache.isis.applib.Identifier;
-import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.MethodRemover;
-import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
-import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessMethodContext;
-import org.apache.isis.core.metamodel.facets.FacetedMethod;
-
-@RunWith(JMock.class)
-public class NameFileFacetFactoryProcessTest {
-
-    private final Mockery mockery = new JUnit4Mockery() {
-        {
-            setImposteriser(ClassImposteriser.INSTANCE);
-        }
-    };
-
-    private NameFileFacetFactory facetFactory;
-    private MethodRemover mockMethodRemover;
-    private FacetedMethod mockFacetHolder;
-
-    private Class<DomainObjectWithNameFileEntry> domainObjectWithNameFileEntryClass;
-    private Method domainObjectWithNameFileEntryMethod;
-
-    private Class<DomainObjectWithoutNameFileEntry> domainObjectWithoutNameFileEntryClass;
-    private Method domainObjectWithoutNameFileEntryMethod;
-
-    @Before
-    public void setUp() throws Exception {
-        facetFactory = new NameFileFacetFactory();
-        mockMethodRemover = mockery.mock(MethodRemover.class);
-        mockFacetHolder = mockery.mock(FacetedMethod.class);
-
-        domainObjectWithNameFileEntryClass = DomainObjectWithNameFileEntry.class;
-        domainObjectWithNameFileEntryMethod = domainObjectWithNameFileEntryClass.getMethod("getLastName");
-
-        domainObjectWithoutNameFileEntryClass = DomainObjectWithoutNameFileEntry.class;
-        domainObjectWithoutNameFileEntryMethod = domainObjectWithoutNameFileEntryClass.getMethod("getLastName");
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        facetFactory = null;
-        mockMethodRemover = null;
-        mockFacetHolder = null;
-    }
-
-    @Test
-    public void addsANameFileFacetForObjectIfEntryExists() {
-        mockery.checking(new Expectations() {
-            {
-                one(mockFacetHolder).addFacet(with(anInstanceOf(NameFileFacet.class)));
-            }
-        });
-
-        facetFactory.process(new ProcessClassContext(domainObjectWithNameFileEntryClass, mockMethodRemover, mockFacetHolder));
-    }
-
-    @Test
-    public void doesNotAddsANameFileFacetForObjectIfEntryDoesNotExists() {
-        mockery.checking(new Expectations() {
-            {
-                never(mockFacetHolder).addFacet(with(anInstanceOf(NameFileFacet.class)));
-            }
-        });
-
-        facetFactory.process(new ProcessClassContext(domainObjectWithoutNameFileEntryClass, mockMethodRemover, mockFacetHolder));
-    }
-
-    @Test
-    public void addsANameFileFacetForPropertyIfEntryExists() {
-        mockery.checking(new Expectations() {
-            {
-                one(mockFacetHolder).getIdentifier();
-                will(returnValue(Identifier.propertyOrCollectionIdentifier(domainObjectWithNameFileEntryClass, "lastName")));
-
-                one(mockFacetHolder).addFacet(with(anInstanceOf(NameFileFacet.class)));
-            }
-        });
-
-        facetFactory.process(new ProcessMethodContext(domainObjectWithNameFileEntryClass, domainObjectWithNameFileEntryMethod, mockMethodRemover, mockFacetHolder));
-    }
-
-    @Test
-    public void doesNotAddsANameFileFacetForPropertyIfEntryDoesNotExists() {
-        mockery.checking(new Expectations() {
-            {
-                one(mockFacetHolder).getIdentifier();
-                will(returnValue(Identifier.propertyOrCollectionIdentifier(domainObjectWithoutNameFileEntryClass, "lastName")));
-
-                never(mockFacetHolder).addFacet(with(anInstanceOf(Facet.class)));
-            }
-        });
-
-        facetFactory.process(new ProcessMethodContext(domainObjectWithoutNameFileEntryClass, domainObjectWithoutNameFileEntryMethod, mockMethodRemover, mockFacetHolder));
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetInstantiationTest.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetInstantiationTest.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetInstantiationTest.java
deleted file mode 100644
index 85079b6..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetInstantiationTest.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
-
-public class NameFileFacetInstantiationTest {
-
-    private FacetHolderImpl holder;
-
-    @Before
-    public void setUp() throws Exception {
-        holder = new FacetHolderImpl();
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        holder = null;
-    }
-
-    @Test
-    public void canInstantiate() {
-        new NameFileFacet(holder, "foobar");
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetValueTest.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetValueTest.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetValueTest.java
deleted file mode 100644
index 97aa6c4..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileFacetValueTest.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.junit.Assert.assertThat;
-
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JMock;
-import org.jmock.integration.junit4.JUnit4Mockery;
-import org.jmock.lib.legacy.ClassImposteriser;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-
-@RunWith(JMock.class)
-public class NameFileFacetValueTest {
-
-    private final Mockery mockery = new JUnit4Mockery() {
-        {
-            setImposteriser(ClassImposteriser.INSTANCE);
-        }
-    };
-
-    private NameFileFacet facet;
-    private FacetHolder mockHolder;
-
-    @Before
-    public void setUp() throws Exception {
-        mockHolder = mockery.mock(FacetHolder.class);
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        mockHolder = null;
-        facet = null;
-    }
-
-    @Test
-    public void value() {
-        facet = new NameFileFacet(mockHolder, "Foobar");
-        assertThat(facet.value(), is("Foobar"));
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParserInstantiationTest.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParserInstantiationTest.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParserInstantiationTest.java
deleted file mode 100644
index 116b2ff..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParserInstantiationTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import org.junit.Test;
-
-public class NameFileParserInstantiationTest {
-
-    @Test
-    public void canInstantiate() {
-        new NameFileParser();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParserParsingTest.java
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParserParsingTest.java b/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParserParsingTest.java
deleted file mode 100644
index ac226d4..0000000
--- a/examples/metamodel-examples/namefile/src/test/java/org/apache/isis/metamodel/examples/facets/namefile/NameFileParserParsingTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- *  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.metamodel.examples.facets.namefile;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.junit.Assert.assertThat;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-public class NameFileParserParsingTest {
-
-    private NameFileParser parser;
-
-    @Before
-    public void setUp() throws Exception {
-        parser = new NameFileParser();
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        parser = null;
-    }
-
-    @Test
-    public void canFindResourceWhenExists() throws Exception {
-        parser.parse();
-    }
-
-    @Test
-    public void getName() throws Exception {
-        parser.parse();
-        assertThat(parser.getName(DomainObjectWithNameFileEntry.class), is("Customer"));
-    }
-
-    @Test
-    public void getPropertyName() throws Exception {
-        parser.parse();
-        assertThat(parser.getMemberName(DomainObjectWithNameFileEntry.class, "lastName"), is("surname"));
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/metamodel-examples/namefile/src/test/resources/config/namefile.properties
----------------------------------------------------------------------
diff --git a/examples/metamodel-examples/namefile/src/test/resources/config/namefile.properties b/examples/metamodel-examples/namefile/src/test/resources/config/namefile.properties
deleted file mode 100644
index 038791a..0000000
--- a/examples/metamodel-examples/namefile/src/test/resources/config/namefile.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-#  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.
-org.apache.isis.metamodel.examples.facets.namefile.DomainObjectWithNameFileEntry = Customer
-org.apache.isis.metamodel.examples.facets.namefile.DomainObjectWithNameFileEntry#lastName = surname

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/dom/pom.xml
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/dom/pom.xml b/examples/onlinedemo/dom/pom.xml
deleted file mode 100644
index f9b8ac4..0000000
--- a/examples/onlinedemo/dom/pom.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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.
---><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-
-    <!--
-    mvn javadoc:javadoc
-    mvn org.apache.maven.plugins:maven-jxr-plugin:2.2:jxr 
-    -->
-    
-	<parent>
-    	<groupId>org.apache.isis.examples</groupId>
-    	<artifactId>onlinedemo</artifactId>
-		<version>0.3.1-SNAPSHOT</version>
-	</parent>
-
-	<artifactId>onlinedemo-dom</artifactId>
-	<name>Online Demo DOM</name>
-
-	<dependencies>
-		<dependency>
-			<groupId>org.apache.isis</groupId>
-			<artifactId>applib</artifactId>
-		</dependency>
-    </dependencies>
-
-</project>

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/demo/DemoFixtures.java
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/demo/DemoFixtures.java b/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/demo/DemoFixtures.java
deleted file mode 100644
index 01c7d2e..0000000
--- a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/demo/DemoFixtures.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- *  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.examples.onlinedemo.dom.demo;
-
-import java.util.List;
-
-import org.apache.isis.applib.annotation.ActionSemantics;
-import org.apache.isis.applib.annotation.Idempotent;
-import org.apache.isis.applib.annotation.MemberOrder;
-import org.apache.isis.applib.annotation.Named;
-import org.apache.isis.applib.annotation.ActionSemantics.Of;
-import org.apache.isis.examples.onlinedemo.dom.items.ToDoItem;
-
-/**
- * Install fixtures (test data set) for the currently logged-in user.
- * 
- * <p>
- * Typically fixtures are installed directly by the framework, using the
- * <tt>isis.fixtures</tt> key within the <tt>isis.properties</tt> configuration
- * file. In this case though, because the online demo is intended to be
- * multi-user, we have made this capability available directly in the UI. (In
- * production, this service would be excluded from the final build)
- */
-@Named("Demo")
-// name to use in the UI
-public interface DemoFixtures {
-
-    
-    @ActionSemantics(Of.IDEMPOTENT) // post-conditions are always same
-    @MemberOrder(sequence = "1")
-    public List<ToDoItem> resetFixtures();
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/Categories.java
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/Categories.java b/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/Categories.java
deleted file mode 100644
index e122dcd..0000000
--- a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/Categories.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- *  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.examples.onlinedemo.dom.items;
-
-import java.util.List;
-
-import org.apache.isis.applib.annotation.Hidden;
-import org.apache.isis.applib.annotation.MemberOrder;
-import org.apache.isis.applib.annotation.Named;
-import org.apache.isis.applib.annotation.QueryOnly;
-
-/**
- * A repository for {@link Category}.
- * 
- * <p>
- * The implementation depends on the configured object store.
- */
-@Hidden
-@Named("Categories")
-public interface Categories {
-
-    @QueryOnly
-    // no side-effects
-    @MemberOrder(sequence = "1")
-    public List<Category> all();
-
-    @QueryOnly
-    @MemberOrder(sequence = "2")
-    public Category find(@Named("Description") String description);
-
-    @Hidden
-    // intended for fixtures only, so is hidden in the UI
-    public Category newCategory(String description);
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/Category.java
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/Category.java b/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/Category.java
deleted file mode 100644
index dd9b751..0000000
--- a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/Category.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- *  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.examples.onlinedemo.dom.items;
-
-import com.google.common.base.Objects;
-
-import org.apache.isis.applib.AbstractDomainObject;
-import org.apache.isis.applib.annotation.Bounded;
-import org.apache.isis.applib.annotation.Immutable;
-import org.apache.isis.applib.annotation.MemberOrder;
-import org.apache.isis.applib.annotation.Title;
-import org.apache.isis.applib.filter.Filter;
-
-@Immutable
-// cannot be modified through the UI
-@Bounded
-// a bounded number of instances (viewers typically display all instances in a
-// drop-down)
-public class Category extends AbstractDomainObject {
-
-    // {{ Description
-    private String description;
-
-    @Title
-    // use as the title
-    @MemberOrder(sequence = "1")
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(final String description) {
-        this.description = description;
-    }
-
-    // }}
-
-    // {{ filters (programmatic)
-    public static Filter<Category> matching(final String description) {
-        return new Filter<Category>() {
-            @Override
-            public boolean accept(final Category category) {
-                return Objects.equal(category.getDescription(), description);
-            }
-        };
-    }
-    // }}
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/ToDoItem.java
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/ToDoItem.java b/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/ToDoItem.java
deleted file mode 100644
index bf169bd..0000000
--- a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/ToDoItem.java
+++ /dev/null
@@ -1,295 +0,0 @@
-/*
- *  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.examples.onlinedemo.dom.items;
-
-import java.util.List;
-
-import com.google.common.base.Objects;
-
-import org.apache.isis.applib.annotation.Disabled;
-import org.apache.isis.applib.annotation.Hidden;
-import org.apache.isis.applib.annotation.Ignore;
-import org.apache.isis.applib.annotation.MemberOrder;
-import org.apache.isis.applib.annotation.Named;
-import org.apache.isis.applib.annotation.Optional;
-import org.apache.isis.applib.annotation.RegEx;
-import org.apache.isis.applib.clock.Clock;
-import org.apache.isis.applib.filter.Filter;
-import org.apache.isis.applib.filter.Filters;
-import org.apache.isis.applib.util.TitleBuffer;
-import org.apache.isis.applib.value.Date;
-
-/**
- * A todo item (task) owned by a particular user.
- */
-public class ToDoItem implements Comparable<ToDoItem> {
-
-    private static final long ONE_WEEK_IN_MILLIS = 7 * 24 * 60 * 60 * 1000L;
-
-    // {{ Identification on the UI
-    public String title() {
-        final TitleBuffer buf = new TitleBuffer();
-        buf.append(getDescription());
-        if (isComplete()) {
-            buf.append(" - Completed!");
-        } else {
-            if (getDueBy() != null) {
-                buf.append(" due by ", getDueBy());
-            }
-        }
-        return buf.toString();
-    }
-
-    // }}
-
-    // {{ Description (property)
-    private String description;
-
-    @RegEx(validation = "\\w[@&:\\-\\,\\.\\+ \\w]*")
-    // words, spaces and selected punctuation
-    @MemberOrder(sequence = "1")
-    // ordering within UI
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(final String description) {
-        this.description = description;
-    }
-
-    // }}
-
-    // {{ DueBy (property)
-    private Date dueBy;
-
-    @Optional
-    // need not be set
-    @MemberOrder(sequence = "2")
-    public Date getDueBy() {
-        return dueBy;
-    }
-
-    public void setDueBy(final Date dueBy) {
-        this.dueBy = dueBy;
-    }
-
-    // proposed new value is validated before setting
-    public String validateDueBy(final Date dueBy) {
-        if (dueBy == null) {
-            return null;
-        }
-        return isMoreThanOneWeekInPast(dueBy) ? "Due by date cannot be more than one week old" : null;
-    }
-
-    // }}
-
-    // {{ Category (property)
-    private Category category;
-
-    @MemberOrder(sequence = "3")
-    public Category getCategory() {
-        return category;
-    }
-
-    public void setCategory(final Category category) {
-        this.category = category;
-    }
-
-    // }}
-
-    // {{ UserName (property)
-    private String userName;
-
-    @Hidden
-    // not shown in the UI
-    public String getUserName() {
-        return userName;
-    }
-
-    public void setUserName(final String userName) {
-        this.userName = userName;
-    }
-
-    // }}
-
-    // {{ Complete (property)
-    private boolean complete;
-
-    @Disabled
-    // cannot be edited as a property
-    @MemberOrder(sequence = "5")
-    public boolean isComplete() {
-        return complete;
-    }
-
-    public void setComplete(final boolean complete) {
-        this.complete = complete;
-    }
-
-    // }}
-
-    // {{ completed (action)
-    @MemberOrder(sequence = "1")
-    public ToDoItem completed() {
-        setComplete(true);
-        return this;
-    }
-
-    // disable action dependent on state of object
-    public String disableCompleted() {
-        return complete ? "Already completed" : null;
-    }
-
-    // }}
-
-    // {{ notYetCompleted (action)
-    @MemberOrder(sequence = "2")
-    public ToDoItem notYetCompleted() {
-        setComplete(false);
-        return this;
-    }
-
-    // disable action dependent on state of object
-    public String disableNotYetCompleted() {
-        return !complete ? "Not yet completed" : null;
-    }
-
-    // }}
-
-    // {{ clone (action)
-    @Named("Clone")
-    // the name of the action in the UI
-    @MemberOrder(sequence = "3")
-    // nb: method is not called "clone()" is inherited by java.lang.Object and
-    // (a) has different semantics and (b) is in any case automatically ignored
-    // by the framework
-    public ToDoItem duplicate() {
-        return toDoItems.newToDo(getDescription() + " - Copy", getCategory(), getDueBy());
-    }
-
-    // }}
-
-    // {{ isDue (programmatic)
-    @Ignore
-    // excluded from the framework's metamodel
-    public boolean isDue() {
-        if (getDueBy() == null) {
-            return false;
-        }
-        return !isMoreThanOneWeekInPast(getDueBy());
-    }
-
-    // }}
-
-    // {{ SimilarItems (collection)
-    @MemberOrder(sequence = "5")
-    public List<ToDoItem> getSimilarItems() {
-        return toDoItems.similarTo(this);
-    }
-
-    // }}
-
-    // {{ compareTo (programmatic)
-    /**
-     * by complete flag, then due by date, then description
-     */
-    @Ignore
-    // exclude from the framework's metamodel
-    @Override
-    public int compareTo(final ToDoItem other) {
-        if (isComplete() && !other.isComplete()) {
-            return +1;
-        }
-        if (!isComplete() && other.isComplete()) {
-            return -1;
-        }
-        if (getDueBy() == null && other.getDueBy() != null) {
-            return +1;
-        }
-        if (getDueBy() != null && other.getDueBy() == null) {
-            return -1;
-        }
-        if (getDueBy() == null && other.getDueBy() == null || getDueBy().equals(this.getDescription())) {
-            return getDescription().compareTo(other.getDescription());
-        }
-        return (int) (getDueBy().getMillisSinceEpoch() - other.getDueBy().getMillisSinceEpoch());
-    }
-
-    // }}
-
-    // {{ helpers
-    private static boolean isMoreThanOneWeekInPast(final Date dueBy) {
-        return dueBy.getMillisSinceEpoch() < Clock.getTime() - ONE_WEEK_IN_MILLIS;
-    }
-
-    // }}
-
-    // {{ filters (programmatic)
-    public static Filter<ToDoItem> thoseDue() {
-        return Filters.and(Filters.not(thoseComplete()), new Filter<ToDoItem>() {
-            @Override
-            public boolean accept(final ToDoItem t) {
-                return t.isDue();
-            }
-        });
-    }
-
-    public static Filter<ToDoItem> thoseComplete() {
-        return new Filter<ToDoItem>() {
-            @Override
-            public boolean accept(final ToDoItem t) {
-                return t.isComplete();
-            }
-        };
-    }
-
-    public static Filter<ToDoItem> thoseOwnedBy(final String currentUser) {
-        return new Filter<ToDoItem>() {
-            @Override
-            public boolean accept(final ToDoItem toDoItem) {
-                return Objects.equal(toDoItem.getUserName(), currentUser);
-            }
-
-        };
-    }
-
-    public static Filter<ToDoItem> thoseSimilarTo(final ToDoItem toDoItem) {
-        return new Filter<ToDoItem>() {
-            @Override
-            public boolean accept(final ToDoItem eachToDoItem) {
-                return Objects.equal(toDoItem.getCategory(), eachToDoItem.getCategory()) && 
-                       Objects.equal(toDoItem.getUserName(), eachToDoItem.getUserName()) &&
-                       eachToDoItem != toDoItem;
-            }
-
-        };
-    }
-
-    // }}
-
-    // {{ injected: ToDoItems
-    private ToDoItems toDoItems;
-
-    public void setToDoItems(final ToDoItems toDoItems) {
-        this.toDoItems = toDoItems;
-    }
-    // }}
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/ToDoItems.java
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/ToDoItems.java b/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/ToDoItems.java
deleted file mode 100644
index f7c14a8..0000000
--- a/examples/onlinedemo/dom/src/main/java/org/apache/isis/examples/onlinedemo/dom/items/ToDoItems.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- *  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.examples.onlinedemo.dom.items;
-
-import java.util.List;
-
-import org.apache.isis.applib.annotation.Idempotent;
-import org.apache.isis.applib.annotation.MemberOrder;
-import org.apache.isis.applib.annotation.Named;
-import org.apache.isis.applib.annotation.Optional;
-import org.apache.isis.applib.annotation.QueryOnly;
-import org.apache.isis.applib.value.Date;
-
-/**
- * A repository for {@link ToDoItem}s.
- * 
- * <p>
- * The implementation depends on the configured object store.
- */
-@Named("ToDos")
-public interface ToDoItems {
-
-    @QueryOnly
-    // no side-effects
-    @MemberOrder(sequence = "1")
-    // order in the UI
-    public List<ToDoItem> toDosForToday();
-
-    @MemberOrder(sequence = "2")
-    public ToDoItem newToDo(@Named("Description") String description, Category category, @Named("Due by") @Optional Date dueBy);
-
-    @QueryOnly
-    @MemberOrder(sequence = "3")
-    public List<ToDoItem> allToDos();
-
-    @QueryOnly
-    @MemberOrder(sequence = "4")
-    public List<ToDoItem> similarTo(ToDoItem toDoItem);
-
-    @Idempotent
-    // same post-conditions
-    @MemberOrder(sequence = "5")
-    public void removeCompleted();
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/dom/src/main/resources/images/Category.gif
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/dom/src/main/resources/images/Category.gif b/examples/onlinedemo/dom/src/main/resources/images/Category.gif
deleted file mode 100644
index 39ec56b..0000000
Binary files a/examples/onlinedemo/dom/src/main/resources/images/Category.gif and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/dom/src/main/resources/images/ToDoItem.gif
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/dom/src/main/resources/images/ToDoItem.gif b/examples/onlinedemo/dom/src/main/resources/images/ToDoItem.gif
deleted file mode 100644
index cc536e1..0000000
Binary files a/examples/onlinedemo/dom/src/main/resources/images/ToDoItem.gif and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/fixture/pom.xml
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/fixture/pom.xml b/examples/onlinedemo/fixture/pom.xml
deleted file mode 100644
index 7c7d889..0000000
--- a/examples/onlinedemo/fixture/pom.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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.
---><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-
-    <parent>
-    	<groupId>org.apache.isis.examples</groupId>
-        <artifactId>onlinedemo</artifactId>
-        <version>0.3.1-SNAPSHOT</version>
-    </parent>
-
-	<artifactId>onlinedemo-fixture</artifactId>
-	<name>Online Demo Fixtures</name>
-
-	<dependencies>
-		<dependency>
-			<groupId>${project.groupId}</groupId>
-			<artifactId>onlinedemo-objstore-dflt</artifactId>
-		</dependency>
-	</dependencies>
-
-</project>

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/fixture/src/main/java/org/apache/isis/examples/onlinedemo/fixture/items/DemoFixturesDefault.java
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/fixture/src/main/java/org/apache/isis/examples/onlinedemo/fixture/items/DemoFixturesDefault.java b/examples/onlinedemo/fixture/src/main/java/org/apache/isis/examples/onlinedemo/fixture/items/DemoFixturesDefault.java
deleted file mode 100644
index 9ee7b32..0000000
--- a/examples/onlinedemo/fixture/src/main/java/org/apache/isis/examples/onlinedemo/fixture/items/DemoFixturesDefault.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- *  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.examples.onlinedemo.fixture.items;
-
-import java.util.List;
-
-import org.apache.isis.applib.AbstractFactoryAndRepository;
-import org.apache.isis.examples.onlinedemo.dom.demo.DemoFixtures;
-import org.apache.isis.examples.onlinedemo.dom.items.Categories;
-import org.apache.isis.examples.onlinedemo.dom.items.ToDoItem;
-import org.apache.isis.examples.onlinedemo.dom.items.ToDoItems;
-
-public class DemoFixturesDefault extends AbstractFactoryAndRepository implements DemoFixtures {
-
-    // {{ Id, iconName
-    @Override
-    public String getId() {
-        return "demo";
-    }
-
-    public String iconName() {
-        return "demo";
-    }
-
-    // }}
-
-    @Override
-    public List<ToDoItem> resetFixtures() {
-        final ToDoItemsFixture fixture = new ToDoItemsFixture();
-        injectServicesInto(fixture);
-
-        fixture.install();
-
-        return toDoItems.allToDos();
-    }
-
-    // {{ helpers
-    private void injectServicesInto(final ToDoItemsFixture fixture) {
-        fixture.setCategories(categories);
-        fixture.setContainer(getContainer());
-        fixture.setToDoItems(toDoItems);
-    }
-
-    // }}
-
-    // {{ injected: Categories
-    private Categories categories;
-
-    public void setCategories(final Categories categories) {
-        this.categories = categories;
-    }
-
-    // }}
-
-    // {{ injected: ToDoItems
-    private ToDoItems toDoItems;
-
-    public void setToDoItems(final ToDoItems toDoItems) {
-        this.toDoItems = toDoItems;
-    }
-    // }}
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/fixture/src/main/java/org/apache/isis/examples/onlinedemo/fixture/items/ToDoItemsFixture.java
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/fixture/src/main/java/org/apache/isis/examples/onlinedemo/fixture/items/ToDoItemsFixture.java b/examples/onlinedemo/fixture/src/main/java/org/apache/isis/examples/onlinedemo/fixture/items/ToDoItemsFixture.java
deleted file mode 100644
index 7644ca2..0000000
--- a/examples/onlinedemo/fixture/src/main/java/org/apache/isis/examples/onlinedemo/fixture/items/ToDoItemsFixture.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- *  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.examples.onlinedemo.fixture.items;
-
-import java.util.List;
-
-import org.apache.isis.applib.clock.Clock;
-import org.apache.isis.applib.fixtures.AbstractFixture;
-import org.apache.isis.applib.value.Date;
-import org.apache.isis.examples.onlinedemo.dom.items.Categories;
-import org.apache.isis.examples.onlinedemo.dom.items.Category;
-import org.apache.isis.examples.onlinedemo.dom.items.ToDoItem;
-import org.apache.isis.examples.onlinedemo.dom.items.ToDoItems;
-
-public class ToDoItemsFixture extends AbstractFixture {
-
-    @Override
-    public void install() {
-        final Category domesticCategory = findOrCreateCategory("Domestic");
-        final Category professionalCategory = findOrCreateCategory("Professional");
-
-        removeAllToDosForCurrentUser();
-
-        createToDoItemForCurrentUser("Buy milk", domesticCategory, daysFromToday(0));
-        createToDoItemForCurrentUser("Buy stamps", domesticCategory, daysFromToday(0));
-        createToDoItemForCurrentUser("Pick up laundry", domesticCategory, daysFromToday(6));
-        createToDoItemForCurrentUser("Write blog post", professionalCategory, null);
-        createToDoItemForCurrentUser("Organize brown bag", professionalCategory, daysFromToday(14));
-
-        getContainer().flush();
-    }
-
-    // {{ helpers
-    private Category findOrCreateCategory(final String description) {
-        final Category category = categories.find(description);
-        if (category != null) {
-            return category;
-        }
-        return categories.newCategory(description);
-    }
-
-    private void removeAllToDosForCurrentUser() {
-        final List<ToDoItem> allToDos = toDoItems.allToDos();
-        for (final ToDoItem toDoItem : allToDos) {
-            getContainer().remove(toDoItem);
-        }
-    }
-
-    private ToDoItem createToDoItemForCurrentUser(final String description, final Category category, final Date dueBy) {
-        return toDoItems.newToDo(description, category, dueBy);
-    }
-
-    private static Date daysFromToday(final int i) {
-        final Date date = new Date(Clock.getTimeAsDateTime());
-        date.add(0, 0, i);
-        return date;
-    }
-
-    // }}
-
-    // {{ injected: Categories
-    private Categories categories;
-
-    public void setCategories(final Categories categories) {
-        this.categories = categories;
-    }
-
-    // }}
-
-    // {{ injected: ToDoItems
-    private ToDoItems toDoItems;
-
-    public void setToDoItems(final ToDoItems toDoItems) {
-        this.toDoItems = toDoItems;
-    }
-    // }}
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/0861ed93/examples/onlinedemo/objstore-default/pom.xml
----------------------------------------------------------------------
diff --git a/examples/onlinedemo/objstore-default/pom.xml b/examples/onlinedemo/objstore-default/pom.xml
deleted file mode 100644
index 286f81b..0000000
--- a/examples/onlinedemo/objstore-default/pom.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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.
---><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-
-    <parent>
-    	<groupId>org.apache.isis.examples</groupId>
-        <artifactId>onlinedemo</artifactId>
-        <version>0.3.1-SNAPSHOT</version>
-    </parent>
-
-	<artifactId>onlinedemo-objstore-dflt</artifactId>
-	<name>Online Demo Repositories (for ObjectStore Default)</name>
-
-	<dependencies>
-	
-		<!-- other modules in this project -->
-		<dependency>
-			<groupId>${project.groupId}</groupId>
-			<artifactId>onlinedemo-dom</artifactId>
-		</dependency>
-		
-	</dependencies>
-
-</project>