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 2013/08/01 09:58:49 UTC
[1/4] git commit: ISIS-482: applying patch from Oscar Bou
Updated Branches:
refs/heads/master 4fad9501b -> bdcfc4926
ISIS-482: applying patch from Oscar Bou
Author: o.bou@gesconsultor.com
Signed-off-by: Dan Haywood <da...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/54ad0660
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/54ad0660
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/54ad0660
Branch: refs/heads/master
Commit: 54ad0660f445658c86a428d1a89d09ffe8bd9c25
Parents: 4fad950
Author: Dan Haywood <da...@apache.org>
Authored: Thu Aug 1 08:22:22 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Thu Aug 1 08:22:22 2013 +0100
----------------------------------------------------------------------
.../progmodel/facets/MethodFinderUtils.java | 2 +-
.../method/ActionChoicesFacetFactory.java | 3 ++-
.../ActionParameterChoicesFacetFactory.java | 3 ++-
.../actions/ActionMethodsFacetFactoryTest.java | 25 ++++++++++++++++----
.../dom/src/main/java/dom/todo/ToDoItem.java | 6 ++---
5 files changed, 29 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/54ad0660/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java
index f3dcfcc..f9e7c44 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java
@@ -76,7 +76,7 @@ public final class MethodFinderUtils {
}
// check for return type
- if (returnType != null && returnType != method.getReturnType()) {
+ if (returnType != null && !returnType.isAssignableFrom(method.getReturnType())) {
return null;
}
http://git-wip-us.apache.org/repos/asf/isis/blob/54ad0660/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/method/ActionChoicesFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/method/ActionChoicesFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/method/ActionChoicesFacetFactory.java
index 9ae6c22..6093317 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/method/ActionChoicesFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/method/ActionChoicesFacetFactory.java
@@ -20,6 +20,7 @@
package org.apache.isis.core.progmodel.facets.param.choices.method;
import java.lang.reflect.Method;
+import java.util.Collection;
import java.util.List;
import org.apache.isis.core.commons.lang.NameUtils;
@@ -74,7 +75,7 @@ public class ActionChoicesFacetFactory extends MethodPrefixBasedFacetFactoryAbst
choicesMethod = findChoicesMethodReturning(processMethodContext, Object[].class);
}
if (choicesMethod == null) {
- choicesMethod = findChoicesMethodReturning(processMethodContext, List.class);
+ choicesMethod = findChoicesMethodReturning(processMethodContext, Collection.class);
}
if (choicesMethod == null) {
return;
http://git-wip-us.apache.org/repos/asf/isis/blob/54ad0660/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/methodnum/ActionParameterChoicesFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/methodnum/ActionParameterChoicesFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/methodnum/ActionParameterChoicesFacetFactory.java
index 98f1f34..e7beab4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/methodnum/ActionParameterChoicesFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/param/choices/methodnum/ActionParameterChoicesFacetFactory.java
@@ -21,6 +21,7 @@ package org.apache.isis.core.progmodel.facets.param.choices.methodnum;
import java.lang.reflect.Array;
import java.lang.reflect.Method;
+import java.util.Collection;
import java.util.List;
import org.apache.isis.core.commons.lang.NameUtils;
@@ -81,7 +82,7 @@ public class ActionParameterChoicesFacetFactory extends MethodPrefixBasedFacetFa
Method choicesMethod = findChoicesNumMethodReturning(processMethodContext, i, arrayOfParamType);
if (choicesMethod == null) {
- choicesMethod = findChoicesNumMethodReturning(processMethodContext, i, List.class);
+ choicesMethod = findChoicesNumMethodReturning(processMethodContext, i, Collection.class);
}
if (choicesMethod == null) {
continue;
http://git-wip-us.apache.org/repos/asf/isis/blob/54ad0660/core/metamodel/src/test/java/org/apache/isis/core/progmodel/facets/actions/ActionMethodsFacetFactoryTest.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/progmodel/facets/actions/ActionMethodsFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/core/progmodel/facets/actions/ActionMethodsFacetFactoryTest.java
index e70b1df..6a5f0a6 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/progmodel/facets/actions/ActionMethodsFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/progmodel/facets/actions/ActionMethodsFacetFactoryTest.java
@@ -20,8 +20,10 @@
package org.apache.isis.core.progmodel.facets.actions;
import java.lang.reflect.Method;
+import java.util.Collection;
import java.util.Collections;
import java.util.List;
+import java.util.Set;
import org.apache.isis.applib.annotation.Named;
import org.apache.isis.applib.annotation.When;
@@ -678,11 +680,11 @@ public class ActionMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
class Customer {
@SuppressWarnings("unused")
- public void someAction(final int x, final long y) {
+ public void someAction(final int x, final long y, final long z) {
}
@SuppressWarnings("unused")
- public List<Integer> choices0SomeAction() {
+ public Collection<Integer> choices0SomeAction() {
return Collections.emptyList();
}
@@ -690,12 +692,18 @@ public class ActionMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
public List<Long> choices1SomeAction() {
return Collections.emptyList();
}
+
+ @SuppressWarnings("unused")
+ public Set<Long> choices2SomeAction() {
+ return Collections.emptySet();
+ }
}
- final Method actionMethod = findMethod(Customer.class, "someAction", new Class[] { int.class, long.class });
+ final Method actionMethod = findMethod(Customer.class, "someAction", new Class[] { int.class, long.class, long.class });
final Method choices0Method = findMethod(Customer.class, "choices0SomeAction", new Class[] {});
final Method choices1Method = findMethod(Customer.class, "choices1SomeAction", new Class[] {});
-
+ final Method choices2Method = findMethod(Customer.class, "choices2SomeAction", new Class[] {});
+
final FacetedMethod facetHolderWithParms = FacetedMethod.createForAction(Customer.class, actionMethod);
facetFactory.process(new ProcessMethodContext(Customer.class, null, null, actionMethod, methodRemover, facetHolderWithParms));
@@ -716,6 +724,15 @@ public class ActionMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(choices1Method));
+ final Facet facet2 = facetHolderWithParms.getParameters().get(2).getFacet(ActionParameterChoicesFacet.class);
+ assertNotNull(facet2);
+ assertTrue(facet2 instanceof ActionParameterChoicesFacetViaMethod);
+ final ActionParameterChoicesFacetViaMethod actionChoicesFacetViaMethod2 = (ActionParameterChoicesFacetViaMethod) facet2;
+ assertEquals(choices2Method, actionChoicesFacetViaMethod2.getMethods().get(0));
+
+ assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(choices2Method));
+
+
}
http://git-wip-us.apache.org/repos/asf/isis/blob/54ad0660/example/application/quickstart_wicket_restful_jdo/dom/src/main/java/dom/todo/ToDoItem.java
----------------------------------------------------------------------
diff --git a/example/application/quickstart_wicket_restful_jdo/dom/src/main/java/dom/todo/ToDoItem.java b/example/application/quickstart_wicket_restful_jdo/dom/src/main/java/dom/todo/ToDoItem.java
index 365caf3..b15d476 100644
--- a/example/application/quickstart_wicket_restful_jdo/dom/src/main/java/dom/todo/ToDoItem.java
+++ b/example/application/quickstart_wicket_restful_jdo/dom/src/main/java/dom/todo/ToDoItem.java
@@ -19,6 +19,7 @@
package dom.todo;
import java.math.BigDecimal;
+import java.util.Collection;
import java.util.Comparator;
import java.util.List;
import java.util.SortedSet;
@@ -35,7 +36,6 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Ordering;
import org.joda.time.LocalDate;
-
import org.apache.isis.applib.DomainObjectContainer;
import org.apache.isis.applib.annotation.Audited;
import org.apache.isis.applib.annotation.AutoComplete;
@@ -418,8 +418,8 @@ public class ToDoItem implements Comparable<ToDoItem> /*, Locatable*/ { // GMAP3
return null;
}
// provide a drop-down
- public List<ToDoItem> choices0Remove() {
- return Lists.newArrayList(getDependencies());
+ public Collection<ToDoItem> choices0Remove() {
+ return getDependencies();
}
[4/4] git commit: ISIS-485: fixes to integtest support tests
Posted by da...@apache.org.
ISIS-485: fixes to integtest support tests
... were too brittle.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/bdcfc492
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/bdcfc492
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/bdcfc492
Branch: refs/heads/master
Commit: bdcfc4926fbac2080a837cd28d0049db9c36cc49
Parents: 5e57d82
Author: Dan Haywood <da...@apache.org>
Authored: Thu Aug 1 08:58:14 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Thu Aug 1 08:58:14 2013 +0100
----------------------------------------------------------------------
.../integtestsupport/legacy/MemberDisabledTest.java | 15 ++++++++-------
.../integtestsupport/legacy/MemberInvalidTest.java | 11 ++++++-----
.../integtestsupport/legacy/SaveObjectsTest.java | 3 ++-
.../isis/example/claims/junit/ClaimSubmitTest.java | 3 ++-
4 files changed, 18 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/bdcfc492/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberDisabledTest.java
----------------------------------------------------------------------
diff --git a/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberDisabledTest.java b/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberDisabledTest.java
index 5ce3f2d..df4f7b6 100644
--- a/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberDisabledTest.java
+++ b/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberDisabledTest.java
@@ -26,6 +26,7 @@ import static org.junit.Assert.fail;
import java.util.List;
+import org.hamcrest.Matchers;
import org.junit.Test;
import org.apache.isis.applib.services.wrapper.DisabledException;
@@ -44,7 +45,7 @@ public class MemberDisabledTest extends AbstractTest {
} catch (final DisabledException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(DisableForContextFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("First Name"));
- assertThat(ex.getMessage(), equalTo("cannot alter"));
+ assertThat(ex.getMessage(), Matchers.containsString("cannot alter"));
}
}
@@ -57,7 +58,7 @@ public class MemberDisabledTest extends AbstractTest {
} catch (final DisabledException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(DisableForContextFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("First Name"));
- assertThat(ex.getMessage(), equalTo("cannot alter"));
+ assertThat(ex.getMessage(), Matchers.containsString("cannot alter"));
}
}
@@ -70,7 +71,7 @@ public class MemberDisabledTest extends AbstractTest {
} catch (final DisabledException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(DisableForContextFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("Country Of Birth"));
- assertThat(ex.getMessage(), equalTo("cannot alter"));
+ assertThat(ex.getMessage(), Matchers.containsString("cannot alter"));
}
}
@@ -83,7 +84,7 @@ public class MemberDisabledTest extends AbstractTest {
} catch (final DisabledException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(DisableForContextFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("Country Of Birth"));
- assertThat(ex.getMessage(), equalTo("cannot alter"));
+ assertThat(ex.getMessage(), Matchers.containsString("cannot alter"));
}
}
@@ -97,7 +98,7 @@ public class MemberDisabledTest extends AbstractTest {
} catch (final DisabledException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(DisabledFacetAnnotation.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("More Orders"));
- assertThat(ex.getMessage(), equalTo("Always disabled"));
+ assertThat(ex.getMessage(), Matchers.containsString("Always disabled"));
}
}
@@ -111,7 +112,7 @@ public class MemberDisabledTest extends AbstractTest {
} catch (final DisabledException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(DisableForContextFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("Visited Countries"));
- assertThat(ex.getMessage(), equalTo("cannot alter"));
+ assertThat(ex.getMessage(), Matchers.containsString("cannot alter"));
}
}
@@ -124,7 +125,7 @@ public class MemberDisabledTest extends AbstractTest {
} catch (final DisabledException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(DisableForContextFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("Place Order"));
- assertThat(ex.getMessage(), equalTo("cannot invoke"));
+ assertThat(ex.getMessage(), Matchers.containsString("cannot invoke"));
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/bdcfc492/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberInvalidTest.java
----------------------------------------------------------------------
diff --git a/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberInvalidTest.java b/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberInvalidTest.java
index 8551a1f..aa1401c 100644
--- a/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberInvalidTest.java
+++ b/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/MemberInvalidTest.java
@@ -24,6 +24,7 @@ import static org.hamcrest.CoreMatchers.equalTo;
import static org.junit.Assert.assertThat;
import static org.junit.Assert.fail;
+import org.hamcrest.Matchers;
import org.junit.Test;
import org.apache.isis.applib.services.wrapper.InvalidException;
@@ -50,7 +51,7 @@ public class MemberInvalidTest extends AbstractTest {
} catch (final InvalidException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(PropertyValidateFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("First Name"));
- assertThat(ex.getMessage(), equalTo("bad first name"));
+ assertThat(ex.getMessage(), Matchers.containsString("bad first name"));
}
}
}
@@ -66,7 +67,7 @@ public class MemberInvalidTest extends AbstractTest {
} catch (final InvalidException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(PropertyValidateFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("Country Of Birth"));
- assertThat(ex.getMessage(), equalTo("bad country of birth"));
+ assertThat(ex.getMessage(), Matchers.containsString("bad country of birth"));
}
}
}
@@ -80,7 +81,7 @@ public class MemberInvalidTest extends AbstractTest {
} catch (final InvalidException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(CollectionValidateAddToFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("Visited Countries"));
- assertThat(ex.getMessage(), equalTo("bad country"));
+ assertThat(ex.getMessage(), Matchers.containsString("bad country"));
}
}
@@ -94,7 +95,7 @@ public class MemberInvalidTest extends AbstractTest {
} catch (final InvalidException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(CollectionValidateRemoveFromFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("Visited Countries"));
- assertThat(ex.getMessage(), equalTo("bad country"));
+ assertThat(ex.getMessage(), Matchers.containsString("bad country"));
}
}
@@ -107,7 +108,7 @@ public class MemberInvalidTest extends AbstractTest {
} catch (final InvalidException ex) {
assertThat(ex.getAdvisorClass(), classEqualTo(ActionValidationFacetViaMethod.class));
assertThat(ex.getIdentifier().getMemberNaturalName(), equalTo("Place Order"));
- assertThat(ex.getMessage(), equalTo("can't place order"));
+ assertThat(ex.getMessage(), Matchers.containsString("can't place order"));
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/bdcfc492/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/SaveObjectsTest.java
----------------------------------------------------------------------
diff --git a/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/SaveObjectsTest.java b/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/SaveObjectsTest.java
index 066cfaa..c4d0e33 100644
--- a/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/SaveObjectsTest.java
+++ b/core/integtestsupport/src/test/java/org/apache/isis/core/integtestsupport/legacy/SaveObjectsTest.java
@@ -25,6 +25,7 @@ import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
import static org.junit.Assert.fail;
+import org.hamcrest.Matchers;
import org.junit.Test;
import org.apache.isis.applib.services.wrapper.InvalidException;
@@ -100,7 +101,7 @@ public class SaveObjectsTest extends AbstractTest {
assertThat(ex.getAdvisorClass(), classEqualTo(ValidateObjectFacetViaValidateMethod.class));
assertThat(getDomainObjectContainer().isPersistent(newCustomer), is(false)); // not
// saved
- assertThat(ex.getMessage(), equalTo("No shakes"));
+ assertThat(ex.getMessage(), Matchers.containsString("No shakes"));
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/bdcfc492/example/application/claims/viewer-dnd/src/test/java/org/apache/isis/example/claims/junit/ClaimSubmitTest.java
----------------------------------------------------------------------
diff --git a/example/application/claims/viewer-dnd/src/test/java/org/apache/isis/example/claims/junit/ClaimSubmitTest.java b/example/application/claims/viewer-dnd/src/test/java/org/apache/isis/example/claims/junit/ClaimSubmitTest.java
index b72af1c..a9e0c63 100644
--- a/example/application/claims/viewer-dnd/src/test/java/org/apache/isis/example/claims/junit/ClaimSubmitTest.java
+++ b/example/application/claims/viewer-dnd/src/test/java/org/apache/isis/example/claims/junit/ClaimSubmitTest.java
@@ -25,6 +25,7 @@ import static org.junit.Assert.fail;
import java.util.List;
+import org.hamcrest.Matchers;
import org.junit.Test;
import org.apache.isis.applib.services.wrapper.DisabledException;
@@ -45,7 +46,7 @@ public class ClaimSubmitTest extends AbstractTest {
tomsSubmittedClaim.submit(approver);
fail("Should not be able to submit again");
} catch (final DisabledException e) {
- assertThat(e.getMessage(), is("Claim has already been submitted"));
+ assertThat(e.getMessage(), Matchers.containsString("Claim has already been submitted"));
}
}
[3/4] git commit: ISIS-485: applying patch from Oscar Bou
Posted by da...@apache.org.
ISIS-485: applying patch from Oscar Bou
Author: o.bou@gesconsultor.com
Signed-off-by: Dan Haywood <da...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/5e57d824
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/5e57d824
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/5e57d824
Branch: refs/heads/master
Commit: 5e57d824ba80ab20226c3593390d7c6f2e5adc6d
Parents: 6126bb1
Author: Dan Haywood <da...@apache.org>
Authored: Thu Aug 1 08:28:26 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Thu Aug 1 08:28:26 2013 +0100
----------------------------------------------------------------------
.../isis/applib/events/ActionArgumentEvent.java | 7 ++++++-
.../isis/applib/events/InteractionEvent.java | 17 +++++++++++++++++
.../apache/isis/applib/events/ValidityEvent.java | 5 +++++
.../services/wrapper/InteractionException.java | 2 +-
4 files changed, 29 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/5e57d824/core/applib/src/main/java/org/apache/isis/applib/events/ActionArgumentEvent.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/events/ActionArgumentEvent.java b/core/applib/src/main/java/org/apache/isis/applib/events/ActionArgumentEvent.java
index ac161e0..e59ce18 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/events/ActionArgumentEvent.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/events/ActionArgumentEvent.java
@@ -64,5 +64,10 @@ public class ActionArgumentEvent extends ValidityEvent {
public Object getProposed() {
return proposed;
}
-
+
+ @Override
+ public String getReasonMessage() {
+ return String.format("%s. Position: %s. Proposed: %s", super.getReasonMessage(), this.getPosition(), this.getProposed());
+ }
+
}
http://git-wip-us.apache.org/repos/asf/isis/blob/5e57d824/core/applib/src/main/java/org/apache/isis/applib/events/InteractionEvent.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/events/InteractionEvent.java b/core/applib/src/main/java/org/apache/isis/applib/events/InteractionEvent.java
index 65e44f6..dba1bb8 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/events/InteractionEvent.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/events/InteractionEvent.java
@@ -131,6 +131,23 @@ public abstract class InteractionEvent extends EventObject {
public String getReason() {
return reason;
}
+
+ /**
+ * The reason message, if any, that this interaction may have been vetoed or
+ * otherwise disallowed.
+ *
+ * <p>
+ * This message should be overridden by subclasses for containing the Reason, the Identifier and any other relevant context information.
+ *
+ * @return
+ */
+ public String getReasonMessage() {
+ if (this.getIdentifier() != null) {
+ return String.format("Reason: %s. Identifier: %s", this.getReason(), this.getIdentifier());
+ } else {
+ return String.format("Reason: %s", this.getReason());
+ }
+ }
/**
* The class of the (first) advisor, if any, that provided the
http://git-wip-us.apache.org/repos/asf/isis/blob/5e57d824/core/applib/src/main/java/org/apache/isis/applib/events/ValidityEvent.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/events/ValidityEvent.java b/core/applib/src/main/java/org/apache/isis/applib/events/ValidityEvent.java
index 5680db7..d452400 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/events/ValidityEvent.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/events/ValidityEvent.java
@@ -54,4 +54,9 @@ public abstract class ValidityEvent extends InteractionEvent implements Proposed
public Object getSource() {
return super.getSource();
}
+
+ @Override
+ public String getReasonMessage() {
+ return String.format("Source: %s. %s", this.getSource(), super.getReasonMessage());
+ }
}
http://git-wip-us.apache.org/repos/asf/isis/blob/5e57d824/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/InteractionException.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/InteractionException.java b/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/InteractionException.java
index f734b3f..cb8b643 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/InteractionException.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/wrapper/InteractionException.java
@@ -30,7 +30,7 @@ public abstract class InteractionException extends ApplicationException {
private final InteractionEvent interactionEvent;
public InteractionException(final InteractionEvent interactionEvent) {
- super(interactionEvent.getReason());
+ super(interactionEvent.getReasonMessage());
this.interactionEvent = interactionEvent;
}
[2/4] git commit: ISIS-482: tidy-up
Posted by da...@apache.org.
ISIS-482: tidy-up
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/6126bb1d
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/6126bb1d
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/6126bb1d
Branch: refs/heads/master
Commit: 6126bb1da51bfa78fb788da4c10a8555dab3b46b
Parents: 54ad066
Author: Dan Haywood <da...@apache.org>
Authored: Thu Aug 1 08:24:50 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Thu Aug 1 08:24:50 2013 +0100
----------------------------------------------------------------------
.../progmodel/facets/MethodFinderUtils.java | 26 +++++++++++---------
1 file changed, 15 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/6126bb1d/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java
index f9e7c44..eda99e4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/MethodFinderUtils.java
@@ -40,15 +40,23 @@ public final class MethodFinderUtils {
/**
* Returns a specific public methods that: have the specified prefix; have
- * the specified return type, or void, if canBeVoid is true; and has the
- * specified number of parameters. If the returnType is specified as null
- * then the return type is ignored.
+ * the specified return type (or some subtype), and has the
+ * specified number of parameters.
*
- * @param paramTypes
- * the set of parameters the method should have, if null then is
- * ignored
+ * <p>
+ * If the returnType is specified as null then the return type is ignored.
+ * If void.class is passed in, then searches for void methods.
+ *
+ * <p>
+ * If the parameter type array is null, is also not checked.
*/
- public static Method findMethod(final Class<?> type, final MethodScope methodScope, final String name, final Class<?> returnType, final Class<?>[] paramTypes) {
+ public static Method findMethod(
+ final Class<?> type,
+ final MethodScope methodScope,
+ final String name,
+ final Class<?> returnType,
+ final Class<?>[] paramTypes) {
+
Method method;
try {
method = type.getMethod(name, paramTypes);
@@ -60,7 +68,6 @@ public final class MethodFinderUtils {
final int modifiers = method.getModifiers();
- // check for public modifier
if (!Modifier.isPublic(modifiers)) {
return null;
}
@@ -70,17 +77,14 @@ public final class MethodFinderUtils {
return null;
}
- // check for name
if (!method.getName().equals(name)) {
return null;
}
- // check for return type
if (returnType != null && !returnType.isAssignableFrom(method.getReturnType())) {
return null;
}
- // check params (if required)
if (paramTypes != null) {
final Class<?>[] parameterTypes = method.getParameterTypes();
if (paramTypes.length != parameterTypes.length) {