/* 46 */ super(ValueFactory.class);
/* */ }
/* */
/* */ public ValueMetaData createValueMetaData(ValueFactory annotation)
/* */ {
/* 51 */ AbstractValueFactoryMetaData factory = new AbstractValueFactoryMetaData(annotation.bean(), annotation.method());
/* 52 */ if (isAttributePresent(annotation.defaultValue()))
/* 53 */ factory.setDefaultValue(annotation.defaultValue());
/* 54 */ List parameters = new ArrayList();
/* 55 */ if (isAttributePresent(annotation.parameter()))
/* 56 */ parameters.add(new AbstractParameterMetaData(String.class.getName(), annotation.parameter()));
/* 57 */ if (annotation.parameters().length > 0)
/* */ {
/* 59 */ if (parameters.size() > 0)
/* 60 */ throw new IllegalArgumentException("Cannot set both parameter and parameters!");
/* 61 */ for (Parameter parameter : annotation.parameters())
/* */ {
/* 63 */ AbstractParameterMetaData apmd = new AbstractParameterMetaData(ValueUtil.createValueMetaData(parameter));
/* 64 */ if (isAttributePresent(parameter.type()))
/* 65 */ apmd.setType(parameter.type());
/* 66 */ parameters.add(apmd);
/* */ }
/* */ }
/* 69 */ factory.setParameters(parameters);
/* 70 */ factory.setDependentState(new ControllerState(annotation.dependantState()));
/* 71 */ factory.setWhenRequiredState(new ControllerState(annotation.whenRequiredState()));
/* 72 */ return factory;
/* */ }