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 2016/04/22 11:47:41 UTC

[06/14] isis git commit: ISIS-1344: removing the WrapTransaction facets, and from that also the entire FacetDecorator infrastructure since is no longer required.

ISIS-1344: removing the WrapTransaction facets, and from that also the entire FacetDecorator infrastructure since is no longer required.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/624292a0
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/624292a0
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/624292a0

Branch: refs/heads/ISIS-1291
Commit: 624292a08bfc892f2db67ca7abf5afc13c846452
Parents: af4e3ca
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Thu Apr 21 15:58:52 2016 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Thu Apr 21 15:58:52 2016 +0100

----------------------------------------------------------------------
 .../facetdecorator/FacetDecorator.java          |  43 ----
 .../facetdecorator/FacetDecoratorAbstract.java  |  39 ----
 .../facetdecorator/FacetDecoratorSet.java       | 171 ----------------
 .../facetdecorator/help/HelpFacetDecorator.java |  26 ---
 .../HelpFacetDecoratorUsingHelpManager.java     |  67 -------
 .../help/HelpFacetLookedUpViaHelpManager.java   |  34 ----
 .../facetdecorator/help/HelpManager.java        |  34 ----
 .../help/HelpManagerAbstract.java               |  45 -----
 .../HelpFacetDecoratorUsingFilesInstaller.java  |  47 -----
 .../file/internal/HelpManagerUsingFiles.java    | 147 --------------
 .../facetdecorator/help/package-info.java       |  28 ---
 ...8nDecoratorUsingResourceBundleInstaller.java |  48 -----
 .../specloader/FacetDecoratorInstaller.java     |  32 ---
 .../specloader/ObjectReflectorDefault.java      |  19 --
 .../specloader/ObjectReflectorInstaller.java    |   2 -
 .../progmodels/dflt/JavaReflectorHelper.java    |   6 +-
 .../progmodels/dflt/JavaReflectorInstaller.java |  23 +++
 .../JavaReflectorInstallerNoDecorators.java     |  41 +---
 .../file/internal/SimpleHelpManagerTest.java    | 200 -------------------
 .../ObjectReflectorDefaultTestAbstract.java     |   5 -
 .../progmodels/JavaReflectorInstaller.java      | 102 ----------
 .../system/transaction/TransactionUtils.java    |  50 -----
 .../IsisComponentProviderDefault2.java          |   8 +-
 .../IsisComponentProviderUsingInstallers.java   |   9 -
 .../TransactionFacetDecorator.java              |  26 ---
 .../TransactionFacetDecoratorAbstract.java      |  48 -----
 .../facetdecorator/package-info.java            |  27 ---
 .../StandardTransactionFacetDecorator.java      |  93 ---------
 .../TransactionFacetDecoratorInstaller.java     |  45 -----
 .../ActionInvocationFacetWrapTransaction.java   |  98 ---------
 .../CollectionAddToFacetWrapTransaction.java    |  82 --------
 .../CollectionClearFacetWrapTransaction.java    |  78 --------
 ...ollectionRemoveFromFacetWrapTransaction.java |  82 --------
 .../PropertyClearFacetWrapTransaction.java      |  79 --------
 .../PropertySetterFacetWrapTransaction.java     |  82 --------
 .../core/runtime/installer-registry.properties  |   2 +-
 36 files changed, 32 insertions(+), 1936 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecorator.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecorator.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecorator.java
