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