/* * Copyright (c) 2016 Ericsson India Global Services Pvt Ltd. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.netvirt.elan.l2gw.ha.commands; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node; import org.opendaylight.yangtools.concepts.Builder; import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; public interface IMergeCommand { /** * Abstract function to merge data from src to dst in Operational Topology. * while existing data helps in keeping track of data only updated * @param dst Builder which will be used to build concrete object * @param existingData dataObject which are already exisitng * @param src dataObjects of source * @param nodePath nodePath of dest */ void mergeOperationalData(Y dst, Z existingData, Z src, InstanceIdentifier nodePath); /** * Abstract function to merge data from src to dst in Config Topology. * @param dst builder which will be used to build concrete object * @param src builder which are to be merged in destination * @param nodePath nodePath of dest */ void mergeConfigData(Y dst, Z src, InstanceIdentifier nodePath); }