package org.springframework.roo.addon.web.mvc.controller.json; import static org.springframework.roo.addon.web.mvc.controller.json.RooWebJson.CREATE_FROM_JSON; import static org.springframework.roo.addon.web.mvc.controller.json.RooWebJson.CREATE_FROM_JSON_ARRAY; import static org.springframework.roo.addon.web.mvc.controller.json.RooWebJson.DELETE_FROM_JSON_ARRAY; import static org.springframework.roo.addon.web.mvc.controller.json.RooWebJson.EXPOSE_FINDERS; import static org.springframework.roo.addon.web.mvc.controller.json.RooWebJson.LIST_JSON; import static org.springframework.roo.addon.web.mvc.controller.json.RooWebJson.SHOW_JSON; import static org.springframework.roo.addon.web.mvc.controller.json.RooWebJson.UPDATE_FROM_JSON; import static org.springframework.roo.addon.web.mvc.controller.json.RooWebJson.UPDATE_FROM_JSON_ARRAY; import org.springframework.roo.classpath.PhysicalTypeMetadata; import org.springframework.roo.classpath.details.annotations.populator.AbstractAnnotationValues; import org.springframework.roo.classpath.details.annotations.populator.AutoPopulate; import org.springframework.roo.classpath.details.annotations.populator.AutoPopulationUtils; import org.springframework.roo.model.JavaType; import org.springframework.roo.model.RooJavaType; /** * Represents a parsed {@link RooWebJson} annotation. * * @author Stefan Schmidt * @since 1.2.0 */ public class WebJsonAnnotationValues extends AbstractAnnotationValues { @AutoPopulate String createFromJsonArrayMethod = CREATE_FROM_JSON_ARRAY; @AutoPopulate String createFromJsonMethod = CREATE_FROM_JSON; @AutoPopulate String deleteFromJsonMethod = DELETE_FROM_JSON_ARRAY; @AutoPopulate boolean exposeFinders = EXPOSE_FINDERS; @AutoPopulate JavaType jsonObject; @AutoPopulate String listJsonMethod = LIST_JSON; @AutoPopulate String showJsonMethod = SHOW_JSON; @AutoPopulate String updateFromJsonArrayMethod = UPDATE_FROM_JSON_ARRAY; @AutoPopulate String updateFromJsonMethod = UPDATE_FROM_JSON; /** * Constructor * * @param governorPhysicalTypeMetadata */ public WebJsonAnnotationValues( final PhysicalTypeMetadata governorPhysicalTypeMetadata) { super(governorPhysicalTypeMetadata, RooJavaType.ROO_WEB_JSON); AutoPopulationUtils.populate(this, annotationMetadata); } public String getCreateFromJsonArrayMethod() { return createFromJsonArrayMethod; } public String getCreateFromJsonMethod() { return createFromJsonMethod; } public String getDeleteFromJsonMethod() { return deleteFromJsonMethod; } public JavaType getJsonObject() { return jsonObject; } public String getListJsonMethod() { return listJsonMethod; } public String getShowJsonMethod() { return showJsonMethod; } public String getUpdateFromJsonArrayMethod() { return updateFromJsonArrayMethod; } public String getUpdateFromJsonMethod() { return updateFromJsonMethod; } public boolean isExposeFinders() { return exposeFinders; } }