Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package api
import (
"context"
"time"
cpb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/configurationmanagement"
nbi "code.fbi.h-da.de/danet/gosdn/controller/northbound/client"
)
// ExportSDNConfig returns the SDN configuration.
func ExportSDNConfig(ctx context.Context, addr, pid string) (*cpb.ExportSDNConfigResponse, error) {
configClient, err := nbi.ConfigurationManagementClient(addr, dialOptions...)
if err != nil {
return nil, err
}
req := &cpb.ExportSDNConfigRequest{
Timestamp: time.Now().UnixNano(),
Pid: pid,
}
return configClient.ExportSDNConfig(ctx, req)
}
// ImportSDNConfig receives an SDN configuration and imports it.
func ImportSDNConfig(ctx context.Context, addr, pid, sdnConfigData string) (*cpb.ImportSDNConfigResponse, error) {
configClient, err := nbi.ConfigurationManagementClient(addr, dialOptions...)
if err != nil {
return nil, err
}
req := &cpb.ImportSDNConfigRequest{
Timestamp: time.Now().UnixNano(),
Pid: pid,
SdnConfigData: sdnConfigData,
}
return configClient.ImportSDNConfig(ctx, req)
}