2 * Copyright (c) 2016 Cisco Systems, 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.protocol.bgp.rib.impl.config;
11 import com.google.common.util.concurrent.FluentFuture;
12 import org.opendaylight.mdsal.common.api.CommitInfo;
13 import org.opendaylight.protocol.bgp.openconfig.spi.BGPTableTypeRegistryConsumer;
14 import org.opendaylight.protocol.bgp.rib.impl.spi.RIB;
15 import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.neighbors.Neighbor;
16 import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.top.Bgp;
17 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
20 * Common interface for BgpPeer and AppPeer beans.
22 public interface PeerBean extends AutoCloseable {
24 void start(RIB rib, Neighbor neighbor, InstanceIdentifier<Bgp> bgpIid, PeerGroupConfigLoader peerGroupLoader,
25 BGPTableTypeRegistryConsumer tableTypeRegistry);
27 void restart(RIB rib, InstanceIdentifier<Bgp> bgpIid, PeerGroupConfigLoader peerGroupLoader,
28 BGPTableTypeRegistryConsumer tableTypeRegistry);
33 void instantiateServiceInstance();
35 FluentFuture<? extends CommitInfo> closeServiceInstance();
37 Boolean containsEqualConfiguration(Neighbor neighbor);