private Method findChoicesNumMethodReturning(final ProcessMethodContext processMethodContext, final int i, final Class<?> arrayOfParamType) { final Class<?> cls = processMethodContext.getCls(); final Method actionMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName()); final String name = MethodPrefixConstants.CHOICES_PREFIX + i + capitalizedName; return MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, name, arrayOfParamType, new Class[0]); }
private static Method findDefaultsMethodReturning(final ProcessMethodContext processMethodContext, final Class<?> returnType) { final Method actionMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName()); final String name = MethodPrefixConstants.DEFAULT_PREFIX + capitalizedName; final Class<?> cls = processMethodContext.getCls(); return MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, name, returnType, new Class[0]); }
private void attachPropertyModifyFacetIfModifyMethodIsFound(final ProcessMethodContext processMethodContext) { final Method getMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseName(getMethod.getName()); final Class<?> returnType = getMethod.getReturnType(); final Class<?>[] paramTypes = new Class[] { returnType }; final Class<?> cls = processMethodContext.getCls(); final Method modifyMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.MODIFY_PREFIX + capitalizedName, void.class, paramTypes); if (modifyMethod == null) { return; } processMethodContext.removeMethod(modifyMethod); final FacetHolder property = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new PropertySetterFacetViaModifyMethod(modifyMethod, property)); }
private void attachValidateFacetIfValidateMethodIsFound(final ProcessMethodContext processMethodContext) { final Method getMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseName(getMethod.getName()); final Class<?> returnType = getMethod.getReturnType(); final Class<?>[] paramTypes = new Class[] { returnType }; final Class<?> cls = processMethodContext.getCls(); final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.VALIDATE_PREFIX + capitalizedName, String.class, paramTypes); if (method == null) { return; } processMethodContext.removeMethod(method); final FacetHolder property = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new PropertyValidateFacetViaMethod(method, property)); }
private void attachValidatingAdvisorFacetForValidateMethodIfFound(final ProcessMethodContext processMethodContext) { final Class<?> cls = processMethodContext.getCls(); final Method actionMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName()); final Class<?>[] paramTypes = actionMethod.getParameterTypes(); final MethodScope onClass = MethodScope.scopeFor(actionMethod); final Method validateMethod = MethodFinderUtils.findMethod(cls, onClass, MethodPrefixConstants.VALIDATE_PREFIX + capitalizedName, String.class, paramTypes); if (validateMethod == null) { return; } processMethodContext.removeMethod(validateMethod); final FacetHolder facetedMethod = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new ActionValidationFacetViaMethod(validateMethod, facetedMethod)); }
private void attachPropertyDefaultFacetIfDefaultMethodIsFound(final ProcessMethodContext processMethodContext) { final Method getMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseName(getMethod.getName()); final Class<?> cls = processMethodContext.getCls(); final Class<?> returnType = getMethod.getReturnType(); final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.DEFAULT_PREFIX + capitalizedName, returnType, NO_PARAMETERS_TYPES); if (method == null) { return; } processMethodContext.removeMethod(method); final FacetHolder property = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new PropertyDefaultFacetViaMethod(method, property, getSpecificationLookup(), getAdapterMap())); }
private Method attachPropertyClearFacetIfClearMethodIsFound(final ProcessMethodContext processMethodContext) { final Class<?> cls = processMethodContext.getCls(); final Method getMethod = processMethodContext.getMethod(); final FacetHolder property = processMethodContext.getFacetHolder(); final String capitalizedName = NameUtils.javaBaseName(getMethod.getName()); final Method clearMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.CLEAR_PREFIX + capitalizedName, void.class, NO_PARAMETERS_TYPES); if (clearMethod == null) { return null; } processMethodContext.removeMethod(clearMethod); FacetUtil.addFacet(new PropertyClearFacetViaClearMethod(clearMethod, property)); return clearMethod; }
public static void attachNamedFacetIfNamedMethodIsFound(final ProcessMethodContext processMethodContext) { final Method method = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName()); final Class<?> cls = processMethodContext.getCls(); final Method nameMethod = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.NAME_PREFIX + capitalizedName, String.class, new Class[0]); if (nameMethod == null) { return; } processMethodContext.removeMethod(nameMethod); final String name = invokeNameMethod(nameMethod); final FacetHolder facetHolder = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new NamedFacetViaMethod(name, nameMethod, facetHolder)); }
private void attachPropertyChoicesFacetIfChoicesMethodIsFound(final ProcessMethodContext processMethodContext) { final Method getMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseName(getMethod.getName()); final Class<?> cls = processMethodContext.getCls(); final Class<?> returnType = getMethod.getReturnType(); final Method choicesMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.CHOICES_PREFIX + capitalizedName, null, NO_PARAMETERS_TYPES); if (choicesMethod == null) { return; } processMethodContext.removeMethod(choicesMethod); final FacetHolder property = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new PropertyChoicesFacetViaMethod(choicesMethod, returnType, property, getSpecificationLookup(), getAdapterMap())); }
public static void attachDescribedAsFacetIfDescriptionMethodIsFound(final ProcessMethodContext processMethodContext) { final Method method = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName()); final Class<?> cls = processMethodContext.getCls(); final Method descriptionMethod = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.DESCRIPTION_PREFIX + capitalizedName, String.class, new Class[0]); if (descriptionMethod == null) { return; } processMethodContext.removeMethod(descriptionMethod); final String description = invokeDescriptionMethod(descriptionMethod); final FacetHolder facetedMethod = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new DescribedAsFacetViaMethod(description, descriptionMethod, facetedMethod)); }
public static void attachDisableFacetIfDisableMethodForSessionIsFound(final ProcessMethodContext processMethodContext) { final Method method = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName()); final Class<?> cls = processMethodContext.getCls(); final Method disableForSessionMethod = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.DISABLE_PREFIX + capitalizedName, String.class, new Class[] { UserMemento.class }); if (disableForSessionMethod == null) { return; } processMethodContext.removeMethod(disableForSessionMethod); final FacetHolder facetedMethod = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new DisableForSessionFacetViaMethod(disableForSessionMethod, facetedMethod)); }
public static void attachHideFacetIfHideMethodIsFound(final ProcessMethodContext processMethodContext) { final Method getMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(getMethod.getName()); final Class<?> cls = processMethodContext.getCls(); final Method hideMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.HIDE_PREFIX + capitalizedName, boolean.class, new Class[] {}); if (hideMethod == null) { return; } processMethodContext.removeMethod(hideMethod); final FacetHolder facetedMethod = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new HideForContextFacetViaMethod(hideMethod, facetedMethod)); }
private void attachCollectionClearFacets(final ProcessMethodContext processMethodContext) { final Method getMethod = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseName(getMethod.getName()); final Class<?> cls = processMethodContext.getCls(); final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.CLEAR_PREFIX + capitalizedName, void.class, null); processMethodContext.removeMethod(method); final FacetHolder collection = processMethodContext.getFacetHolder(); FacetUtil.addFacet(createCollectionClearFacet(method, getMethod, collection)); }
public static void attachHideFacetIfHideMethodForSessionIsFound(final ProcessMethodContext processMethodContext) { final Method method = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName()); final Class<?> cls = processMethodContext.getCls(); final Method hideForSessionMethod = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.HIDE_PREFIX + capitalizedName, boolean.class, new Class[] { UserMemento.class }); if (hideForSessionMethod == null) { return; } processMethodContext.removeMethod(hideForSessionMethod); final FacetHolder facetedMethod = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new HideForSessionFacetViaMethod(hideForSessionMethod, facetedMethod)); }
protected Method findChoicesMethodReturning(final ProcessMethodContext processMethodContext, final Class<?> returnType2) { Method choicesMethod; final Class<?> cls = processMethodContext.getCls(); final Method actionMethod = processMethodContext.getMethod(); final MethodScope methodScope = MethodScope.scopeFor(actionMethod); final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName()); final String name = MethodPrefixConstants.CHOICES_PREFIX + capitalizedName; choicesMethod = MethodFinderUtils.findMethod(cls, methodScope, name, returnType2, new Class[0]); return choicesMethod; }
public static void attachDisabledFacetIfDisabledMethodIsFound(final ProcessMethodContext processMethodContext) { final Method method = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName()); final Class<?> cls = processMethodContext.getCls(); final Method disableMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.DISABLE_PREFIX + capitalizedName, String.class, new Class[] {}); if (disableMethod == null) { return; } processMethodContext.removeMethod(disableMethod); final FacetHolder facetHolder = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new DisableForContextFacetViaMethod(disableMethod, facetHolder)); }
@Override public void process(final ProcessMethodContext processMethodContext) { final FacetedMethod member = processMethodContext.getFacetHolder(); final Class<?> owningClass = processMethodContext.getCls(); final ObjectSpecification owningSpec = getSpecificationLookup().loadSpecification(owningClass); final DisabledObjectFacet facet = owningSpec.getFacet(DisabledObjectFacet.class); if (facet != null) { facet.copyOnto(member); } }
@Override public void process(final ProcessMethodContext processMethodContext) { final FacetedMethod member = processMethodContext.getFacetHolder(); final Class<?> owningClass = processMethodContext.getCls(); final ObjectSpecification owningSpec = getSpecificationLookup().loadSpecification(owningClass); final HiddenObjectFacet facet = owningSpec.getFacet(HiddenObjectFacet.class); if (facet != null) { facet.copyOnto(member); } }
public static void attachDisabledFacetIfDisabledMethodIsFound(final ProcessMethodContext processMethodContext) { final Method method = processMethodContext.getMethod(); final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName()); final Class<?> cls = processMethodContext.getCls(); final Method disableMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.DISABLE_PREFIX + capitalizedName, String.class, new Class[] {}); if (disableMethod == null) { return; } processMethodContext.removeMethod(disableMethod); final FacetHolder facetHolder = processMethodContext.getFacetHolder(); FacetUtil.addFacet(new DisableForContextFacetViaMethod(disableMethod, facetHolder)); }
@Override public void process(final ProcessMethodContext processMethodContext) { final FacetedMethod member = processMethodContext.getFacetHolder(); final Class<?> owningClass = processMethodContext.getCls(); final ObjectSpecification owningSpec = getSpecificationLookup().loadSpecification(owningClass); final ImmutableFacet facet = owningSpec.getFacet(ImmutableFacet.class); if (facet != null) { facet.copyOnto(member); } }