/* * Copyright (c) 2013, 2015 EBay Software Foundation 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.ovsdb.lib.message; import com.fasterxml.jackson.databind.JsonNode; import com.google.common.util.concurrent.ListenableFuture; import java.util.List; import org.opendaylight.ovsdb.lib.jsonrpc.Params; public interface OvsdbRPC { String REGISTER_CALLBACK_METHOD = "registerCallback"; //public ListenableFuture get_schema(List db_names); ListenableFuture get_schema(List dbNames); ListenableFuture> echo(); ListenableFuture monitor(Params equest); ListenableFuture> list_dbs(); ListenableFuture> transact(TransactBuilder transact); ListenableFuture cancel(String id); ListenableFuture monitor_cancel(Params jsonValue); ListenableFuture lock(List id); ListenableFuture steal(List id); ListenableFuture unlock(List id); boolean registerCallback(Callback callback); interface Callback { void update(Object context, UpdateNotification upadateNotification); void locked(Object context, List ids); void stolen(Object context, List ids); // ECHO is handled by JsonRPCEndpoint directly. // We can add Echo request here if there is a need for clients to handle it. } }