diff --git a/scaffold/api/pom.xml b/scaffold/api/pom.xml
index 55711895ec..728c1293e4 100644
--- a/scaffold/api/pom.xml
+++ b/scaffold/api/pom.xml
@@ -20,25 +20,5 @@
forge-addon
provided
-
- org.jboss.forge.addon
- projects
- forge-addon
-
-
- org.jboss.forge.addon
- parser-java
- forge-addon
- provided
-
-
- org.jboss.forge.addon
- javaee-api
- provided
-
-
- org.metawidget.modules
- metawidget-all
-
diff --git a/scaffold/pom.xml b/scaffold/pom.xml
index 087d6ded39..55d05d1063 100644
--- a/scaffold/pom.xml
+++ b/scaffold/pom.xml
@@ -38,6 +38,11 @@
scaffold-impl
${project.version}
+
+ org.jboss.forge.addon
+ scaffold-services
+ ${project.version}
+
org.jboss.forge.addon
scaffold-spi
diff --git a/scaffold/spi/pom.xml b/scaffold/spi/pom.xml
index 94b9569a4d..270a1409f8 100644
--- a/scaffold/spi/pom.xml
+++ b/scaffold/spi/pom.xml
@@ -14,16 +14,29 @@
projects
forge-addon
+
+ org.jboss.forge.addon
+ parser-java
+ forge-addon
+
org.jboss.forge.addon
ui
forge-addon
-
+
+
+ org.jboss.forge.addon
+ javaee-api
+
org.jboss.forge.furnace
furnace-api
provided
+
+ org.metawidget.modules
+ metawidget-all
+
diff --git a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/MetawidgetInspectorFacade.java b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/MetawidgetInspectorFacade.java
similarity index 95%
rename from scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/MetawidgetInspectorFacade.java
rename to scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/MetawidgetInspectorFacade.java
index c9674f6d0a..ac71ce4c88 100644
--- a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/MetawidgetInspectorFacade.java
+++ b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/MetawidgetInspectorFacade.java
@@ -10,15 +10,12 @@
import java.util.List;
import java.util.Map;
-import javax.inject.Inject;
-
-import org.jboss.forge.addon.scaffold.spi.ScaffoldProvider;
import org.jboss.forge.addon.projects.Project;
-import org.jboss.forge.parser.java.JavaClass;
import org.jboss.forge.addon.scaffold.metawidget.inspector.ForgeInspector;
import org.jboss.forge.addon.scaffold.metawidget.inspector.ForgeInspectorConfig;
import org.jboss.forge.addon.scaffold.metawidget.inspector.propertystyle.ForgePropertyStyle;
import org.jboss.forge.addon.scaffold.metawidget.inspector.propertystyle.ForgePropertyStyleConfig;
+import org.jboss.forge.parser.java.JavaClass;
import org.metawidget.inspector.beanvalidation.BeanValidationInspector;
import org.metawidget.inspector.composite.CompositeInspector;
import org.metawidget.inspector.composite.CompositeInspectorConfig;
@@ -29,7 +26,7 @@
import org.w3c.dom.Element;
/**
- * A facade for Metawidget inspectors. This class wraps Metawidget API invocations for {@link ScaffoldProvider}
+ * A facade for Metawidget inspectors. This class provides an abstraction over Metawidget API invocations ScaffoldProvider
* instances to invoke.
*
* @author Vineet Reynolds
@@ -41,7 +38,6 @@ public class MetawidgetInspectorFacade
private Project project;
private CompositeInspector compositeInspector;
- @Inject
public MetawidgetInspectorFacade(Project project)
{
this.project = project;
diff --git a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspectionResultConstants.java b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspectionResultConstants.java
similarity index 100%
rename from scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspectionResultConstants.java
rename to scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspectionResultConstants.java
diff --git a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspector.java b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspector.java
similarity index 93%
rename from scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspector.java
rename to scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspector.java
index 7faefe8f5b..f3b9a7a272 100644
--- a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspector.java
+++ b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspector.java
@@ -16,19 +16,21 @@
import javax.persistence.*;
+import org.jboss.forge.addon.parser.java.facets.JavaSourceFacet;
+import org.jboss.forge.addon.parser.java.resources.JavaResource;
+import org.jboss.forge.addon.projects.Project;
+import org.jboss.forge.addon.scaffold.metawidget.inspector.propertystyle.ForgePropertyStyle.ForgeProperty;
import org.jboss.forge.parser.java.EnumConstant;
import org.jboss.forge.parser.java.JavaClass;
import org.jboss.forge.parser.java.JavaEnum;
import org.jboss.forge.parser.java.JavaSource;
-import org.jboss.forge.addon.projects.Project;
-import org.jboss.forge.addon.parser.java.facets.JavaSourceFacet;
-import org.jboss.forge.addon.parser.java.resources.JavaResource;
-import org.jboss.forge.addon.scaffold.metawidget.inspector.propertystyle.ForgePropertyStyle.ForgeProperty;
+import org.metawidget.inspector.InspectionResultConstants;
import org.metawidget.inspector.impl.BaseObjectInspector;
import org.metawidget.inspector.impl.propertystyle.Property;
import org.metawidget.util.CollectionUtils;
import org.w3c.dom.Element;
+
/**
* Inspects Forge-specific metadata.
*
@@ -93,7 +95,7 @@ protected Map inspectProperty(Property property)
if (property.isAnnotationPresent(OneToOne.class))
{
- attributes.put(ONE_TO_ONE, TRUE);
+ attributes.put(ONE_TO_ONE, InspectionResultConstants.TRUE);
attributes.put(JPA_REL_TYPE, JPA_ONE_TO_ONE);
getReversePrimaryKey(property, attributes);
if (property.isAnnotationPresent(OneToOne.class))
@@ -104,7 +106,7 @@ protected Map inspectProperty(Property property)
if(property.isAnnotationPresent(Embedded.class) || isPropertyTypeEmbeddedable(property.getType()))
{
- attributes.put(EMBEDDABLE, TRUE);
+ attributes.put(EMBEDDABLE, InspectionResultConstants.TRUE);
}
// ManyToOne
@@ -112,7 +114,7 @@ protected Map inspectProperty(Property property)
if (property.isAnnotationPresent(ManyToOne.class))
{
attributes.put(JPA_REL_TYPE, JPA_MANY_TO_ONE);
- attributes.put(MANY_TO_ONE, TRUE);
+ attributes.put(MANY_TO_ONE, InspectionResultConstants.TRUE);
getReversePrimaryKey(property, attributes);
getManyToOneBidirectionalProperties(property, attributes);
}
@@ -121,7 +123,7 @@ protected Map inspectProperty(Property property)
if (property.isAnnotationPresent(OneToMany.class) || property.isAnnotationPresent(ManyToMany.class))
{
- attributes.put(N_TO_MANY, TRUE);
+ attributes.put(N_TO_MANY, InspectionResultConstants.TRUE);
getCollectionReversePrimaryKey(property, attributes);
if (property.isAnnotationPresent(OneToMany.class))
{
@@ -150,7 +152,7 @@ protected Map inspectProperty(Property property)
lookup.add(anEnum.getName());
}
- attributes.put(LOOKUP, CollectionUtils.toString(lookup));
+ attributes.put(InspectionResultConstants.LOOKUP, CollectionUtils.toString(lookup));
}
}
@@ -158,11 +160,11 @@ protected Map inspectProperty(Property property)
if (property.isAnnotationPresent(Id.class))
{
- attributes.put(PRIMARY_KEY, TRUE);
+ attributes.put(PRIMARY_KEY, InspectionResultConstants.TRUE);
}
if (property.isAnnotationPresent(GeneratedValue.class))
{
- attributes.put(GENERATED_VALUE, TRUE);
+ attributes.put(GENERATED_VALUE, InspectionResultConstants.TRUE);
}
return attributes;
diff --git a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspectorConfig.java b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspectorConfig.java
similarity index 100%
rename from scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspectorConfig.java
rename to scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/ForgeInspectorConfig.java
diff --git a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyle.java b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyle.java
similarity index 95%
rename from scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyle.java
rename to scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyle.java
index cec7962e9b..3fdf2468eb 100644
--- a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyle.java
+++ b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyle.java
@@ -14,10 +14,10 @@
import java.util.List;
import java.util.Map;
+import org.jboss.forge.addon.parser.java.facets.JavaSourceFacet;
+import org.jboss.forge.addon.projects.Project;
import org.jboss.forge.parser.JavaParser;
import org.jboss.forge.parser.java.*;
-import org.jboss.forge.addon.projects.Project;
-import org.jboss.forge.addon.parser.java.facets.JavaSourceFacet;
import org.metawidget.inspector.iface.InspectorException;
import org.metawidget.inspector.impl.propertystyle.BaseProperty;
import org.metawidget.inspector.impl.propertystyle.BasePropertyStyle;
@@ -29,7 +29,7 @@
/**
* Inspects Forge-specific JavaSource objects for properties.
- *
+ *
* @author Richard Kennard
*/
@@ -62,7 +62,7 @@ public ForgePropertyStyle(final ForgePropertyStyleConfig config)
/**
* Traverses the given Class heirarchy using properties of the given names.
- *
+ *
* @return the declared type (not actual type). May be null
*/
@@ -215,7 +215,7 @@ protected void lookupGetters(final Map properties, final Metho
/**
* Returns whether the given method is a 'getter' method.
- *
+ *
* @param method a parameterless method that returns a non-void
* @return the property name
*/
@@ -330,7 +330,7 @@ protected > void lookupSetters(final Map method)
/**
* Gets the private field representing the given propertyName
within the given class.
- *
+ *
* @return the private Field for this propertyName, or null if no such field (should not throw NoSuchFieldException)
*/
@@ -379,7 +379,7 @@ protected Field> getPrivateField(final FieldHolder> fieldHolder, final Strin
// FORGE-402: support fields starting with capital letter
- if (field == null && !Character.isUpperCase(propertyName.charAt( 0 )))
+ if (field == null && !Character.isUpperCase(propertyName.charAt(0)))
{
field = fieldHolder.getField(StringUtils.capitalize(propertyName));
}
@@ -391,7 +391,7 @@ protected Field> getPrivateField(final FieldHolder> fieldHolder, final Strin
// Private methods
//
- /*package private*/
+ /* package private */
static JavaSource> sourceForName(final Project project, final String type)
{
@@ -508,9 +508,10 @@ public T getAnnotation(final Class annotationClass)
public List> getEnumConstants()
{
- JavaSource> source = sourceForName( this.project, getType() );
+ JavaSource> source = sourceForName(this.project, getType());
- if ( source instanceof JavaEnum ) {
+ if (source instanceof JavaEnum)
+ {
return ((JavaEnum) source).getEnumConstants();
}
diff --git a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyleConfig.java b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyleConfig.java
similarity index 100%
rename from scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyleConfig.java
rename to scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/ForgePropertyStyleConfig.java
diff --git a/scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/util/ScaffoldUtil.java b/scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/util/ScaffoldUtil.java
similarity index 100%
rename from scaffold/api/src/main/java/org/jboss/forge/addon/scaffold/util/ScaffoldUtil.java
rename to scaffold/spi/src/main/java/org/jboss/forge/addon/scaffold/util/ScaffoldUtil.java
diff --git a/scaffold/tests/src/test/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/StubProject.java b/scaffold/tests/src/test/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/StubProject.java
index f08aac2ee8..088d931d41 100644
--- a/scaffold/tests/src/test/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/StubProject.java
+++ b/scaffold/tests/src/test/java/org/jboss/forge/addon/scaffold/metawidget/inspector/propertystyle/StubProject.java
@@ -10,6 +10,7 @@
import org.jboss.forge.addon.projects.Project;
import org.jboss.forge.addon.projects.ProjectFacet;
import org.jboss.forge.addon.resource.DirectoryResource;
+import org.jboss.forge.addon.resource.Resource;
/**
* A stubbed out implementation of a Project
@@ -36,6 +37,11 @@ public DirectoryResource getRootDirectory() {
return null;
}
+ @Override
+ public Resource> getRoot() {
+ return null;
+ }
+
@Override
public boolean hasFacet(Class extends ProjectFacet> type) {
return false;