2 * Copyright © 2017 AT&T, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.transportpce.common.network;
11 import com.google.common.util.concurrent.ListenableFuture;
12 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
13 import org.opendaylight.yangtools.yang.binding.DataObject;
14 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
18 public class NetworkTransactionImpl implements NetworkTransactionService {
20 RequestProcessor requestProcessor;
22 public NetworkTransactionImpl(RequestProcessor requestProcessor) {
23 this.requestProcessor = requestProcessor;
27 public <T extends DataObject> ListenableFuture<com.google.common.base.Optional<T>>
28 read(LogicalDatastoreType store, InstanceIdentifier<T> path) {
29 return requestProcessor.read(store, path);
34 public void delete(LogicalDatastoreType store, InstanceIdentifier<?> path) {
35 requestProcessor.delete(store, path);
39 public <T extends DataObject> void put(LogicalDatastoreType store,
40 InstanceIdentifier<T> path, T data, boolean createMissingParents) {
42 requestProcessor.put(store, path, data, createMissingParents);
46 public <T extends DataObject> void put(LogicalDatastoreType store,
47 InstanceIdentifier<T> path, T data) {
48 requestProcessor.put(store, path, data);
51 public ListenableFuture<Void> submit() {
52 return requestProcessor.submit();
58 requestProcessor.close();
61 public <T extends DataObject> void merge(LogicalDatastoreType store,
62 InstanceIdentifier<T> path, T data) {
63 requestProcessor.merge(store, path, data);
66 public <T extends DataObject> void merge(LogicalDatastoreType store,
67 InstanceIdentifier<T> path, T data, boolean createMissingParents) {
69 requestProcessor.merge(store, path, data, createMissingParents);