You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cl...@apache.org on 2009/02/10 09:20:58 UTC
svn commit: r742885 - in
/felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api:
PrimitiveComponentType.java Service.java TemporalDependency.java
Author: clement
Date: Tue Feb 10 08:20:57 2009
New Revision: 742885
URL: http://svn.apache.org/viewvc?rev=742885&view=rev
Log:
Autostart factories
Service and Temporal Dependency contains configuration constants.
Modified:
felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/PrimitiveComponentType.java
felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/Service.java
felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/TemporalDependency.java
Modified: felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/PrimitiveComponentType.java
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/PrimitiveComponentType.java?rev=742885&r1=742884&r2=742885&view=diff
==============================================================================
--- felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/PrimitiveComponentType.java (original)
+++ felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/PrimitiveComponentType.java Tue Feb 10 08:20:57 2009
@@ -370,6 +370,7 @@
meta.addElement(m_manipulation);
try {
m_factory = new ComponentFactory(m_context, clazz, meta);
+ m_factory.start();
} catch (ConfigurationException e) {
throw new IllegalStateException("An exception occurs during factory initialization : " + e.getMessage());
}
Modified: felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/Service.java
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/Service.java?rev=742885&r1=742884&r2=742885&view=diff
==============================================================================
--- felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/Service.java (original)
+++ felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/Service.java Tue Feb 10 08:20:57 2009
@@ -36,6 +36,26 @@
public class Service {
/**
+ * Creation strategy : singleton (default).
+ */
+ public static final int SINGLETON_STRATEGY = ProvidedService.SINGLETON_STRATEGY;
+
+ /**
+ * Creation strategy : delegate on the static factory method.
+ */
+ public static final int STATIC_STRATEGY = ProvidedService.STATIC_STRATEGY;
+
+ /**
+ * Creation strategy : one service object per instance.
+ */
+ public static final int INSTANCE_STRATEGY = ProvidedService.INSTANCE_STRATEGY;
+
+ /**
+ * Creation strategy : one service object per bundle (OSGi service factory).
+ */
+ public static final int SERVICE_STRATEGY = ProvidedService.SERVICE_STRATEGY;
+
+ /**
* The provided service specification.
*/
private List m_specifications; // null be default computed.
Modified: felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/TemporalDependency.java
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/TemporalDependency.java?rev=742885&r1=742884&r2=742885&view=diff
==============================================================================
--- felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/TemporalDependency.java (original)
+++ felix/trunk/ipojo/api/src/main/java/org/apache/felix/ipojo/api/TemporalDependency.java Tue Feb 10 08:20:57 2009
@@ -26,6 +26,22 @@
* @author <a href="mailto:dev@felix.apache.org">Felix Project Team</a>
*/
public class TemporalDependency {
+
+ /**
+ * OnTimeout policy: nullable object.
+ */
+ public static final String NULLABLE = "nullable";
+
+ /**
+ * OnTimeout policy: empty array or collection.
+ */
+ public static final String EMPTY = "empty";
+
+ /**
+ * OnTimeout policy: inject null.
+ */
+ public static final String NULL = "null";
+
/**
* The required specification.
@@ -141,6 +157,16 @@
}
/**
+ * Sets the dependency timeout.
+ * @param time the dependency timeout in ms
+ * @return the current dependency object
+ */
+ public TemporalDependency setTimeout(long time) {
+ m_timeout = new Long(time).toString();
+ return this;
+ }
+
+ /**
* Sets the dependency ontimeout policy.
* Supports null, nullable, empty, and default-implementation.
* In this latter case, you must specify the qualified class name