import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
+import javax.inject.Inject;
import javax.inject.Singleton;
import org.kohsuke.MetaInfServices;
import org.opendaylight.mdsal.dom.api.DOMMountPoint;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
-import org.osgi.service.component.annotations.Deactivate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-@Component(immediate = true)
+@Component
@MetaInfServices
@Singleton
public final class DOMMountPointServiceImpl implements DOMMountPointService {
private final ListenerRegistry<DOMMountPointListener> listeners = ListenerRegistry.create();
+ @Inject
+ @Activate
+ public DOMMountPointServiceImpl() {
+ // Exposed only for DI
+ }
+
@Override
public Optional<DOMMountPoint> getMountPoint(final YangInstanceIdentifier path) {
return Optional.ofNullable(mountPoints.get(path));
return listeners.register(listener);
}
- @Activate
- @SuppressWarnings("static-method")
- void activate() {
- LOG.info("DOMMountPointService activated");
- }
-
- @Deactivate
- @SuppressWarnings("static-method")
- void deactivate() {
- LOG.info("DOMMountPointService deactivated");
- }
-
@SuppressWarnings("checkstyle:IllegalCatch")
private ObjectRegistration<DOMMountPoint> registerMountPoint(final SimpleDOMMountPoint mountPoint) {
final YangInstanceIdentifier mountPointId = mountPoint.getIdentifier();