2015-10-26 21:47:48 +00:00
|
|
|
package network
|
|
|
|
|
|
|
|
import (
|
2017-04-11 19:52:33 +00:00
|
|
|
"golang.org/x/net/context"
|
|
|
|
|
2016-09-06 18:46:37 +00:00
|
|
|
"github.com/docker/docker/api/types"
|
2016-11-17 05:46:37 +00:00
|
|
|
"github.com/docker/docker/api/types/filters"
|
2016-09-06 18:46:37 +00:00
|
|
|
"github.com/docker/docker/api/types/network"
|
2015-10-26 21:47:48 +00:00
|
|
|
"github.com/docker/libnetwork"
|
|
|
|
)
|
|
|
|
|
2015-12-30 17:20:41 +00:00
|
|
|
// Backend is all the methods that need to be implemented
|
|
|
|
// to provide network specific functionality.
|
2015-10-26 21:47:48 +00:00
|
|
|
type Backend interface {
|
2017-10-31 19:46:53 +00:00
|
|
|
FindUniqueNetwork(idName string) (libnetwork.Network, error)
|
2016-06-14 02:52:49 +00:00
|
|
|
GetNetworks() []libnetwork.Network
|
2016-04-13 08:33:46 +00:00
|
|
|
CreateNetwork(nc types.NetworkCreateRequest) (*types.NetworkCreateResponse, error)
|
2016-01-08 00:18:34 +00:00
|
|
|
ConnectContainerToNetwork(containerName, networkName string, endpointConfig *network.EndpointSettings) error
|
2016-08-26 20:08:28 +00:00
|
|
|
DisconnectContainerFromNetwork(containerName string, networkName string, force bool) error
|
2017-10-31 19:46:53 +00:00
|
|
|
DeleteNetwork(networkID string) error
|
2017-04-11 19:52:33 +00:00
|
|
|
NetworksPrune(ctx context.Context, pruneFilters filters.Args) (*types.NetworksPruneReport, error)
|
2015-10-26 21:47:48 +00:00
|
|
|
}
|