summaryrefslogtreecommitdiffstats
path: root/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer
diff options
context:
space:
mode:
Diffstat (limited to 'infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer')
-rw-r--r--infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerPipelineModule.groovy15
-rw-r--r--infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryProvider.groovy6
-rw-r--r--infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/ModifiableDTDelegInitProvider.groovy9
-rw-r--r--infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/PersistedFileInitializerProvider.groovy8
4 files changed, 22 insertions, 16 deletions
diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerPipelineModule.groovy b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerPipelineModule.groovy
index 10757c1a5..4bd197385 100644
--- a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerPipelineModule.groovy
+++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerPipelineModule.groovy
@@ -30,17 +30,24 @@ import org.opendaylight.controller.md.sal.dom.api.DOMDataBroker
@Slf4j
class InitializerPipelineModule extends PrivateModule {
+
+ public static final String HONEYCOMB_INITIALIZER = "honeycomb-initializer"
+
protected void configure() {
+ // Create data tree manager on top of non-persisting config data tree
bind(ModifiableDataManager).toProvider(ModifiableDTDelegInitProvider).in(Singleton)
+ // Wrap as DOMDataBroker
bind(DOMDataBroker).toProvider(HoneycombDOMDataBrokerProvider).in(Singleton)
- bind(DataBroker).annotatedWith(Names.named("honeycomb-initializer")).toProvider(BindingDataBrokerProvider).in(Singleton)
- expose(DataBroker).annotatedWith(Names.named("honeycomb-initializer"))
+ // Wrap as BA data broker
+ bind(DataBroker).annotatedWith(Names.named(HONEYCOMB_INITIALIZER)).toProvider(BindingDataBrokerProvider).in(Singleton)
+ expose(DataBroker).annotatedWith(Names.named(HONEYCOMB_INITIALIZER))
+ // Create initializer registry so that plugins can provide their initializers
bind(InitializerRegistry)
- .annotatedWith(Names.named("honeycomb-initializer"))
+ .annotatedWith(Names.named(HONEYCOMB_INITIALIZER))
.toProvider(InitializerRegistryProvider)
.in(Singleton)
expose(InitializerRegistry)
- .annotatedWith(Names.named("honeycomb-initializer"))
+ .annotatedWith(Names.named(HONEYCOMB_INITIALIZER))
}
}
diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryProvider.groovy b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryProvider.groovy
index 5f75fc026..6c90291b9 100644
--- a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryProvider.groovy
+++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/InitializerRegistryProvider.groovy
@@ -24,16 +24,18 @@ import io.fd.honeycomb.data.init.DataTreeInitializer
import io.fd.honeycomb.data.init.InitializerRegistry
import io.fd.honeycomb.data.init.InitializerRegistryImpl
import io.fd.honeycomb.infra.distro.ProviderTrait
+import io.fd.honeycomb.infra.distro.data.ConfigAndOperationalPipelineModule
+import io.fd.honeycomb.infra.distro.data.context.ContextPipelineModule
@Slf4j
@ToString
class InitializerRegistryProvider extends ProviderTrait<InitializerRegistry> {
@Inject
- @Named("honeycomb-context")
+ @Named(ContextPipelineModule.HONEYCOMB_CONTEXT)
DataTreeInitializer contextInitializer
@Inject
- @Named("honeycomb-config")
+ @Named(ConfigAndOperationalPipelineModule.HONEYCOMB_CONFIG)
DataTreeInitializer configInitializer
@Inject(optional = true)
Set<DataTreeInitializer> pluginInitializers = []
diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/ModifiableDTDelegInitProvider.groovy b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/ModifiableDTDelegInitProvider.groovy
index 2a1422dae..4c132756e 100644
--- a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/ModifiableDTDelegInitProvider.groovy
+++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/ModifiableDTDelegInitProvider.groovy
@@ -23,14 +23,13 @@ import groovy.util.logging.Slf4j
import io.fd.honeycomb.data.ModifiableDataManager
import io.fd.honeycomb.data.impl.ModifiableDataTreeDelegator
import io.fd.honeycomb.infra.distro.ProviderTrait
+import io.fd.honeycomb.infra.distro.data.ConfigAndOperationalPipelineModule
+import io.fd.honeycomb.infra.distro.data.context.ContextPipelineModule
import io.fd.honeycomb.translate.util.write.NoopWriterRegistry
import org.opendaylight.controller.md.sal.binding.api.DataBroker
import org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec
import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree
-/**
- * Similar to ModifiableDTDelegProvider, but uses noop writer registry
- */
@Slf4j
@ToString
class ModifiableDTDelegInitProvider extends ProviderTrait<ModifiableDataManager> {
@@ -38,10 +37,10 @@ class ModifiableDTDelegInitProvider extends ProviderTrait<ModifiableDataManager>
@Inject
BindingToNormalizedNodeCodec serializer
@Inject
- @Named("honeycomb-config-nopersist")
+ @Named(ConfigAndOperationalPipelineModule.HONEYCOMB_CONFIG_NONPERSIST)
DataTree dataTree
@Inject
- @Named("honeycomb-context")
+ @Named(ContextPipelineModule.HONEYCOMB_CONTEXT)
DataBroker contextBroker
@Override
diff --git a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/PersistedFileInitializerProvider.groovy b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/PersistedFileInitializerProvider.groovy
index 8979272be..bb7015e01 100644
--- a/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/PersistedFileInitializerProvider.groovy
+++ b/infra/minimal-distribution/src/main/java/io/fd/honeycomb/infra/distro/initializer/PersistedFileInitializerProvider.groovy
@@ -19,7 +19,7 @@ package io.fd.honeycomb.infra.distro.initializer
import com.google.inject.Inject
import groovy.transform.ToString
import groovy.util.logging.Slf4j
-import io.fd.honeycomb.data.init.RestorationType
+
import io.fd.honeycomb.data.init.RestoringInitializer
import io.fd.honeycomb.infra.distro.ProviderTrait
import io.fd.honeycomb.infra.distro.cfgattrs.HoneycombConfiguration
@@ -28,9 +28,7 @@ import org.opendaylight.controller.md.sal.dom.api.DOMDataBroker
import org.opendaylight.controller.sal.core.api.model.SchemaService
import java.nio.file.Paths
-/**
- * Mirror of org.opendaylight.yang.gen.v1.urn.honeycomb.params.xml.ns.yang.data.initializer.rev160407.PersistedFileInitializerModule
- */
+
@Slf4j
@ToString
abstract class PersistedFileInitializerProvider extends ProviderTrait<RestoringInitializer> {
@@ -46,7 +44,7 @@ abstract class PersistedFileInitializerProvider extends ProviderTrait<RestoringI
@Override
def create() {
new RestoringInitializer(schemaService, Paths.get(getPersistPath()),
- domDataBroker, RestorationType.valueOf(restorationType), getDataStoreType())
+ domDataBroker, RestoringInitializer.RestorationType.valueOf(restorationType), getDataStoreType())
}
abstract String getPersistPath()