/** * Creates a new temporal service dependency. * * @param timeout the max number of milliseconds to wait for a service availability. * @return the service dependency */ public ServiceDependency createTemporalServiceDependency(long timeout) { return m_manager.createTemporalServiceDependency(timeout); }
private Dependency createServiceDependency(DependencyManager dm, Class<?> serviceClass, String serviceFilter, Class<?> defaultServiceImplClass, String added, String changed, String removed, String swap, String autoConfigField, long timeout, boolean required, boolean propagate, boolean dereference) { ServiceDependency sd = timeout != -1 ? dm.createTemporalServiceDependency(timeout) : dm.createServiceDependency(); sd.setService(serviceClass, serviceFilter); if (defaultServiceImplClass != null) { sd.setDefaultImplementation(defaultServiceImplClass); } sd.setCallbacks(added, changed, removed, swap); if (autoConfigField != null) { sd.setAutoConfig(autoConfigField); } if (timeout == -1) { sd.setRequired(required); } sd.setPropagate(propagate); sd.setDereference(dereference); return sd; }
throw new IllegalArgumentException("service interface not specified, and no service reference or service filter specified."); ServiceDependency sd = m_timeout > -1 ? dm.createTemporalServiceDependency(m_timeout) : dm.createServiceDependency(); if (m_ref != null) { sd.setService(m_serviceIface, m_ref);