/** * Copyright (c) 2014 Cisco Systems, Inc. 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.controller.md.statistics.manager; import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.flow.node.SwitchFeatures; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.OpendaylightInventoryListener; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; /** * statistics-manager * org.opendaylight.controller.md.statistics.manager.impl * * StatNodeRegistration * Class represents {@link org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode} * {@link org.opendaylight.controller.md.sal.binding.api.DataChangeListener} in Operational/DataStore for ADD / REMOVE * actions which are represented connect / disconnect OF actions. Connect functionality are expecting * * @author Vaclav Demcak * * Created: Sep 5, 2014 */ public interface StatNodeRegistration extends OpendaylightInventoryListener, AutoCloseable { /** * Method contains {@link org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode} registration to {@link StatisticsManager} * for permanently collecting statistics by {@link StatPermCollector} and * as a prevention to use a validation check to the Operational/DS for identify * connected {@link org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode}. * * @param InstanceIdentifier keyIdent * @param FlowCapableNode data * @param InstanceIdentifier nodeIdent */ void connectFlowCapableNode(InstanceIdentifier keyIdent, SwitchFeatures data, InstanceIdentifier nodeIdent); /** * Method cut {@link Node} registration for {@link StatPermCollector} * * @param InstanceIdentifier keyIdent */ void disconnectFlowCapableNode(InstanceIdentifier keyIdent); }