public final class SubSystemRegistry extends Object
SubSystemRegistry
keeps instances that manage subsystems in the
VTN Manager.
Each subsystem manager is represented by VTNSubSystem
interface,
and it is indexed by its class.
Constructor and Description |
---|
SubSystemRegistry()
Construct a new instance.
|
Modifier and Type | Method and Description |
---|---|
<T extends VTNSubSystem> |
add(T obj)
Add the given configuration provider into this set.
|
<T extends org.opendaylight.yangtools.yang.binding.RpcService> |
addRpcService(org.opendaylight.controller.sal.binding.api.RpcProviderRegistry rpcReg,
Class<T> type,
T impl)
Add the given RPC registration to this instance.
|
boolean |
close()
Close all subsystems.
|
void |
closeRpc()
Close RPC services.
|
<T extends VTNSubSystem> |
get(Class<T> type)
Return the configuration provider indexed by the given class.
|
List<VTNFuture<?>> |
initConfig(boolean master)
Post a MD-SAL datastore transaction task that initializes the
configuration.
|
void |
initRpcServices(org.opendaylight.controller.sal.binding.api.RpcProviderRegistry rpcReg)
Initialize RPC services provided by subsystems.
|
boolean |
isClosed()
Determine whether the subsystem registry is already closed.
|
boolean |
isRpcClosed()
Determine whether RPC services are closed or not.
|
public <T extends VTNSubSystem> SubSystemRegistry add(T obj)
T
- The type of configuration provider.obj
- A VTNSubSystem
instance.public <T extends VTNSubSystem> T get(Class<T> type)
T
- The type of the configuration provider.type
- A class which indicates the type of the configuration
provider.null
.public List<VTNFuture<?>> initConfig(boolean master)
master
- true
if the local node is the configuration
provider.VTNFuture
instances associated with
background tasks that initialize the configuration.public void initRpcServices(org.opendaylight.controller.sal.binding.api.RpcProviderRegistry rpcReg)
rpcReg
- A RpcProviderRegistry
service instance.public <T extends org.opendaylight.yangtools.yang.binding.RpcService> void addRpcService(org.opendaylight.controller.sal.binding.api.RpcProviderRegistry rpcReg, Class<T> type, T impl)
T
- Type of RPC service.rpcReg
- A RpcProviderRegistry
service instance.type
- A class which specifies the type of RPC service.impl
- An object which implements the RPC service.public boolean isClosed()
true
only if the subsystem registry is already closed.public boolean isRpcClosed()
true
only if RPC services are already closed.public void closeRpc()
public boolean close()
true
only if all registered subsystems have been
actually closed.Copyright © 2018 OpenDaylight. All rights reserved.