[jboss-cvs] jboss-seam/src/main/org/jboss/seam/init ...
Gavin King
gavin.king at jboss.com
Thu Jul 27 15:07:08 EDT 2006
User: gavin
Date: 06/07/27 15:07:08
Modified: src/main/org/jboss/seam/init Initialization.java
Log:
cleanup
Revision Changes Path
1.83 +50 -38 jboss-seam/src/main/org/jboss/seam/init/Initialization.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: Initialization.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/init/Initialization.java,v
retrieving revision 1.82
retrieving revision 1.83
diff -u -b -r1.82 -r1.83
--- Initialization.java 25 Jul 2006 04:40:43 -0000 1.82
+++ Initialization.java 27 Jul 2006 19:07:08 -0000 1.83
@@ -94,7 +94,7 @@
/**
* @author Gavin King
* @author <a href="mailto:theute at jboss.org">Thomas Heute</a>
- * @version $Revision: 1.82 $
+ * @version $Revision: 1.83 $
*/
public class Initialization
{
@@ -198,12 +198,16 @@
throw new IllegalArgumentException("must specify either class or name in components.xml");
}
-
List<Element> props = component.elements("property");
for( Element prop: props )
{
- String propName = name + '.' + prop.attributeValue("name");
- properties.put( propName, getPropertyValue(prop, propName, replacements) );
+ String propName = prop.attributeValue("name");
+ if (propName==null)
+ {
+ throw new IllegalArgumentException("no name for property of component: " + name);
+ }
+ String qualifiedPropName = name + '.' + propName;
+ properties.put( qualifiedPropName, getPropertyValue(prop, qualifiedPropName, replacements) );
}
}
@@ -417,14 +421,7 @@
for ( ComponentDescriptor componentDescriptor : componentDescriptors )
{
- if (componentDescriptor.scope==null)
- {
- addComponent( componentDescriptor.name, componentDescriptor.componentClass, context );
- }
- else
- {
- addComponent( componentDescriptor.name, componentDescriptor.scope, componentDescriptor.componentClass, context );
- }
+ addComponent( componentDescriptor, context );
}
if (isScannerEnabled)
@@ -443,7 +440,7 @@
{
Role role = componentClass.getAnnotation(Role.class);
ScopeType scope = Seam.getComponentRoleScope(componentClass, role);
- addComponent( role.name(), scope, componentClass, context );
+ addComponent( new ComponentDescriptor( role.name(), componentClass, scope), context );
}
if ( componentClass.isAnnotationPresent(Roles.class) )
{
@@ -451,36 +448,33 @@
for (Role role: roles)
{
ScopeType scope = Seam.getComponentRoleScope(componentClass, role);
- addComponent( role.name(), scope, componentClass, context );
+ addComponent( new ComponentDescriptor( role.name(), componentClass, scope), context );
}
}
}
- protected void addComponent(String name, ScopeType scope, Class clazz, Context context)
+ protected void addComponent(ComponentDescriptor descriptor, Context context)
{
- checkDuplicates(name, context);
- context.set( name + COMPONENT_SUFFIX, new Component(clazz, name, scope) );
- }
+ String name = descriptor.getName();
+ String componentName = name + COMPONENT_SUFFIX;
- protected void addComponent(String name, Class clazz, Context context)
+ if ( log.isWarnEnabled() && context.isSet(componentName) )
{
- checkDuplicates(name, context);
- context.set( name + COMPONENT_SUFFIX, new Component(clazz, name) );
+ log.warn("Component has been previously installed and is being redefined: " + name);
}
- protected void addComponent(Class clazz, Context context)
- {
- String name = Seam.getComponentName(clazz);
- checkDuplicates(name, context);
- context.set( name + COMPONENT_SUFFIX, new Component(clazz) );
+ Component component = new Component(
+ descriptor.getComponentClass(),
+ name,
+ descriptor.getScope()
+ );
+ context.set(componentName, component);
+
}
- private void checkDuplicates(String componentName, Context context)
- {
- if (log.isWarnEnabled() && (context.get(componentName + COMPONENT_SUFFIX) != null))
+ protected void addComponent(Class clazz, Context context)
{
- log.warn("Component with name " + componentName + " has been previously registered and is being redefined.");
- }
+ addComponent( new ComponentDescriptor(clazz), context );
}
public boolean isScannerEnabled()
@@ -496,15 +490,33 @@
private static class ComponentDescriptor
{
- String name;
- Class componentClass;
- ScopeType scope;
+ private String name;
+ private Class componentClass;
+ private ScopeType scope;
+
public ComponentDescriptor(String name, Class componentClass, ScopeType scope)
{
this.name = name;
this.componentClass = componentClass;
this.scope = scope;
}
+ public ComponentDescriptor(Class componentClass)
+ {
+ this.componentClass = componentClass;
+ }
+
+ public String getName()
+ {
+ return name==null ? Seam.getComponentName(componentClass) : name;
+ }
+ public ScopeType getScope()
+ {
+ return scope==null ? Seam.getComponentScope(componentClass) : scope;
+ }
+ public Class getComponentClass()
+ {
+ return componentClass;
+ }
}
}
More information about the jboss-cvs-commits
mailing list