Package org.opendaylight.ovsdb.lib
Interface OvsdbClient
- All Known Implementing Classes:
 OvsdbClientImpl
public interface OvsdbClient
The main interface to interact with a device speaking ovsdb protocol in an asynchronous fashion and hence most
 operations return a Future object representing the eventual response data from the remote.
- 
Method Summary
Modifier and TypeMethodDescriptionvoidcancelMonitor(MonitorHandle handler) Cancels an existing monitor method.voidcancelMonitor(MonitorHandle handler, int timeout) Cancels an existing monitor method.<T extends TypedBaseTable<?>>
TcreateTypedRowWrapper(Class<T> klazz) User friendly convenient methods that make use of TyperUtils.getTypedRowWrapper to create a Typed Row Proxy given the Typed Table Class.<T extends TypedBaseTable<?>>
TcreateTypedRowWrapper(DatabaseSchema dbSchema, Class<T> klazz) User friendly convenient methods that make use of getTypedRowWrapper to create a Typed Row Proxy given DatabaseSchema and Typed Table Class.voidecho()ovsdb echo operation.Gets the list of database names exposed by this ovsdb capable device.getDatabaseSchema(String dbName) com.google.common.util.concurrent.ListenableFuture<TypedDatabaseSchema>Asynchronously returns the schema object for a specific database.<T extends TypedBaseTable<?>>
TgetTypedRowWrapper(Class<T> klazz, Row<GenericTableSchema> row) User friendly convenient method to get a Typed Row Proxy given a Typed Table Class and the Row to be wrapped.booleanisActive()booleanvoidlock(String lockId, LockAquisitionCallback lockedCallBack, LockStolenCallback stolenCallback) ovsdb lock operation.<E extends TableSchema<E>>
TableUpdatesmonitor(DatabaseSchema schema, List<MonitorRequest> monitorRequests, MonitorCallBack callback) ovsdb monitor operation.<E extends TableSchema<E>>
TableUpdatesmonitor(DatabaseSchema schema, List<MonitorRequest> monitorRequests, MonitorCallBack callback, int timeout) ovsdb monitor operation.<E extends TableSchema<E>>
TableUpdatesmonitor(DatabaseSchema schema, List<MonitorRequest> monitorRequests, MonitorHandle monitorHandle, MonitorCallBack callback) ovsdb monitor operation.<E extends TableSchema<E>>
TableUpdatesmonitor(DatabaseSchema schema, List<MonitorRequest> monitorRequests, MonitorHandle monitorHandle, MonitorCallBack callback, int timeout) ovsdb monitor operation.voidsetConnectionPublished(boolean status) voidstartEchoService(EchoServiceCallbackFilters callbackFilters) Starts the echo service.com.google.common.util.concurrent.ListenableFuture<Boolean>ovsdb steal operation.voidStops the echo service, i.e echo requests from the remote would not be acknowledged after this call.com.google.common.util.concurrent.ListenableFuture<List<OperationResult>>transact(DatabaseSchema dbSchema, List<Operation> operations) Execute the list of operations in a single Transactions.transactBuilder(DatabaseSchema dbSchema) Allows for a mini DSL way of collecting the transactions to be executed against the ovsdb instance.com.google.common.util.concurrent.ListenableFuture<Boolean>ovsdb unlock operation. 
- 
Method Details
- 
getDatabases
Gets the list of database names exposed by this ovsdb capable device.- Returns:
 - list of database names
 
 - 
getSchema
Asynchronously returns the schema object for a specific database.- Parameters:
 database- name of the database schema- Returns:
 - DatabaseSchema future
 
 - 
transactBuilder
Allows for a mini DSL way of collecting the transactions to be executed against the ovsdb instance.- Returns:
 - TransactionBuilder
 
 - 
transact
com.google.common.util.concurrent.ListenableFuture<List<OperationResult>> transact(DatabaseSchema dbSchema, List<Operation> operations) Execute the list of operations in a single Transactions. Similar to the transactBuilder() method- Parameters:
 operations- List of operations that needs to be part of a transact call- Returns:
 - Future object representing the result of the transaction. Calling cancel on the Future would cause OVSDB cancel operation to be fired against the device.
 
 - 
