private ObjectAdapter contributingServiceAdapter() { final ObjectSpecification serviceType = objectMember.getOnType(); final List<ObjectAdapter> serviceAdapters = getServiceAdapters(); for (final ObjectAdapter serviceAdapter : serviceAdapters) { if (serviceAdapter.getSpecification() == serviceType) { return serviceAdapter; } } // fail fast throw new IllegalStateException("Unable to locate contributing service"); }
private ObjectAdapter contributingServiceAdapter() { final ObjectSpecification serviceType = objectMember.getOnType(); final List<ObjectAdapter> serviceAdapters = getServiceAdapters(); for (final ObjectAdapter serviceAdapter : serviceAdapters) { if (serviceAdapter.getSpecification() == serviceType) { return serviceAdapter; } } // fail fast throw new IllegalStateException("Unable to locate contributing service"); }
private ObjectAdapter contributingServiceAdapter() { final ObjectSpecification serviceType = objectMember.getOnType(); final List<ObjectAdapter> serviceAdapters = getServiceAdapters(); for (final ObjectAdapter serviceAdapter : serviceAdapters) { if (serviceAdapter.getSpecification() == serviceType) { return serviceAdapter; } } // fail fast throw new IllegalStateException("Unable to locate contributing service"); }
private static String actionOwningTypeFrom(final ObjectAndActionInvocation objectAndActionInvocation) { return objectAndActionInvocation.getAction().getOnType().getSpecId().asString(); }
public ActionMemento(final ObjectAction action) { this(new SpecMemento(action.getOnType()), action.getType(), action.getIdentifier().toNameParmsIdentityString()); this.action = action; }
public ActionMemento( final ObjectSpecId owningType, final ActionType actionType, final String nameParmsId, final SpecificationLoader specificationLoader) { this(owningType, actionType, nameParmsId, actionFor(owningType, actionType, nameParmsId, specificationLoader)); }
public ActionMemento( final ObjectSpecId owningType, final ActionType actionType, final String nameParmsId, final SpecificationLoader specificationLoader) { this(owningType, actionType, nameParmsId, actionFor(owningType, actionType, nameParmsId, specificationLoader)); }
@Override public String getCssClass(final ScalarModel scalarModel) { final ObjectAdapterMemento adapterMemento = scalarModel.getObjectAdapterMemento(); if (adapterMemento == null) { // shouldn't happen return null; } final ObjectActionParameter actionParameter = scalarModel.getParameterMemento() .getActionParameter(scalarModel.getSpecificationLoader()); final ObjectAction action = actionParameter.getAction(); final String objectSpecId = action.getOnType().getSpecId().asString().replace(".", "-"); final String parmId = actionParameter.getId(); return "isis-" + objectSpecId + "-" + action.getId() + "-" + parmId; }
@Override public PromptStyle getPromptStyle() { final ObjectAction objectAction = getAction(); final ObjectSpecification objectActionOwner = objectAction.getOnType(); if(objectActionOwner.isService()) { // tried to move this test into PromptStyleFacetFallback, // however it's not that easy to lookup the owning type return PromptStyle.DIALOG; } if(objectAction.getParameterCount() == 0) { // a bit of a hack, the point being that the UI for dialog correctly handles no-args, // whereas for INLINE it would render a form with no fields return PromptStyle.DIALOG; } final PromptStyleFacet facet = getFacet(PromptStyleFacet.class); if(facet == null) { // don't think this can happen actually, see PromptStyleFacetFallback return PromptStyle.INLINE; } final PromptStyle promptStyle = facet.value(); if (promptStyle == PromptStyle.AS_CONFIGURED) { // I don't think this can happen, actually... // when the metamodel is built, it should replace AS_CONFIGURED with one of the other prompts // (see PromptStyleConfiguration and PromptStyleFacetFallback) return PromptStyle.INLINE; } return promptStyle; }
public void getOnType(final ObjectAction mockAction, final ObjectSpecification returns) { context.checking(new Expectations() { { allowing(mockAction).getOnType(); will(returnValue(returns)); } }); }
@Override public void addActionArgs( final ObjectAction objectAction, final ActionDto actionDto, final ObjectAdapter[] argAdapters) { final String actionId = CommandUtil.memberIdentifierFor(objectAction); final ObjectSpecification onType = objectAction.getOnType(); final String objectType = onType.getSpecId().asString(); final String localId = objectAction.getIdentifier().toNameIdentityString(); actionDto.setLogicalMemberIdentifier(objectType + "#" + localId); actionDto.setMemberIdentifier(actionId); List<ObjectActionParameter> actionParameters = objectAction.getParameters(); for (int paramNum = 0; paramNum < actionParameters.size(); paramNum++) { final ObjectActionParameter actionParameter = actionParameters.get(paramNum); final String parameterName = actionParameter.getName(); final Class<?> paramType = actionParameter.getSpecification().getCorrespondingClass(); final ObjectAdapter argAdapter = argAdapters[paramNum]; final Object arg = argAdapter != null? argAdapter.getObject(): null; final ParamsDto parameters = CommandDtoUtils.parametersFor(actionDto); final List<ParamDto> parameterList = parameters.getParameter(); ParamDto paramDto = CommonDtoUtils.newParamDto( parameterName, paramType, arg, bookmarkService); parameterList.add(paramDto); } }
debugBuilder.appendln("On type", objectAction.getOnType());
/** * Factory method for creating {@link PageParameters}. * * see {@link #ActionModel(PageParameters, SpecificationLoader)} */ public static PageParameters createPageParameters( final ObjectAdapter adapter, final ObjectAction objectAction, final ConcurrencyChecking concurrencyChecking) { final PageParameters pageParameters = PageParametersUtils.newPageParameters(); final String oidStr = concurrencyChecking == ConcurrencyChecking.CHECK? adapter.getOid().enString(): adapter.getOid().enStringNoVersion(); PageParameterNames.OBJECT_OID.addStringTo(pageParameters, oidStr); final ActionType actionType = objectAction.getType(); PageParameterNames.ACTION_TYPE.addEnumTo(pageParameters, actionType); final ObjectSpecification actionOnTypeSpec = objectAction.getOnType(); if (actionOnTypeSpec != null) { PageParameterNames.ACTION_OWNING_SPEC.addStringTo(pageParameters, actionOnTypeSpec.getFullIdentifier()); } final String actionId = determineActionId(objectAction); PageParameterNames.ACTION_ID.addStringTo(pageParameters, actionId); return pageParameters; }
/** * Factory method for creating {@link PageParameters}. * * see {@link #ActionModel(PageParameters, SpecificationLoader)} */ public static PageParameters createPageParameters( final ObjectAdapter adapter, final ObjectAction objectAction, final ConcurrencyChecking concurrencyChecking) { final PageParameters pageParameters = PageParametersUtils.newPageParameters(); final String oidStr = concurrencyChecking == ConcurrencyChecking.CHECK? adapter.getOid().enString(): adapter.getOid().enStringNoVersion(); PageParameterNames.OBJECT_OID.addStringTo(pageParameters, oidStr); final ActionType actionType = objectAction.getType(); PageParameterNames.ACTION_TYPE.addEnumTo(pageParameters, actionType); final ObjectSpecification actionOnTypeSpec = objectAction.getOnType(); if (actionOnTypeSpec != null) { PageParameterNames.ACTION_OWNING_SPEC.addStringTo(pageParameters, actionOnTypeSpec.getFullIdentifier()); } final String actionId = determineActionId(objectAction); PageParameterNames.ACTION_ID.addStringTo(pageParameters, actionId); return pageParameters; }
view.appendln("On type", specificationLink(action.getOnType()));
/** * Factory method for creating {@link PageParameters}. * * see {@link #ActionModel(PageParameters)} */ public static PageParameters createPageParameters(final ObjectAdapter adapter, final ObjectAction noAction, final OidStringifier oidStringifier, final ObjectAdapter contextAdapter, final SingleResultsMode singleResultsMode) { final PageParameters pageParameters = EntityModel.createPageParameters(adapter, oidStringifier); final String actionType = noAction.getType().name(); final String actionNameParmsId = determineActionId(noAction); final Mode actionMode = determineActionMode(noAction, contextAdapter); PageParameterNames.ACTION_TYPE.addTo(pageParameters, actionType); final ObjectSpecification actionOnTypeSpec = noAction.getOnType(); if (actionOnTypeSpec != null) { PageParameterNames.ACTION_OWNING_SPEC.addTo(pageParameters, actionOnTypeSpec.getFullIdentifier()); } PageParameterNames.ACTION_NAME_PARMS.addTo(pageParameters, actionNameParmsId); PageParameterNames.ACTION_MODE.addTo(pageParameters, actionMode.name()); PageParameterNames.ACTION_SINGLE_RESULTS_MODE.addTo(pageParameters, singleResultsMode.name()); addActionParamContextIfPossible(noAction, oidStringifier, contextAdapter, pageParameters); return pageParameters; }