bloritsch 2003/06/17 13:50:26
Modified: fortress/container/src/api/org/apache/avalon/fortress
MetaInfoEntry.java
fortress/container/src/impl/org/apache/avalon/fortress/util
Service.java
fortress/container/src/test/org/apache/avalon/fortress/test
MetaInfoEntryTestCase.java
fortress/tools/src/java/org/apache/avalon/fortress/tools
Component.java
Log:
minor refactoring to assist in utils package
Revision Changes Path
1.6 +4 -39
avalon/fortress/container/src/api/org/apache/avalon/fortress/MetaInfoEntry.java
Index: MetaInfoEntry.java
===================================================================
RCS file:
/home/cvs/avalon/fortress/container/src/api/org/apache/avalon/fortress/MetaInfoEntry.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- MetaInfoEntry.java 27 May 2003 15:38:31 -0000 1.5
+++ MetaInfoEntry.java 17 Jun 2003 20:50:26 -0000 1.6
@@ -49,6 +49,8 @@
*/
package org.apache.avalon.fortress;
+import org.apache.avalon.fortress.util.Service;
+
import java.util.*;
/**
@@ -109,7 +111,7 @@
if ( null == deps ) throw new NullPointerException( "\"deps\" cannot be
null." );
m_klass = componentClass;
- m_configName = properties.getProperty( "x-avalon.name", createShortName(
componentClass.getName() ) );
+ m_configName = properties.getProperty( "x-avalon.name",
Service.createShortName( componentClass.getName() ) );
m_handler = Thread.currentThread().getContextClassLoader().loadClass(
getHandler( properties ) );
m_roles = new HashSet();
m_dependencies = deps;
@@ -248,41 +250,4 @@
return handler;
}
- /**
- * Convert a Component implmentation classname into a shorthand
- * name. It assumes all classnames for a particular component is
- * unique.
- *
- * @param className The classname of a component
- * @return String the short name
- */
- public static final String createShortName( final String className )
- {
- final StringBuffer shortName = new StringBuffer();
-
- final char[] name = className.substring(
- className.lastIndexOf( '.' ) + 1 ).toCharArray();
- char last = '\0';
-
- for (int i = 0; i < name.length; i++)
- {
- if (Character.isUpperCase(name[i]))
- {
- if ( Character.isLowerCase( last ) )
- {
- shortName.append('-');
- }
-
- shortName.append(Character.toLowerCase(name[i]));
- }
- else
- {
- shortName.append(name[i]);
- }
-
- last = name[i];
- }
-
- return shortName.toString().toLowerCase();
- }
}
1.7 +38 -0
avalon/fortress/container/src/impl/org/apache/avalon/fortress/util/Service.java
Index: Service.java
===================================================================
RCS file:
/home/cvs/avalon/fortress/container/src/impl/org/apache/avalon/fortress/util/Service.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- Service.java 14 May 2003 15:54:46 -0000 1.6
+++ Service.java 17 Jun 2003 20:50:26 -0000 1.7
@@ -168,4 +168,42 @@
return providerSet.iterator();
}
+
+ /**
+ * Convert a Component implmentation classname into a shorthand
+ * name. It assumes all classnames for a particular component is
+ * unique.
+ *
+ * @param className The classname of a component
+ * @return String the short name
+ */
+ public static final String createShortName( final String className )
+ {
+ final StringBuffer shortName = new StringBuffer();
+
+ final char[] name = className.substring(
+ className.lastIndexOf( '.' ) + 1 ).toCharArray();
+ char last = '\0';
+
+ for (int i = 0; i < name.length; i++)
+ {
+ if (Character.isUpperCase(name[i]))
+ {
+ if ( Character.isLowerCase( last ) )
+ {
+ shortName.append('-');
+ }
+
+ shortName.append(Character.toLowerCase(name[i]));
+ }
+ else
+ {
+ shortName.append(name[i]);
+ }
+
+ last = name[i];
+ }
+
+ return shortName.toString().toLowerCase();
+ }
}
1.8 +5 -4
avalon/fortress/container/src/test/org/apache/avalon/fortress/test/MetaInfoEntryTestCase.java
Index: MetaInfoEntryTestCase.java
===================================================================
RCS file:
/home/cvs/avalon/fortress/container/src/test/org/apache/avalon/fortress/test/MetaInfoEntryTestCase.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- MetaInfoEntryTestCase.java 15 May 2003 18:56:28 -0000 1.7
+++ MetaInfoEntryTestCase.java 17 Jun 2003 20:50:26 -0000 1.8
@@ -52,6 +52,7 @@
import junit.framework.TestCase;
import org.apache.avalon.fortress.MetaInfoEntry;
import org.apache.avalon.fortress.RoleEntry;
+import org.apache.avalon.fortress.util.Service;
import org.apache.avalon.fortress.impl.handler.FactoryComponentHandler;
import org.apache.avalon.fortress.impl.handler.PerThreadComponentHandler;
import org.apache.avalon.fortress.impl.handler.PoolableComponentHandler;
@@ -236,22 +237,22 @@
String start = "Regular";
String end = "regular";
- assertEquals( end, MetaInfoEntry.createShortName(start));
+ assertEquals( end, Service.createShortName(start));
start = "TwoWords";
end = "two-words";
- assertEquals( end, MetaInfoEntry.createShortName(start));
+ assertEquals( end, Service.createShortName(start));
start = "MANYcaps";
end = "manycaps";
- assertEquals( end, MetaInfoEntry.createShortName( start ) );
+ assertEquals( end, Service.createShortName( start ) );
start = "MANYcapsAndWords";
end = "manycaps-and-words";
- assertEquals( end, MetaInfoEntry.createShortName( start ) );
+ assertEquals( end, Service.createShortName( start ) );
}
private void checkMetaInfoEntry( MetaInfoEntry entry, Class handler, String
name, boolean oneRole )
1.14 +5 -4
avalon/fortress/tools/src/java/org/apache/avalon/fortress/tools/Component.java
Index: Component.java
===================================================================
RCS file:
/home/cvs/avalon/fortress/tools/src/java/org/apache/avalon/fortress/tools/Component.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- Component.java 31 May 2003 06:52:49 -0000 1.13
+++ Component.java 17 Jun 2003 20:50:26 -0000 1.14
@@ -57,6 +57,7 @@
import com.thoughtworks.qdox.model.*;
import org.apache.avalon.fortress.MetaInfoEntry;
import org.apache.avalon.fortress.util.dag.Vertex;
+import org.apache.avalon.fortress.util.Service;
import org.apache.tools.ant.BuildException;
import java.io.File;
@@ -127,7 +128,7 @@
+ "\"@" + TAG_SERVICE + "\" meta tag in "
+ javaClass.getName() );
}
-
+
final String serviceName = resolveClassName(
m_javaClass.getParentSource(),
tags[t].getNamedParameter( Component.ATTR_TYPE ) );
m_serviceNames.add( serviceName );
@@ -179,7 +180,7 @@
+ "\"@" + TAG_DEPENDENCY + "\" meta tag of the " +
METH_SERVICE
+ " method in " + fromClass.getName() );
}
-
+
String type = resolveClassName( fromClass.getParentSource(),
dependencies[d].getNamedParameter( ATTR_TYPE ) );
//String optional =
dependencies[d].getNamedParameter("optional");
@@ -205,7 +206,7 @@
DocletTag avalonConfigName = m_javaClass.getTagByName( TAG_INFO );
if ( null == avalonConfigName ) avalonConfigName =
m_javaClass.getTagByName( TAG_NAME );
- setAttribute( META_NAME, ( avalonConfigName == null ) ?
MetaInfoEntry.createShortName( m_javaClass.getName() ) :
avalonConfigName.getNamedParameter( ATTR_NAME ) );
+ setAttribute( META_NAME, ( avalonConfigName == null ) ?
Service.createShortName( m_javaClass.getName() ) : avalonConfigName.getNamedParameter(
ATTR_NAME ) );
}
private void discoverLifecycleType()
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]