public class ServiceComponentRuntimeImpl
extends java.lang.Object
implements org.osgi.service.component.runtime.ServiceComponentRuntime, org.osgi.framework.ServiceListener, org.osgi.framework.BundleListener
| Modifier and Type | Field and Description |
|---|---|
private ComponentRegistry |
componentRegistry |
private org.osgi.framework.BundleContext |
context |
private java.lang.ref.SoftReference<java.util.concurrent.ConcurrentHashMap<java.lang.Long,org.osgi.framework.dto.ServiceReferenceDTO[]>> |
dtoCache |
private static java.lang.String[] |
EMPTY |
| Constructor and Description |
|---|
ServiceComponentRuntimeImpl(org.osgi.framework.BundleContext context,
ComponentRegistry componentRegistry) |
| Modifier and Type | Method and Description |
|---|---|
void |
bundleChanged(org.osgi.framework.BundleEvent event) |
private org.osgi.framework.dto.BundleDTO |
bundleToDTO(org.osgi.framework.BundleContext bundleContext) |
(package private) boolean |
checkType(java.lang.Class<?> type) |
(package private) java.lang.Object |
convert(java.lang.Object source) |
private java.util.Map<java.lang.String,java.lang.Object> |
deepCopy(java.util.Map<java.lang.String,java.lang.Object> source) |
org.osgi.util.promise.Promise<java.lang.Void> |
disableComponent(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description) |
org.osgi.util.promise.Promise<java.lang.Void> |
enableComponent(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description) |
java.util.Collection<org.osgi.service.component.runtime.dto.ComponentConfigurationDTO> |
getComponentConfigurationDTOs(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description) |
org.osgi.service.component.runtime.dto.ComponentDescriptionDTO |
getComponentDescriptionDTO(org.osgi.framework.Bundle bundle,
java.lang.String name) |
java.util.Collection<org.osgi.service.component.runtime.dto.ComponentDescriptionDTO> |
getComponentDescriptionDTOs(org.osgi.framework.Bundle... bundles) |
private ComponentHolder<?> |
getHolderFromDescription(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description)
Return the component holder
|
private org.osgi.service.component.runtime.dto.ComponentDescriptionDTO |
holderToDescription(ComponentHolder<?> holder) |
boolean |
isComponentEnabled(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description) |
private org.osgi.service.component.runtime.dto.ComponentConfigurationDTO |
managerToConfiguration(ComponentManager<?> manager,
org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description) |
private org.osgi.service.component.runtime.dto.ReferenceDTO[] |
refsToDTO(java.util.List<ReferenceMetadata> dependencies) |
private org.osgi.service.component.runtime.dto.SatisfiedReferenceDTO[] |
satisfiedRefManagersToDTO(java.util.List<? extends ReferenceManager<?,?>> referenceManagers) |
void |
serviceChanged(org.osgi.framework.ServiceEvent event) |
private org.osgi.framework.dto.ServiceReferenceDTO |
serviceReferenceToDTO(org.osgi.framework.ServiceReference<?> serviceRef) |
private org.osgi.service.component.runtime.dto.UnsatisfiedReferenceDTO[] |
unsatisfiedRefManagersToDTO(java.util.List<? extends ReferenceManager<?,?>> referenceManagers) |
private static final java.lang.String[] EMPTY
private final org.osgi.framework.BundleContext context
private final ComponentRegistry componentRegistry
private volatile java.lang.ref.SoftReference<java.util.concurrent.ConcurrentHashMap<java.lang.Long,org.osgi.framework.dto.ServiceReferenceDTO[]>> dtoCache
public ServiceComponentRuntimeImpl(org.osgi.framework.BundleContext context,
ComponentRegistry componentRegistry)
public java.util.Collection<org.osgi.service.component.runtime.dto.ComponentDescriptionDTO> getComponentDescriptionDTOs(org.osgi.framework.Bundle... bundles)
getComponentDescriptionDTOs in interface org.osgi.service.component.runtime.ServiceComponentRuntimeServiceComponentRuntime.getComponentDescriptionDTOs(org.osgi.framework.Bundle[])public org.osgi.service.component.runtime.dto.ComponentDescriptionDTO getComponentDescriptionDTO(org.osgi.framework.Bundle bundle,
java.lang.String name)
getComponentDescriptionDTO in interface org.osgi.service.component.runtime.ServiceComponentRuntimeServiceComponentRuntime.getComponentDescriptionDTO(org.osgi.framework.Bundle, java.lang.String)public java.util.Collection<org.osgi.service.component.runtime.dto.ComponentConfigurationDTO> getComponentConfigurationDTOs(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description)
getComponentConfigurationDTOs in interface org.osgi.service.component.runtime.ServiceComponentRuntimeServiceComponentRuntime.getComponentConfigurationDTOs(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO)public boolean isComponentEnabled(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description)
isComponentEnabled in interface org.osgi.service.component.runtime.ServiceComponentRuntimeServiceComponentRuntime.isComponentEnabled(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO)public org.osgi.util.promise.Promise<java.lang.Void> enableComponent(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description)
enableComponent in interface org.osgi.service.component.runtime.ServiceComponentRuntimeServiceComponentRuntime.enableComponent(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO)public org.osgi.util.promise.Promise<java.lang.Void> disableComponent(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description)
disableComponent in interface org.osgi.service.component.runtime.ServiceComponentRuntimeServiceComponentRuntime.disableComponent(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO)private org.osgi.service.component.runtime.dto.ComponentConfigurationDTO managerToConfiguration(ComponentManager<?> manager, org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description)
private org.osgi.service.component.runtime.dto.SatisfiedReferenceDTO[] satisfiedRefManagersToDTO(java.util.List<? extends ReferenceManager<?,?>> referenceManagers)
private org.osgi.service.component.runtime.dto.UnsatisfiedReferenceDTO[] unsatisfiedRefManagersToDTO(java.util.List<? extends ReferenceManager<?,?>> referenceManagers)
private org.osgi.framework.dto.ServiceReferenceDTO serviceReferenceToDTO(org.osgi.framework.ServiceReference<?> serviceRef)
private ComponentHolder<?> getHolderFromDescription(org.osgi.service.component.runtime.dto.ComponentDescriptionDTO description)
description - Component description DTOjava.lang.IllegalStateException - If the bundle is not active anymoreprivate org.osgi.service.component.runtime.dto.ComponentDescriptionDTO holderToDescription(ComponentHolder<?> holder)
private java.util.Map<java.lang.String,java.lang.Object> deepCopy(java.util.Map<java.lang.String,java.lang.Object> source)
java.lang.Object convert(java.lang.Object source)
boolean checkType(java.lang.Class<?> type)
private org.osgi.service.component.runtime.dto.ReferenceDTO[] refsToDTO(java.util.List<ReferenceMetadata> dependencies)
private org.osgi.framework.dto.BundleDTO bundleToDTO(org.osgi.framework.BundleContext bundleContext)
public void bundleChanged(org.osgi.framework.BundleEvent event)
bundleChanged in interface org.osgi.framework.BundleListenerpublic void serviceChanged(org.osgi.framework.ServiceEvent event)
serviceChanged in interface org.osgi.framework.ServiceListener