You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2018/09/30 04:18:27 UTC
[isis] 06/06: ISIS-1976: remove MutableProposedHolder
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch v2
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 4d98c3d7e0fcb748e38d19d6e0ce2caee96369e9
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sun Sep 30 06:12:24 2018 +0200
ISIS-1976: remove MutableProposedHolder
Task-Url: https://issues.apache.org/jira/browse/ISIS-1976
---
.../metamodel/adapter/MutableProposedHolder.java | 61 ----------------------
.../specimpl/ObjectActionParameterAbstract.java | 26 ++++-----
2 files changed, 14 insertions(+), 73 deletions(-)
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/MutableProposedHolder.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/MutableProposedHolder.java
deleted file mode 100644
index 9aa7b05..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/MutableProposedHolder.java
+++ /dev/null
@@ -1,61 +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.adapter;
-
-import javax.enterprise.inject.Instance;
-
-import org.apache.isis.core.metamodel.interactions.ProposedHolder;
-import org.apache.isis.core.metamodel.spec.Specification;
-
-/**
- * Mix-in for {@link ManagedObject} implementations, where can hold a proposed new
- * value different from the underlying value.
- *
- * <p>
- * TODO: same concept as {@link ProposedHolder}, so should try to combine.
- */
-public interface MutableProposedHolder {
-
- /**
- * The proposed (pending) value, if applicable.
- *
- * <p>
- * See {@link Specification#createInstanceProposalEvent(Instance)} for an
- * indication as to whether the state will be populated, and what its type
- * will be.
- *
- * @return
- */
- Object getProposed();
-
- /**
- * Sets the proposed (pending) value, if applicable.
- *
- * <p>
- * <p>
- * See {@link Specification#createInstanceProposalEvent(Instance)} for an
- * indication as to whether the proposed state should be populated, and what
- * its type will be.
- *
- * @return
- */
- public void setProposed(Object value);
-
-}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java
index 544abf9..481f749 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java
@@ -27,10 +27,10 @@ import org.apache.isis.applib.Identifier;
import org.apache.isis.applib.query.Query;
import org.apache.isis.applib.query.QueryFindAllInstances;
import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
import org.apache.isis.core.commons.lang.ClassExtensions;
import org.apache.isis.core.commons.lang.ListExtensions;
import org.apache.isis.core.commons.lang.StringExtensions;
-import org.apache.isis.core.metamodel.adapter.MutableProposedHolder;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.adapter.ObjectAdapterProvider;
import org.apache.isis.core.metamodel.consent.Allow;
@@ -92,17 +92,19 @@ public abstract class ObjectActionParameterAbstract implements ObjectActionParam
*/
@Override
public ObjectAdapter get(final ObjectAdapter owner, final InteractionInitiatedBy interactionInitiatedBy) {
- final MutableProposedHolder proposedHolder = getProposedHolder(owner);
- final Object proposed = proposedHolder.getProposed();
- return getObjectAdapterProvider().adapterFor(proposed);
- }
-
- protected MutableProposedHolder getProposedHolder(final ObjectAdapter owner) {
- if (!(owner instanceof MutableProposedHolder)) {
- throw new IllegalArgumentException("Instance should implement MutableProposedHolder");
- }
- return (MutableProposedHolder) owner;
- }
+ throw _Exceptions.unexpectedCodeReach();
+ //FIXME[ISIS-1976] marked for removal (must be dead code, since MutableProposedHolder has no implementation)
+// final MutableProposedHolder proposedHolder = getProposedHolder(owner);
+// final Object proposed = proposedHolder.getProposed();
+// return getObjectAdapterProvider().adapterFor(proposed);
+ }
+
+// protected MutableProposedHolder getProposedHolder(final ObjectAdapter owner) {
+// if (!(owner instanceof MutableProposedHolder)) {
+// throw new IllegalArgumentException("Instance should implement MutableProposedHolder");
+// }
+// return (MutableProposedHolder) owner;
+// }
/**
* Parameter number, 0-based.