[picocontainer-scm] [5625] java/2.x/trunk/pico/container/src/java/org/picocontainer: some refactorings, some javadoc
paul-yCVjj/[email protected]
| Newsgroups | gmane.comp.java.picocontainer.cvs |
|---|---|
| Message-ID | <[email protected]> |
Revision 5625
Author paul
Date 2010-02-19 20:09:16 -0600 (Fri, 19 Feb 2010)
Log Message
some refactorings, some javadoc
Modified Paths
- java/2.x/trunk/pico/container/src/java/org/picocontainer/DefaultPicoContainer.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/adapters/AbstractAdapter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/composers/RegexComposer.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/AbstractDelegatingPicoContainer.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/PropertiesPicoContainer.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/SystemPropertiesPicoContainer.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/BooleanConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/BuiltInConverters.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/ByteConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/CharacterConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/DoubleConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/FileConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/FloatConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/IntegerConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/LongConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/NewInstanceConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/ShortConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/AbstractInjector.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/lifecycle/package.html
- java/2.x/trunk/pico/container/src/java/org/picocontainer/references/ThreadLocalMapObjectReference.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/references/ThreadLocalReference.java
- java/2.x/trunk/pico/container/src/test/org/picocontainer/containers/PropertiesPicoContainerTestCase.java
- java/2.x/trunk/pico/container/src/test/org/picocontainer/containers/SystemPropertiesPicoContainerTestCase.java
- java/2.x/trunk/pico/container/src/test/org/picocontainer/converters/BuiltInConverterTestCase.java
- java/2.x/trunk/pico/container/src/test/org/picocontainer/parameters/ConfigParameterTestCase.java
- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/containers/CommonsLoggingTracingContainerDecorator.java
- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/containers/Log4jTracingContainerDecorator.java
- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIContainerVisitor.java
- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIExposed.java
- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIExposing.java
- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIProviding.java
- java/2.x/trunk/pico/gems/src/test/org/picocontainer/gems/jndi/JNDIObjectReferenceTestCase.java
Added Paths
- java/2.x/trunk/pico/container/src/java/org/picocontainer/behaviors/package.html
- java/2.x/trunk/pico/container/src/java/org/picocontainer/composers/package.html
- java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/package.html
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/Converter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/UrlConverter.java
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/package.html
- java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/package.html
- java/2.x/trunk/pico/container/src/java/org/picocontainer/monitors/package.html
Removed Paths
- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/Converter.java
Diff
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/DefaultPicoContainer.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/DefaultPicoContainer.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/DefaultPicoContainer.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -9,23 +9,8 @@
*****************************************************************************/
package org.picocontainer;
-import java.io.Serializable;
-import java.lang.annotation.Annotation;
-import java.lang.ref.WeakReference;
-import java.lang.reflect.Type;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-
+import org.picocontainer.adapters.AbstractAdapter;
import org.picocontainer.adapters.InstanceAdapter;
-import org.picocontainer.adapters.AbstractAdapter;
import org.picocontainer.behaviors.AbstractBehaviorFactory;
import org.picocontainer.behaviors.AdaptingBehavior;
import org.picocontainer.behaviors.Cached;
@@ -46,6 +31,21 @@
import org.picocontainer.monitors.NullComponentMonitor;
import org.picocontainer.parameters.DefaultConstructorParameter;
+import java.io.Serializable;
+import java.lang.annotation.Annotation;
+import java.lang.ref.WeakReference;
+import java.lang.reflect.Type;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+
/**
* <p/>
* The Standard {@link PicoContainer}/{@link MutablePicoContainer} implementation.
@@ -1079,6 +1079,12 @@
return String.format("%s:%d<%s", (name != null ? name : super.toString()), this.componentAdapters.size(), (parent != null ? parent.toString() : "|"));
}
+ /**
+ * If this container has a set of converters, then return it.
+ * If it does not, and the parent (or their parent ..) does, use that
+ * If they do not, return a NullObject implementation (ConversNothing)
+ * @return the converters
+ */
public synchronized Converters getConverters() {
if (converters == null) {
if (parent == null || (parent instanceof Converting && ((Converting) parent).getConverters() instanceof ConvertsNothing)) {
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/adapters/AbstractAdapter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/adapters/AbstractAdapter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/adapters/AbstractAdapter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -38,7 +38,6 @@
private Class<T> componentImplementation;
private ComponentMonitor componentMonitor;
-
/**
* Constructs a new ComponentAdapter for the given key and implementation.
* @param componentKey the search key for this implementation
Added: java/2.x/trunk/pico/container/src/java/org/picocontainer/behaviors/package.html (0 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/behaviors/package.html (rev 0)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/behaviors/package.html 2010-02-20 02:09:16 UTC (rev 5625)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+ <title>Insert title here</title>
+</head>
+<body>
+<p>BehaviorFactories make Behaviors which change aspects of component implementations and instances</p>
+</body>
+</html>
\ No newline at end of file
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/composers/RegexComposer.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/composers/RegexComposer.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/composers/RegexComposer.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -17,6 +17,9 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+/**
+ * Subsets components in a container, the keys for which match a regular expression.
+ */
public class RegexComposer implements ComposingMonitor.Composer {
private final Pattern pattern;
Added: java/2.x/trunk/pico/container/src/java/org/picocontainer/composers/package.html (0 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/composers/package.html (rev 0)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/composers/package.html 2010-02-20 02:09:16 UTC (rev 5625)
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+ <title>Insert title here</title>
+</head>
+<body>
+<p>Composers collaborate with ComposingMonitor to collect subsets of components for injection according to an scheme
+ like:</p>
+<ul>
+ <li>Regular expression match of component keys</li>
+</ul>
+
+</body>
+</html>
\ No newline at end of file
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/AbstractDelegatingPicoContainer.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/AbstractDelegatingPicoContainer.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/AbstractDelegatingPicoContainer.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -15,9 +15,9 @@
import java.util.List;
/**
- * abstract base class for immutable delegation to pico
+ * Abstract base class for <i>immutable<i> delegation to a PicoContainer
*
- * @author k.pribluda
+ * @author Konstantin Pribluda
*
*/
@SuppressWarnings("serial")
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/PropertiesPicoContainer.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/PropertiesPicoContainer.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/PropertiesPicoContainer.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -18,7 +18,7 @@
* immutable pico container constructed from properties.
* intendet to be used with config parameter
*
- * @author k.pribluda
+ * @author Konstantin Pribluda
*
*/
@SuppressWarnings("serial")
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/SystemPropertiesPicoContainer.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/SystemPropertiesPicoContainer.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/SystemPropertiesPicoContainer.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -11,8 +11,8 @@
import org.picocontainer.PicoContainer;
/**
- * container backed by system properties.
- * @author k.pribluda
+ * A container backed by system properties (is a PropertiesPicoContainer)
+ * @author Konstantin Pribluda
*/
@SuppressWarnings("serial")
public class SystemPropertiesPicoContainer extends PropertiesPicoContainer {
Added: java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/package.html (0 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/package.html (rev 0)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/containers/package.html 2010-02-20 02:09:16 UTC (rev 5625)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+ <title>Insert title here</title>
+</head>
+<body>
+<p>Containers are the main user entry point for PicoContainer. Implementations with behaviors not used in DefaultPicoContainer are in this package</p>
+</body>
+</html>
\ No newline at end of file
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/BooleanConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/BooleanConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/BooleanConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,6 +1,8 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
/**
* Converts strings to boolean types.
* @author Paul Hammant, Michael Rimov
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/BuiltInConverters.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/BuiltInConverters.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/BuiltInConverters.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -5,6 +5,7 @@
import java.io.File;
import java.io.Serializable;
import java.lang.reflect.Type;
+import java.net.URL;
import java.util.HashMap;
import java.util.Map;
@@ -27,6 +28,7 @@
addConverter(new ByteConverter(), Byte.class, Byte.TYPE);
addConverter(new ShortConverter(), Short.class, Short.TYPE);
addConverter(new FileConverter(), File.class);
+ addConverter(new UrlConverter(), URL.class);
}
private void addConverter(Converter converter, Class<?> type, Class<?> type2) {
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/ByteConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/ByteConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/ByteConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,9 +1,7 @@
package org.picocontainer.converters;
-import org.picocontainer.Converting;
+import org.picocontainer.converters.Converter;
-import java.lang.reflect.Type;
-
/**
* Converts
*
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/CharacterConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/CharacterConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/CharacterConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,6 +1,8 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
/**
* Converts strings to characters. It does so by only grabbing
* the first character in the string.
Deleted: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/Converter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/Converter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/Converter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,23 +0,0 @@
-/*****************************************************************************
- * Copyright (C) PicoContainer Organization. All rights reserved. *
- * ------------------------------------------------------------------------- *
- * The software in this package is published under the terms of the BSD *
- * style license a copy of which has been included with this distribution in *
- * the LICENSE.txt file. *
- *****************************************************************************/
-package org.picocontainer.converters;
-
-/**
- * Interface for all converters. This interface is actually hidden inside
- * the ConverterSet facade.
- * @author Paul Hammant, Michael Rimov
- */
-public interface Converter<T> {
-
- /**
- * Performs a conversion between the given parameter value and the target type.
- * @param parameterValue the string value to convert.
- * @return the resulting object.
- */
- T convert(String parameterValue);
-}
Added: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/Converter.java (0 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/Converter.java (rev 0)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/Converter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -0,0 +1,23 @@
+/*****************************************************************************
+ * Copyright (C) PicoContainer Organization. All rights reserved. *
+ * ------------------------------------------------------------------------- *
+ * The software in this package is published under the terms of the BSD *
+ * style license a copy of which has been included with this distribution in *
+ * the LICENSE.txt file. *
+ *****************************************************************************/
+package org.picocontainer.converters;
+
+/**
+ * Interface for all type converters. This interface is actually hidden inside
+ * the ConverterSet facade.
+ * @author Paul Hammant, Michael Rimov
+ */
+public interface Converter<T> {
+
+ /**
+ * Performs a conversion between the given parameter value and the target type.
+ * @param parameterValue the string value to convert.
+ * @return the resulting object.
+ */
+ T convert(String parameterValue);
+}
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/DoubleConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/DoubleConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/DoubleConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,6 +1,8 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
/**
* Converts strings to double-precision floating point values..
* @author Paul Hammant, Michael Rimov
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/FileConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/FileConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/FileConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,5 +1,7 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
import java.io.File;
/**
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/FloatConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/FloatConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/FloatConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,6 +1,8 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
/**
* Converts strings to boolean types.
* @author Paul Hammant, Michael Rimov
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/IntegerConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/IntegerConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/IntegerConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,6 +1,8 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
/**
* Converts strings to integer types.
* @author Paul Hammant, Michael Rimov
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/LongConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/LongConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/LongConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,6 +1,8 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
/**
* Converts strings to long-integer types.
* @author Paul Hammant, Michael Rimov
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/NewInstanceConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/NewInstanceConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/NewInstanceConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,5 +1,7 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/ShortConverter.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/ShortConverter.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/ShortConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -1,6 +1,8 @@
package org.picocontainer.converters;
+import org.picocontainer.converters.Converter;
+
/**
* Converts strings to 'short' data type objects.
* @author Paul Hammant, Michael Rimov
Added: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/UrlConverter.java (0 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/UrlConverter.java (rev 0)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/UrlConverter.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -0,0 +1,20 @@
+package org.picocontainer.converters;
+
+import org.picocontainer.PicoCompositionException;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+
+public class UrlConverter implements Converter<URL> {
+
+ /**
+ * {@inheritDoc} *
+ */
+ public URL convert(String paramValue) {
+ try {
+ return new URL(paramValue);
+ } catch (MalformedURLException e) {
+ throw new PicoCompositionException(e);
+ }
+ }
+}
Added: java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/package.html (0 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/package.html (rev 0)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/converters/package.html 2010-02-20 02:09:16 UTC (rev 5625)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+ <title>Insert title here</title>
+</head>
+<body>
+<p>Individual String to Type converters, that PicoContainer may use to convert types where required. Of Note:</p>
+<ul>
+ <li>Primitive and boxed equivalent converters</li>
+ <li>java.io.File and java.net.URL converters</li>
+ <li>Your own implementations of Converter</li>
+ <li>An aggregate 'Converters' implementation that's built-in to PicoContainer (but extensible)</li>
+</ul>
+</body>
+</html>
\ No newline at end of file
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/AbstractInjector.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/AbstractInjector.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/AbstractInjector.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -43,11 +43,11 @@
*/
@SuppressWarnings("serial")
public abstract class AbstractInjector<T> extends AbstractAdapter<T> implements org.picocontainer.Injector<T> {
+
/** The cycle guard for the verification. */
protected transient ThreadLocalCyclicDependencyGuard verifyingGuard;
/** The parameters to use for initialization. */
protected transient Parameter[] parameters;
-
/** The strategy used to control the lifecycle */
private final boolean useNames;
Added: java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/package.html (0 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/package.html (rev 0)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/package.html 2010-02-20 02:09:16 UTC (rev 5625)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+ <title>Insert title here</title>
+</head>
+<body>
+<p>InjectionFactories make Injectors which implement specific types of dependency injection</p>
+</body>
+</html>
\ No newline at end of file
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/lifecycle/package.html (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/lifecycle/package.html 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/lifecycle/package.html 2010-02-20 02:09:16 UTC (rev 5625)
@@ -2,15 +2,16 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>Insert title here</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+ <title>Insert title here</title>
</head>
<body>
-<p>Contains a series of classes that implement lifecycle strategy. Currently supported options are:</p>
-<ul>
- <li>Implement <tt>Startable</tt> and/or <tt>Disposable</tt>
- <li>Use configuration to wire methods that are start/stop/dispose equiv.</li>
- <li><em>Todo:</em> Annotation-Based lifecycles.
+<p>Alternative implementations of lifecycle strategy for use with a container. Currently supported options are:</p>
+<ul>
+ <li>Implement <tt>Startable</tt> and/or <tt>Disposable</tt> (or other strong interface)</li>
+ <li>Use configuration to wire methods that are start/stop/dispose equivalent.</li>
+ <li>J2EE 5.0 Annotation-based lifecycles.</li>
+ <li>Combinations thereof (composite)</li>
</ul>
</body>
</html>
\ No newline at end of file
Added: java/2.x/trunk/pico/container/src/java/org/picocontainer/monitors/package.html (0 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/monitors/package.html (rev 0)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/monitors/package.html 2010-02-20 02:09:16 UTC (rev 5625)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+ <title>Insert title here</title>
+</head>
+<body>
+<p>A Monitor is something PicoContainer uses to inform on events in component instantiation and lifecycle. One use
+ would be an instance based logger. Many alternative implementations in here.</p>
+</body>
+</html>
\ No newline at end of file
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/references/ThreadLocalMapObjectReference.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/references/ThreadLocalMapObjectReference.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/references/ThreadLocalMapObjectReference.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -12,24 +12,27 @@
import java.util.Map;
-/** @author Paul Hammant */
+/**
+ * Gets and sets references on a map stored in Thread Local
+ * @author Paul Hammant
+ */
public class ThreadLocalMapObjectReference<T> implements ObjectReference<T> {
- private final ThreadLocal<Map> threadLocal;
+ private final ThreadLocal<Map<Object, T>> threadLocal;
private final Object componentKey;
- public ThreadLocalMapObjectReference(ThreadLocal<Map> threadLocal, Object componentKey) {
+ public ThreadLocalMapObjectReference(ThreadLocal<Map<Object, T>> threadLocal, Object componentKey) {
this.threadLocal = threadLocal;
this.componentKey = componentKey;
}
@SuppressWarnings("unchecked")
public T get() {
- return (T) ((Map)threadLocal.get()).get(componentKey) ;
+ return threadLocal.get().get(componentKey) ;
}
@SuppressWarnings("unchecked")
public void set(T item) {
- ((Map)threadLocal.get()).put(componentKey, item) ;
+ threadLocal.get().put(componentKey, item) ;
}
}
Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/references/ThreadLocalReference.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/java/org/picocontainer/references/ThreadLocalReference.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/references/ThreadLocalReference.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -14,7 +14,10 @@
import java.io.ObjectOutputStream;
import java.io.ObjectInputStream;
-/** @author Paul Hammant */
+/**
+ * Gets and sets references on Thread Local
+ * @author Paul Hammant
+ */
@SuppressWarnings("serial")
public class ThreadLocalReference<T> extends ThreadLocal<T> implements ObjectReference<T>, Serializable {
Modified: java/2.x/trunk/pico/container/src/test/org/picocontainer/containers/PropertiesPicoContainerTestCase.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/test/org/picocontainer/containers/PropertiesPicoContainerTestCase.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/test/org/picocontainer/containers/PropertiesPicoContainerTestCase.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -12,7 +12,7 @@
/**
* test that properties container works properly
- * @author k.pribluda
+ * @author Konstantin Pribluda
*/
public class PropertiesPicoContainerTestCase {
/**
Modified: java/2.x/trunk/pico/container/src/test/org/picocontainer/containers/SystemPropertiesPicoContainerTestCase.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/test/org/picocontainer/containers/SystemPropertiesPicoContainerTestCase.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/test/org/picocontainer/containers/SystemPropertiesPicoContainerTestCase.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -8,7 +8,7 @@
/**
* test capabilities of system properties providing container.
- * @author k.pribluda
+ * @author Konstantin Pribluda
*
*/
public class SystemPropertiesPicoContainerTestCase {
Modified: java/2.x/trunk/pico/container/src/test/org/picocontainer/converters/BuiltInConverterTestCase.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/test/org/picocontainer/converters/BuiltInConverterTestCase.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/test/org/picocontainer/converters/BuiltInConverterTestCase.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -2,8 +2,10 @@
import org.junit.Test;
-import javax.swing.*;
+import javax.swing.JPanel;
import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URL;
import static junit.framework.Assert.assertFalse;
import static junit.framework.Assert.assertTrue;
@@ -23,11 +25,12 @@
assertTrue(bic.canConvert(Character.class));
assertTrue(bic.canConvert(Short.class));
assertTrue(bic.canConvert(Boolean.class));
+ assertTrue(bic.canConvert(URL.class));
assertFalse(bic.canConvert(JPanel.class));
}
@Test
- public void testBuiltInConvert() {
+ public void testBuiltInConvert() throws MalformedURLException {
BuiltInConverters bic = new BuiltInConverters();
assertEquals(12, bic.convert("12", Integer.class));
assertEquals(12345678901L, bic.convert("12345678901",Long.class));
@@ -38,6 +41,7 @@
assertEquals('a', bic.convert("a", Character.class));
assertEquals((short)12, bic.convert("12", Short.class));
assertEquals(Boolean.TRUE, bic.convert("TRUE", Boolean.class));
+ assertEquals(new URL("http://example.com"), bic.convert("http://example.com", URL.class));
assertEquals(null, bic.convert("anything", JPanel.class));
}
Modified: java/2.x/trunk/pico/container/src/test/org/picocontainer/parameters/ConfigParameterTestCase.java (5624 => 5625)
--- java/2.x/trunk/pico/container/src/test/org/picocontainer/parameters/ConfigParameterTestCase.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/container/src/test/org/picocontainer/parameters/ConfigParameterTestCase.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -19,7 +19,7 @@
/**
* test that config parameter does the right job
*
- * @author k.pribluda
+ * @author Konstantin Pribluda
*
*/
public class ConfigParameterTestCase {
Modified: java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/containers/CommonsLoggingTracingContainerDecorator.java (5624 => 5625)
--- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/containers/CommonsLoggingTracingContainerDecorator.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/containers/CommonsLoggingTracingContainerDecorator.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -9,20 +9,26 @@
*****************************************************************************/
package org.picocontainer.gems.containers;
-import org.picocontainer.*;
-import org.picocontainer.containers.EmptyPicoContainer;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.picocontainer.ComponentAdapter;
+import org.picocontainer.Converters;
+import org.picocontainer.Converting;
+import org.picocontainer.MutablePicoContainer;
+import org.picocontainer.NameBinding;
+import org.picocontainer.Parameter;
+import org.picocontainer.PicoContainer;
+import org.picocontainer.PicoVisitor;
+import org.picocontainer.converters.ConvertsNothing;
import org.picocontainer.lifecycle.LifecycleState;
+import java.io.Serializable;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Type;
import java.util.Collection;
import java.util.List;
import java.util.Properties;
-import java.io.Serializable;
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Type;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
/** @author Michael Rimov
* @deprecated As of PicoContainer 2.3 ComponentMonitor now can do all jobs of tracing container.
*/
@@ -528,10 +534,13 @@
delegate.setLifecycleState(lifecycleState);
}
- public ConverterSet getConverter() {
+ /**
+ * {@inheritDoc}
+ */
+ public Converters getConverters() {
if (delegate instanceof Converting) {
- return ((Converting) delegate).getConverter();
+ return ((Converting) delegate).getConverters();
}
- return new EmptyPicoContainer.NullConverter();
+ return new ConvertsNothing();
}
}
Modified: java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/containers/Log4jTracingContainerDecorator.java (5624 => 5625)
--- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/containers/Log4jTracingContainerDecorator.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/containers/Log4jTracingContainerDecorator.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -11,7 +11,7 @@
package org.picocontainer.gems.containers;
import org.picocontainer.*;
-import org.picocontainer.containers.EmptyPicoContainer;
+import org.picocontainer.converters.ConvertsNothing;
import org.picocontainer.lifecycle.LifecycleState;
import java.io.ObjectInputStream;
@@ -590,10 +590,10 @@
delegate.setLifecycleState(lifecycleState);
}
- public ConverterSet getConverter() {
+ public Converters getConverters() {
if (delegate instanceof Converting) {
- return ((Converting) delegate).getConverter();
+ return ((Converting) delegate).getConverters();
}
- return new EmptyPicoContainer.NullConverter();
+ return new ConvertsNothing();
}
}
Modified: java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIContainerVisitor.java (5624 => 5625)
--- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIContainerVisitor.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIContainerVisitor.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -20,7 +20,7 @@
/**
* traverse pico container and expose components to JNDI on
* sight of JNDIExposed
- * @author k.pribluda
+ * @author Konstantin Pribluda
*/
public class JNDIContainerVisitor extends TraversalCheckingVisitor {
Modified: java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIExposed.java (5624 => 5625)
--- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIExposed.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIExposed.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -19,7 +19,7 @@
* reference instead. Maybe Cached shall be refactored? as there is little new
* functionality.
*
- * @author k.pribluda
+ * @author Konstantin Pribluda
*
*/
@SuppressWarnings("serial")
Modified: java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIExposing.java (5624 => 5625)
--- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIExposing.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIExposing.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -23,7 +23,7 @@
/**
* produce JNDI exposing behaviour
*
- * @author k.pribluda
+ * @author Konstantin Pribluda
*
* @param <T>
*/
Modified: java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIProviding.java (5624 => 5625)
--- java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIProviding.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/gems/src/java/org/picocontainer/gems/jndi/JNDIProviding.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -23,7 +23,7 @@
/**
* TODO: decide where to get JNDI name as we do not have
* implementation here. ? Property
- * @author k.pribluda
+ * @author Konstantin Pribluda
*
*/
public class JNDIProviding implements ComponentFactory {
Modified: java/2.x/trunk/pico/gems/src/test/org/picocontainer/gems/jndi/JNDIObjectReferenceTestCase.java (5624 => 5625)
--- java/2.x/trunk/pico/gems/src/test/org/picocontainer/gems/jndi/JNDIObjectReferenceTestCase.java 2010-02-19 21:42:23 UTC (rev 5624)
+++ java/2.x/trunk/pico/gems/src/test/org/picocontainer/gems/jndi/JNDIObjectReferenceTestCase.java 2010-02-20 02:09:16 UTC (rev 5625)
@@ -23,7 +23,7 @@
/**
* test capabilities of object reference storing stuff in JNDI
- * @author k.pribluda
+ * @author Konstantin Pribluda
*
*/
public class JNDIObjectReferenceTestCase {
----------
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email