2 * Copyright (C) 2013 Red Hat, Inc.
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
8 * Authors : Madhu Venugopal, Brent Salisbury
10 package org.opendaylight.ovsdb.plugin;
15 import org.opendaylight.controller.sal.core.Node;
16 import org.opendaylight.controller.sal.core.Property;
17 import org.opendaylight.controller.sal.core.UpdateType;
18 import org.opendaylight.controller.sal.inventory.IPluginInInventoryService;
19 import org.opendaylight.ovsdb.lib.database.DatabaseSchema;
20 import org.opendaylight.ovsdb.lib.message.TableUpdates;
21 import org.opendaylight.ovsdb.lib.table.internal.Table;
23 public interface InventoryServiceInternal extends IPluginInInventoryService {
24 public Map<String, Map<String, Table<?>>> getCache(Node n);
25 public Map<String, Table<?>> getTableCache(Node n, String tableName);
26 public Table<?> getRow (Node n, String tableName, String uuid);
27 public void updateRow(Node n, String tableName, String uuid, Table<?> row);
28 public void removeRow(Node n, String tableName, String uuid);
29 public void processTableUpdates(Node n, TableUpdates tableUpdates);
30 public void updateDatabaseSchema(Node n, DatabaseSchema schema);
31 public DatabaseSchema getDatabaseSchema(Node n);
32 public void printCache(Node n);
34 public void addNode(Node n, Set<Property> props);
35 public void notifyNodeAdded(Node n);
36 public void removeNode(Node n);
37 public void addNodeProperty(Node node, UpdateType type, Set<Property> props);