2 * Copyright (c) 2020 PANTHEON.tech, s.r.o. 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
8 package org.opendaylight.mdsal.replicate.common;
10 import static java.util.Objects.requireNonNull;
12 import java.util.Optional;
13 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
14 import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteOperations;
15 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
16 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
17 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification;
18 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModificationCursor;
19 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
20 import org.slf4j.Logger;
21 import org.slf4j.LoggerFactory;
23 final class DOMDataBrokerModification implements DataTreeModification {
24 private static final Logger LOG = LoggerFactory.getLogger(DOMDataBrokerModification.class);
26 private final DOMDataTreeWriteOperations transaction;
27 private final LogicalDatastoreType datastore;
29 DOMDataBrokerModification(final DOMDataTreeWriteOperations transaction, final LogicalDatastoreType datastore) {
30 this.transaction = requireNonNull(transaction);
31 this.datastore = requireNonNull(datastore);
35 public void delete(final YangInstanceIdentifier path) {
36 LOG.trace("BackupModification - DELETE - {}", path);
37 transaction.delete(datastore, path);
41 public void write(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
42 LOG.trace("BackupModification - WRITE - {} - DATA: {}", path, data);
43 transaction.put(datastore, path, data);
47 public void merge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
48 throw new UnsupportedOperationException();
53 throw new UnsupportedOperationException();
57 public void applyToCursor(final DataTreeModificationCursor cursor) {
58 throw new UnsupportedOperationException();
62 public Optional<NormalizedNode<?, ?>> readNode(final YangInstanceIdentifier path) {
63 throw new UnsupportedOperationException();
67 public DataTreeModification newModification() {
68 throw new UnsupportedOperationException();
72 public SchemaContext getSchemaContext() {
73 throw new UnsupportedOperationException();