X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fadsal%2Fsal%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Finventory%2FIPluginInInventoryService.java;fp=opendaylight%2Fadsal%2Fsal%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Finventory%2FIPluginInInventoryService.java;h=4007dc86e78974d7d36dc7540b4a3fc044d48fdc;hb=42c32160bfd41de57189bb246fec5ffb48ed8e9e;hp=0000000000000000000000000000000000000000;hpb=edf5bfcee83c750853253ccfd991ba7000f5f65b;p=controller.git diff --git a/opendaylight/adsal/sal/api/src/main/java/org/opendaylight/controller/sal/inventory/IPluginInInventoryService.java b/opendaylight/adsal/sal/api/src/main/java/org/opendaylight/controller/sal/inventory/IPluginInInventoryService.java new file mode 100644 index 0000000000..4007dc86e7 --- /dev/null +++ b/opendaylight/adsal/sal/api/src/main/java/org/opendaylight/controller/sal/inventory/IPluginInInventoryService.java @@ -0,0 +1,48 @@ + +/* + * Copyright (c) 2013 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.sal.inventory; + +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentMap; + +import org.opendaylight.controller.sal.core.Node; +import org.opendaylight.controller.sal.core.NodeConnector; +import org.opendaylight.controller.sal.core.Property; + +/** + * The Interface describes methods invoked from SAL toward the protocol plugin + * to solicit existing inventory data. + */ +public interface IPluginInInventoryService { + /** + * The method retrieves all the existing nodes and properties attached + * + * @return map of {@link org.opendaylight.controller.sal.core.Node} and {@link org.opendaylight.controller.sal.core.Property} + */ + public ConcurrentMap> getNodeProps(); + + /** + * The method retrieve all the existing nodeConnectors and their properties + * + * @param refresh true if it needs to solicit Openflow core; otherwise, retrieve from local cache. + * @return map of {@link org.opendaylight.controller.sal.core.NodeConnector} and {@link org.opendaylight.controller.sal.core.Property} + */ + public ConcurrentMap> getNodeConnectorProps( + Boolean refresh); + + /** + * The method retrieves all the configured nodes that are not connected to + * the controller + * + * @return Set of {@link org.opendaylight.controller.sal.core.Node} + */ + public Set getConfiguredNotConnectedNodes(); +}