Class DataStoreAppConfigMetadata

java.lang.Object
org.opendaylight.controller.blueprint.ext.DataStoreAppConfigMetadata
All Implemented Interfaces:
org.apache.aries.blueprint.ext.ComponentFactoryMetadata, org.apache.aries.blueprint.ext.DependentComponentFactoryMetadata, org.osgi.service.blueprint.reflect.ComponentMetadata, org.osgi.service.blueprint.reflect.Metadata, org.osgi.service.blueprint.reflect.NonNullMetadata, org.osgi.service.blueprint.reflect.Target

public class DataStoreAppConfigMetadata extends Object
Factory metadata corresponding to the "clustered-app-config" element that obtains an application's config data from the data store and provides the binding DataObject instance to the Blueprint container as a bean. In addition registers a DataTreeChangeListener to restart the Blueprint container when the config data is changed.
Author:
Thomas Pantelis
  • Constructor Details

    • DataStoreAppConfigMetadata

      public DataStoreAppConfigMetadata(String id, @NonNull String appConfigBindingClassName, @Nullable String appConfigListKeyValue, @Nullable String defaultAppConfigFileName, @NonNull UpdateStrategy updateStrategyValue, @Nullable Element defaultAppConfigElement)
  • Method Details

    • init

      public void init(org.apache.aries.blueprint.services.ExtendedBlueprintContainer container)
      Specified by:
      init in interface org.apache.aries.blueprint.ext.ComponentFactoryMetadata
    • create

      public Object create() throws org.osgi.service.blueprint.container.ComponentDefinitionException
      Throws:
      org.osgi.service.blueprint.container.ComponentDefinitionException
    • startTracking

      protected void startTracking()
    • destroy

      public void destroy(Object instance)
      Specified by:
      destroy in interface org.apache.aries.blueprint.ext.ComponentFactoryMetadata
    • getId

      public String getId()
      Specified by:
      getId in interface org.osgi.service.blueprint.reflect.ComponentMetadata
    • getActivation

      public int getActivation()
      Specified by:
      getActivation in interface org.osgi.service.blueprint.reflect.ComponentMetadata
    • getDependsOn

      public List<String> getDependsOn()
      Specified by:
      getDependsOn in interface org.osgi.service.blueprint.reflect.ComponentMetadata
    • getDependencyDescriptor

      public String getDependencyDescriptor()
      Specified by:
      getDependencyDescriptor in interface org.apache.aries.blueprint.ext.DependentComponentFactoryMetadata
    • isSatisfied

      public boolean isSatisfied()
      Specified by:
      isSatisfied in interface org.apache.aries.blueprint.ext.DependentComponentFactoryMetadata
    • setFailureMessage

      protected void setFailureMessage(String failureMessage)
    • setFailure

      protected void setFailure(String failureMessage, Throwable failureCause)
    • setDependencyDesc

      protected void setDependencyDesc(String dependencyDesc)
    • container

      protected final org.apache.aries.blueprint.services.ExtendedBlueprintContainer container()
    • setSatisfied

      protected void setSatisfied()
    • retrieveService

      protected void retrieveService(String name, Class<?> interfaceClass, Consumer<Object> onServiceRetrieved)
    • retrieveService

      protected void retrieveService(String name, String interfaceName, Consumer<Object> onServiceRetrieved)
    • logName

      protected final String logName()
    • onCreate

      protected void onCreate() throws org.osgi.service.blueprint.container.ComponentDefinitionException
      Throws:
      org.osgi.service.blueprint.container.ComponentDefinitionException
    • startTracking

      public final void startTracking(org.apache.aries.blueprint.ext.DependentComponentFactoryMetadata.SatisfactionCallback newSatisfactionCallback)
      Specified by:
      startTracking in interface org.apache.aries.blueprint.ext.DependentComponentFactoryMetadata
    • stopTracking

      public void stopTracking()
      Specified by:
      stopTracking in interface org.apache.aries.blueprint.ext.DependentComponentFactoryMetadata
    • restartContainer

      protected void restartContainer()
    • getOSGiService

      protected <T> @Nullable T getOSGiService(Class<T> serviceInterface)