syntax = "proto3";
option java_package = "org.onosproject.grpc.net";

package Link;

enum LinkType {
  // Signifies that this is a direct single-segment link.
  DIRECT = 0;

  // Signifies that this link is potentially comprised from multiple
  //underlying segments or hops, and as such should be used to tag
  // links traversing optical paths, tunnels or intervening 'dark'
  // switches.
  INDIRECT = 1;

  // Signifies that this link is an edge, i.e. host link.
  EDGE = 2;

  // Signifies that this link represents a logical link backed by
  // some form of a tunnel, e.g., GRE, MPLS, ODUk, OCH.
  TUNNEL = 3;

  // Signifies that this link is realized by fiber (either single channel or WDM).
  OPTICAL = 4;

  // Signifies that this link is a virtual link or a pseudo-wire.
  VIRTUAL = 5;
}

message ConnectPoint {
  oneof element_id {
    // DeviceID as String DeviceId#toString
    string device_id = 1;

    // TODO add support to other element_id if required
  }
  // PortNumber as String PortNumber#toString
  string port_number = 2;
}

message LinkDescription {
  ConnectPoint src = 1;
  ConnectPoint dst = 2;
  LinkType type = 3;
  map<string, string> annotations = 4;
}
