Removed:
trunk/israfil-micro-container/src/main/java/net/israfil/micro/container/ComponentFactory.java
Modified:
trunk/israfil-micro-container/src/main/java/net/israfil/micro/container/AutoWiringAdapter.java
Log:
Collapse ComponentFactory into AutoWiringAdapter, per http://code.google.com/p/israfil-micro/issues/detail?id=3
Modified: trunk/israfil-micro-container/src/main/java/net/israfil/micro/container/AutoWiringAdapter.java
==============================================================================
---
trunk/israfil-micro-container/src/main/java/net/israfil/micro/container/AutoWiringAdapter.java (original)
+++
trunk/israfil-micro-container/src/main/java/net/israfil/micro/container/AutoWiringAdapter.java
Wed Jul 30 09:25:45 2008
@@ -43,19 +43,27 @@
*
* @author <a href="mailto:cgr...@israfil.net">Christian Edward
Gruber </a>
*/
-public interface AutoWiringAdapter extends ComponentFactory {
+public interface AutoWiringAdapter {
/**
* This method should return a list of keys defining the dependencies
- * this object requires to operate.
+ * this object requires to operate, in the order expected by the
+ * create(Object[]) method.
*/
public Object[] dependencies();
/**
* Returns the type that this adapter will create. This should be the
- * most concrete type this adapter will create, if there is more than
- * one possibility.
+ * most concrete (narrowest) common type this adapter will create, if
+ * there is more than one possibility.
*/
public Class getType();
-
+
+ /**
+ * A method that implementors use to create a component given a set of
+ * parameters. Callers must return the parameters in the order provided
+ * by the dependencies() method.
+ */
+ public Object create(Object[] parameters) throws
IllegalAccessException, InstantiationException;
+
}