deleted file mode 100644
index 47052be..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecorator.java
+++ /dev/null
@@ -1,43 +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.core.metamodel.facetdecorator;
-
-import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-
-public interface FacetDecorator {
-
-    /**
-     * If applicable, replace the provided {@link Facet} with a decorating
-     * {@link Facet} that should be held by the provided {@link FacetHolder
-     * required holder}.
-     * 
-     * <p>
-     * 
-     * @return the decorating {@link Facet}, or <tt>null</tt> if this decoration
-     *         does not apply to this Facet.
-     */
-    Facet decorate(Facet facet, FacetHolder requiredHolder);
-
-    Class<? extends Facet>[] getFacetTypes();
-
-    String getFacetTypeNames();
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecoratorAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecoratorAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecoratorAbstract.java
deleted file mode 100644
index a6cd316..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecoratorAbstract.java
+++ /dev/null
@@ -1,39 +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.core.metamodel.facetdecorator;
-
-import org.apache.isis.core.metamodel.facetapi.Facet;
-
-public abstract class FacetDecoratorAbstract implements FacetDecorator {
-
-    @Override
-    public String getFacetTypeNames() {
-        final Class<? extends Facet>[] decoratorFacetTypes = getFacetTypes();
-        final StringBuilder buf = new StringBuilder();
-        for (int i = 0; i < decoratorFacetTypes.length; i++) {
-            if (i > 0) {
-                buf.append(", ");
-            }
-            buf.append(decoratorFacetTypes[i].getName());
-        }
-        return buf.toString();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecoratorSet.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecoratorSet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecoratorSet.java
deleted file mode 100644
index 38eb045..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/FacetDecoratorSet.java
+++ /dev/null
@@ -1,171 +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.core.metamodel.facetdecorator;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.isis.core.commons.components.ApplicationScopedComponent;
-import org.apache.isis.core.commons.debug.DebugBuilder;
-import org.apache.isis.core.metamodel.exceptions.MetaModelException;
-import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-import org.apache.isis.core.metamodel.spec.feature.Contributed;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
-import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
-
-public class FacetDecoratorSet implements ApplicationScopedComponent {
-
-    private final Map<Class<? extends Facet>, List<FacetDecorator>> facetDecoratorByFacetType = new HashMap<>();
-    private final Set<FacetDecorator> facetDecoratorSet = new LinkedHashSet<FacetDecorator>();
-
-    // ////////////////////////////////////////////////////////////
-    // init, shutdown
-    // ////////////////////////////////////////////////////////////
-
-    public void init() {
-    }
-
-    public void shutdown() {
-    }
-
-    // ////////////////////////////////////////////////////////////
-    // add, get, isEmpty
-    // ////////////////////////////////////////////////////////////
-
-    public void add(final FacetDecorator decorator) {
-        final Class<? extends Facet>[] decoratedFacetTypes = decorator.getFacetTypes();
-        for (final Class<? extends Facet> decoratedFacetType : decoratedFacetTypes) {
-            getFacetDecoratorList(decoratedFacetType).add(decorator);
-            facetDecoratorSet.add(decorator);
-        }
-    }
-
-    private List<FacetDecorator> getFacetDecoratorList(final Class<? extends Facet> decoratedFacetType) {
-        List<FacetDecorator> facetDecoratorList = facetDecoratorByFacetType.get(decoratedFacetType);
-        if (facetDecoratorList == null) {
-            facetDecoratorList = new ArrayList<>();
-            facetDecoratorByFacetType.put(decoratedFacetType, facetDecoratorList);
-        }
-        return facetDecoratorList;
-    }
-
-    public void add(final List<FacetDecorator> decorators) {
-        for (final FacetDecorator decorator : decorators) {
-            add(decorator);
-        }
-    }
-
-    public boolean isEmpty() {
-        return facetDecoratorByFacetType.isEmpty();
-    }
-
-    // ////////////////////////////////////////////////////////////
-    // decorate
-    // ////////////////////////////////////////////////////////////
-
-    /**
-     * @param holder
-     */
-    public void decorate(final ObjectSpecification holder) {
-        decorateAllFacets(holder);
-        for (final ObjectAssociation objectAssociation : holder.getAssociations(Contributed.EXCLUDED)) {
-            this.decorateAllFacets(objectAssociation);
-        }
-        for (final ObjectAction objectAction : holder.getObjectActions(Contributed.EXCLUDED)) {
-            decorateAllFacets(objectAction);
-            final List<ObjectActionParameter> parameters = objectAction.getParameters();
-            for (final ObjectActionParameter parameter : parameters) {
-                this.decorateAllFacets(parameter);
-            }
-        }
-    }
-
-    private void decorateAllFacets(final FacetHolder holder) {
-        if (isEmpty()) {
-            return;
-        }
-        final Set<Class<? extends Facet>> facetTypes = facetDecoratorByFacetType.keySet();
-        for (final Class<? extends Facet> facetType : facetTypes) {
-            final Facet facet = holder.getFacet(facetType);
-            if(facet != null) {
-                decorateFacet(facet, holder);
-            }
-        }
-    }
-
-    /**
-     * REVIEW: the design is a little clumsy here. We want to decorate the
-     * provided {@link Facet}, but its owning {@link FacetHolder holder} turns
-     * out to be a runtime peer (eg <tt>JavaAction</tt>) rather than the
-     * metamodel (eg {@link ObjectAction}). Since we want to decorate the
-     * {@link ObjectAction}, we have to pass it through.
-     */
-    private void decorateFacet(final Facet facet, final FacetHolder requiredHolder) {
-        final Class<? extends Facet> facetType = facet.facetType();
-        final Class<? extends Facet> cls = facetType;
-        final List<FacetDecorator> decoratorList = facetDecoratorByFacetType.get(cls);
-        if (decoratorList == null) {
-            return;
-        }
-        for (final FacetDecorator facetDecorator : decoratorList) {
-            final Facet decoratingFacet = facetDecorator.decorate(facet, requiredHolder);
-            if (decoratingFacet == null) {
-                continue;
-            }
-            ensureDecoratorMetContract(facetDecorator, decoratingFacet, facetType, requiredHolder);
-        }
-    }
-
-    private static void ensureDecoratorMetContract(final FacetDecorator facetDecorator, final Facet decoratingFacet, final Class<? extends Facet> facetType, final FacetHolder originalFacetHolder) {
-        if (decoratingFacet.facetType() != facetType) {
-            throw new MetaModelException(MessageFormat.format("Problem with facet decorator '{0}'; inconsistent decorating facetType() for {1}; was {2} but expectected facetType() of {3}", facetDecorator.getClass().getName(), decoratingFacet.getClass().getName(), decoratingFacet.facetType()
-                    .getName(), facetType.getName()));
-        }
-        final Facet facetForFacetType = originalFacetHolder.getFacet(decoratingFacet.facetType());
-        if (facetForFacetType != decoratingFacet) {
-            throw new MetaModelException(MessageFormat.format("Problem with facet decorator '{0}'; has not replaced original facet for facetType() of {1}", facetDecorator.getClass().getName(), facetType.getName()));
-        }
-    }
-
-    // ////////////////////////////////////////////////////////////
-    // debugging
-    // ////////////////////////////////////////////////////////////
-
-    public void debugData(final DebugBuilder str) {
-        str.appendTitle("Facet decorators");
-        final Set<Class<? extends Facet>> facetTypes = facetDecoratorByFacetType.keySet();
-        if (facetTypes.size() == 0) {
-            str.append("none");
-        } else {
-            for (final Class<? extends Facet> cls : facetTypes) {
-                str.appendln(cls.getName(), facetDecoratorByFacetType.get(cls));
-            }
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetDecorator.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetDecorator.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetDecorator.java
deleted file mode 100644
index b76cb13..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetDecorator.java
+++ /dev/null
@@ -1,26 +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.core.metamodel.facetdecorator.help;
-
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
-
-public interface HelpFacetDecorator extends FacetDecorator {
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetDecoratorUsingHelpManager.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetDecoratorUsingHelpManager.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetDecoratorUsingHelpManager.java
deleted file mode 100644
index 3c27512..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetDecoratorUsingHelpManager.java
+++ /dev/null
@@ -1,67 +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.core.metamodel.facetdecorator.help;
-
-import org.apache.isis.applib.Identifier;
-import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facetapi.IdentifiedHolder;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecoratorAbstract;
-import org.apache.isis.core.metamodel.facets.all.help.HelpFacet;
-
-public class HelpFacetDecoratorUsingHelpManager extends FacetDecoratorAbstract implements HelpFacetDecorator {
-    private final HelpManager helpManager;
-
-    public HelpFacetDecoratorUsingHelpManager(final HelpManager manager) {
-        helpManager = manager;
-    }
-
-    @Override
-    public Facet decorate(final Facet facet, final FacetHolder facetHolder) {
-        if (facet.facetType() != HelpFacet.class) {
-            return facet;
-        }
-
-        if (!(facetHolder instanceof IdentifiedHolder)) {
-            return null;
-        }
-
-        final IdentifiedHolder identifiedHolder = (IdentifiedHolder) facetHolder;
-        return decorateWithHelpFacet(facet, identifiedHolder);
-    }
-
-    private Facet decorateWithHelpFacet(final Facet facet, final IdentifiedHolder identifiedHolder) {
-        final Identifier identifier = identifiedHolder.getIdentifier();
-
-        final String helpText = helpManager.getHelpText(identifier);
-        if (helpText != null) {
-            final HelpFacetLookedUpViaHelpManager decoratingFacet = new HelpFacetLookedUpViaHelpManager(helpText, facet.getFacetHolder());
-            identifiedHolder.addFacet(decoratingFacet);
-            return decoratingFacet;
-        }
-        return null;
-    }
-
-    @Override
-    @SuppressWarnings("unchecked")
-    public Class<? extends Facet>[] getFacetTypes() {
-        return new Class[] { HelpFacet.class };
-    }
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetLookedUpViaHelpManager.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetLookedUpViaHelpManager.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetLookedUpViaHelpManager.java
deleted file mode 100644
index d275c4c..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpFacetLookedUpViaHelpManager.java
+++ /dev/null
@@ -1,34 +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.core.metamodel.facetdecorator.help;
-
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.all.help.HelpFacetAbstract;
-
-/**
- * Looked up via the {@link HelpManager}.
- */
-public class HelpFacetLookedUpViaHelpManager extends HelpFacetAbstract {
-
-    public HelpFacetLookedUpViaHelpManager(final String value, final FacetHolder holder) {
-        super(value, holder);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpManager.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpManager.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpManager.java
deleted file mode 100644
index 457b67b..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpManager.java
+++ /dev/null
@@ -1,34 +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.core.metamodel.facetdecorator.help;
-
-import org.apache.isis.applib.Identifier;
-import org.apache.isis.core.commons.components.ApplicationScopedComponent;
-
-public interface HelpManager extends ApplicationScopedComponent {
-
-    /**
-     * Returns help text for the specified {@link Identifier}.
-     * 
-     * <p>
-     * If no help text is available then an empty String should be returned.
-     */
-    String getHelpText(Identifier identifier);
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpManagerAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpManagerAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpManagerAbstract.java
deleted file mode 100644
index b3b8916..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/HelpManagerAbstract.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.core.metamodel.facetdecorator.help;
-
-import org.apache.isis.applib.Identifier;
-
-/**
- * Default implementation that does nothing.
- * 
- */
-public abstract class HelpManagerAbstract implements HelpManager {
-
-    /**
-     * Does nothing.
-     */
-    public void init() {
-    }
-
-    /**
-     * Does nothing.
-     */
-    public void shutdown() {
-    }
-
-    @Override
-    public abstract String getHelpText(final Identifier identifier);
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/file/HelpFacetDecoratorUsingFilesInstaller.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/file/HelpFacetDecoratorUsingFilesInstaller.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/file/HelpFacetDecoratorUsingFilesInstaller.java
deleted file mode 100644
index f720765..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/file/HelpFacetDecoratorUsingFilesInstaller.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.core.metamodel.facetdecorator.help.file;
-
-import java.util.Arrays;
-import java.util.List;
-
-import org.apache.isis.core.commons.config.InstallerAbstract;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
-import org.apache.isis.core.metamodel.specloader.FacetDecoratorInstaller;
-import org.apache.isis.core.metamodel.facetdecorator.help.HelpFacetDecoratorUsingHelpManager;
-import org.apache.isis.core.metamodel.facetdecorator.help.file.internal.HelpManagerUsingFiles;
-
-public class HelpFacetDecoratorUsingFilesInstaller extends InstallerAbstract implements FacetDecoratorInstaller {
-
-    public HelpFacetDecoratorUsingFilesInstaller() {
-        super(FacetDecoratorInstaller.TYPE, "help-file");
-    }
-
-    @Override
-    public List<FacetDecorator> createDecorators() {
-        final HelpManagerUsingFiles manager = new HelpManagerUsingFiles(getConfiguration());
-        return Arrays.<FacetDecorator> asList(new HelpFacetDecoratorUsingHelpManager(manager));
-    }
-
-    @Override
-    public List<Class<?>> getTypes() {
-        return listOf(List.class);
-    }
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/file/internal/HelpManagerUsingFiles.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/file/internal/HelpManagerUsingFiles.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/file/internal/HelpManagerUsingFiles.java
deleted file mode 100644
index 11d094e..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/file/internal/HelpManagerUsingFiles.java
+++ /dev/null
@@ -1,147 +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.core.metamodel.facetdecorator.help.file.internal;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.IOException;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import org.apache.isis.applib.Identifier;
-import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.metamodel.facetdecorator.help.HelpManagerAbstract;
-
-public class HelpManagerUsingFiles extends HelpManagerAbstract {
-
-    private static final Logger LOG = LoggerFactory.getLogger(HelpManagerUsingFiles.class);
-
-    /**
-     * The name of the file used unless overridden with
-     * {@link #setFileName(String)}.
-     */
-    public static final String DEFAULT_FILE_NAME = "help.txt";
-    private static final String CLASS_PREFIX = "c:";
-    private static final String NAME_PREFIX = "m:";
-
-    private String fileName = DEFAULT_FILE_NAME;
-
-    @SuppressWarnings("unused")
-    private final IsisConfiguration configuration;
-
-    public HelpManagerUsingFiles(final IsisConfiguration configuration) {
-        this.configuration = configuration;
-    }
-
-    public void setFileName(final String fileName) {
-        this.fileName = fileName;
-    }
-
-    @Override
-    public String getHelpText(final Identifier identifier) {
-        BufferedReader reader = null;
-        try {
-            reader = getReader();
-
-            if (reader == null) {
-                return "No help available (no file found)";
-            }
-
-            final String className = CLASS_PREFIX + identifier.getClassName().toLowerCase();
-            final String name = NAME_PREFIX + identifier.getMemberName().toLowerCase();
-
-            final StringBuffer str = new StringBuffer();
-            String line;
-
-            boolean lookingForClass = true;
-            boolean lookingForName = identifier.getMemberName().length() > 0;
-            /*
-             * Read through each line in file.
-             */
-            while ((line = reader.readLine()) != null) {
-                // Skip comments - lines begining with hash
-                if (line.length() > 0 && line.charAt(0) == '#') {
-                    continue;
-                }
-
-                /*
-                 * Look for class.
-                 */
-                if (line.toLowerCase().equals(className)) {
-                    lookingForClass = false;
-                    continue;
-                }
-
-                if (lookingForClass) {
-                    continue;
-                } else if (line.toLowerCase().startsWith(CLASS_PREFIX)) {
-                    break;
-                }
-
-                /*
-                 * Look for field/method.
-                 */
-                if (line.toLowerCase().equals(name)) {
-                    lookingForName = false;
-                    continue;
-                }
-
-                if (lookingForName) {
-                    continue;
-                } else if (line.toLowerCase().startsWith(NAME_PREFIX)) {
-                    break;
-                }
-
-                str.append(line);
-                str.append('\n');
-            }
-
-            return str.toString();
-
-        } catch (final FileNotFoundException e) {
-            LOG.error("opening help file", e);
-            return "Failure opening help file: " + e.getMessage();
-        } catch (final IOException e) {
-            LOG.error("reading help file", e);
-            return "Failure reading help file: " + e.getMessage();
-        } finally {
-            if (reader != null) {
-                try {
-                    reader.close();
-                } catch (final IOException ignore) {
-                }
-            }
-        }
-    }
-
-    protected BufferedReader getReader() throws FileNotFoundException {
-        final File file = new File(fileName);
-        if (!file.exists()) {
-            final String message = "No help file found: " + file.getAbsolutePath();
-            LOG.warn(message);
-            return null;
-        }
-
-        return new BufferedReader(new FileReader(file));
-    }
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/package-info.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/package-info.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/package-info.java
deleted file mode 100644
index db2b2d7..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/help/package-info.java
+++ /dev/null
@@ -1,28 +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.
- */
-
-/**
- * Help API, utilizing the {@link org.apache.isis.core.metamodel.facetdecorator.FacetDecorator} mechanism..
- * 
- * <p>
- * At the time of writing - unlike
- * authorisation - there is no help-proxy implementation.  Therefore for client/server deployments
- * any help content must be deployed locally.
- */
-package org.apache.isis.core.metamodel.facetdecorator.help;
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/i18n/resourcebundle/I18nDecoratorUsingResourceBundleInstaller.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/i18n/resourcebundle/I18nDecoratorUsingResourceBundleInstaller.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/i18n/resourcebundle/I18nDecoratorUsingResourceBundleInstaller.java
deleted file mode 100644
index 48f1747..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetdecorator/i18n/resourcebundle/I18nDecoratorUsingResourceBundleInstaller.java
+++ /dev/null
@@ -1,48 +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.core.metamodel.facetdecorator.i18n.resourcebundle;
-
-import java.util.List;
-import com.google.common.collect.Lists;
-import org.apache.isis.core.commons.config.InstallerAbstract;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
-import org.apache.isis.core.metamodel.specloader.FacetDecoratorInstaller;
-
-/**
- * Replaced by {@link org.apache.isis.applib.services.i18n.TranslationService};
- * this file is retained just to ensure backward compatibility with <tt>isis.properties</tt> files
- * that might reference it.
- */
-public class I18nDecoratorUsingResourceBundleInstaller extends InstallerAbstract implements FacetDecoratorInstaller {
-
-    public I18nDecoratorUsingResourceBundleInstaller() {
-        super(FacetDecoratorInstaller.TYPE, "resource-i18n");
-    }
-
-    @Override
-    public List<FacetDecorator> createDecorators() {
-        return Lists.newArrayList();
-    }
-
-    @Override
-    public List<Class<?>> getTypes() {
-        return listOf(List.class); // ie, of List<FacetDecorator>
-    }
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/FacetDecoratorInstaller.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/FacetDecoratorInstaller.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/FacetDecoratorInstaller.java
deleted file mode 100644
index 4053510..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/FacetDecoratorInstaller.java
+++ /dev/null
@@ -1,32 +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.core.metamodel.specloader;
-
-import java.util.List;
-
-import org.apache.isis.core.commons.components.Installer;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
-
-public interface FacetDecoratorInstaller extends Installer {
-
-    static String TYPE = "facet-decorator";
-
-    List<FacetDecorator> createDecorators();
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java
index 4c4eda4..15adfac 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java
@@ -45,8 +45,6 @@ import org.apache.isis.core.commons.lang.ClassUtil;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecoratorSet;
 import org.apache.isis.core.metamodel.facets.object.choices.ChoicesFacetUtils;
 import org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet;
 import org.apache.isis.core.metamodel.layoutmetadata.LayoutMetadataReader;
@@ -122,13 +120,6 @@ public final class ObjectReflectorDefault
     private final ProgrammingModel programmingModel;
     private final FacetProcessor facetProcessor;
 
-    /**
-     * <p>
-     * {@link FacetDecorator}s must be added prior to {@link SpecificationLoaderSpi#init(RuntimeContext)
-     * initialization.}
-     */
-    private final FacetDecoratorSet facetDecoratorSet;
-
     private final ServicesInjectorSpi servicesInjector;
 
     private final MetaModelValidator metaModelValidator;
@@ -156,7 +147,6 @@ public final class ObjectReflectorDefault
             final DeploymentCategory deploymentCategory,
             final IsisConfiguration configuration,
             final ProgrammingModel programmingModel,
-            final Set<FacetDecorator> facetDecorators,
             final MetaModelValidator metaModelValidator,
             final List<LayoutMetadataReader> layoutMetadataReaders,
             final ServicesInjectorSpi servicesInjector) {
@@ -165,7 +155,6 @@ public final class ObjectReflectorDefault
         ensureThatArg(configuration, is(notNullValue()));
         ensureThatArg(servicesInjector, is(notNullValue()));
         ensureThatArg(programmingModel, is(notNullValue()));
-        ensureThatArg(facetDecorators, is(notNullValue()));
         ensureThatArg(metaModelValidator, is(notNullValue()));
         ensureThatArg(layoutMetadataReaders, is(notNullValue()));
         ensureThatArg(layoutMetadataReaders, is(not(emptyCollectionOf(LayoutMetadataReader.class))));
@@ -175,10 +164,6 @@ public final class ObjectReflectorDefault
 
         this.programmingModel = programmingModel;
 
-        this.facetDecoratorSet = new FacetDecoratorSet();
-        for (final FacetDecorator facetDecorator : facetDecorators) {
-            this.facetDecoratorSet.add(facetDecorator);
-        }
 
         this.metaModelValidator = metaModelValidator;
         this.facetProcessor = new FacetProcessor(configuration, programmingModel);
@@ -245,7 +230,6 @@ public final class ObjectReflectorDefault
         }
 
         // initialize subcomponents
-        facetDecoratorSet.init();
         programmingModel.init();
         facetProcessor.init();
         metaModelValidator.init();
@@ -300,7 +284,6 @@ public final class ObjectReflectorDefault
         initialized = false;
         
         getCache().clear();
-        facetDecoratorSet.shutdown();
     }
 
 
@@ -521,7 +504,6 @@ public final class ObjectReflectorDefault
 
     private void introspect(final ObjectSpecificationAbstract specSpi) {
         specSpi.introspectTypeHierarchyAndMembers();
-        facetDecoratorSet.decorate(specSpi);
         specSpi.updateFromFacetValues();
         specSpi.setIntrospectionState(IntrospectionState.INTROSPECTED);
 
@@ -569,7 +551,6 @@ public final class ObjectReflectorDefault
 
     @Override
     public void debugData(final DebugBuilder debug) {
-        facetDecoratorSet.debugData(debug);
         debug.appendln();
 
         debug.appendTitle("Specifications");

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorInstaller.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorInstaller.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorInstaller.java
index a787f91..a78aec4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorInstaller.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorInstaller.java
@@ -37,6 +37,4 @@ public interface ObjectReflectorInstaller extends Installer {
             final DeploymentCategory deploymentCategory,
             final Collection<MetaModelRefiner> metaModelRefiners, final ServicesInjectorSpi servicesInjector);
 
-    void addFacetDecoratorInstaller(final FacetDecoratorInstaller decoratorInstaller);
-
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java
index 8d468cf..745315f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java
+++ b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java
@@ -21,13 +21,12 @@ package org.apache.isis.progmodels.dflt;
 
 import java.util.Collection;
 import java.util.List;
-import java.util.Set;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facetapi.MetaModelRefiner;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
 import org.apache.isis.core.metamodel.layoutmetadata.LayoutMetadataReader;
 import org.apache.isis.core.metamodel.progmodel.ProgrammingModel;
 import org.apache.isis.core.metamodel.services.ServicesInjectorSpi;
@@ -48,7 +47,6 @@ public final class JavaReflectorHelper  {
             final IsisConfiguration configuration,
             final ProgrammingModel programmingModel,
             final Collection<MetaModelRefiner> metaModelRefiners,
-            final Set<FacetDecorator> facetDecorators,
             final List<LayoutMetadataReader> layoutMetadataReaders,
             final MetaModelValidator mmv,
             final ServicesInjectorSpi servicesInjector) {
@@ -66,7 +64,7 @@ public final class JavaReflectorHelper  {
 
         return new ObjectReflectorDefault(
                 deploymentCategory, configuration,
-                programmingModel, facetDecorators, metaModelValidator, layoutMetadataReaders, servicesInjector);
+                programmingModel, metaModelValidator, layoutMetadataReaders, servicesInjector);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstaller.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstaller.java b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstaller.java
new file mode 100644
index 0000000..dfa0598
--- /dev/null
+++ b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstaller.java
@@ -0,0 +1,23 @@
+/*
+ *  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.progmodels.dflt;
+
+public class JavaReflectorInstaller extends JavaReflectorInstallerNoDecorators {
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstallerNoDecorators.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstallerNoDecorators.java b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstallerNoDecorators.java
index d958192..3380e2c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstallerNoDecorators.java
+++ b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorInstallerNoDecorators.java
@@ -20,43 +20,34 @@
 package org.apache.isis.progmodels.dflt;
 
 import java.util.Collection;
-import java.util.Collections;
-import java.util.LinkedHashSet;
 import java.util.List;
-import java.util.Set;
+
 import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+
 import org.apache.isis.core.commons.config.ConfigurationConstants;
 import org.apache.isis.core.commons.config.InstallerAbstract;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.factory.InstanceUtil;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facetapi.MetaModelRefiner;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
 import org.apache.isis.core.metamodel.facets.FacetFactory;
 import org.apache.isis.core.metamodel.layoutmetadata.LayoutMetadataReader;
 import org.apache.isis.core.metamodel.progmodel.ProgrammingModel;
 import org.apache.isis.core.metamodel.services.ServicesInjectorSpi;
 import org.apache.isis.core.metamodel.spec.SpecificationLoaderSpi;
-import org.apache.isis.core.metamodel.specloader.FacetDecoratorInstaller;
 import org.apache.isis.core.metamodel.specloader.ObjectReflectorInstaller;
 import org.apache.isis.core.metamodel.specloader.ReflectorConstants;
 import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidator;
 
-/**
- * An implementation of {@link ObjectReflectorInstaller} without support for {@link FacetDecoratorInstaller}
- * being looked up (since this functionality is only available from <tt>core.runtime</tt>).
- */
 public class JavaReflectorInstallerNoDecorators extends InstallerAbstract implements ObjectReflectorInstaller {
 
     private static final Logger LOG = LoggerFactory.getLogger(JavaReflectorInstallerNoDecorators.class);
 
     public static final String PROPERTY_BASE = ConfigurationConstants.ROOT;
 
-    protected final LinkedHashSet<FacetDecoratorInstaller> decoratorInstallers = Sets.newLinkedHashSet();
-
     // /////////////////////////////////////////////////////
     // Constructor
     // /////////////////////////////////////////////////////
@@ -81,11 +72,11 @@ public class JavaReflectorInstallerNoDecorators extends InstallerAbstract implem
             final ServicesInjectorSpi servicesInjector) {
 
         final ProgrammingModel programmingModel = createProgrammingModel(getConfiguration());
-        final Set<FacetDecorator> facetDecorators = createFacetDecorators(getConfiguration());
         final MetaModelValidator mmv = createMetaModelValidator(getConfiguration());
         final List<LayoutMetadataReader> layoutMetadataReaders = createLayoutMetadataReaders(getConfiguration());
 
-        return JavaReflectorHelper.createObjectReflector(deploymentCategory, getConfiguration(), programmingModel, metaModelRefiners, facetDecorators, layoutMetadataReaders, mmv,
+        return JavaReflectorHelper.createObjectReflector(deploymentCategory, getConfiguration(), programmingModel, metaModelRefiners,
+                layoutMetadataReaders, mmv,
                 servicesInjector);
     }
 
@@ -143,13 +134,6 @@ public class JavaReflectorInstallerNoDecorators extends InstallerAbstract implem
         ProgrammingModel.Util.excludeFacetFactories(configuration, programmingModel);
     }
 
-    /**
-     * Hook method to allow subclasses to specify a different sets of
-     * {@link FacetDecorator}s.
-     */
-    protected Set<FacetDecorator> createFacetDecorators(final IsisConfiguration configuration) {
-        return Collections.emptySet();
-    }
 
 
     /**
@@ -180,21 +164,6 @@ public class JavaReflectorInstallerNoDecorators extends InstallerAbstract implem
 
 
 
-    // /////////////////////////////////////////////////////
-    // Optionally Injected: DecoratorInstallers
-    // /////////////////////////////////////////////////////
-
-    /**
-     * Adds in {@link FacetDecoratorInstaller}; if <tt>null</tt> or if already
-     * added then request will be silently ignored.
-     */
-    @Override
-    public void addFacetDecoratorInstaller(final FacetDecoratorInstaller decoratorInstaller) {
-        if (decoratorInstaller == null) {
-            return;
-        }
-        decoratorInstallers.add(decoratorInstaller);
-    }
 
     // /////////////////////////////////////////////////////
     // Guice

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facetdecorator/help/file/internal/SimpleHelpManagerTest.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facetdecorator/help/file/internal/SimpleHelpManagerTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facetdecorator/help/file/internal/SimpleHelpManagerTest.java
deleted file mode 100644
index 22d4b5e..0000000
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facetdecorator/help/file/internal/SimpleHelpManagerTest.java
+++ /dev/null
@@ -1,200 +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.core.metamodel.facetdecorator.help.file.internal;
-
-import junit.framework.TestCase;
-
-import java.io.BufferedReader;
-import java.io.FileNotFoundException;
-import java.io.StringReader;
-import org.apache.isis.applib.Identifier;
-import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.config.IsisConfigurationDefault;
-
-public class SimpleHelpManagerTest extends TestCase {
-
-    public static void main(final String[] args) {
-        junit.textui.TestRunner.run(SimpleHelpManagerTest.class);
-    }
-
-    private TestHelpManager manager;
-
-    @Override
-    protected void setUp() throws Exception {
-        manager = new TestHelpManager(new IsisConfigurationDefault());
-    }
-
-    public void testNoLines() {
-        final Identifier identifier = Identifier.propertyOrCollectionIdentifier("cls", "mth");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("", s);
-    }
-
-    public void testClass() {
-        manager.addLine("C:cls");
-        manager.addLine("Help about class");
-
-        final Identifier identifier = Identifier.classIdentifier("cls");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Help about class\n", s);
-    }
-
-    public void testClassWithNoText() {
-        manager.addLine("C:cls");
-        manager.addLine("C:cls2");
-        manager.addLine("Help about class");
-
-        final Identifier identifier = Identifier.classIdentifier("cls");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("", s);
-    }
-
-    public void testClassTextStopsAtNextClass() {
-        manager.addLine("C:cls");
-        manager.addLine("Help about class");
-        manager.addLine("C:cls2");
-        manager.addLine("Different text");
-
-        final Identifier identifier = Identifier.classIdentifier("cls");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Help about class\n", s);
-    }
-
-    public void testMethodTextStopsAtNextClass() {
-        manager.addLine("C:cls");
-        manager.addLine("M:fld");
-        manager.addLine("Help about method");
-        manager.addLine("C:cls2");
-        manager.addLine("Different text");
-
-        final Identifier identifier = Identifier.propertyOrCollectionIdentifier("cls", "fld");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Help about method\n", s);
-    }
-
-    public void testMethodTextStopsAtNextMethod() {
-        manager.addLine("C:cls");
-        manager.addLine("M:fld");
-        manager.addLine("Help about method");
-        manager.addLine("M:fld2");
-        manager.addLine("Different text");
-
-        final Identifier identifier = Identifier.propertyOrCollectionIdentifier("cls", "fld");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Help about method\n", s);
-    }
-
-    public void testClassTextStopsAtFirstMethod() {
-        manager.addLine("C:cls");
-        manager.addLine("Help about class");
-        manager.addLine("M:method");
-        manager.addLine("Different text");
-
-        final Identifier identifier = Identifier.classIdentifier("cls");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Help about class\n", s);
-    }
-
-    public void testEntryWithMultipleLines() {
-        manager.addLine("C:cls");
-        manager.addLine("Help about class");
-        manager.addLine("line 2");
-        manager.addLine("line 3");
-
-        final Identifier identifier = Identifier.classIdentifier("cls");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Help about class\nline 2\nline 3\n", s);
-    }
-
-    public void testFieldWithNoEntry() {
-        manager.addLine("C:cls");
-        manager.addLine("Help about class");
-
-        final Identifier identifier = Identifier.propertyOrCollectionIdentifier("cls", "fld2");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("", s);
-    }
-
-    public void testMessageForFileError() {
-        final Identifier identifier = Identifier.propertyOrCollectionIdentifier("cls", "fld2");
-        final HelpManagerUsingFiles manager = new HelpManagerUsingFiles(new IsisConfigurationDefault()) {
-            @Override
-            protected BufferedReader getReader() throws FileNotFoundException {
-                throw new FileNotFoundException("not found");
-            }
-        };
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Failure opening help file: not found", s);
-    }
-
-    public void testField() {
-        manager.addLine("C:cls");
-        manager.addLine("Help about class");
-        manager.addLine("M:fld1");
-        manager.addLine("Help about field");
-        manager.addLine("M:fld2");
-        manager.addLine("Help about second field");
-
-        final Identifier identifier = Identifier.propertyOrCollectionIdentifier("cls", "fld2");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Help about second field\n", s);
-    }
-
-    public void testReadBlankLines() {
-        manager.addLine("C:cls");
-        manager.addLine("");
-        manager.addLine("");
-        manager.addLine("Help about class");
-
-        final Identifier identifier = Identifier.classIdentifier("cls");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("\n\nHelp about class\n", s);
-
-    }
-
-    public void testSkipComments() {
-        manager.addLine("C:cls");
-        manager.addLine("# comment");
-        manager.addLine("Help about class");
-
-        final Identifier identifier = Identifier.classIdentifier("cls");
-        final String s = manager.getHelpText(identifier);
-        assertEquals("Help about class\n", s);
-
-    }
-}
-
-class TestHelpManager extends HelpManagerUsingFiles {
-    public TestHelpManager(final IsisConfiguration configuration) {
-        super(configuration);
-    }
-
-    private final StringBuffer file = new StringBuffer();
-
-    public void addLine(final String string) {
-        file.append(string);
-        file.append('\n');
-    }
-
-    @Override
-    protected BufferedReader getReader() throws FileNotFoundException {
-        return new BufferedReader(new StringReader(file.toString()));
-    }
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java
index cdf9399..27a465e 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java
@@ -20,7 +20,6 @@
 package org.apache.isis.core.metamodel.specloader;
 
 import java.util.Collections;
-import java.util.HashSet;
 
 import com.google.common.collect.Lists;
 
@@ -35,7 +34,6 @@ import org.junit.rules.ExpectedException;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
 import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet;
 import org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet;
 import org.apache.isis.core.metamodel.facets.all.named.NamedFacet;
@@ -89,7 +87,6 @@ public abstract class ObjectReflectorDefaultTestAbstract {
                 new ObjectReflectorDefault(DeploymentCategory.PRODUCTION,
                         mockConfiguration,
                         new ProgrammingModelFacetsJava5(),
-                        new HashSet<FacetDecorator>(),
                         new MetaModelValidatorDefault(),
                         Lists.<LayoutMetadataReader>newArrayList(
                                 new LayoutMetadataReaderFromJson()), mockServicesInjector);
@@ -111,7 +108,6 @@ public abstract class ObjectReflectorDefaultTestAbstract {
         new ObjectReflectorDefault(DeploymentCategory.PRODUCTION ,
                 mockConfiguration,
                 new ProgrammingModelFacetsJava5(),
-                new HashSet<FacetDecorator>(),
                 new MetaModelValidatorDefault(),
                 Lists.<LayoutMetadataReader>newArrayList(),
                 mockServicesInjector);
@@ -125,7 +121,6 @@ public abstract class ObjectReflectorDefaultTestAbstract {
         new ObjectReflectorDefault(DeploymentCategory.PRODUCTION,
                 mockConfiguration,
                 new ProgrammingModelFacetsJava5(),
-                new HashSet<FacetDecorator>(),
                 new MetaModelValidatorDefault(),
                 null,
                 mockServicesInjector);

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/runtime/src/main/java/org/apache/isis/core/runtime/progmodels/JavaReflectorInstaller.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/progmodels/JavaReflectorInstaller.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/progmodels/JavaReflectorInstaller.java
deleted file mode 100644
index 6713530..0000000
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/progmodels/JavaReflectorInstaller.java
+++ /dev/null
@@ -1,102 +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.core.runtime.progmodels;
-
-import java.util.Collections;
-import java.util.LinkedHashSet;
-import java.util.Set;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
-import org.apache.isis.core.metamodel.specloader.FacetDecoratorInstaller;
-import org.apache.isis.core.metamodel.specloader.ReflectorConstants;
-import org.apache.isis.core.runtime.installerregistry.InstallerLookup;
-import org.apache.isis.core.runtime.installerregistry.InstallerLookupAware;
-import org.apache.isis.progmodels.dflt.JavaReflectorInstallerNoDecorators;
-
-/**
- * in default runtime only for dynamic lookup of facet decorators
- */
-public class JavaReflectorInstaller extends JavaReflectorInstallerNoDecorators implements InstallerLookupAware {
-
-    private static final Logger LOG = LoggerFactory.getLogger(JavaReflectorInstaller.class);
-
-    private InstallerLookup installerLookup;
-
-    /**
-     * Hook method to allow subclasses to specify a different sets of
-     * {@link FacetDecorator}s.
-     * 
-     * <p>
-     * By default, returns the {@link FacetDecorator}s that are specified in the
-     * {@link IsisConfiguration} (using
-     * {@link ReflectorConstants#FACET_DECORATOR_CLASS_NAMES}) along with any
-     * {@link FacetDecorator}s explicitly registered using
-     * {@link #addFacetDecoratorInstaller(FacetDecoratorInstaller)}. created
-     * using the {@link FacetDecoratorInstaller}s.
-     */
-    protected Set<FacetDecorator> createFacetDecorators(final IsisConfiguration configuration) {
-        addFacetDecoratorInstallers(configuration);
-        return createFacetDecorators(decoratorInstallers);
-    }
-
-    private void addFacetDecoratorInstallers(final IsisConfiguration configuration) {
-        final String[] decoratorNames = configuration.getList(ReflectorConstants.FACET_DECORATOR_CLASS_NAMES);
-        for (final String decoratorName : decoratorNames) {
-            if (LOG.isInfoEnabled()) {
-                LOG.info("adding reflector facet decorator from configuration " + decoratorName);
-            }
-            addFacetDecoratorInstaller(lookupFacetDecorator(decoratorName));
-        }
-    }
-
-    private FacetDecoratorInstaller lookupFacetDecorator(final String decoratorClassName) {
-        return installerLookup.getInstaller(FacetDecoratorInstaller.class, decoratorClassName);
-    }
-
-    private Set<FacetDecorator> createFacetDecorators(final Set<FacetDecoratorInstaller> decoratorInstallers) {
-        final LinkedHashSet<FacetDecorator> decorators = new LinkedHashSet<FacetDecorator>();
-        if (decoratorInstallers.size() == 0) {
-            if (LOG.isInfoEnabled()) {
-                LOG.info("No facet decorators installers added");
-            }
-        }
-        for (final FacetDecoratorInstaller installer : decoratorInstallers) {
-            decorators.addAll(installer.createDecorators());
-        }
-        return Collections.unmodifiableSet(decorators);
-    }
-
-    // /////////////////////////////////////////////////////
-    // Optionally Injected: InstallerLookup
-    // /////////////////////////////////////////////////////
-
-    /**
-     * Injected by virtue of being {@link InstallerLookupAware}.
-     */
-    @Override
-    public void setInstallerLookup(final InstallerLookup installerLookup) {
-        this.installerLookup = installerLookup;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/TransactionUtils.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/TransactionUtils.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/TransactionUtils.java
deleted file mode 100644
index 2721c99..0000000
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/TransactionUtils.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.core.runtime.system.transaction;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.runtime.transaction.facets.CollectionClearFacetWrapTransaction;
-
-public class TransactionUtils {
-    private final static Logger LOG = LoggerFactory.getLogger(CollectionClearFacetWrapTransaction.class);
-
-    private TransactionUtils() {
-    }
-
-    public static void abort(final IsisTransactionManager transactionManager, final FacetHolder holder) {
-        LOG.info("exception executing " + holder + ", aborting transaction");
-        try {
-            transactionManager.abortTransaction();
-        } catch (final Exception e2) {
-            LOG.error("failure during abort", e2);
-        }
-    }
-
-    /**
-     * TODO: need to downcast the FacetHolder and fetch out an identifier.
-     */
-    public static String getIdentifierFor(final FacetHolder facetHolder) {
-        return facetHolder.toString();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderDefault2.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderDefault2.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderDefault2.java
index 2e128a0..159e2ac 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderDefault2.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderDefault2.java
@@ -21,10 +21,8 @@ package org.apache.isis.core.runtime.systemusinginstallers;
 
 import java.util.Collection;
 import java.util.List;
-import java.util.Set;
 
 import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
 
 import org.apache.isis.applib.AppManifest;
 import org.apache.isis.applib.fixtures.InstallableFixture;
@@ -34,7 +32,6 @@ import org.apache.isis.core.commons.config.IsisConfigurationDefault;
 import org.apache.isis.core.commons.resource.ResourceStreamSourceContextLoaderClassPath;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facetapi.MetaModelRefiner;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
 import org.apache.isis.core.metamodel.layoutmetadata.LayoutMetadataReader;
 import org.apache.isis.core.metamodel.layoutmetadata.json.LayoutMetadataReaderFromJson;
 import org.apache.isis.core.metamodel.metamodelvalidator.dflt.MetaModelValidatorDefault;
@@ -56,7 +53,6 @@ import org.apache.isis.core.runtime.services.ServicesInstallerFromConfigurationA
 import org.apache.isis.core.runtime.system.DeploymentType;
 import org.apache.isis.core.runtime.system.IsisSystemException;
 import org.apache.isis.core.runtime.system.persistence.PersistenceSessionFactory;
-import org.apache.isis.core.runtime.transaction.facetdecorator.standard.StandardTransactionFacetDecorator;
 import org.apache.isis.objectstore.jdo.datanucleus.DataNucleusPersistenceMechanismInstaller;
 import org.apache.isis.progmodels.dflt.JavaReflectorHelper;
 import org.apache.isis.progmodels.dflt.ProgrammingModelFacetsJava5;
@@ -244,8 +240,6 @@ public class IsisComponentProviderDefault2 extends IsisComponentProviderAbstract
 
         final DeploymentCategory deploymentCategory = deploymentType.getDeploymentCategory();
 
-        final Set<FacetDecorator> facetDecorators =
-                Sets.newHashSet((FacetDecorator) new StandardTransactionFacetDecorator(getConfiguration()));
         final List<LayoutMetadataReader> layoutMetadataReaders =
                 Lists.<LayoutMetadataReader>newArrayList(new LayoutMetadataReaderFromJson());
 
@@ -253,7 +247,7 @@ public class IsisComponentProviderDefault2 extends IsisComponentProviderAbstract
                 .createObjectReflector(
                         deploymentCategory, getConfiguration(), programmingModel,
                         metaModelRefiners,
-                        facetDecorators, layoutMetadataReaders,
+                        layoutMetadataReaders,
                         metaModelValidator,
                         servicesInjector);
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderUsingInstallers.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderUsingInstallers.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderUsingInstallers.java
index 29f14ac..2c99632 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderUsingInstallers.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProviderUsingInstallers.java
@@ -39,7 +39,6 @@ import org.apache.isis.core.runtime.services.ServicesInstallerFromConfigurationA
 import org.apache.isis.core.runtime.system.DeploymentType;
 import org.apache.isis.core.runtime.system.SystemConstants;
 import org.apache.isis.core.runtime.system.persistence.PersistenceSessionFactory;
-import org.apache.isis.core.runtime.transaction.facetdecorator.standard.TransactionFacetDecoratorInstaller;
 
 import static org.apache.isis.core.commons.ensure.Ensure.ensureThatArg;
 import static org.apache.isis.core.commons.ensure.Ensure.ensureThatState;
@@ -108,9 +107,6 @@ public class IsisComponentProviderUsingInstallers extends IsisComponentProviderA
         reflectorInstaller = this.installerLookup.reflectorInstaller(
                 configProperty(SystemConstants.REFLECTOR_KEY));
 
-        TransactionFacetDecoratorInstaller transactionFacetDecoratorInstaller =
-                this.installerLookup.getInstaller(TransactionFacetDecoratorInstaller.class);
-
 
         // ensure we were able to load all components via InstallerLookup (fail fast)
         ensureThatState(authenticationInstaller, is(not(nullValue())),
@@ -121,17 +117,12 @@ public class IsisComponentProviderUsingInstallers extends IsisComponentProviderA
                 "servicesInstaller could not be looked up");
         ensureThatState(fixturesInstaller, is(not(nullValue())),
                 "fixtureInstaller could not be looked up");
-        ensureThatState(transactionFacetDecoratorInstaller, is(not(nullValue())),
-                "transactionFacetDecoratorInstaller could not be looked up");
         ensureThatState(persistenceMechanismInstaller, is(not(nullValue())),
                 "persistenceMechanismInstaller could not be looked up");
         ensureThatState(reflectorInstaller, is(not(nullValue())),
                 "reflectorInstaller could not be looked up");
 
 
-        // add in transaction support
-        reflectorInstaller.addFacetDecoratorInstaller(transactionFacetDecoratorInstaller);
-
         // capture the final configuration once all components have been loaded
         configuration = this.installerLookup.getConfiguration();
 

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/TransactionFacetDecorator.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/TransactionFacetDecorator.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/TransactionFacetDecorator.java
deleted file mode 100644
index c515604..0000000
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/TransactionFacetDecorator.java
+++ /dev/null
@@ -1,26 +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.core.runtime.transaction.facetdecorator;
-
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
-
-public interface TransactionFacetDecorator extends FacetDecorator {
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/TransactionFacetDecoratorAbstract.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/TransactionFacetDecoratorAbstract.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/TransactionFacetDecoratorAbstract.java
deleted file mode 100644
index 7b2c911..0000000
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/TransactionFacetDecoratorAbstract.java
+++ /dev/null
@@ -1,48 +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.core.runtime.transaction.facetdecorator;
-
-import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetdecorator.FacetDecoratorAbstract;
-import org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet;
-import org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacet;
-import org.apache.isis.core.metamodel.facets.collections.modify.CollectionClearFacet;
-import org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacet;
-import org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacet;
-import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacet;
-
-public abstract class TransactionFacetDecoratorAbstract extends FacetDecoratorAbstract implements TransactionFacetDecorator {
-
-    private final IsisConfiguration configuration;
-
-    public TransactionFacetDecoratorAbstract(final IsisConfiguration configuration) {
-        this.configuration = configuration;
-    }
-
-    protected IsisConfiguration getConfiguration() {
-        return configuration;
-    }
-
-    @Override
-    public Class<? extends Facet>[] getFacetTypes() {
-        return new Class[] { ActionInvocationFacet.class, PropertyClearFacet.class, PropertySetterFacet.class, CollectionAddToFacet.class, CollectionRemoveFromFacet.class, CollectionClearFacet.class };
-    }
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/624292a0/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/package-info.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/package-info.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/package-info.java
deleted file mode 100644
index 890242b..0000000
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/transaction/facetdecorator/package-info.java
+++ /dev/null
@@ -1,27 +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.
- */
-
-/**
- * Transaction API.
- * 
- * <p>
- * Not generally intended to be implemented; the default implementation in
- * <tt>nof-core</tt> should normally suffice.
- */
-package org.apache.isis.core.runtime.transaction.facetdecorator;
\ No newline at end of file