package org.springframework.roo.addon.web.mvc.controller.scaffold; import org.springframework.roo.classpath.PhysicalTypeMetadata; import org.springframework.roo.classpath.details.ClassOrInterfaceTypeDetails; 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 RooWebScaffold} annotation. * * @author Stefan Schmidt * @author Ben Alex * @since 1.0 */ public class WebScaffoldAnnotationValues extends AbstractAnnotationValues { @AutoPopulate boolean create = true; @AutoPopulate boolean delete = true; @AutoPopulate boolean exposeFinders = true; @AutoPopulate JavaType formBackingObject; @AutoPopulate String path; @AutoPopulate boolean populateMethods = true; @AutoPopulate boolean registerConverters = true; @AutoPopulate boolean update = true; public WebScaffoldAnnotationValues( final ClassOrInterfaceTypeDetails governorPhysicalTypeDetails) { super(governorPhysicalTypeDetails, RooJavaType.ROO_WEB_SCAFFOLD); AutoPopulationUtils.populate(this, annotationMetadata); } /** * Constructor * * @param governorPhysicalTypeMetadata */ public WebScaffoldAnnotationValues( final PhysicalTypeMetadata governorPhysicalTypeMetadata) { super(governorPhysicalTypeMetadata, RooJavaType.ROO_WEB_SCAFFOLD); AutoPopulationUtils.populate(this, annotationMetadata); } public JavaType getFormBackingObject() { return formBackingObject; } public String getPath() { return path; } public boolean isCreate() { return create; } public boolean isDelete() { return delete; } public boolean isExposeFinders() { return exposeFinders; } public boolean isPopulateMethods() { return populateMethods; } public boolean isRegisterConverters() { return registerConverters; } public boolean isUpdate() { return update; } @Override public String toString() { // For debugging return "WebScaffoldAnnotationValues [" + "create=" + create + ", delete=" + delete + ", exposeFinders=" + exposeFinders + ", populateMethods=" + populateMethods + ", registerConverters=" + registerConverters + ", update=" + update + ", formBackingObject=" + formBackingObject + ", path=" + path + "]"; } }