syntax = "proto3";

package gosdn.transport;

import "google/protobuf/descriptor.proto";
import "github.com/openconfig/gnmi/proto/gnmi/gnmi.proto";
import "gosdn/southbound/southbound.proto";

option go_package = "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/transport";

message TransportOption {
  string address = 1;
  string username = 2;
  string password = 3;
  bool tls = 4;
  oneof transport_option {
    GnmiTransportOption gnmi_transport_option = 5;
    RestconfTransportOption restconf_transport_option = 6;
  }
  .gosdn.southbound.Type type = 7;
}

message GnmiTransportOption {
  string compression = 1;
  map<string,string> grpc_dial_options = 2;
  string token = 3;
  gnmi.Encoding encoding = 4;
}

message RestconfTransportOption {

}
