public static Consent canRunMethod(final ObjectAdapter target, final ObjectAction action, final ObjectAdapter[] parameters) { final Consent consent = action.isProposedArgumentSetValid(target, parameters == null ? new ObjectAdapter[0] : parameters); return consent; }
private void checkValidity(final ObjectAdapter targetAdapter, final ObjectAction objectAction, final ObjectAdapter[] argAdapters) { final InteractionResult interactionResult = objectAction.isProposedArgumentSetValid(targetAdapter, argAdapters, getInteractionInitiatedBy()).getInteractionResult(); notifyListenersAndVetoIfRequired(interactionResult); }
final Consent consent = action.isProposedArgumentSetValid(objectAdapter, argArray); if (consent.isVetoed()) { arguments.mapPut("x-ro-invalidReason", consent.getReason());
public String getReasonInvalidIfAny() { final ObjectAdapter targetAdapter = getTargetAdapter(); final ObjectAdapter[] proposedArguments = getArgumentsAsArray(); final ObjectAction objectAction = getAction(); final Consent validity = objectAction.isProposedArgumentSetValid(targetAdapter, proposedArguments, InteractionInitiatedBy.USER); return validity.isAllowed() ? null : validity.getReason(); }
public String getReasonInvalidIfAny() { final ObjectAdapter targetAdapter = getTargetAdapter(); final ObjectAdapter[] proposedArguments = getArgumentsAsArray(); final ObjectAction objectAction = getActionMemento().getAction(); final Consent validity = objectAction.isProposedArgumentSetValid(targetAdapter, proposedArguments); return validity.isAllowed() ? null : validity.getReason(); }
public String getReasonInvalidIfAny() { final ObjectAdapter targetAdapter = getTargetAdapter(); final ObjectAdapter[] proposedArguments = getArgumentsAsArray(); final ObjectAction objectAction = getActionMemento().getAction(getSpecificationLoader()); final Consent validity = objectAction.isProposedArgumentSetValid(targetAdapter, proposedArguments, InteractionInitiatedBy.USER); return validity.isAllowed() ? null : validity.getReason(); }
final Consent consent = action.isProposedArgumentSetValid(objectAdapter, argArray); if (consent.isVetoed()) { throw RestfulObjectsApplicationException.create(HttpStatusCode.NOT_ACCEPTABLE, consent.getReason());
final Consent consent = action.isProposedArgumentSetValid(object, parameters); if (consent != null && consent.isVetoed()) { formState.setError(consent.getReason());
@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; }
@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; }
@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. }
final Consent valid = action.isProposedArgumentSetValid(object, objectParameters); final String notValid = valid.getReason(); if (notValid != null) {