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/05/21 07:10:33 UTC

[32/56] [abbrv] [partial] isis git commit: ISIS-1335: deleting the mothballed directory.

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/GetPropertyChoices.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/GetPropertyChoices.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/GetPropertyChoices.java
deleted file mode 100644
index e901ccc..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/GetPropertyChoices.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.viewer.bdd.common.fixtures.perform;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
-
-public class GetPropertyChoices extends PerformAbstractTypeParams {
-
-    private ObjectAdapter result;
-
-    public GetPropertyChoices(final Perform.Mode mode) {
-        super("get property choices", Type.PROPERTY, NumParameters.ZERO, mode);
-    }
-
-    @Override
-    public void doHandle(final PerformContext performContext) {
-
-        final ObjectAdapter onAdapter = performContext.getOnAdapter();
-        final ObjectMember nakedObjectMember = performContext.getObjectMember();
-
-        final OneToOneAssociation otoa = (OneToOneAssociation) nakedObjectMember;
-
-        result = performContext.getPeer().toAdaptedListOfPojos(otoa.getChoices(onAdapter));
-    }
-
-    @Override
-    public ObjectAdapter getResult() {
-        return result;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/GetPropertyDefault.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/GetPropertyDefault.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/GetPropertyDefault.java
deleted file mode 100644
index 2766e41..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/GetPropertyDefault.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.viewer.bdd.common.fixtures.perform;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
-
-public class GetPropertyDefault extends PerformAbstractTypeParams {
-
-    private ObjectAdapter result;
-
-    public GetPropertyDefault(final Perform.Mode mode) {
-        super("get property default", Type.PROPERTY, NumParameters.ZERO, mode);
-    }
-
-    @Override
-    public void doHandle(final PerformContext performContext) {
-
-        final ObjectAdapter onAdapter = performContext.getOnAdapter();
-        final ObjectMember nakedObjectMember = performContext.getObjectMember();
-
-        final OneToOneAssociation otoa = (OneToOneAssociation) nakedObjectMember;
-
-        // TODO: the OTOA interface is wrong, should be declared as returning a
-        // NakedObject
-        // (which is indeed what the implementation does)
-        result = otoa.getDefault(onAdapter);
-    }
-
-    @Override
-    public ObjectAdapter getResult() {
-        return result;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/InvokeAction.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/InvokeAction.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/InvokeAction.java
deleted file mode 100644
index c3c7fe6..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/InvokeAction.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.viewer.bdd.common.fixtures.perform;
-
-import java.util.List;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-
-public class InvokeAction extends PerformAbstractTypeParams {
-
-    private ObjectAdapter result;
-
-    public InvokeAction(final Perform.Mode mode) {
-        super("invoke action", Type.ACTION, NumParameters.UNLIMITED, mode);
-    }
-
-    @Override
-    public void doHandle(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        final ObjectAdapter onAdapter = performContext.getOnAdapter();
-        final ObjectMember objectMember = performContext.getObjectMember();
-        final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-        final List<ScenarioCell> argumentCells = performContext.getArgumentCells();
-
-        final ObjectAction objectAction = (ObjectAction) objectMember;
-
-        final int parameterCount = objectAction.getParameterCount();
-        final boolean isContributedOneArgAction = objectAction.isContributed() && parameterCount == 1;
-
-        ObjectAdapter[] proposedArguments;
-        if (!isContributedOneArgAction) {
-
-            // lookup arguments
-            proposedArguments = performContext.getPeer().getAdapters(onAdapter, objectAction, onMemberBinding, argumentCells);
-
-            // validate arguments
-            final Consent argSetValid = objectAction.isProposedArgumentSetValid(onAdapter, proposedArguments);
-            if (argSetValid.isVetoed()) {
-                throw ScenarioBoundValueException.current(onMemberBinding, argSetValid.getReason());
-            }
-        } else {
-            proposedArguments = new ObjectAdapter[] { onAdapter };
-        }
-
-        // execute
-        result = objectAction.execute(onAdapter, proposedArguments);
-
-        // all OK.
-    }
-
-    @Override
-    public ObjectAdapter getResult() {
-        return result;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/Perform.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/Perform.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/Perform.java
deleted file mode 100644
index 10a1c7d..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/Perform.java
+++ /dev/null
@@ -1,37 +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.viewer.bdd.common.fixtures.perform;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-
-public interface Perform {
-
-    public static enum Mode {
-        SETUP, TEST
-    }
-
-    String getKey();
-
-    void perform(PerformContext performContext) throws ScenarioBoundValueException;
-
-    ObjectAdapter getResult();
-
-    boolean requiresMember();
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformAbstract.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformAbstract.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformAbstract.java
deleted file mode 100644
index a821df6..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformAbstract.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.viewer.bdd.common.fixtures.perform;
-
-import org.apache.isis.core.commons.authentication.AuthenticationSession;
-import org.apache.isis.core.runtime.system.context.IsisContext;
-
-public abstract class PerformAbstract implements Perform {
-
-    private final String key;
-    private final Perform.Mode mode;
-
-    public PerformAbstract(final String key, final Perform.Mode mode) {
-        this.key = key;
-        this.mode = mode;
-    }
-
-    @Override
-    public String getKey() {
-        return key;
-    }
-
-    protected Perform.Mode getMode() {
-        return mode;
-    }
-
-    protected AuthenticationSession getSession() {
-        return IsisContext.getAuthenticationSession();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformAbstractTypeParams.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformAbstractTypeParams.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformAbstractTypeParams.java
deleted file mode 100644
index 2e0d1fa..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformAbstractTypeParams.java
+++ /dev/null
@@ -1,188 +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.viewer.bdd.common.fixtures.perform;
-
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
-import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-
-public abstract class PerformAbstractTypeParams extends PerformAbstract {
-
-    protected static enum Type {
-        PROPERTY(true) {
-            @Override
-            String ensureMemberIsOfType(final ObjectMember m) {
-                return m instanceof OneToOneAssociation ? null : "(not a property)";
-            }
-        },
-        COLLECTION(true) {
-            @Override
-            String ensureMemberIsOfType(final ObjectMember m) {
-                return m instanceof OneToManyAssociation ? null : "(not a collection)";
-            }
-        },
-        ACTION(true) {
-            @Override
-            String ensureMemberIsOfType(final ObjectMember m) {
-                return m instanceof ObjectAction ? null : "(not an action)";
-            }
-        },
-        OBJECT(false) {
-            @Override
-            String ensureMemberIsOfType(final ObjectMember m) {
-                return m != null ? "(not required)" : null;
-            }
-        };
-        // public void ensureMemberIsOfType(
-        // final NakedObjectMember nakedObjectMember,
-        // final StoryCell onMemberCell) throws StoryFailureException {
-        // final String msg = ensureMemberIsOfType(nakedObjectMember);
-        // if (msg != null) {
-        // throw new StoryFailureException(onMemberCell, msg);
-        // }
-        // }
-
-        abstract String ensureMemberIsOfType(ObjectMember m);
-
-        private final boolean representsMember;
-
-        private Type(final boolean representsMember) {
-            this.representsMember = representsMember;
-        }
-
-        public boolean representsMember() {
-            return representsMember;
-        }
-    }
-
-    protected static enum NumParameters {
-        ZERO, ONE, UNLIMITED;
-    }
-
-    private final Type type;
-    private final NumParameters numParameters;
-
-    public PerformAbstractTypeParams(final String key, final Type type, final NumParameters numParameters, final Perform.Mode mode) {
-        super(key, mode);
-        this.type = type;
-        this.numParameters = numParameters;
-    }
-
-    @Override
-    public boolean requiresMember() {
-        return type.representsMember();
-    }
-
-    /**
-     * Can be overridden, but provides basic checking that member is of correct
-     * type and, if taking {@link NumParameters#ZERO zero} or
-     * {@link NumParameters#ONE one} parameter, that the correct number of
-     * actual arguments match.
-     */
-    @Override
-    public void perform(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-        final ScenarioCell onMemberCell = onMemberBinding.getCurrentCell();
-
-        final String reason = type.ensureMemberIsOfType(performContext.getObjectMember());
-        if (reason != null) {
-            throw ScenarioBoundValueException.current(onMemberBinding, reason);
-        }
-
-        if (type.representsMember()) {
-
-            if (getMode() == Perform.Mode.TEST) {
-
-                performContext.ensureAvailableForDeploymentType(onMemberBinding, onMemberCell);
-
-                performContext.ensureVisible(onMemberBinding, onMemberCell);
-                performContext.ensureUsable(onMemberBinding, onMemberCell);
-            }
-
-            // validate we have correct number of parameters if zero or one.
-            final int numArgs = performContext.getArgumentCells().size();
-
-            // don't do these two checks, because there could be additional
-            // cells due to previous or subsequent rows in the table
-            // (with the author keeping this 'tidy')
-
-            // if (numParameters == NumParameters.ZERO && length > 0) {
-            // ... "(no arguments required)"
-            // }
-            // if (numParameters == NumParameters.ONE && length > 1) {
-            // ... "(need just 1 argument)"
-            // }
-
-            // okay to do this check, though
-            if (numParameters == NumParameters.ONE && numArgs < 1) {
-                throw ScenarioBoundValueException.current(onMemberBinding, "(need one argument)");
-            }
-        }
-
-        doHandle(performContext);
-    }
-
-    /**
-     * Hook method that does nothing; should be overridden if
-     * {@link #perform(PerformContextForFitNesse) handle(...)} method has not
-     * been.
-     */
-    protected void doHandle(final PerformContext performContext) throws ScenarioBoundValueException {
-        // does nothing
-    }
-
-    // /**
-    // * Convenience; delegates to
-    // * {@link Type#ensureMemberIsOfType(NakedObjectMember)} and downcasts.
-    // */
-    // protected OneToOneAssociation ensureMemberIsProperty(
-    // final NakedObjectMember nakedObjectMember,
-    // final StoryCell usingMemberCell) throws StoryFailureException {
-    // type.ensureMemberIsOfType(nakedObjectMember, usingMemberCell);
-    // return (OneToOneAssociation) nakedObjectMember;
-    // }
-    //
-    // /**
-    // * Convenience; delegates to
-    // * {@link Type#ensureMemberIsOfType(NakedObjectMember)} and downcasts.
-    // */
-    // protected OneToManyAssociation ensureMemberIsCollection(
-    // final NakedObjectMember nakedObjectMember,
-    // final StoryCell usingMemberCell) throws StoryFailureException {
-    // type.ensureMemberIsOfType(nakedObjectMember, usingMemberCell);
-    // return (OneToManyAssociation) nakedObjectMember;
-    // }
-    //
-    // /**
-    // * Convenience; delegates to
-    // * {@link Type#ensureMemberIsOfType(NakedObjectMember)} and downcasts.
-    // */
-    // protected NakedObjectAction ensureMemberIsAction(
-    // final NakedObjectMember nakedObjectMember,
-    // final StoryCell usingMemberCell) throws StoryFailureException {
-    // type.ensureMemberIsOfType(nakedObjectMember, usingMemberCell);
-    // return (NakedObjectAction) nakedObjectMember;
-    // }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformContext.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformContext.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformContext.java
deleted file mode 100644
index e1679d5..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformContext.java
+++ /dev/null
@@ -1,128 +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.viewer.bdd.common.fixtures.perform;
-
-import java.util.List;
-
-import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.core.commons.authentication.AuthenticationSession;
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.core.metamodel.facets.actions.exploration.ExplorationFacet;
-import org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.core.runtime.system.DeploymentType;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-import org.apache.isis.viewer.bdd.common.fixtures.UsingIsisViewerPeer;
-import org.apache.isis.viewer.bdd.common.parsers.DateParser;
-
-/**
- * Represents the context for a single {@link Perform} command; in effect, a row
- * of a table.
- */
-public class PerformContext {
-
-    // REVIEW: should provide this rendering context, rather than hardcoding.
-    // the net effect currently is that class members annotated with 
-    // @Hidden(where=Where.ANYWHERE) or @Disabled(where=Where.ANYWHERE) will indeed
-    // be hidden/disabled, but will be visible/enabled (perhaps incorrectly) 
-    // for any other value for Where
-    private final Where where = Where.ANYWHERE;
-
-    private final UsingIsisViewerPeer peer;
-
-    private final ObjectAdapter onAdapter;
-    private final ObjectMember objectMember;
-    private final List<ScenarioCell> argumentCells;
-
-    public PerformContext(final UsingIsisViewerPeer peer, final ObjectAdapter onAdapter, final ObjectMember objectMember, final List<ScenarioCell> argumentCells) {
-        this.onAdapter = onAdapter;
-        this.objectMember = objectMember;
-        this.peer = peer;
-        this.argumentCells = argumentCells;
-    }
-
-    public UsingIsisViewerPeer getPeer() {
-        return peer;
-    }
-
-    public ObjectAdapter getOnAdapter() {
-        return onAdapter;
-    }
-
-    public ObjectMember getObjectMember() {
-        return objectMember;
-    }
-
-    public List<ScenarioCell> getArgumentCells() {
-        return argumentCells;
-    }
-
-    public Consent visibleMemberConsent() {
-        return getObjectMember().isVisible(getAuthenticationSession(), getOnAdapter(), where);
-    }
-
-    public Consent usableMemberConsent() {
-        return getObjectMember().isUsable(getAuthenticationSession(), getOnAdapter(), where);
-    }
-
-    public Consent validObjectConsent() {
-        final ObjectAdapter onAdapter = getOnAdapter();
-        return onAdapter.getSpecification().isValid(onAdapter);
-    }
-
-    public void ensureVisible(final CellBinding onMemberBinding, final ScenarioCell onMemberCell) throws ScenarioBoundValueException {
-        final Consent visible = objectMember.isVisible(getAuthenticationSession(), getOnAdapter(), where);
-        if (visible.isVetoed()) {
-            throw ScenarioBoundValueException.current(onMemberBinding, "(not visible)");
-        }
-    }
-
-    public void ensureUsable(final CellBinding onMemberBinding, final ScenarioCell onMemberCell) throws ScenarioBoundValueException {
-        final Consent usable = objectMember.isUsable(getAuthenticationSession(), getOnAdapter(), where);
-        if (usable.isVetoed()) {
-            throw ScenarioBoundValueException.current(onMemberBinding, "(not usable)");
-        }
-    }
-
-    public void ensureAvailableForDeploymentType(final CellBinding onMemberBinding, final ScenarioCell onMemberCell) throws ScenarioBoundValueException {
-        final DeploymentType deploymentType = this.peer.getDeploymentType();
-
-        final boolean isExploration = objectMember.getFacet(ExplorationFacet.class) != null;
-        if (isExploration && !deploymentType.isExploring()) {
-            throw ScenarioBoundValueException.current(onMemberBinding, "(not running in exploration mode)");
-        }
-
-        final boolean isPrototype = objectMember.getFacet(PrototypeFacet.class) != null;
-        if (isPrototype && !deploymentType.isPrototyping()) {
-            throw ScenarioBoundValueException.current(onMemberBinding, "(not running in prototype mode)");
-        }
-    }
-
-    protected AuthenticationSession getAuthenticationSession() {
-        return getPeer().getAuthenticationSession();
-    }
-
-    public DateParser getDateParser() {
-        return peer.getDateParser();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformOwner.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformOwner.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformOwner.java
deleted file mode 100644
index 06b5157..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/PerformOwner.java
+++ /dev/null
@@ -1,23 +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.viewer.bdd.common.fixtures.perform;
-
-public interface PerformOwner {
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/RemoveFromCollection.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/RemoveFromCollection.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/RemoveFromCollection.java
deleted file mode 100644
index 7fe0b39..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/RemoveFromCollection.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.viewer.bdd.common.fixtures.perform;
-
-import java.util.List;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.core.metamodel.consent.InteractionInvocationMethod;
-import org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacet;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-
-public class RemoveFromCollection extends PerformAbstractTypeParams {
-
-    private ObjectAdapter result;
-
-    public RemoveFromCollection(final Perform.Mode mode) {
-        super("remove from collection", Type.COLLECTION, NumParameters.ONE, mode);
-    }
-
-    @Override
-    public void doHandle(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        final ObjectAdapter onAdapter = performContext.getOnAdapter();
-        final ObjectMember nakedObjectMember = performContext.getObjectMember();
-        final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-        @SuppressWarnings("unused")
-        final ScenarioCell onMemberCell = onMemberBinding.getCurrentCell();
-
-        final List<ScenarioCell> argumentCells = performContext.getArgumentCells();
-
-        final OneToManyAssociation otma = (OneToManyAssociation) nakedObjectMember;
-
-        // safe since guaranteed by superclass
-        final CellBinding arg0Binding = performContext.getPeer().getArg0Binding();
-        final ScenarioCell arg0Cell = argumentCells.get(0);
-        final String toRemove = arg0Cell.getText();
-
-        final CollectionRemoveFromFacet removeFromFacet = nakedObjectMember.getFacet(CollectionRemoveFromFacet.class);
-        if (removeFromFacet == null) {
-            throw ScenarioBoundValueException.current(onMemberBinding, "(cannot remove from collection)");
-        }
-
-        final ObjectAdapter toRemoveAdapter = performContext.getPeer().getAliasRegistry().getAliased(toRemove);
-        if (toRemoveAdapter == null) {
-            throw ScenarioBoundValueException.current(arg0Binding, "(unknown alias)");
-        }
-
-        // validate argument
-        otma.createValidateAddInteractionContext(getSession(), InteractionInvocationMethod.BY_USER, onAdapter, toRemoveAdapter);
-        final Consent validToRemove = otma.isValidToRemove(onAdapter, toRemoveAdapter);
-        if (validToRemove.isVetoed()) {
-            throw ScenarioBoundValueException.current(onMemberBinding, validToRemove.getReason());
-        }
-
-        // remove
-        removeFromFacet.remove(onAdapter, toRemoveAdapter);
-
-    }
-
-    @Override
-    public ObjectAdapter getResult() {
-        return result;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/SaveObject.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/SaveObject.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/SaveObject.java
deleted file mode 100644
index d101d13..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/SaveObject.java
+++ /dev/null
@@ -1,71 +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.viewer.bdd.common.fixtures.perform;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.core.runtime.system.persistence.Persistor;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-
-public class SaveObject extends PerformAbstractTypeParams {
-
-    private ObjectAdapter result;
-
-    public SaveObject(final Perform.Mode mode) {
-        super("save", Type.OBJECT, NumParameters.ZERO, mode);
-    }
-
-    @Override
-    public void doHandle(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        final ObjectAdapter onAdapter = performContext.getOnAdapter();
-
-        final Consent valid = onAdapter.getSpecification().isValid(onAdapter);
-
-        final CellBinding performBinding = performContext.getPeer().getPerformBinding();
-        if (valid.isVetoed()) {
-            throw ScenarioBoundValueException.current(performBinding, valid.getReason());
-        }
-
-        if (onAdapter.representsPersistent()) {
-            throw ScenarioBoundValueException.current(performBinding, "(already persistent)");
-        }
-
-        // persist
-
-        // xactn mgmt now performed by PersistenceSession#makePersistent
-        // getOwner().getTransactionManager().startTransaction();
-        getPersistenceSession().makePersistent(onAdapter);
-        // getOwner().getTransactionManager().endTransaction();
-
-        // all OK.
-    }
-
-    protected Persistor getPersistenceSession() {
-        return IsisContext.getPersistenceSession();
-    }
-
-    @Override
-    public ObjectAdapter getResult() {
-        return result;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/SetProperty.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/SetProperty.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/SetProperty.java
deleted file mode 100644
index 71d7c85..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/SetProperty.java
+++ /dev/null
@@ -1,79 +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.viewer.bdd.common.fixtures.perform;
-
-import java.util.List;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.core.metamodel.facets.properties.modify.PropertySetterFacet;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-
-public class SetProperty extends PerformAbstractTypeParams {
-
-    private ObjectAdapter result;
-
-    public SetProperty(final Perform.Mode mode) {
-        super("set property", Type.PROPERTY, NumParameters.ONE, mode);
-    }
-
-    @Override
-    public void doHandle(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        final ObjectAdapter onAdapter = performContext.getOnAdapter();
-        final ObjectMember nakedObjectMember = performContext.getObjectMember();
-        final List<ScenarioCell> argumentCells = performContext.getArgumentCells();
-
-        final OneToOneAssociation otoa = (OneToOneAssociation) nakedObjectMember;
-
-        // set
-        final PropertySetterFacet setterFacet = otoa.getFacet(PropertySetterFacet.class);
-        if (setterFacet == null) {
-            final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-            throw ScenarioBoundValueException.current(onMemberBinding, "(cannot set)");
-        }
-
-        // safe to obtain since guaranteed by superclass
-        final CellBinding arg0Binding = performContext.getPeer().getArg0Binding();
-        final ScenarioCell arg0Cell = argumentCells.get(0);
-
-        // obtain existing as 'context' (used if this is a parsed @Value)
-        final ObjectAdapter contextAdapter = otoa.get(onAdapter);
-
-        // validate parameter
-        final ObjectAdapter toSetAdapter = performContext.getPeer().getAdapter(contextAdapter, otoa.getSpecification(), arg0Binding, arg0Cell);
-        final Consent validConsent = otoa.isAssociationValid(onAdapter, toSetAdapter);
-        if (validConsent.isVetoed()) {
-            throw ScenarioBoundValueException.current(arg0Binding, validConsent.getReason());
-        }
-
-        setterFacet.setProperty(onAdapter, toSetAdapter);
-
-    }
-
-    @Override
-    public ObjectAdapter getResult() {
-        return result;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsContainment.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsContainment.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsContainment.java
deleted file mode 100644
index b3b246b..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsContainment.java
+++ /dev/null
@@ -1,53 +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.viewer.bdd.common.fixtures.perform.checkthat;
-
-/**
- * Parameterizes {@link ThatSubcommand}s.
- */
-public enum AssertsContainment {
-
-    CONTAINS("contains", true, "(does not contain)"), DOES_NOT_CONTAIN("does not contain", false, "(contains)");
-
-    private final String key;
-    private final boolean contains;
-    private final String errorMsgIfNotSatisfied;
-
-    private AssertsContainment(final String key, final boolean contains, final String errorMsgIfNotSatisfied) {
-        this.key = key;
-        this.contains = contains;
-        this.errorMsgIfNotSatisfied = errorMsgIfNotSatisfied;
-    }
-
-    public String getKey() {
-        return key;
-    }
-
-    public boolean doesContain() {
-        return contains;
-    }
-
-    public boolean isSatisfiedBy(final boolean contains) {
-        return this.contains == contains;
-    }
-
-    public String getErrorMsgIfNotSatisfied() {
-        return errorMsgIfNotSatisfied;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsEmpty.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsEmpty.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsEmpty.java
deleted file mode 100644
index 6b69c09..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsEmpty.java
+++ /dev/null
@@ -1,53 +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.viewer.bdd.common.fixtures.perform.checkthat;
-
-/**
- * Parameterizes {@link ThatSubcommand}s.
- */
-public enum AssertsEmpty {
-
-    EMPTY("is empty", true, "(not empty)"), NOT_EMPTY("is not empty", false, "(empty)");
-
-    private final String key;
-    private final boolean empty;
-    private final String errorMsgIfNotSatisfied;
-
-    AssertsEmpty(final String key, final boolean empty, final String errorMsgIfNotSatisfied) {
-        this.key = key;
-        this.empty = empty;
-        this.errorMsgIfNotSatisfied = errorMsgIfNotSatisfied;
-    }
-
-    public String getKey() {
-        return key;
-    }
-
-    public boolean isEmpty() {
-        return empty;
-    }
-
-    public boolean isSatisfiedBy(final boolean empty) {
-        return this.empty == empty;
-    }
-
-    public String getErrorMsgIfNotSatisfied() {
-        return errorMsgIfNotSatisfied;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsValidity.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsValidity.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsValidity.java
deleted file mode 100644
index 831512c..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/AssertsValidity.java
+++ /dev/null
@@ -1,70 +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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-
-/**
- * Parameterizes {@link ThatSubcommand}s.
- * 
- * @author Dan Haywood
- */
-public enum AssertsValidity {
-
-    VALID(true, "is valid for", "is valid", "valid"), INVALID(false, "is not valid for", "is not valid", "not valid", "invalid");
-
-    private final String[] keys;
-    private final boolean valid;
-
-    AssertsValidity(final boolean valid, final String... keys) {
-        this.keys = keys;
-        this.valid = valid;
-    }
-
-    public String[] getKeys() {
-        return keys;
-    }
-
-    public boolean isValid() {
-        return valid;
-    }
-
-    public boolean satisfiedBy(final Consent validityConsent) {
-        return validityConsent.isAllowed() && isValid() || validityConsent.isVetoed() && !isValid();
-    }
-
-    /**
-     * The reason to use if the assertion is not valid.
-     */
-    public String getReason(final Consent validityConsent) {
-        return isValid() ? validityConsent.getReason() : "(valid)";
-    }
-
-    /**
-     * The binding whose current cell should be coloured if the assertion fails.
-     */
-    public CellBinding colorBinding(final CellBinding arg0Binding, final CellBinding thatBinding) {
-        if (arg0Binding == null) {
-            return thatBinding;
-        }
-        return isValid() ? arg0Binding : thatBinding;
-    }
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Disabled.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Disabled.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Disabled.java
deleted file mode 100644
index 5242f81..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Disabled.java
+++ /dev/null
@@ -1,44 +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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-
-public class Disabled extends ThatSubcommandAbstract {
-
-    public Disabled() {
-        super("is disabled", "is not usable", "is not enabled");
-    }
-
-    @Override
-    public ObjectAdapter that(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        if (performContext.usableMemberConsent().isAllowed()) {
-            final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-            throw ScenarioBoundValueException.current(onMemberBinding, "(usable)");
-        }
-
-        return null;
-
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Hidden.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Hidden.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Hidden.java
deleted file mode 100644
index a39148c..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Hidden.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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-
-public class Hidden extends ThatSubcommandAbstract {
-
-    public Hidden() {
-        super("is hidden", "is not visible");
-    }
-
-    @Override
-    public ObjectAdapter that(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        if (performContext.visibleMemberConsent().isAllowed()) {
-            final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-            throw ScenarioBoundValueException.current(onMemberBinding, "(visible)");
-        }
-
-        return null;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/PerformCheckThatAbstract.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/PerformCheckThatAbstract.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/PerformCheckThatAbstract.java
deleted file mode 100644
index 46fbf3a..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/PerformCheckThatAbstract.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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.IsisViewerConstants;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.Perform;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformAbstract;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-
-public abstract class PerformCheckThatAbstract extends PerformAbstract {
-
-    protected static enum OnMemberColumn {
-        REQUIRED, NOT_REQUIRED
-    }
-
-    private final Map<String, ThatSubcommand> subcommandByKey = new HashMap<String, ThatSubcommand>();
-    private ObjectAdapter result;
-    private final boolean requiresMember;
-
-    public PerformCheckThatAbstract(final String key, final OnMemberColumn onMemberColumn, final Perform.Mode mode, final ThatSubcommand... thatSubcommands) {
-        super(key, mode);
-        requiresMember = onMemberColumn == OnMemberColumn.REQUIRED;
-        for (final ThatSubcommand thatSubcommand : thatSubcommands) {
-            for (final String subKey : thatSubcommand.getSubkeys()) {
-                subcommandByKey.put(subKey, thatSubcommand);
-            }
-        }
-    }
-
-    @Override
-    public void perform(final PerformContext performContext) throws ScenarioBoundValueException {
-        final CellBinding thatItBinding = performContext.getPeer().getThatItBinding();
-        if (!thatItBinding.isFound()) {
-            final CellBinding performBinding = performContext.getPeer().getPerformBinding();
-            throw ScenarioBoundValueException.current(performBinding, "(require " + IsisViewerConstants.THAT_IT_NAME + "' column)");
-        }
-        final ScenarioCell thatItCell = thatItBinding.getCurrentCell();
-        final String thatIt = thatItCell.getText();
-        final ThatSubcommand thatSubcommand = subcommandByKey.get(thatIt);
-        if (thatSubcommand == null) {
-            throw ScenarioBoundValueException.current(thatItBinding, "(unknown '" + IsisViewerConstants.THAT_IT_NAME + "' verb)");
-        }
-        result = thatSubcommand.that(performContext);
-    }
-
-    @Override
-    public ObjectAdapter getResult() {
-        return result;
-    }
-
-    @Override
-    public boolean requiresMember() {
-        return requiresMember;
-    }
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ProposedArgumentValidityAbstract.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ProposedArgumentValidityAbstract.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ProposedArgumentValidityAbstract.java
deleted file mode 100644
index 91fd422..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ProposedArgumentValidityAbstract.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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import org.apache.isis.core.commons.lang.StringUtils;
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-
-public abstract class ProposedArgumentValidityAbstract extends ThatValidityAbstract {
-
-    public ProposedArgumentValidityAbstract(final AssertsValidity assertion) {
-        super(assertion);
-    }
-
-    @Override
-    public ObjectAdapter that(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        final ObjectMember nakedObjectMember = performContext.getObjectMember();
-        final CellBinding thatBinding = performContext.getPeer().getThatItBinding();
-        final CellBinding arg0Binding = performContext.getPeer().getArg0Binding();
-
-        // check we have an argument to validate (if one is required)
-        if (!arg0Binding.isFound()) {
-            throw ScenarioBoundValueException.current(thatBinding, "(requires argument)");
-        }
-
-        final ScenarioCell arg0Cell = arg0Binding.getCurrentCell();
-        final String toValidate = arg0Cell.getText();
-        if (StringUtils.isNullOrEmpty(toValidate)) {
-            throw ScenarioBoundValueException.current(arg0Binding, "(required)");
-        }
-
-        final ObjectAdapter toValidateAdapter = performContext.getPeer().getAdapter(null, nakedObjectMember.getSpecification(), arg0Binding, arg0Cell);
-        final Consent validityConsent = determineConsent(performContext, toValidateAdapter);
-        if (!getAssertion().satisfiedBy(validityConsent)) {
-            throw ScenarioBoundValueException.current(getAssertion().colorBinding(arg0Binding, thatBinding), getAssertion().getReason(validityConsent));
-        }
-
-        return toValidateAdapter;
-    }
-
-    protected abstract Consent determineConsent(final PerformContext performContext, ObjectAdapter toValidateAdapter);
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatSubcommand.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatSubcommand.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatSubcommand.java
deleted file mode 100644
index 9209512..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatSubcommand.java
+++ /dev/null
@@ -1,36 +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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import java.util.List;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformOwner;
-
-public interface ThatSubcommand {
-
-    ObjectAdapter that(PerformContext performContext) throws ScenarioBoundValueException;
-
-    List<String> getSubkeys();
-
-    void setOwner(PerformOwner owner);
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatSubcommandAbstract.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatSubcommandAbstract.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatSubcommandAbstract.java
deleted file mode 100644
index fcc8206..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatSubcommandAbstract.java
+++ /dev/null
@@ -1,53 +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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformOwner;
-
-public abstract class ThatSubcommandAbstract implements ThatSubcommand {
-
-    private final List<String> subkeys;
-    private PerformOwner owner;
-
-    public ThatSubcommandAbstract(final String... subkeys) {
-        this.subkeys = Collections.unmodifiableList(Arrays.asList(subkeys));
-    }
-
-    @Override
-    public List<String> getSubkeys() {
-        return subkeys;
-    }
-
-    protected PerformOwner getOwner() {
-        return owner;
-    }
-
-    /**
-     * Injected.
-     */
-    @Override
-    public void setOwner(final PerformOwner owner) {
-        this.owner = owner;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatValidityAbstract.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatValidityAbstract.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatValidityAbstract.java
deleted file mode 100644
index 9c41083..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/ThatValidityAbstract.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.viewer.bdd.common.fixtures.perform.checkthat;
-
-public abstract class ThatValidityAbstract extends ThatSubcommandAbstract {
-
-    private final AssertsValidity assertion;
-
-    public ThatValidityAbstract(final AssertsValidity assertion) {
-        super(assertion.getKeys());
-        this.assertion = assertion;
-    }
-
-    public AssertsValidity getAssertion() {
-        return assertion;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Usable.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Usable.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Usable.java
deleted file mode 100644
index b254b94..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Usable.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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-
-public class Usable extends ThatSubcommandAbstract {
-
-    public Usable() {
-        super("is usable", "is enabled", "is not disabled");
-    }
-
-    @Override
-    public ObjectAdapter that(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        if (!performContext.usableMemberConsent().isAllowed()) {
-            final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-            throw ScenarioBoundValueException.current(onMemberBinding, "(disabled)");
-        }
-
-        return null;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Visible.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Visible.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Visible.java
deleted file mode 100644
index 02c7c7d..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/Visible.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.viewer.bdd.common.fixtures.perform.checkthat;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-
-public class Visible extends ThatSubcommandAbstract {
-
-    public Visible() {
-        super("is visible", "is not hidden");
-    }
-
-    @Override
-    public ObjectAdapter that(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        if (performContext.visibleMemberConsent().isVetoed()) {
-            final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-            throw ScenarioBoundValueException.current(onMemberBinding, "(hidden)");
-        }
-
-        return null;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/action/ArgumentSetNotValid.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/action/ArgumentSetNotValid.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/action/ArgumentSetNotValid.java
deleted file mode 100644
index 906305a..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/action/ArgumentSetNotValid.java
+++ /dev/null
@@ -1,70 +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.viewer.bdd.common.fixtures.perform.checkthat.action;
-
-import java.util.List;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.checkthat.ThatSubcommandAbstract;
-
-public class ArgumentSetNotValid extends ThatSubcommandAbstract {
-
-    public ArgumentSetNotValid() {
-        super("is not valid for", "is invalid", "invalid");
-    }
-
-    // TODO: a lot of duplication with InvokeAction; simplify somehow?
-    @Override
-    public ObjectAdapter that(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        final ObjectAdapter onAdapter = performContext.getOnAdapter();
-        final ObjectMember nakedObjectMember = performContext.getObjectMember();
-        final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-        final List<ScenarioCell> argumentCells = performContext.getArgumentCells();
-
-        final ObjectAction nakedObjectAction = (ObjectAction) nakedObjectMember;
-        final int parameterCount = nakedObjectAction.getParameterCount();
-        final boolean isContributedOneArgAction = nakedObjectAction.isContributed() && parameterCount == 1;
-
-        if (isContributedOneArgAction) {
-            return null;
-        }
-
-        // lookup arguments
-        final ObjectAdapter[] proposedArguments = performContext.getPeer().getAdapters(onAdapter, nakedObjectAction, onMemberBinding, argumentCells);
-
-        // validate arguments
-        final Consent argSetValid = nakedObjectAction.isProposedArgumentSetValid(onAdapter, proposedArguments);
-        if (argSetValid.isAllowed()) {
-            final CellBinding thatItBinding = performContext.getPeer().getThatItBinding();
-            throw ScenarioBoundValueException.current(thatItBinding, "(valid)");
-        }
-
-        // execute
-        return null;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/action/ArgumentSetValid.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/action/ArgumentSetValid.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/action/ArgumentSetValid.java
deleted file mode 100644
index 666b2e3..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/action/ArgumentSetValid.java
+++ /dev/null
@@ -1,69 +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.viewer.bdd.common.fixtures.perform.checkthat.action;
-
-import java.util.List;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.consent.Consent;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.checkthat.ThatSubcommandAbstract;
-
-public class ArgumentSetValid extends ThatSubcommandAbstract {
-
-    public ArgumentSetValid() {
-        super("is valid for", "is valid", "valid");
-    }
-
-    // TODO: a lot of duplication with InvokeAction; simplify somehow?
-    @Override
-    public ObjectAdapter that(final PerformContext performContext) throws ScenarioBoundValueException {
-
-        final ObjectAdapter onAdapter = performContext.getOnAdapter();
-        final ObjectMember nakedObjectMember = performContext.getObjectMember();
-        final CellBinding onMemberBinding = performContext.getPeer().getOnMemberBinding();
-        final List<ScenarioCell> argumentCells = performContext.getArgumentCells();
-
-        final ObjectAction nakedObjectAction = (ObjectAction) nakedObjectMember;
-        final int parameterCount = nakedObjectAction.getParameterCount();
-        final boolean isContributedOneArgAction = nakedObjectAction.isContributed() && parameterCount == 1;
-
-        if (isContributedOneArgAction) {
-            return null;
-        }
-
-        // lookup arguments
-        final ObjectAdapter[] proposedArguments = performContext.getPeer().getAdapters(onAdapter, nakedObjectAction, onMemberBinding, argumentCells);
-
-        // validate arguments
-        final Consent argSetValid = nakedObjectAction.isProposedArgumentSetValid(onAdapter, proposedArguments);
-        if (argSetValid.isVetoed()) {
-            throw ScenarioBoundValueException.current(onMemberBinding, argSetValid.getReason());
-        }
-
-        // execute
-        return null;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/collections/Containment.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/collections/Containment.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/collections/Containment.java
deleted file mode 100644
index ba485fb..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/collections/Containment.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.viewer.bdd.common.fixtures.perform.checkthat.collections;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.ScenarioCell;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.checkthat.AssertsContainment;
-
-public class Containment extends ThatAbstract {
-
-    private final AssertsContainment assertion;
-
-    public Containment(final AssertsContainment assertion) {
-        super(assertion.getKey());
-        this.assertion = assertion;
-    }
-
-    @Override
-    protected void doThat(final PerformContext performContext, final Iterable<ObjectAdapter> collection) throws ScenarioBoundValueException {
-
-        final ObjectMember nakedObjectMember = performContext.getObjectMember();
-        final CellBinding thatBinding = performContext.getPeer().getThatItBinding();
-        final CellBinding arg0Binding = performContext.getPeer().getArg0Binding();
-
-        if (!arg0Binding.isFound()) {
-            throw ScenarioBoundValueException.current(thatBinding, "(requires argument)");
-        }
-
-        final ScenarioCell arg0Cell = arg0Binding.getCurrentCell();
-
-        final ObjectAdapter containedAdapter = performContext.getPeer().getAdapter(null, nakedObjectMember.getSpecification(), arg0Binding, arg0Cell);
-
-        boolean contains = false;
-        for (final ObjectAdapter eachAdapter : collection) {
-            if (containedAdapter == eachAdapter) {
-                contains = true;
-                break;
-            }
-        }
-
-        if (!assertion.isSatisfiedBy(contains)) {
-            throw ScenarioBoundValueException.current(arg0Binding, assertion.getErrorMsgIfNotSatisfied());
-        }
-
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/a43dbdd9/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/collections/Emptiness.java
----------------------------------------------------------------------
diff --git a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/collections/Emptiness.java b/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/collections/Emptiness.java
deleted file mode 100644
index e07ad75..0000000
--- a/mothballed/component/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/fixtures/perform/checkthat/collections/Emptiness.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.viewer.bdd.common.fixtures.perform.checkthat.collections;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.viewer.bdd.common.CellBinding;
-import org.apache.isis.viewer.bdd.common.ScenarioBoundValueException;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.PerformContext;
-import org.apache.isis.viewer.bdd.common.fixtures.perform.checkthat.AssertsEmpty;
-
-public class Emptiness extends ThatAbstract {
-
-    private final AssertsEmpty assertion;
-
-    public Emptiness(final AssertsEmpty assertion) {
-        super(assertion.getKey());
-        this.assertion = assertion;
-    }
-
-    @Override
-    protected void doThat(final PerformContext performContext, final Iterable<ObjectAdapter> collection) throws ScenarioBoundValueException {
-
-        boolean empty = true;
-        for (@SuppressWarnings("unused")
-        final ObjectAdapter eachObject : collection) {
-            empty = false;
-        }
-
-        if (!assertion.isSatisfiedBy(empty)) {
-            final CellBinding thatItBinding = performContext.getPeer().getThatItBinding();
-            throw ScenarioBoundValueException.current(thatItBinding, assertion.getErrorMsgIfNotSatisfied());
-        }
-    }
-
-}