*/
package org.opendaylight.controller.sal.dom.broker;
-import java.util.HashSet;
-import java.util.Set;
-
import org.opendaylight.controller.sal.core.api.Broker.ProviderSession;
-import org.opendaylight.controller.sal.core.api.Broker.RoutedRpcRegistration;
-import org.opendaylight.controller.sal.core.api.Broker.RpcRegistration;
import org.opendaylight.controller.sal.core.api.Provider;
-import org.opendaylight.controller.sal.core.api.RpcImplementation;
-import org.opendaylight.controller.sal.core.api.RpcRegistrationListener;
-import org.opendaylight.yangtools.concepts.ListenerRegistration;
-import org.opendaylight.yangtools.yang.common.QName;
-import org.osgi.framework.BundleContext;
class ProviderContextImpl extends ConsumerContextImpl implements ProviderSession {
- private final Set<RpcRegistrationWrapper> registrations = new HashSet<>();
private final Provider provider;
- public ProviderContextImpl(final Provider provider, final BundleContext ctx) {
- super(null, ctx);
+ public ProviderContextImpl(final Provider provider, final BrokerImpl broker) {
+ super(null, broker);
this.provider = provider;
}
- @Override
- public RpcRegistrationWrapper addRpcImplementation(final QName rpcType,
- final RpcImplementation implementation) throws IllegalArgumentException {
- final RpcRegistration origReg = getBroker().getRouter()
- .addRpcImplementation(rpcType, implementation);
- final RpcRegistrationWrapper newReg = new RpcRegistrationWrapper(
- origReg);
- registrations.add(newReg);
- return newReg;
- }
-
- protected boolean removeRpcImplementation(final RpcRegistrationWrapper implToRemove) {
- return registrations.remove(implToRemove);
- }
-
@Override
public void close() {
- for (final RpcRegistrationWrapper reg : registrations) {
- reg.close();
- }
- }
-
- @Override
- public RoutedRpcRegistration addMountedRpcImplementation(
- final QName rpcType, final RpcImplementation implementation) {
- throw new UnsupportedOperationException(
- "TODO: auto-generated method stub");
- }
-
- @Override
- public RoutedRpcRegistration addRoutedRpcImplementation(
- final QName rpcType, final RpcImplementation implementation) {
- throw new UnsupportedOperationException(
- "TODO: auto-generated method stub");
- }
-
- @Override
- public Set<QName> getSupportedRpcs() {
- return getBroker().getRouter().getSupportedRpcs();
- }
-
- @Override
- public ListenerRegistration<RpcRegistrationListener> addRpcRegistrationListener(
- final RpcRegistrationListener listener) {
- return getBroker().getRouter().addRpcRegistrationListener(listener);
}
/**