-/**
- * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
+/*
+ * Copyright (c) 2013 Pantheon Technologies s.r.o. 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.openflowjava.protocol.spi.connection;
-import java.util.Collection;
-import java.util.List;
-import java.util.concurrent.Future;
+package org.opendaylight.openflowjava.protocol.spi.connection;
import org.opendaylight.openflowjava.protocol.api.connection.ConnectionConfiguration;
import org.opendaylight.openflowjava.protocol.api.connection.SwitchConnectionHandler;
+import org.opendaylight.openflowjava.protocol.api.extensibility.DeserializerExtensionProvider;
+import org.opendaylight.openflowjava.protocol.api.extensibility.SerializerExtensionProvider;
+
+import com.google.common.util.concurrent.ListenableFuture;
/**
* @author mirehak
+ * @author michal.polkorab
*
*/
-public interface SwitchConnectionProvider {
+public interface SwitchConnectionProvider extends AutoCloseable,
+ SerializerExtensionProvider, DeserializerExtensionProvider {
/**
- * @param configurations list of [protocol, port, address and supported features]
+ * @param configuration [protocol, port, address and supported features]
*/
- public void configure(Collection<ConnectionConfiguration> configurations);
-
+ void setConfiguration(ConnectionConfiguration configuration);
+
/**
* start listening to switches, but please don't forget to do
* {@link #setSwitchConnectionHandler(SwitchConnectionHandler)} first
- * @return future, triggered to true, when all listening channels are up and running
+ * @return future, triggered to true, when listening channel is up and running
*/
- public Future<List<Boolean>> startup();
-
+ ListenableFuture<Boolean> startup();
+
/**
* stop listening to switches
* @return future, triggered to true, when all listening channels are down
*/
- public Future<List<Boolean>> shutdown();
-
+ ListenableFuture<Boolean> shutdown();
+
/**
* @param switchConHandler instance being informed when new switch connects
*/
- public void setSwitchConnectionHandler(SwitchConnectionHandler switchConHandler);
-
-}
+ void setSwitchConnectionHandler(SwitchConnectionHandler switchConHandler);
+
+}
\ No newline at end of file