<packaging>bundle</packaging>
<dependencies>
+ <dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
+ <optional>true</optional>
+ </dependency>
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ <optional>true</optional>
+ </dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
import static java.util.Objects.requireNonNull;
import com.google.common.annotations.Beta;
+import javax.inject.Inject;
+import javax.inject.Singleton;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.opendaylight.mdsal.binding.api.ActionProviderService;
import org.opendaylight.mdsal.binding.api.ActionService;
*/
@Beta
@NonNullByDefault
+@Singleton
public final class BindingAdapterFactory implements AdapterFactory, Immutable {
private final BindingToNormalizedNodeCodec codec;
+ @Inject
public BindingAdapterFactory(final BindingToNormalizedNodeCodec codec) {
this.codec = requireNonNull(codec);
}
import java.util.concurrent.TimeUnit;
import java.util.function.Function;
import java.util.stream.Collectors;
+import javax.annotation.PreDestroy;
+import javax.inject.Inject;
+import javax.inject.Singleton;
import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.mdsal.binding.api.DataTreeIdentifier;
import org.opendaylight.mdsal.binding.dom.codec.api.BindingCodecTree;
* <p>
* NOTE: this class is non-final to allow controller adapter migration without duplicated code.
*/
+@Singleton
public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory,
BindingNormalizedNodeSerializer, SchemaContextListener, AutoCloseable {
private final FutureSchema futureSchema;
private ListenerRegistration<?> listenerRegistration;
+ @Inject
public BindingToNormalizedNodeCodec(final ClassLoadingStrategy classLoadingStrategy,
final BindingNormalizedNodeCodecRegistry codecRegistry) {
this(classLoadingStrategy, codecRegistry, false);
}
@Override
+ @PreDestroy
public void close() {
if (listenerRegistration != null) {
listenerRegistration.close();