import org.opendaylight.yangtools.yang.common.RpcResult
import org.opendaylight.yangtools.yang.data.api.CompositeNode
import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier
+import static org.opendaylight.controller.sal.restconf.impl.BrokerFacade.*
class BrokerFacade implements DataReader<InstanceIdentifier, CompositeNode> {
+ val static BrokerFacade INSTANCE = new BrokerFacade
+
@Property
private ConsumerSession context;
-
+
@Property
private DataBrokerService dataService;
+ private new() {
+ if (INSTANCE != null) {
+ throw new IllegalStateException("Already instantiated");
+ }
+ }
+
+ def static BrokerFacade getInstance() {
+ return INSTANCE
+ }
+
override readConfigurationData(InstanceIdentifier path) {
return dataService.readConfigurationData(path);
}
override readOperationalData(InstanceIdentifier path) {
return dataService.readOperationalData(path);
}
-
+
def RpcResult<CompositeNode> invokeRpc(QName type, CompositeNode payload) {
val future = context.rpc(type, payload);
return future.get;
}
-
- def commitConfigurationDataUpdate(InstanceIdentifier path, CompositeNode payload) {
+
+ def commitConfigurationDataPut(InstanceIdentifier path, CompositeNode payload) {
val transaction = dataService.beginTransaction;
transaction.putConfigurationData(path, payload);
return transaction.commit()
}
-
- def commitConfigurationDataCreate(InstanceIdentifier path, CompositeNode payload) {
+
+ def commitOperationalDataPut(InstanceIdentifier path, CompositeNode payload) {
val transaction = dataService.beginTransaction;
- transaction.putConfigurationData(path, payload);
+ transaction.putOperationalData(path, payload);
return transaction.commit()
}