monitor
<E extends TableSchema<E>> TableUpdates monitor(DatabaseSchema schema, List<MonitorRequest> monitorRequests, MonitorCallBack callback) ovsdb monitor operation.- Parameters:
 monitorRequests- represents what needs to be monitored including a client specified monitor handle. This handle is used to later cancel (cancelMonitor(MonitorHandle)) the monitor.callback- receives the monitor response
 - 
monitor
<E extends TableSchema<E>> TableUpdates monitor(DatabaseSchema schema, List<MonitorRequest> monitorRequests, MonitorCallBack callback, int timeout) ovsdb monitor operation.- Parameters:
 monitorRequests- represents what needs to be monitored including a client specified monitor handle. This handle is used to later cancel (cancelMonitor(MonitorHandle)) the monitor.callback- receives the monitor responsetimeout- time in seconds for monitor transaction timeout
 - 
monitor
<E extends TableSchema<E>> TableUpdates monitor(DatabaseSchema schema, List<MonitorRequest> monitorRequests, MonitorHandle monitorHandle, MonitorCallBack callback) ovsdb monitor operation.- Parameters:
 monitorRequests- represents what needs to be monitoredmonitorHandle- A client specified monitor handle. This handle is used to later cancel (cancelMonitor(MonitorHandle)) the monitor.callback- receives the monitor response
 - 
monitor
<E extends TableSchema<E>> TableUpdates monitor(DatabaseSchema schema, List<MonitorRequest> monitorRequests, MonitorHandle monitorHandle, MonitorCallBack callback, int timeout) ovsdb monitor operation.- Parameters:
 monitorRequests- represents what needs to be monitoredmonitorHandle- A client specified monitor handle. This handle is used to later cancel (cancelMonitor(MonitorHandle)) the monitor.callback- receives the monitor responsetimeout- time in seconds for monitor transaction timeout
 - 
cancelMonitor
Cancels an existing monitor method.- Parameters:
 handler- Handle identifying a specific monitor request that is being cancelled.- Throws:
 IllegalStateException- if there is no outstanding monitor request for this handle
 - 
cancelMonitor
Cancels an existing monitor method.- Parameters:
 handler- Handle identifying a specific monitor request that is being cancelled.timeout- time in seconds for monitor transaction timeout- Throws:
 IllegalStateException- if there is no outstanding monitor request for this handle
 - 
lock
ovsdb lock operation.- Parameters:
 lockId- a client specified id for the lock; this can be used for unlocking (unLock(String))lockedCallBack- Callback to nofify when the lock is acquiredstolenCallback- Callback to notify when an acquired lock is stolen by another client
 - 
steal
ovsdb steal operation. Seelock(String, LockAquisitionCallback, LockStolenCallback) - 
unLock
ovsdb unlock operation. SeeunLock(String) - 
echo
ovsdb echo operation. - 
startEchoService
Starts the echo service. ThecallbackFilterscan be used to get notified on the absence of echo notifications from the remote device and control the frequency of such notifications.- Parameters:
 callbackFilters- callbacks for notifying the client of missing echo calls from remote.
 - 
stopEchoService
void stopEchoService()Stops the echo service, i.e echo requests from the remote would not be acknowledged after this call. - 
getConnectionInfo
OvsdbConnectionInfo getConnectionInfo() - 
isActive
boolean isActive() - 
disconnect
void disconnect() - 
getDatabaseSchema
 - 
createTypedRowWrapper
User friendly convenient methods that make use of TyperUtils.getTypedRowWrapper to create a Typed Row Proxy given the Typed Table Class.- Parameters:
 klazz- Typed Interface- Returns:
 - Proxy wrapper for the actual raw Row class.
 
 - 
createTypedRowWrapper
User friendly convenient methods that make use of getTypedRowWrapper to create a Typed Row Proxy given DatabaseSchema and Typed Table Class.- Parameters:
 dbSchema- Database Schema of interestklazz- Typed Interface- Returns:
 - Proxy wrapper for the actual raw Row class.
 
 - 
getTypedRowWrapper
User friendly convenient method to get a Typed Row Proxy given a Typed Table Class and the Row to be wrapped.- Parameters:
 klazz- Typed Interfacerow- The actual Row that the wrapper is operating on. It can be null if the caller is just interested in getting ColumnSchema.- Returns:
 - Proxy wrapper for the actual raw Row class.
 
 - 
isConnectionPublished
boolean isConnectionPublished() - 
setConnectionPublished
void setConnectionPublished(boolean status)  
 -