2 * Copyright (c) 2017 Red Hat, 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.netvirt.vpnmanager.api;
11 import java.math.BigInteger;
12 import org.apache.commons.lang3.tuple.ImmutablePair;
13 import org.eclipse.jdt.annotation.Nullable;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.vpn.instance.op.data.vpn.instance.op.data.entry.vpn.to.dpn.list.IpAddresses;
16 public interface IVpnFootprintService {
19 * Updates the footprint that a VPN has on a given DPN by adding/removing
20 * the specified interface.
22 * @param dpId DPN where the VPN interface belongs to
23 * @param vpnName Name of the VPN whose footprint is being modified
24 * @param interfaceName Name of the VPN interface to be added/removed to/from the specified DPN
25 * @param add true for addition, false for removal
27 void updateVpnToDpnMapping(BigInteger dpId, String vpnName, String primaryRd, @Nullable String interfaceName,
28 ImmutablePair<IpAddresses.IpAddressSource, String> ipAddressSourceValuePair, boolean add);