Search in sources :

Example 6 with ReferenceMetadata

use of org.apache.felix.scr.impl.metadata.ReferenceMetadata in project felix by apache.

the class AbstractComponentManager method loadDependencyManagers.

private List<DependencyManager<S, ?>> loadDependencyManagers(ComponentMetadata metadata) {
    List<DependencyManager<S, ?>> depMgrList = new ArrayList<DependencyManager<S, ?>>(metadata.getDependencies().size());
    // If this component has got dependencies, create dependency managers for each one of them.
    if (metadata.getDependencies().size() != 0) {
        int index = 0;
        for (ReferenceMetadata currentdependency : metadata.getDependencies()) {
            DependencyManager<S, ?> depmanager = new DependencyManager(this, currentdependency, index++);
            depMgrList.add(depmanager);
        }
    }
    return depMgrList;
}
Also used : ArrayList(java.util.ArrayList) ReferenceMetadata(org.apache.felix.scr.impl.metadata.ReferenceMetadata)

Example 7 with ReferenceMetadata

use of org.apache.felix.scr.impl.metadata.ReferenceMetadata in project felix by apache.

the class ComponentFactoryImpl method getProperties.

/**
 * For ComponentFactoryImpl, this is used only for updating targets on the dependency managers, so we don't need any other
 * properties.
 */
public Map<String, Object> getProperties() {
    Map<String, Object> props = new HashMap<String, Object>();
    // add target properties of references
    List<ReferenceMetadata> depMetaData = getComponentMetadata().getDependencies();
    for (ReferenceMetadata rm : depMetaData) {
        if (rm.getTarget() != null) {
            props.put(rm.getTargetPropertyName(), rm.getTarget());
        }
    }
    // add target properties from configuration (if we have one)
    for (String key : m_configuration.keySet()) {
        if (key.endsWith(".target")) {
            props.put(key, m_configuration.get(key));
        }
    }
    return props;
}
Also used : IdentityHashMap(java.util.IdentityHashMap) HashMap(java.util.HashMap) ReferenceMetadata(org.apache.felix.scr.impl.metadata.ReferenceMetadata)

Aggregations

ReferenceMetadata (org.apache.felix.scr.impl.metadata.ReferenceMetadata)7 DSVersion (org.apache.felix.scr.impl.metadata.DSVersion)3 ArrayList (java.util.ArrayList)2 IOException (java.io.IOException)1 HashMap (java.util.HashMap)1 IdentityHashMap (java.util.IdentityHashMap)1 ReferenceMethods (org.apache.felix.scr.impl.helper.ReferenceMethods)1 ActivateMethod (org.apache.felix.scr.impl.inject.ActivateMethod)1 BindMethods (org.apache.felix.scr.impl.inject.BindMethods)1 DeactivateMethod (org.apache.felix.scr.impl.inject.DeactivateMethod)1 DuplexReferenceMethods (org.apache.felix.scr.impl.inject.DuplexReferenceMethods)1 FieldMethods (org.apache.felix.scr.impl.inject.FieldMethods)1 ModifiedMethod (org.apache.felix.scr.impl.inject.ModifiedMethod)1 FieldMethods (org.apache.felix.scr.impl.inject.field.FieldMethods)1 ActivateMethod (org.apache.felix.scr.impl.inject.methods.ActivateMethod)1 BindMethods (org.apache.felix.scr.impl.inject.methods.BindMethods)1 DeactivateMethod (org.apache.felix.scr.impl.inject.methods.DeactivateMethod)1 ModifiedMethod (org.apache.felix.scr.impl.inject.methods.ModifiedMethod)1 DependencyManager (org.apache.felix.scr.impl.manager.DependencyManager)1 ComponentMetadata (org.apache.felix.scr.impl.metadata.ComponentMetadata)1