github.com/onosproject/onos-api/go@v0.10.32/onos/fabricsim/links.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: onos/fabricsim/links.proto
     3  
     4  package fabricsim
     5  
     6  import (
     7  	context "context"
     8  	fmt "fmt"
     9  	_ "github.com/gogo/protobuf/gogoproto"
    10  	proto "github.com/gogo/protobuf/proto"
    11  	grpc "google.golang.org/grpc"
    12  	codes "google.golang.org/grpc/codes"
    13  	status "google.golang.org/grpc/status"
    14  	io "io"
    15  	math "math"
    16  	math_bits "math/bits"
    17  )
    18  
    19  // Reference imports to suppress errors if they are not otherwise used.
    20  var _ = proto.Marshal
    21  var _ = fmt.Errorf
    22  var _ = math.Inf
    23  
    24  // This is a compile-time assertion to ensure that this generated file
    25  // is compatible with the proto package it is being compiled against.
    26  // A compilation error at this line likely means your copy of the
    27  // proto package needs to be updated.
    28  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    29  
    30  // LinkStatus represents the operational status of the link, derived from the status of its adjacent ports
    31  type LinkStatus int32
    32  
    33  const (
    34  	LinkStatus_LINK_DOWN LinkStatus = 0
    35  	LinkStatus_LINK_UP   LinkStatus = 1
    36  )
    37  
    38  var LinkStatus_name = map[int32]string{
    39  	0: "LINK_DOWN",
    40  	1: "LINK_UP",
    41  }
    42  
    43  var LinkStatus_value = map[string]int32{
    44  	"LINK_DOWN": 0,
    45  	"LINK_UP":   1,
    46  }
    47  
    48  func (x LinkStatus) String() string {
    49  	return proto.EnumName(LinkStatus_name, int32(x))
    50  }
    51  
    52  func (LinkStatus) EnumDescriptor() ([]byte, []int) {
    53  	return fileDescriptor_fc16fca2ba28ce9e, []int{0}
    54  }
    55  
    56  // Link describes a simulated link, i.e a link between two device or host ports
    57  type Link struct {
    58  	// unique port id and port type
    59  	ID LinkID `protobuf:"bytes,1,opt,name=id,proto3,casttype=LinkID" json:"id,omitempty"`
    60  	// unique port ids of source and target ports
    61  	SrcID PortID `protobuf:"bytes,2,opt,name=src_id,json=srcId,proto3,casttype=PortID" json:"src_id,omitempty"`
    62  	TgtID PortID `protobuf:"bytes,3,opt,name=tgt_id,json=tgtId,proto3,casttype=PortID" json:"tgt_id,omitempty"`
    63  	// status (operational state derived from the status of its adjacent ports)
    64  	Status LinkStatus `protobuf:"varint,4,opt,name=status,proto3,enum=onos.fabricsim.LinkStatus" json:"status,omitempty"`
    65  }
    66  
    67  func (m *Link) Reset()         { *m = Link{} }
    68  func (m *Link) String() string { return proto.CompactTextString(m) }
    69  func (*Link) ProtoMessage()    {}
    70  func (*Link) Descriptor() ([]byte, []int) {
    71  	return fileDescriptor_fc16fca2ba28ce9e, []int{0}
    72  }
    73  func (m *Link) XXX_Unmarshal(b []byte) error {
    74  	return m.Unmarshal(b)
    75  }
    76  func (m *Link) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    77  	if deterministic {
    78  		return xxx_messageInfo_Link.Marshal(b, m, deterministic)
    79  	} else {
    80  		b = b[:cap(b)]
    81  		n, err := m.MarshalToSizedBuffer(b)
    82  		if err != nil {
    83  			return nil, err
    84  		}
    85  		return b[:n], nil
    86  	}
    87  }
    88  func (m *Link) XXX_Merge(src proto.Message) {
    89  	xxx_messageInfo_Link.Merge(m, src)
    90  }
    91  func (m *Link) XXX_Size() int {
    92  	return m.Size()
    93  }
    94  func (m *Link) XXX_DiscardUnknown() {
    95  	xxx_messageInfo_Link.DiscardUnknown(m)
    96  }
    97  
    98  var xxx_messageInfo_Link proto.InternalMessageInfo
    99  
   100  func (m *Link) GetID() LinkID {
   101  	if m != nil {
   102  		return m.ID
   103  	}
   104  	return ""
   105  }
   106  
   107  func (m *Link) GetSrcID() PortID {
   108  	if m != nil {
   109  		return m.SrcID
   110  	}
   111  	return ""
   112  }
   113  
   114  func (m *Link) GetTgtID() PortID {
   115  	if m != nil {
   116  		return m.TgtID
   117  	}
   118  	return ""
   119  }
   120  
   121  func (m *Link) GetStatus() LinkStatus {
   122  	if m != nil {
   123  		return m.Status
   124  	}
   125  	return LinkStatus_LINK_DOWN
   126  }
   127  
   128  type GetLinksRequest struct {
   129  }
   130  
   131  func (m *GetLinksRequest) Reset()         { *m = GetLinksRequest{} }
   132  func (m *GetLinksRequest) String() string { return proto.CompactTextString(m) }
   133  func (*GetLinksRequest) ProtoMessage()    {}
   134  func (*GetLinksRequest) Descriptor() ([]byte, []int) {
   135  	return fileDescriptor_fc16fca2ba28ce9e, []int{1}
   136  }
   137  func (m *GetLinksRequest) XXX_Unmarshal(b []byte) error {
   138  	return m.Unmarshal(b)
   139  }
   140  func (m *GetLinksRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   141  	if deterministic {
   142  		return xxx_messageInfo_GetLinksRequest.Marshal(b, m, deterministic)
   143  	} else {
   144  		b = b[:cap(b)]
   145  		n, err := m.MarshalToSizedBuffer(b)
   146  		if err != nil {
   147  			return nil, err
   148  		}
   149  		return b[:n], nil
   150  	}
   151  }
   152  func (m *GetLinksRequest) XXX_Merge(src proto.Message) {
   153  	xxx_messageInfo_GetLinksRequest.Merge(m, src)
   154  }
   155  func (m *GetLinksRequest) XXX_Size() int {
   156  	return m.Size()
   157  }
   158  func (m *GetLinksRequest) XXX_DiscardUnknown() {
   159  	xxx_messageInfo_GetLinksRequest.DiscardUnknown(m)
   160  }
   161  
   162  var xxx_messageInfo_GetLinksRequest proto.InternalMessageInfo
   163  
   164  type GetLinksResponse struct {
   165  	Links []*Link `protobuf:"bytes,1,rep,name=links,proto3" json:"links,omitempty"`
   166  }
   167  
   168  func (m *GetLinksResponse) Reset()         { *m = GetLinksResponse{} }
   169  func (m *GetLinksResponse) String() string { return proto.CompactTextString(m) }
   170  func (*GetLinksResponse) ProtoMessage()    {}
   171  func (*GetLinksResponse) Descriptor() ([]byte, []int) {
   172  	return fileDescriptor_fc16fca2ba28ce9e, []int{2}
   173  }
   174  func (m *GetLinksResponse) XXX_Unmarshal(b []byte) error {
   175  	return m.Unmarshal(b)
   176  }
   177  func (m *GetLinksResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   178  	if deterministic {
   179  		return xxx_messageInfo_GetLinksResponse.Marshal(b, m, deterministic)
   180  	} else {
   181  		b = b[:cap(b)]
   182  		n, err := m.MarshalToSizedBuffer(b)
   183  		if err != nil {
   184  			return nil, err
   185  		}
   186  		return b[:n], nil
   187  	}
   188  }
   189  func (m *GetLinksResponse) XXX_Merge(src proto.Message) {
   190  	xxx_messageInfo_GetLinksResponse.Merge(m, src)
   191  }
   192  func (m *GetLinksResponse) XXX_Size() int {
   193  	return m.Size()
   194  }
   195  func (m *GetLinksResponse) XXX_DiscardUnknown() {
   196  	xxx_messageInfo_GetLinksResponse.DiscardUnknown(m)
   197  }
   198  
   199  var xxx_messageInfo_GetLinksResponse proto.InternalMessageInfo
   200  
   201  func (m *GetLinksResponse) GetLinks() []*Link {
   202  	if m != nil {
   203  		return m.Links
   204  	}
   205  	return nil
   206  }
   207  
   208  type GetLinkRequest struct {
   209  	ID LinkID `protobuf:"bytes,1,opt,name=id,proto3,casttype=LinkID" json:"id,omitempty"`
   210  }
   211  
   212  func (m *GetLinkRequest) Reset()         { *m = GetLinkRequest{} }
   213  func (m *GetLinkRequest) String() string { return proto.CompactTextString(m) }
   214  func (*GetLinkRequest) ProtoMessage()    {}
   215  func (*GetLinkRequest) Descriptor() ([]byte, []int) {
   216  	return fileDescriptor_fc16fca2ba28ce9e, []int{3}
   217  }
   218  func (m *GetLinkRequest) XXX_Unmarshal(b []byte) error {
   219  	return m.Unmarshal(b)
   220  }
   221  func (m *GetLinkRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   222  	if deterministic {
   223  		return xxx_messageInfo_GetLinkRequest.Marshal(b, m, deterministic)
   224  	} else {
   225  		b = b[:cap(b)]
   226  		n, err := m.MarshalToSizedBuffer(b)
   227  		if err != nil {
   228  			return nil, err
   229  		}
   230  		return b[:n], nil
   231  	}
   232  }
   233  func (m *GetLinkRequest) XXX_Merge(src proto.Message) {
   234  	xxx_messageInfo_GetLinkRequest.Merge(m, src)
   235  }
   236  func (m *GetLinkRequest) XXX_Size() int {
   237  	return m.Size()
   238  }
   239  func (m *GetLinkRequest) XXX_DiscardUnknown() {
   240  	xxx_messageInfo_GetLinkRequest.DiscardUnknown(m)
   241  }
   242  
   243  var xxx_messageInfo_GetLinkRequest proto.InternalMessageInfo
   244  
   245  func (m *GetLinkRequest) GetID() LinkID {
   246  	if m != nil {
   247  		return m.ID
   248  	}
   249  	return ""
   250  }
   251  
   252  type GetLinkResponse struct {
   253  	Link *Link `protobuf:"bytes,1,opt,name=link,proto3" json:"link,omitempty"`
   254  }
   255  
   256  func (m *GetLinkResponse) Reset()         { *m = GetLinkResponse{} }
   257  func (m *GetLinkResponse) String() string { return proto.CompactTextString(m) }
   258  func (*GetLinkResponse) ProtoMessage()    {}
   259  func (*GetLinkResponse) Descriptor() ([]byte, []int) {
   260  	return fileDescriptor_fc16fca2ba28ce9e, []int{4}
   261  }
   262  func (m *GetLinkResponse) XXX_Unmarshal(b []byte) error {
   263  	return m.Unmarshal(b)
   264  }
   265  func (m *GetLinkResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   266  	if deterministic {
   267  		return xxx_messageInfo_GetLinkResponse.Marshal(b, m, deterministic)
   268  	} else {
   269  		b = b[:cap(b)]
   270  		n, err := m.MarshalToSizedBuffer(b)
   271  		if err != nil {
   272  			return nil, err
   273  		}
   274  		return b[:n], nil
   275  	}
   276  }
   277  func (m *GetLinkResponse) XXX_Merge(src proto.Message) {
   278  	xxx_messageInfo_GetLinkResponse.Merge(m, src)
   279  }
   280  func (m *GetLinkResponse) XXX_Size() int {
   281  	return m.Size()
   282  }
   283  func (m *GetLinkResponse) XXX_DiscardUnknown() {
   284  	xxx_messageInfo_GetLinkResponse.DiscardUnknown(m)
   285  }
   286  
   287  var xxx_messageInfo_GetLinkResponse proto.InternalMessageInfo
   288  
   289  func (m *GetLinkResponse) GetLink() *Link {
   290  	if m != nil {
   291  		return m.Link
   292  	}
   293  	return nil
   294  }
   295  
   296  type AddLinkRequest struct {
   297  	Link *Link `protobuf:"bytes,1,opt,name=link,proto3" json:"link,omitempty"`
   298  }
   299  
   300  func (m *AddLinkRequest) Reset()         { *m = AddLinkRequest{} }
   301  func (m *AddLinkRequest) String() string { return proto.CompactTextString(m) }
   302  func (*AddLinkRequest) ProtoMessage()    {}
   303  func (*AddLinkRequest) Descriptor() ([]byte, []int) {
   304  	return fileDescriptor_fc16fca2ba28ce9e, []int{5}
   305  }
   306  func (m *AddLinkRequest) XXX_Unmarshal(b []byte) error {
   307  	return m.Unmarshal(b)
   308  }
   309  func (m *AddLinkRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   310  	if deterministic {
   311  		return xxx_messageInfo_AddLinkRequest.Marshal(b, m, deterministic)
   312  	} else {
   313  		b = b[:cap(b)]
   314  		n, err := m.MarshalToSizedBuffer(b)
   315  		if err != nil {
   316  			return nil, err
   317  		}
   318  		return b[:n], nil
   319  	}
   320  }
   321  func (m *AddLinkRequest) XXX_Merge(src proto.Message) {
   322  	xxx_messageInfo_AddLinkRequest.Merge(m, src)
   323  }
   324  func (m *AddLinkRequest) XXX_Size() int {
   325  	return m.Size()
   326  }
   327  func (m *AddLinkRequest) XXX_DiscardUnknown() {
   328  	xxx_messageInfo_AddLinkRequest.DiscardUnknown(m)
   329  }
   330  
   331  var xxx_messageInfo_AddLinkRequest proto.InternalMessageInfo
   332  
   333  func (m *AddLinkRequest) GetLink() *Link {
   334  	if m != nil {
   335  		return m.Link
   336  	}
   337  	return nil
   338  }
   339  
   340  type AddLinkResponse struct {
   341  }
   342  
   343  func (m *AddLinkResponse) Reset()         { *m = AddLinkResponse{} }
   344  func (m *AddLinkResponse) String() string { return proto.CompactTextString(m) }
   345  func (*AddLinkResponse) ProtoMessage()    {}
   346  func (*AddLinkResponse) Descriptor() ([]byte, []int) {
   347  	return fileDescriptor_fc16fca2ba28ce9e, []int{6}
   348  }
   349  func (m *AddLinkResponse) XXX_Unmarshal(b []byte) error {
   350  	return m.Unmarshal(b)
   351  }
   352  func (m *AddLinkResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   353  	if deterministic {
   354  		return xxx_messageInfo_AddLinkResponse.Marshal(b, m, deterministic)
   355  	} else {
   356  		b = b[:cap(b)]
   357  		n, err := m.MarshalToSizedBuffer(b)
   358  		if err != nil {
   359  			return nil, err
   360  		}
   361  		return b[:n], nil
   362  	}
   363  }
   364  func (m *AddLinkResponse) XXX_Merge(src proto.Message) {
   365  	xxx_messageInfo_AddLinkResponse.Merge(m, src)
   366  }
   367  func (m *AddLinkResponse) XXX_Size() int {
   368  	return m.Size()
   369  }
   370  func (m *AddLinkResponse) XXX_DiscardUnknown() {
   371  	xxx_messageInfo_AddLinkResponse.DiscardUnknown(m)
   372  }
   373  
   374  var xxx_messageInfo_AddLinkResponse proto.InternalMessageInfo
   375  
   376  type RemoveLinkRequest struct {
   377  	ID LinkID `protobuf:"bytes,1,opt,name=id,proto3,casttype=LinkID" json:"id,omitempty"`
   378  }
   379  
   380  func (m *RemoveLinkRequest) Reset()         { *m = RemoveLinkRequest{} }
   381  func (m *RemoveLinkRequest) String() string { return proto.CompactTextString(m) }
   382  func (*RemoveLinkRequest) ProtoMessage()    {}
   383  func (*RemoveLinkRequest) Descriptor() ([]byte, []int) {
   384  	return fileDescriptor_fc16fca2ba28ce9e, []int{7}
   385  }
   386  func (m *RemoveLinkRequest) XXX_Unmarshal(b []byte) error {
   387  	return m.Unmarshal(b)
   388  }
   389  func (m *RemoveLinkRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   390  	if deterministic {
   391  		return xxx_messageInfo_RemoveLinkRequest.Marshal(b, m, deterministic)
   392  	} else {
   393  		b = b[:cap(b)]
   394  		n, err := m.MarshalToSizedBuffer(b)
   395  		if err != nil {
   396  			return nil, err
   397  		}
   398  		return b[:n], nil
   399  	}
   400  }
   401  func (m *RemoveLinkRequest) XXX_Merge(src proto.Message) {
   402  	xxx_messageInfo_RemoveLinkRequest.Merge(m, src)
   403  }
   404  func (m *RemoveLinkRequest) XXX_Size() int {
   405  	return m.Size()
   406  }
   407  func (m *RemoveLinkRequest) XXX_DiscardUnknown() {
   408  	xxx_messageInfo_RemoveLinkRequest.DiscardUnknown(m)
   409  }
   410  
   411  var xxx_messageInfo_RemoveLinkRequest proto.InternalMessageInfo
   412  
   413  func (m *RemoveLinkRequest) GetID() LinkID {
   414  	if m != nil {
   415  		return m.ID
   416  	}
   417  	return ""
   418  }
   419  
   420  type RemoveLinkResponse struct {
   421  }
   422  
   423  func (m *RemoveLinkResponse) Reset()         { *m = RemoveLinkResponse{} }
   424  func (m *RemoveLinkResponse) String() string { return proto.CompactTextString(m) }
   425  func (*RemoveLinkResponse) ProtoMessage()    {}
   426  func (*RemoveLinkResponse) Descriptor() ([]byte, []int) {
   427  	return fileDescriptor_fc16fca2ba28ce9e, []int{8}
   428  }
   429  func (m *RemoveLinkResponse) XXX_Unmarshal(b []byte) error {
   430  	return m.Unmarshal(b)
   431  }
   432  func (m *RemoveLinkResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   433  	if deterministic {
   434  		return xxx_messageInfo_RemoveLinkResponse.Marshal(b, m, deterministic)
   435  	} else {
   436  		b = b[:cap(b)]
   437  		n, err := m.MarshalToSizedBuffer(b)
   438  		if err != nil {
   439  			return nil, err
   440  		}
   441  		return b[:n], nil
   442  	}
   443  }
   444  func (m *RemoveLinkResponse) XXX_Merge(src proto.Message) {
   445  	xxx_messageInfo_RemoveLinkResponse.Merge(m, src)
   446  }
   447  func (m *RemoveLinkResponse) XXX_Size() int {
   448  	return m.Size()
   449  }
   450  func (m *RemoveLinkResponse) XXX_DiscardUnknown() {
   451  	xxx_messageInfo_RemoveLinkResponse.DiscardUnknown(m)
   452  }
   453  
   454  var xxx_messageInfo_RemoveLinkResponse proto.InternalMessageInfo
   455  
   456  func init() {
   457  	proto.RegisterEnum("onos.fabricsim.LinkStatus", LinkStatus_name, LinkStatus_value)
   458  	proto.RegisterType((*Link)(nil), "onos.fabricsim.Link")
   459  	proto.RegisterType((*GetLinksRequest)(nil), "onos.fabricsim.GetLinksRequest")
   460  	proto.RegisterType((*GetLinksResponse)(nil), "onos.fabricsim.GetLinksResponse")
   461  	proto.RegisterType((*GetLinkRequest)(nil), "onos.fabricsim.GetLinkRequest")
   462  	proto.RegisterType((*GetLinkResponse)(nil), "onos.fabricsim.GetLinkResponse")
   463  	proto.RegisterType((*AddLinkRequest)(nil), "onos.fabricsim.AddLinkRequest")
   464  	proto.RegisterType((*AddLinkResponse)(nil), "onos.fabricsim.AddLinkResponse")
   465  	proto.RegisterType((*RemoveLinkRequest)(nil), "onos.fabricsim.RemoveLinkRequest")
   466  	proto.RegisterType((*RemoveLinkResponse)(nil), "onos.fabricsim.RemoveLinkResponse")
   467  }
   468  
   469  func init() { proto.RegisterFile("onos/fabricsim/links.proto", fileDescriptor_fc16fca2ba28ce9e) }
   470  
   471  var fileDescriptor_fc16fca2ba28ce9e = []byte{
   472  	// 449 bytes of a gzipped FileDescriptorProto
   473  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x93, 0xcf, 0x6e, 0xd3, 0x40,
   474  	0x10, 0xc6, 0xb3, 0x6e, 0x92, 0xd2, 0x89, 0x48, 0x93, 0x25, 0x07, 0xcb, 0x07, 0xdb, 0xec, 0xc9,
   475  	0xca, 0xc1, 0x91, 0x8c, 0xb8, 0x80, 0x84, 0x44, 0x65, 0x09, 0x19, 0x4a, 0xa9, 0x1c, 0x10, 0xc7,
   476  	0xaa, 0xb5, 0x17, 0x6b, 0x55, 0xea, 0x2d, 0xde, 0x6d, 0x9f, 0x83, 0x87, 0xe1, 0x21, 0xe0, 0xd6,
   477  	0x23, 0xa7, 0x08, 0x39, 0x6f, 0xc1, 0x09, 0x79, 0xed, 0xda, 0x8d, 0x83, 0xf9, 0x73, 0xb3, 0xf7,
   478  	0xfb, 0xcd, 0x37, 0xb3, 0xdf, 0x68, 0xc1, 0xe0, 0x29, 0x17, 0x8b, 0x0f, 0xa7, 0x67, 0x19, 0x8b,
   479  	0x04, 0xbb, 0x58, 0x7c, 0x64, 0xe9, 0xb9, 0x70, 0x2f, 0x33, 0x2e, 0x39, 0x1e, 0x17, 0x9a, 0x5b,
   480  	0x6b, 0xc6, 0x2c, 0xe1, 0x09, 0x57, 0xd2, 0xa2, 0xf8, 0x2a, 0x29, 0xf2, 0x05, 0x41, 0xff, 0x90,
   481  	0xa5, 0xe7, 0xd8, 0x06, 0x8d, 0xc5, 0x3a, 0xb2, 0x91, 0xb3, 0x77, 0x30, 0xc9, 0x57, 0x96, 0x16,
   482  	0xf8, 0x3f, 0x57, 0xd6, 0xb0, 0xd0, 0x02, 0x3f, 0xd4, 0x58, 0x8c, 0xe7, 0x30, 0x14, 0x59, 0x74,
   483  	0xc2, 0x62, 0x5d, 0x53, 0xd4, 0x83, 0x7c, 0x65, 0x0d, 0x96, 0x59, 0x54, 0x82, 0xc7, 0x3c, 0x93,
   484  	0x81, 0x1f, 0x0e, 0x44, 0x16, 0x05, 0x8a, 0x95, 0x89, 0x2c, 0xd8, 0x9d, 0x86, 0x7d, 0x9b, 0xc8,
   485  	0x4d, 0x56, 0x26, 0x32, 0x88, 0xb1, 0x07, 0x43, 0x21, 0x4f, 0xe5, 0x95, 0xd0, 0xfb, 0x36, 0x72,
   486  	0xc6, 0x9e, 0xe1, 0x6e, 0x4e, 0xee, 0x16, 0x33, 0x2c, 0x15, 0x11, 0x56, 0x24, 0x99, 0xc2, 0xfe,
   487  	0x0b, 0x2a, 0x0b, 0x41, 0x84, 0xf4, 0xd3, 0x15, 0x15, 0x92, 0x3c, 0x83, 0x49, 0x73, 0x24, 0x2e,
   488  	0x79, 0x2a, 0x28, 0x9e, 0xc3, 0x40, 0x45, 0xa2, 0x23, 0x7b, 0xc7, 0x19, 0x79, 0xb3, 0xdf, 0x39,
   489  	0x87, 0x25, 0x42, 0x3c, 0x18, 0x57, 0xf5, 0x95, 0xe3, 0xdf, 0x23, 0x21, 0x4f, 0xeb, 0x31, 0xea,
   490  	0x96, 0x0e, 0xf4, 0x0b, 0x3f, 0x55, 0xd6, 0xd5, 0x51, 0x11, 0xe4, 0x09, 0x8c, 0x9f, 0xc7, 0xf1,
   491  	0xdd, 0x86, 0xff, 0x5e, 0x3b, 0x85, 0xfd, 0xba, 0xb6, 0x6c, 0x4c, 0x1e, 0xc3, 0x34, 0xa4, 0x17,
   492  	0xfc, 0x9a, 0xfe, 0xdf, 0x15, 0x66, 0x80, 0xef, 0x96, 0x95, 0x66, 0x73, 0x07, 0xa0, 0x49, 0x1d,
   493  	0xdf, 0x87, 0xbd, 0xc3, 0xe0, 0xe8, 0xd5, 0x89, 0xff, 0xe6, 0xfd, 0xd1, 0xa4, 0x87, 0x47, 0xb0,
   494  	0xab, 0x7e, 0xdf, 0x1d, 0x4f, 0x90, 0xf7, 0x4d, 0x83, 0x91, 0x42, 0x69, 0x76, 0xcd, 0x22, 0x8a,
   495  	0x5f, 0xc3, 0xbd, 0xdb, 0x35, 0x60, 0xab, 0x7d, 0x83, 0xd6, 0xce, 0x0c, 0xbb, 0x1b, 0xa8, 0xe2,
   496  	0x7c, 0x09, 0xbb, 0xd5, 0x19, 0x36, 0x3b, 0xe0, 0x5b, 0x33, 0xab, 0x53, 0x6f, 0xbc, 0xaa, 0xd0,
   497  	0xb6, 0xbd, 0x36, 0x37, 0xb1, 0xed, 0xd5, 0x4a, 0x1b, 0x2f, 0x01, 0x9a, 0xd8, 0xf0, 0xc3, 0x36,
   498  	0xbe, 0xb5, 0x09, 0x83, 0xfc, 0x09, 0x29, 0x4d, 0x0f, 0xf4, 0xaf, 0xb9, 0x89, 0x6e, 0x72, 0x13,
   499  	0xfd, 0xc8, 0x4d, 0xf4, 0x79, 0x6d, 0xf6, 0x6e, 0xd6, 0x66, 0xef, 0xfb, 0xda, 0xec, 0x9d, 0x0d,
   500  	0xd5, 0x6b, 0x7d, 0xf4, 0x2b, 0x00, 0x00, 0xff, 0xff, 0xfc, 0xde, 0xa6, 0x48, 0xf1, 0x03, 0x00,
   501  	0x00,
   502  }
   503  
   504  // Reference imports to suppress errors if they are not otherwise used.
   505  var _ context.Context
   506  var _ grpc.ClientConn
   507  
   508  // This is a compile-time assertion to ensure that this generated file
   509  // is compatible with the grpc package it is being compiled against.
   510  const _ = grpc.SupportPackageIsVersion4
   511  
   512  // LinkServiceClient is the client API for LinkService service.
   513  //
   514  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
   515  type LinkServiceClient interface {
   516  	// GetLinks gets a list of all simulated links
   517  	GetLinks(ctx context.Context, in *GetLinksRequest, opts ...grpc.CallOption) (*GetLinksResponse, error)
   518  	// GetLink gets a specific link entry
   519  	GetLink(ctx context.Context, in *GetLinkRequest, opts ...grpc.CallOption) (*GetLinkResponse, error)
   520  	// AddLink adds a new simulated link
   521  	AddLink(ctx context.Context, in *AddLinkRequest, opts ...grpc.CallOption) (*AddLinkResponse, error)
   522  	// RemoveLink removes a simulated link
   523  	RemoveLink(ctx context.Context, in *RemoveLinkRequest, opts ...grpc.CallOption) (*RemoveLinkResponse, error)
   524  }
   525  
   526  type linkServiceClient struct {
   527  	cc *grpc.ClientConn
   528  }
   529  
   530  func NewLinkServiceClient(cc *grpc.ClientConn) LinkServiceClient {
   531  	return &linkServiceClient{cc}
   532  }
   533  
   534  func (c *linkServiceClient) GetLinks(ctx context.Context, in *GetLinksRequest, opts ...grpc.CallOption) (*GetLinksResponse, error) {
   535  	out := new(GetLinksResponse)
   536  	err := c.cc.Invoke(ctx, "/onos.fabricsim.LinkService/GetLinks", in, out, opts...)
   537  	if err != nil {
   538  		return nil, err
   539  	}
   540  	return out, nil
   541  }
   542  
   543  func (c *linkServiceClient) GetLink(ctx context.Context, in *GetLinkRequest, opts ...grpc.CallOption) (*GetLinkResponse, error) {
   544  	out := new(GetLinkResponse)
   545  	err := c.cc.Invoke(ctx, "/onos.fabricsim.LinkService/GetLink", in, out, opts...)
   546  	if err != nil {
   547  		return nil, err
   548  	}
   549  	return out, nil
   550  }
   551  
   552  func (c *linkServiceClient) AddLink(ctx context.Context, in *AddLinkRequest, opts ...grpc.CallOption) (*AddLinkResponse, error) {
   553  	out := new(AddLinkResponse)
   554  	err := c.cc.Invoke(ctx, "/onos.fabricsim.LinkService/AddLink", in, out, opts...)
   555  	if err != nil {
   556  		return nil, err
   557  	}
   558  	return out, nil
   559  }
   560  
   561  func (c *linkServiceClient) RemoveLink(ctx context.Context, in *RemoveLinkRequest, opts ...grpc.CallOption) (*RemoveLinkResponse, error) {
   562  	out := new(RemoveLinkResponse)
   563  	err := c.cc.Invoke(ctx, "/onos.fabricsim.LinkService/RemoveLink", in, out, opts...)
   564  	if err != nil {
   565  		return nil, err
   566  	}
   567  	return out, nil
   568  }
   569  
   570  // LinkServiceServer is the server API for LinkService service.
   571  type LinkServiceServer interface {
   572  	// GetLinks gets a list of all simulated links
   573  	GetLinks(context.Context, *GetLinksRequest) (*GetLinksResponse, error)
   574  	// GetLink gets a specific link entry
   575  	GetLink(context.Context, *GetLinkRequest) (*GetLinkResponse, error)
   576  	// AddLink adds a new simulated link
   577  	AddLink(context.Context, *AddLinkRequest) (*AddLinkResponse, error)
   578  	// RemoveLink removes a simulated link
   579  	RemoveLink(context.Context, *RemoveLinkRequest) (*RemoveLinkResponse, error)
   580  }
   581  
   582  // UnimplementedLinkServiceServer can be embedded to have forward compatible implementations.
   583  type UnimplementedLinkServiceServer struct {
   584  }
   585  
   586  func (*UnimplementedLinkServiceServer) GetLinks(ctx context.Context, req *GetLinksRequest) (*GetLinksResponse, error) {
   587  	return nil, status.Errorf(codes.Unimplemented, "method GetLinks not implemented")
   588  }
   589  func (*UnimplementedLinkServiceServer) GetLink(ctx context.Context, req *GetLinkRequest) (*GetLinkResponse, error) {
   590  	return nil, status.Errorf(codes.Unimplemented, "method GetLink not implemented")
   591  }
   592  func (*UnimplementedLinkServiceServer) AddLink(ctx context.Context, req *AddLinkRequest) (*AddLinkResponse, error) {
   593  	return nil, status.Errorf(codes.Unimplemented, "method AddLink not implemented")
   594  }
   595  func (*UnimplementedLinkServiceServer) RemoveLink(ctx context.Context, req *RemoveLinkRequest) (*RemoveLinkResponse, error) {
   596  	return nil, status.Errorf(codes.Unimplemented, "method RemoveLink not implemented")
   597  }
   598  
   599  func RegisterLinkServiceServer(s *grpc.Server, srv LinkServiceServer) {
   600  	s.RegisterService(&_LinkService_serviceDesc, srv)
   601  }
   602  
   603  func _LinkService_GetLinks_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   604  	in := new(GetLinksRequest)
   605  	if err := dec(in); err != nil {
   606  		return nil, err
   607  	}
   608  	if interceptor == nil {
   609  		return srv.(LinkServiceServer).GetLinks(ctx, in)
   610  	}
   611  	info := &grpc.UnaryServerInfo{
   612  		Server:     srv,
   613  		FullMethod: "/onos.fabricsim.LinkService/GetLinks",
   614  	}
   615  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   616  		return srv.(LinkServiceServer).GetLinks(ctx, req.(*GetLinksRequest))
   617  	}
   618  	return interceptor(ctx, in, info, handler)
   619  }
   620  
   621  func _LinkService_GetLink_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   622  	in := new(GetLinkRequest)
   623  	if err := dec(in); err != nil {
   624  		return nil, err
   625  	}
   626  	if interceptor == nil {
   627  		return srv.(LinkServiceServer).GetLink(ctx, in)
   628  	}
   629  	info := &grpc.UnaryServerInfo{
   630  		Server:     srv,
   631  		FullMethod: "/onos.fabricsim.LinkService/GetLink",
   632  	}
   633  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   634  		return srv.(LinkServiceServer).GetLink(ctx, req.(*GetLinkRequest))
   635  	}
   636  	return interceptor(ctx, in, info, handler)
   637  }
   638  
   639  func _LinkService_AddLink_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   640  	in := new(AddLinkRequest)
   641  	if err := dec(in); err != nil {
   642  		return nil, err
   643  	}
   644  	if interceptor == nil {
   645  		return srv.(LinkServiceServer).AddLink(ctx, in)
   646  	}
   647  	info := &grpc.UnaryServerInfo{
   648  		Server:     srv,
   649  		FullMethod: "/onos.fabricsim.LinkService/AddLink",
   650  	}
   651  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   652  		return srv.(LinkServiceServer).AddLink(ctx, req.(*AddLinkRequest))
   653  	}
   654  	return interceptor(ctx, in, info, handler)
   655  }
   656  
   657  func _LinkService_RemoveLink_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   658  	in := new(RemoveLinkRequest)
   659  	if err := dec(in); err != nil {
   660  		return nil, err
   661  	}
   662  	if interceptor == nil {
   663  		return srv.(LinkServiceServer).RemoveLink(ctx, in)
   664  	}
   665  	info := &grpc.UnaryServerInfo{
   666  		Server:     srv,
   667  		FullMethod: "/onos.fabricsim.LinkService/RemoveLink",
   668  	}
   669  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   670  		return srv.(LinkServiceServer).RemoveLink(ctx, req.(*RemoveLinkRequest))
   671  	}
   672  	return interceptor(ctx, in, info, handler)
   673  }
   674  
   675  var _LinkService_serviceDesc = grpc.ServiceDesc{
   676  	ServiceName: "onos.fabricsim.LinkService",
   677  	HandlerType: (*LinkServiceServer)(nil),
   678  	Methods: []grpc.MethodDesc{
   679  		{
   680  			MethodName: "GetLinks",
   681  			Handler:    _LinkService_GetLinks_Handler,
   682  		},
   683  		{
   684  			MethodName: "GetLink",
   685  			Handler:    _LinkService_GetLink_Handler,
   686  		},
   687  		{
   688  			MethodName: "AddLink",
   689  			Handler:    _LinkService_AddLink_Handler,
   690  		},
   691  		{
   692  			MethodName: "RemoveLink",
   693  			Handler:    _LinkService_RemoveLink_Handler,
   694  		},
   695  	},
   696  	Streams:  []grpc.StreamDesc{},
   697  	Metadata: "onos/fabricsim/links.proto",
   698  }
   699  
   700  func (m *Link) Marshal() (dAtA []byte, err error) {
   701  	size := m.Size()
   702  	dAtA = make([]byte, size)
   703  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   704  	if err != nil {
   705  		return nil, err
   706  	}
   707  	return dAtA[:n], nil
   708  }
   709  
   710  func (m *Link) MarshalTo(dAtA []byte) (int, error) {
   711  	size := m.Size()
   712  	return m.MarshalToSizedBuffer(dAtA[:size])
   713  }
   714  
   715  func (m *Link) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   716  	i := len(dAtA)
   717  	_ = i
   718  	var l int
   719  	_ = l
   720  	if m.Status != 0 {
   721  		i = encodeVarintLinks(dAtA, i, uint64(m.Status))
   722  		i--
   723  		dAtA[i] = 0x20
   724  	}
   725  	if len(m.TgtID) > 0 {
   726  		i -= len(m.TgtID)
   727  		copy(dAtA[i:], m.TgtID)
   728  		i = encodeVarintLinks(dAtA, i, uint64(len(m.TgtID)))
   729  		i--
   730  		dAtA[i] = 0x1a
   731  	}
   732  	if len(m.SrcID) > 0 {
   733  		i -= len(m.SrcID)
   734  		copy(dAtA[i:], m.SrcID)
   735  		i = encodeVarintLinks(dAtA, i, uint64(len(m.SrcID)))
   736  		i--
   737  		dAtA[i] = 0x12
   738  	}
   739  	if len(m.ID) > 0 {
   740  		i -= len(m.ID)
   741  		copy(dAtA[i:], m.ID)
   742  		i = encodeVarintLinks(dAtA, i, uint64(len(m.ID)))
   743  		i--
   744  		dAtA[i] = 0xa
   745  	}
   746  	return len(dAtA) - i, nil
   747  }
   748  
   749  func (m *GetLinksRequest) Marshal() (dAtA []byte, err error) {
   750  	size := m.Size()
   751  	dAtA = make([]byte, size)
   752  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   753  	if err != nil {
   754  		return nil, err
   755  	}
   756  	return dAtA[:n], nil
   757  }
   758  
   759  func (m *GetLinksRequest) MarshalTo(dAtA []byte) (int, error) {
   760  	size := m.Size()
   761  	return m.MarshalToSizedBuffer(dAtA[:size])
   762  }
   763  
   764  func (m *GetLinksRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   765  	i := len(dAtA)
   766  	_ = i
   767  	var l int
   768  	_ = l
   769  	return len(dAtA) - i, nil
   770  }
   771  
   772  func (m *GetLinksResponse) Marshal() (dAtA []byte, err error) {
   773  	size := m.Size()
   774  	dAtA = make([]byte, size)
   775  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   776  	if err != nil {
   777  		return nil, err
   778  	}
   779  	return dAtA[:n], nil
   780  }
   781  
   782  func (m *GetLinksResponse) MarshalTo(dAtA []byte) (int, error) {
   783  	size := m.Size()
   784  	return m.MarshalToSizedBuffer(dAtA[:size])
   785  }
   786  
   787  func (m *GetLinksResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   788  	i := len(dAtA)
   789  	_ = i
   790  	var l int
   791  	_ = l
   792  	if len(m.Links) > 0 {
   793  		for iNdEx := len(m.Links) - 1; iNdEx >= 0; iNdEx-- {
   794  			{
   795  				size, err := m.Links[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   796  				if err != nil {
   797  					return 0, err
   798  				}
   799  				i -= size
   800  				i = encodeVarintLinks(dAtA, i, uint64(size))
   801  			}
   802  			i--
   803  			dAtA[i] = 0xa
   804  		}
   805  	}
   806  	return len(dAtA) - i, nil
   807  }
   808  
   809  func (m *GetLinkRequest) Marshal() (dAtA []byte, err error) {
   810  	size := m.Size()
   811  	dAtA = make([]byte, size)
   812  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   813  	if err != nil {
   814  		return nil, err
   815  	}
   816  	return dAtA[:n], nil
   817  }
   818  
   819  func (m *GetLinkRequest) MarshalTo(dAtA []byte) (int, error) {
   820  	size := m.Size()
   821  	return m.MarshalToSizedBuffer(dAtA[:size])
   822  }
   823  
   824  func (m *GetLinkRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   825  	i := len(dAtA)
   826  	_ = i
   827  	var l int
   828  	_ = l
   829  	if len(m.ID) > 0 {
   830  		i -= len(m.ID)
   831  		copy(dAtA[i:], m.ID)
   832  		i = encodeVarintLinks(dAtA, i, uint64(len(m.ID)))
   833  		i--
   834  		dAtA[i] = 0xa
   835  	}
   836  	return len(dAtA) - i, nil
   837  }
   838  
   839  func (m *GetLinkResponse) Marshal() (dAtA []byte, err error) {
   840  	size := m.Size()
   841  	dAtA = make([]byte, size)
   842  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   843  	if err != nil {
   844  		return nil, err
   845  	}
   846  	return dAtA[:n], nil
   847  }
   848  
   849  func (m *GetLinkResponse) MarshalTo(dAtA []byte) (int, error) {
   850  	size := m.Size()
   851  	return m.MarshalToSizedBuffer(dAtA[:size])
   852  }
   853  
   854  func (m *GetLinkResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   855  	i := len(dAtA)
   856  	_ = i
   857  	var l int
   858  	_ = l
   859  	if m.Link != nil {
   860  		{
   861  			size, err := m.Link.MarshalToSizedBuffer(dAtA[:i])
   862  			if err != nil {
   863  				return 0, err
   864  			}
   865  			i -= size
   866  			i = encodeVarintLinks(dAtA, i, uint64(size))
   867  		}
   868  		i--
   869  		dAtA[i] = 0xa
   870  	}
   871  	return len(dAtA) - i, nil
   872  }
   873  
   874  func (m *AddLinkRequest) Marshal() (dAtA []byte, err error) {
   875  	size := m.Size()
   876  	dAtA = make([]byte, size)
   877  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   878  	if err != nil {
   879  		return nil, err
   880  	}
   881  	return dAtA[:n], nil
   882  }
   883  
   884  func (m *AddLinkRequest) MarshalTo(dAtA []byte) (int, error) {
   885  	size := m.Size()
   886  	return m.MarshalToSizedBuffer(dAtA[:size])
   887  }
   888  
   889  func (m *AddLinkRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   890  	i := len(dAtA)
   891  	_ = i
   892  	var l int
   893  	_ = l
   894  	if m.Link != nil {
   895  		{
   896  			size, err := m.Link.MarshalToSizedBuffer(dAtA[:i])
   897  			if err != nil {
   898  				return 0, err
   899  			}
   900  			i -= size
   901  			i = encodeVarintLinks(dAtA, i, uint64(size))
   902  		}
   903  		i--
   904  		dAtA[i] = 0xa
   905  	}
   906  	return len(dAtA) - i, nil
   907  }
   908  
   909  func (m *AddLinkResponse) Marshal() (dAtA []byte, err error) {
   910  	size := m.Size()
   911  	dAtA = make([]byte, size)
   912  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   913  	if err != nil {
   914  		return nil, err
   915  	}
   916  	return dAtA[:n], nil
   917  }
   918  
   919  func (m *AddLinkResponse) MarshalTo(dAtA []byte) (int, error) {
   920  	size := m.Size()
   921  	return m.MarshalToSizedBuffer(dAtA[:size])
   922  }
   923  
   924  func (m *AddLinkResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   925  	i := len(dAtA)
   926  	_ = i
   927  	var l int
   928  	_ = l
   929  	return len(dAtA) - i, nil
   930  }
   931  
   932  func (m *RemoveLinkRequest) Marshal() (dAtA []byte, err error) {
   933  	size := m.Size()
   934  	dAtA = make([]byte, size)
   935  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   936  	if err != nil {
   937  		return nil, err
   938  	}
   939  	return dAtA[:n], nil
   940  }
   941  
   942  func (m *RemoveLinkRequest) MarshalTo(dAtA []byte) (int, error) {
   943  	size := m.Size()
   944  	return m.MarshalToSizedBuffer(dAtA[:size])
   945  }
   946  
   947  func (m *RemoveLinkRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   948  	i := len(dAtA)
   949  	_ = i
   950  	var l int
   951  	_ = l
   952  	if len(m.ID) > 0 {
   953  		i -= len(m.ID)
   954  		copy(dAtA[i:], m.ID)
   955  		i = encodeVarintLinks(dAtA, i, uint64(len(m.ID)))
   956  		i--
   957  		dAtA[i] = 0xa
   958  	}
   959  	return len(dAtA) - i, nil
   960  }
   961  
   962  func (m *RemoveLinkResponse) Marshal() (dAtA []byte, err error) {
   963  	size := m.Size()
   964  	dAtA = make([]byte, size)
   965  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   966  	if err != nil {
   967  		return nil, err
   968  	}
   969  	return dAtA[:n], nil
   970  }
   971  
   972  func (m *RemoveLinkResponse) MarshalTo(dAtA []byte) (int, error) {
   973  	size := m.Size()
   974  	return m.MarshalToSizedBuffer(dAtA[:size])
   975  }
   976  
   977  func (m *RemoveLinkResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   978  	i := len(dAtA)
   979  	_ = i
   980  	var l int
   981  	_ = l
   982  	return len(dAtA) - i, nil
   983  }
   984  
   985  func encodeVarintLinks(dAtA []byte, offset int, v uint64) int {
   986  	offset -= sovLinks(v)
   987  	base := offset
   988  	for v >= 1<<7 {
   989  		dAtA[offset] = uint8(v&0x7f | 0x80)
   990  		v >>= 7
   991  		offset++
   992  	}
   993  	dAtA[offset] = uint8(v)
   994  	return base
   995  }
   996  func (m *Link) Size() (n int) {
   997  	if m == nil {
   998  		return 0
   999  	}
  1000  	var l int
  1001  	_ = l
  1002  	l = len(m.ID)
  1003  	if l > 0 {
  1004  		n += 1 + l + sovLinks(uint64(l))
  1005  	}
  1006  	l = len(m.SrcID)
  1007  	if l > 0 {
  1008  		n += 1 + l + sovLinks(uint64(l))
  1009  	}
  1010  	l = len(m.TgtID)
  1011  	if l > 0 {
  1012  		n += 1 + l + sovLinks(uint64(l))
  1013  	}
  1014  	if m.Status != 0 {
  1015  		n += 1 + sovLinks(uint64(m.Status))
  1016  	}
  1017  	return n
  1018  }
  1019  
  1020  func (m *GetLinksRequest) Size() (n int) {
  1021  	if m == nil {
  1022  		return 0
  1023  	}
  1024  	var l int
  1025  	_ = l
  1026  	return n
  1027  }
  1028  
  1029  func (m *GetLinksResponse) Size() (n int) {
  1030  	if m == nil {
  1031  		return 0
  1032  	}
  1033  	var l int
  1034  	_ = l
  1035  	if len(m.Links) > 0 {
  1036  		for _, e := range m.Links {
  1037  			l = e.Size()
  1038  			n += 1 + l + sovLinks(uint64(l))
  1039  		}
  1040  	}
  1041  	return n
  1042  }
  1043  
  1044  func (m *GetLinkRequest) Size() (n int) {
  1045  	if m == nil {
  1046  		return 0
  1047  	}
  1048  	var l int
  1049  	_ = l
  1050  	l = len(m.ID)
  1051  	if l > 0 {
  1052  		n += 1 + l + sovLinks(uint64(l))
  1053  	}
  1054  	return n
  1055  }
  1056  
  1057  func (m *GetLinkResponse) Size() (n int) {
  1058  	if m == nil {
  1059  		return 0
  1060  	}
  1061  	var l int
  1062  	_ = l
  1063  	if m.Link != nil {
  1064  		l = m.Link.Size()
  1065  		n += 1 + l + sovLinks(uint64(l))
  1066  	}
  1067  	return n
  1068  }
  1069  
  1070  func (m *AddLinkRequest) Size() (n int) {
  1071  	if m == nil {
  1072  		return 0
  1073  	}
  1074  	var l int
  1075  	_ = l
  1076  	if m.Link != nil {
  1077  		l = m.Link.Size()
  1078  		n += 1 + l + sovLinks(uint64(l))
  1079  	}
  1080  	return n
  1081  }
  1082  
  1083  func (m *AddLinkResponse) Size() (n int) {
  1084  	if m == nil {
  1085  		return 0
  1086  	}
  1087  	var l int
  1088  	_ = l
  1089  	return n
  1090  }
  1091  
  1092  func (m *RemoveLinkRequest) Size() (n int) {
  1093  	if m == nil {
  1094  		return 0
  1095  	}
  1096  	var l int
  1097  	_ = l
  1098  	l = len(m.ID)
  1099  	if l > 0 {
  1100  		n += 1 + l + sovLinks(uint64(l))
  1101  	}
  1102  	return n
  1103  }
  1104  
  1105  func (m *RemoveLinkResponse) Size() (n int) {
  1106  	if m == nil {
  1107  		return 0
  1108  	}
  1109  	var l int
  1110  	_ = l
  1111  	return n
  1112  }
  1113  
  1114  func sovLinks(x uint64) (n int) {
  1115  	return (math_bits.Len64(x|1) + 6) / 7
  1116  }
  1117  func sozLinks(x uint64) (n int) {
  1118  	return sovLinks(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  1119  }
  1120  func (m *Link) Unmarshal(dAtA []byte) error {
  1121  	l := len(dAtA)
  1122  	iNdEx := 0
  1123  	for iNdEx < l {
  1124  		preIndex := iNdEx
  1125  		var wire uint64
  1126  		for shift := uint(0); ; shift += 7 {
  1127  			if shift >= 64 {
  1128  				return ErrIntOverflowLinks
  1129  			}
  1130  			if iNdEx >= l {
  1131  				return io.ErrUnexpectedEOF
  1132  			}
  1133  			b := dAtA[iNdEx]
  1134  			iNdEx++
  1135  			wire |= uint64(b&0x7F) << shift
  1136  			if b < 0x80 {
  1137  				break
  1138  			}
  1139  		}
  1140  		fieldNum := int32(wire >> 3)
  1141  		wireType := int(wire & 0x7)
  1142  		if wireType == 4 {
  1143  			return fmt.Errorf("proto: Link: wiretype end group for non-group")
  1144  		}
  1145  		if fieldNum <= 0 {
  1146  			return fmt.Errorf("proto: Link: illegal tag %d (wire type %d)", fieldNum, wire)
  1147  		}
  1148  		switch fieldNum {
  1149  		case 1:
  1150  			if wireType != 2 {
  1151  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  1152  			}
  1153  			var stringLen uint64
  1154  			for shift := uint(0); ; shift += 7 {
  1155  				if shift >= 64 {
  1156  					return ErrIntOverflowLinks
  1157  				}
  1158  				if iNdEx >= l {
  1159  					return io.ErrUnexpectedEOF
  1160  				}
  1161  				b := dAtA[iNdEx]
  1162  				iNdEx++
  1163  				stringLen |= uint64(b&0x7F) << shift
  1164  				if b < 0x80 {
  1165  					break
  1166  				}
  1167  			}
  1168  			intStringLen := int(stringLen)
  1169  			if intStringLen < 0 {
  1170  				return ErrInvalidLengthLinks
  1171  			}
  1172  			postIndex := iNdEx + intStringLen
  1173  			if postIndex < 0 {
  1174  				return ErrInvalidLengthLinks
  1175  			}
  1176  			if postIndex > l {
  1177  				return io.ErrUnexpectedEOF
  1178  			}
  1179  			m.ID = LinkID(dAtA[iNdEx:postIndex])
  1180  			iNdEx = postIndex
  1181  		case 2:
  1182  			if wireType != 2 {
  1183  				return fmt.Errorf("proto: wrong wireType = %d for field SrcID", wireType)
  1184  			}
  1185  			var stringLen uint64
  1186  			for shift := uint(0); ; shift += 7 {
  1187  				if shift >= 64 {
  1188  					return ErrIntOverflowLinks
  1189  				}
  1190  				if iNdEx >= l {
  1191  					return io.ErrUnexpectedEOF
  1192  				}
  1193  				b := dAtA[iNdEx]
  1194  				iNdEx++
  1195  				stringLen |= uint64(b&0x7F) << shift
  1196  				if b < 0x80 {
  1197  					break
  1198  				}
  1199  			}
  1200  			intStringLen := int(stringLen)
  1201  			if intStringLen < 0 {
  1202  				return ErrInvalidLengthLinks
  1203  			}
  1204  			postIndex := iNdEx + intStringLen
  1205  			if postIndex < 0 {
  1206  				return ErrInvalidLengthLinks
  1207  			}
  1208  			if postIndex > l {
  1209  				return io.ErrUnexpectedEOF
  1210  			}
  1211  			m.SrcID = PortID(dAtA[iNdEx:postIndex])
  1212  			iNdEx = postIndex
  1213  		case 3:
  1214  			if wireType != 2 {
  1215  				return fmt.Errorf("proto: wrong wireType = %d for field TgtID", wireType)
  1216  			}
  1217  			var stringLen uint64
  1218  			for shift := uint(0); ; shift += 7 {
  1219  				if shift >= 64 {
  1220  					return ErrIntOverflowLinks
  1221  				}
  1222  				if iNdEx >= l {
  1223  					return io.ErrUnexpectedEOF
  1224  				}
  1225  				b := dAtA[iNdEx]
  1226  				iNdEx++
  1227  				stringLen |= uint64(b&0x7F) << shift
  1228  				if b < 0x80 {
  1229  					break
  1230  				}
  1231  			}
  1232  			intStringLen := int(stringLen)
  1233  			if intStringLen < 0 {
  1234  				return ErrInvalidLengthLinks
  1235  			}
  1236  			postIndex := iNdEx + intStringLen
  1237  			if postIndex < 0 {
  1238  				return ErrInvalidLengthLinks
  1239  			}
  1240  			if postIndex > l {
  1241  				return io.ErrUnexpectedEOF
  1242  			}
  1243  			m.TgtID = PortID(dAtA[iNdEx:postIndex])
  1244  			iNdEx = postIndex
  1245  		case 4:
  1246  			if wireType != 0 {
  1247  				return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  1248  			}
  1249  			m.Status = 0
  1250  			for shift := uint(0); ; shift += 7 {
  1251  				if shift >= 64 {
  1252  					return ErrIntOverflowLinks
  1253  				}
  1254  				if iNdEx >= l {
  1255  					return io.ErrUnexpectedEOF
  1256  				}
  1257  				b := dAtA[iNdEx]
  1258  				iNdEx++
  1259  				m.Status |= LinkStatus(b&0x7F) << shift
  1260  				if b < 0x80 {
  1261  					break
  1262  				}
  1263  			}
  1264  		default:
  1265  			iNdEx = preIndex
  1266  			skippy, err := skipLinks(dAtA[iNdEx:])
  1267  			if err != nil {
  1268  				return err
  1269  			}
  1270  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1271  				return ErrInvalidLengthLinks
  1272  			}
  1273  			if (iNdEx + skippy) > l {
  1274  				return io.ErrUnexpectedEOF
  1275  			}
  1276  			iNdEx += skippy
  1277  		}
  1278  	}
  1279  
  1280  	if iNdEx > l {
  1281  		return io.ErrUnexpectedEOF
  1282  	}
  1283  	return nil
  1284  }
  1285  func (m *GetLinksRequest) Unmarshal(dAtA []byte) error {
  1286  	l := len(dAtA)
  1287  	iNdEx := 0
  1288  	for iNdEx < l {
  1289  		preIndex := iNdEx
  1290  		var wire uint64
  1291  		for shift := uint(0); ; shift += 7 {
  1292  			if shift >= 64 {
  1293  				return ErrIntOverflowLinks
  1294  			}
  1295  			if iNdEx >= l {
  1296  				return io.ErrUnexpectedEOF
  1297  			}
  1298  			b := dAtA[iNdEx]
  1299  			iNdEx++
  1300  			wire |= uint64(b&0x7F) << shift
  1301  			if b < 0x80 {
  1302  				break
  1303  			}
  1304  		}
  1305  		fieldNum := int32(wire >> 3)
  1306  		wireType := int(wire & 0x7)
  1307  		if wireType == 4 {
  1308  			return fmt.Errorf("proto: GetLinksRequest: wiretype end group for non-group")
  1309  		}
  1310  		if fieldNum <= 0 {
  1311  			return fmt.Errorf("proto: GetLinksRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  1312  		}
  1313  		switch fieldNum {
  1314  		default:
  1315  			iNdEx = preIndex
  1316  			skippy, err := skipLinks(dAtA[iNdEx:])
  1317  			if err != nil {
  1318  				return err
  1319  			}
  1320  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1321  				return ErrInvalidLengthLinks
  1322  			}
  1323  			if (iNdEx + skippy) > l {
  1324  				return io.ErrUnexpectedEOF
  1325  			}
  1326  			iNdEx += skippy
  1327  		}
  1328  	}
  1329  
  1330  	if iNdEx > l {
  1331  		return io.ErrUnexpectedEOF
  1332  	}
  1333  	return nil
  1334  }
  1335  func (m *GetLinksResponse) Unmarshal(dAtA []byte) error {
  1336  	l := len(dAtA)
  1337  	iNdEx := 0
  1338  	for iNdEx < l {
  1339  		preIndex := iNdEx
  1340  		var wire uint64
  1341  		for shift := uint(0); ; shift += 7 {
  1342  			if shift >= 64 {
  1343  				return ErrIntOverflowLinks
  1344  			}
  1345  			if iNdEx >= l {
  1346  				return io.ErrUnexpectedEOF
  1347  			}
  1348  			b := dAtA[iNdEx]
  1349  			iNdEx++
  1350  			wire |= uint64(b&0x7F) << shift
  1351  			if b < 0x80 {
  1352  				break
  1353  			}
  1354  		}
  1355  		fieldNum := int32(wire >> 3)
  1356  		wireType := int(wire & 0x7)
  1357  		if wireType == 4 {
  1358  			return fmt.Errorf("proto: GetLinksResponse: wiretype end group for non-group")
  1359  		}
  1360  		if fieldNum <= 0 {
  1361  			return fmt.Errorf("proto: GetLinksResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  1362  		}
  1363  		switch fieldNum {
  1364  		case 1:
  1365  			if wireType != 2 {
  1366  				return fmt.Errorf("proto: wrong wireType = %d for field Links", wireType)
  1367  			}
  1368  			var msglen int
  1369  			for shift := uint(0); ; shift += 7 {
  1370  				if shift >= 64 {
  1371  					return ErrIntOverflowLinks
  1372  				}
  1373  				if iNdEx >= l {
  1374  					return io.ErrUnexpectedEOF
  1375  				}
  1376  				b := dAtA[iNdEx]
  1377  				iNdEx++
  1378  				msglen |= int(b&0x7F) << shift
  1379  				if b < 0x80 {
  1380  					break
  1381  				}
  1382  			}
  1383  			if msglen < 0 {
  1384  				return ErrInvalidLengthLinks
  1385  			}
  1386  			postIndex := iNdEx + msglen
  1387  			if postIndex < 0 {
  1388  				return ErrInvalidLengthLinks
  1389  			}
  1390  			if postIndex > l {
  1391  				return io.ErrUnexpectedEOF
  1392  			}
  1393  			m.Links = append(m.Links, &Link{})
  1394  			if err := m.Links[len(m.Links)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1395  				return err
  1396  			}
  1397  			iNdEx = postIndex
  1398  		default:
  1399  			iNdEx = preIndex
  1400  			skippy, err := skipLinks(dAtA[iNdEx:])
  1401  			if err != nil {
  1402  				return err
  1403  			}
  1404  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1405  				return ErrInvalidLengthLinks
  1406  			}
  1407  			if (iNdEx + skippy) > l {
  1408  				return io.ErrUnexpectedEOF
  1409  			}
  1410  			iNdEx += skippy
  1411  		}
  1412  	}
  1413  
  1414  	if iNdEx > l {
  1415  		return io.ErrUnexpectedEOF
  1416  	}
  1417  	return nil
  1418  }
  1419  func (m *GetLinkRequest) Unmarshal(dAtA []byte) error {
  1420  	l := len(dAtA)
  1421  	iNdEx := 0
  1422  	for iNdEx < l {
  1423  		preIndex := iNdEx
  1424  		var wire uint64
  1425  		for shift := uint(0); ; shift += 7 {
  1426  			if shift >= 64 {
  1427  				return ErrIntOverflowLinks
  1428  			}
  1429  			if iNdEx >= l {
  1430  				return io.ErrUnexpectedEOF
  1431  			}
  1432  			b := dAtA[iNdEx]
  1433  			iNdEx++
  1434  			wire |= uint64(b&0x7F) << shift
  1435  			if b < 0x80 {
  1436  				break
  1437  			}
  1438  		}
  1439  		fieldNum := int32(wire >> 3)
  1440  		wireType := int(wire & 0x7)
  1441  		if wireType == 4 {
  1442  			return fmt.Errorf("proto: GetLinkRequest: wiretype end group for non-group")
  1443  		}
  1444  		if fieldNum <= 0 {
  1445  			return fmt.Errorf("proto: GetLinkRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  1446  		}
  1447  		switch fieldNum {
  1448  		case 1:
  1449  			if wireType != 2 {
  1450  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  1451  			}
  1452  			var stringLen uint64
  1453  			for shift := uint(0); ; shift += 7 {
  1454  				if shift >= 64 {
  1455  					return ErrIntOverflowLinks
  1456  				}
  1457  				if iNdEx >= l {
  1458  					return io.ErrUnexpectedEOF
  1459  				}
  1460  				b := dAtA[iNdEx]
  1461  				iNdEx++
  1462  				stringLen |= uint64(b&0x7F) << shift
  1463  				if b < 0x80 {
  1464  					break
  1465  				}
  1466  			}
  1467  			intStringLen := int(stringLen)
  1468  			if intStringLen < 0 {
  1469  				return ErrInvalidLengthLinks
  1470  			}
  1471  			postIndex := iNdEx + intStringLen
  1472  			if postIndex < 0 {
  1473  				return ErrInvalidLengthLinks
  1474  			}
  1475  			if postIndex > l {
  1476  				return io.ErrUnexpectedEOF
  1477  			}
  1478  			m.ID = LinkID(dAtA[iNdEx:postIndex])
  1479  			iNdEx = postIndex
  1480  		default:
  1481  			iNdEx = preIndex
  1482  			skippy, err := skipLinks(dAtA[iNdEx:])
  1483  			if err != nil {
  1484  				return err
  1485  			}
  1486  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1487  				return ErrInvalidLengthLinks
  1488  			}
  1489  			if (iNdEx + skippy) > l {
  1490  				return io.ErrUnexpectedEOF
  1491  			}
  1492  			iNdEx += skippy
  1493  		}
  1494  	}
  1495  
  1496  	if iNdEx > l {
  1497  		return io.ErrUnexpectedEOF
  1498  	}
  1499  	return nil
  1500  }
  1501  func (m *GetLinkResponse) Unmarshal(dAtA []byte) error {
  1502  	l := len(dAtA)
  1503  	iNdEx := 0
  1504  	for iNdEx < l {
  1505  		preIndex := iNdEx
  1506  		var wire uint64
  1507  		for shift := uint(0); ; shift += 7 {
  1508  			if shift >= 64 {
  1509  				return ErrIntOverflowLinks
  1510  			}
  1511  			if iNdEx >= l {
  1512  				return io.ErrUnexpectedEOF
  1513  			}
  1514  			b := dAtA[iNdEx]
  1515  			iNdEx++
  1516  			wire |= uint64(b&0x7F) << shift
  1517  			if b < 0x80 {
  1518  				break
  1519  			}
  1520  		}
  1521  		fieldNum := int32(wire >> 3)
  1522  		wireType := int(wire & 0x7)
  1523  		if wireType == 4 {
  1524  			return fmt.Errorf("proto: GetLinkResponse: wiretype end group for non-group")
  1525  		}
  1526  		if fieldNum <= 0 {
  1527  			return fmt.Errorf("proto: GetLinkResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  1528  		}
  1529  		switch fieldNum {
  1530  		case 1:
  1531  			if wireType != 2 {
  1532  				return fmt.Errorf("proto: wrong wireType = %d for field Link", wireType)
  1533  			}
  1534  			var msglen int
  1535  			for shift := uint(0); ; shift += 7 {
  1536  				if shift >= 64 {
  1537  					return ErrIntOverflowLinks
  1538  				}
  1539  				if iNdEx >= l {
  1540  					return io.ErrUnexpectedEOF
  1541  				}
  1542  				b := dAtA[iNdEx]
  1543  				iNdEx++
  1544  				msglen |= int(b&0x7F) << shift
  1545  				if b < 0x80 {
  1546  					break
  1547  				}
  1548  			}
  1549  			if msglen < 0 {
  1550  				return ErrInvalidLengthLinks
  1551  			}
  1552  			postIndex := iNdEx + msglen
  1553  			if postIndex < 0 {
  1554  				return ErrInvalidLengthLinks
  1555  			}
  1556  			if postIndex > l {
  1557  				return io.ErrUnexpectedEOF
  1558  			}
  1559  			if m.Link == nil {
  1560  				m.Link = &Link{}
  1561  			}
  1562  			if err := m.Link.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1563  				return err
  1564  			}
  1565  			iNdEx = postIndex
  1566  		default:
  1567  			iNdEx = preIndex
  1568  			skippy, err := skipLinks(dAtA[iNdEx:])
  1569  			if err != nil {
  1570  				return err
  1571  			}
  1572  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1573  				return ErrInvalidLengthLinks
  1574  			}
  1575  			if (iNdEx + skippy) > l {
  1576  				return io.ErrUnexpectedEOF
  1577  			}
  1578  			iNdEx += skippy
  1579  		}
  1580  	}
  1581  
  1582  	if iNdEx > l {
  1583  		return io.ErrUnexpectedEOF
  1584  	}
  1585  	return nil
  1586  }
  1587  func (m *AddLinkRequest) Unmarshal(dAtA []byte) error {
  1588  	l := len(dAtA)
  1589  	iNdEx := 0
  1590  	for iNdEx < l {
  1591  		preIndex := iNdEx
  1592  		var wire uint64
  1593  		for shift := uint(0); ; shift += 7 {
  1594  			if shift >= 64 {
  1595  				return ErrIntOverflowLinks
  1596  			}
  1597  			if iNdEx >= l {
  1598  				return io.ErrUnexpectedEOF
  1599  			}
  1600  			b := dAtA[iNdEx]
  1601  			iNdEx++
  1602  			wire |= uint64(b&0x7F) << shift
  1603  			if b < 0x80 {
  1604  				break
  1605  			}
  1606  		}
  1607  		fieldNum := int32(wire >> 3)
  1608  		wireType := int(wire & 0x7)
  1609  		if wireType == 4 {
  1610  			return fmt.Errorf("proto: AddLinkRequest: wiretype end group for non-group")
  1611  		}
  1612  		if fieldNum <= 0 {
  1613  			return fmt.Errorf("proto: AddLinkRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  1614  		}
  1615  		switch fieldNum {
  1616  		case 1:
  1617  			if wireType != 2 {
  1618  				return fmt.Errorf("proto: wrong wireType = %d for field Link", wireType)
  1619  			}
  1620  			var msglen int
  1621  			for shift := uint(0); ; shift += 7 {
  1622  				if shift >= 64 {
  1623  					return ErrIntOverflowLinks
  1624  				}
  1625  				if iNdEx >= l {
  1626  					return io.ErrUnexpectedEOF
  1627  				}
  1628  				b := dAtA[iNdEx]
  1629  				iNdEx++
  1630  				msglen |= int(b&0x7F) << shift
  1631  				if b < 0x80 {
  1632  					break
  1633  				}
  1634  			}
  1635  			if msglen < 0 {
  1636  				return ErrInvalidLengthLinks
  1637  			}
  1638  			postIndex := iNdEx + msglen
  1639  			if postIndex < 0 {
  1640  				return ErrInvalidLengthLinks
  1641  			}
  1642  			if postIndex > l {
  1643  				return io.ErrUnexpectedEOF
  1644  			}
  1645  			if m.Link == nil {
  1646  				m.Link = &Link{}
  1647  			}
  1648  			if err := m.Link.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1649  				return err
  1650  			}
  1651  			iNdEx = postIndex
  1652  		default:
  1653  			iNdEx = preIndex
  1654  			skippy, err := skipLinks(dAtA[iNdEx:])
  1655  			if err != nil {
  1656  				return err
  1657  			}
  1658  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1659  				return ErrInvalidLengthLinks
  1660  			}
  1661  			if (iNdEx + skippy) > l {
  1662  				return io.ErrUnexpectedEOF
  1663  			}
  1664  			iNdEx += skippy
  1665  		}
  1666  	}
  1667  
  1668  	if iNdEx > l {
  1669  		return io.ErrUnexpectedEOF
  1670  	}
  1671  	return nil
  1672  }
  1673  func (m *AddLinkResponse) Unmarshal(dAtA []byte) error {
  1674  	l := len(dAtA)
  1675  	iNdEx := 0
  1676  	for iNdEx < l {
  1677  		preIndex := iNdEx
  1678  		var wire uint64
  1679  		for shift := uint(0); ; shift += 7 {
  1680  			if shift >= 64 {
  1681  				return ErrIntOverflowLinks
  1682  			}
  1683  			if iNdEx >= l {
  1684  				return io.ErrUnexpectedEOF
  1685  			}
  1686  			b := dAtA[iNdEx]
  1687  			iNdEx++
  1688  			wire |= uint64(b&0x7F) << shift
  1689  			if b < 0x80 {
  1690  				break
  1691  			}
  1692  		}
  1693  		fieldNum := int32(wire >> 3)
  1694  		wireType := int(wire & 0x7)
  1695  		if wireType == 4 {
  1696  			return fmt.Errorf("proto: AddLinkResponse: wiretype end group for non-group")
  1697  		}
  1698  		if fieldNum <= 0 {
  1699  			return fmt.Errorf("proto: AddLinkResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  1700  		}
  1701  		switch fieldNum {
  1702  		default:
  1703  			iNdEx = preIndex
  1704  			skippy, err := skipLinks(dAtA[iNdEx:])
  1705  			if err != nil {
  1706  				return err
  1707  			}
  1708  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1709  				return ErrInvalidLengthLinks
  1710  			}
  1711  			if (iNdEx + skippy) > l {
  1712  				return io.ErrUnexpectedEOF
  1713  			}
  1714  			iNdEx += skippy
  1715  		}
  1716  	}
  1717  
  1718  	if iNdEx > l {
  1719  		return io.ErrUnexpectedEOF
  1720  	}
  1721  	return nil
  1722  }
  1723  func (m *RemoveLinkRequest) Unmarshal(dAtA []byte) error {
  1724  	l := len(dAtA)
  1725  	iNdEx := 0
  1726  	for iNdEx < l {
  1727  		preIndex := iNdEx
  1728  		var wire uint64
  1729  		for shift := uint(0); ; shift += 7 {
  1730  			if shift >= 64 {
  1731  				return ErrIntOverflowLinks
  1732  			}
  1733  			if iNdEx >= l {
  1734  				return io.ErrUnexpectedEOF
  1735  			}
  1736  			b := dAtA[iNdEx]
  1737  			iNdEx++
  1738  			wire |= uint64(b&0x7F) << shift
  1739  			if b < 0x80 {
  1740  				break
  1741  			}
  1742  		}
  1743  		fieldNum := int32(wire >> 3)
  1744  		wireType := int(wire & 0x7)
  1745  		if wireType == 4 {
  1746  			return fmt.Errorf("proto: RemoveLinkRequest: wiretype end group for non-group")
  1747  		}
  1748  		if fieldNum <= 0 {
  1749  			return fmt.Errorf("proto: RemoveLinkRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  1750  		}
  1751  		switch fieldNum {
  1752  		case 1:
  1753  			if wireType != 2 {
  1754  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  1755  			}
  1756  			var stringLen uint64
  1757  			for shift := uint(0); ; shift += 7 {
  1758  				if shift >= 64 {
  1759  					return ErrIntOverflowLinks
  1760  				}
  1761  				if iNdEx >= l {
  1762  					return io.ErrUnexpectedEOF
  1763  				}
  1764  				b := dAtA[iNdEx]
  1765  				iNdEx++
  1766  				stringLen |= uint64(b&0x7F) << shift
  1767  				if b < 0x80 {
  1768  					break
  1769  				}
  1770  			}
  1771  			intStringLen := int(stringLen)
  1772  			if intStringLen < 0 {
  1773  				return ErrInvalidLengthLinks
  1774  			}
  1775  			postIndex := iNdEx + intStringLen
  1776  			if postIndex < 0 {
  1777  				return ErrInvalidLengthLinks
  1778  			}
  1779  			if postIndex > l {
  1780  				return io.ErrUnexpectedEOF
  1781  			}
  1782  			m.ID = LinkID(dAtA[iNdEx:postIndex])
  1783  			iNdEx = postIndex
  1784  		default:
  1785  			iNdEx = preIndex
  1786  			skippy, err := skipLinks(dAtA[iNdEx:])
  1787  			if err != nil {
  1788  				return err
  1789  			}
  1790  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1791  				return ErrInvalidLengthLinks
  1792  			}
  1793  			if (iNdEx + skippy) > l {
  1794  				return io.ErrUnexpectedEOF
  1795  			}
  1796  			iNdEx += skippy
  1797  		}
  1798  	}
  1799  
  1800  	if iNdEx > l {
  1801  		return io.ErrUnexpectedEOF
  1802  	}
  1803  	return nil
  1804  }
  1805  func (m *RemoveLinkResponse) Unmarshal(dAtA []byte) error {
  1806  	l := len(dAtA)
  1807  	iNdEx := 0
  1808  	for iNdEx < l {
  1809  		preIndex := iNdEx
  1810  		var wire uint64
  1811  		for shift := uint(0); ; shift += 7 {
  1812  			if shift >= 64 {
  1813  				return ErrIntOverflowLinks
  1814  			}
  1815  			if iNdEx >= l {
  1816  				return io.ErrUnexpectedEOF
  1817  			}
  1818  			b := dAtA[iNdEx]
  1819  			iNdEx++
  1820  			wire |= uint64(b&0x7F) << shift
  1821  			if b < 0x80 {
  1822  				break
  1823  			}
  1824  		}
  1825  		fieldNum := int32(wire >> 3)
  1826  		wireType := int(wire & 0x7)
  1827  		if wireType == 4 {
  1828  			return fmt.Errorf("proto: RemoveLinkResponse: wiretype end group for non-group")
  1829  		}
  1830  		if fieldNum <= 0 {
  1831  			return fmt.Errorf("proto: RemoveLinkResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  1832  		}
  1833  		switch fieldNum {
  1834  		default:
  1835  			iNdEx = preIndex
  1836  			skippy, err := skipLinks(dAtA[iNdEx:])
  1837  			if err != nil {
  1838  				return err
  1839  			}
  1840  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1841  				return ErrInvalidLengthLinks
  1842  			}
  1843  			if (iNdEx + skippy) > l {
  1844  				return io.ErrUnexpectedEOF
  1845  			}
  1846  			iNdEx += skippy
  1847  		}
  1848  	}
  1849  
  1850  	if iNdEx > l {
  1851  		return io.ErrUnexpectedEOF
  1852  	}
  1853  	return nil
  1854  }
  1855  func skipLinks(dAtA []byte) (n int, err error) {
  1856  	l := len(dAtA)
  1857  	iNdEx := 0
  1858  	depth := 0
  1859  	for iNdEx < l {
  1860  		var wire uint64
  1861  		for shift := uint(0); ; shift += 7 {
  1862  			if shift >= 64 {
  1863  				return 0, ErrIntOverflowLinks
  1864  			}
  1865  			if iNdEx >= l {
  1866  				return 0, io.ErrUnexpectedEOF
  1867  			}
  1868  			b := dAtA[iNdEx]
  1869  			iNdEx++
  1870  			wire |= (uint64(b) & 0x7F) << shift
  1871  			if b < 0x80 {
  1872  				break
  1873  			}
  1874  		}
  1875  		wireType := int(wire & 0x7)
  1876  		switch wireType {
  1877  		case 0:
  1878  			for shift := uint(0); ; shift += 7 {
  1879  				if shift >= 64 {
  1880  					return 0, ErrIntOverflowLinks
  1881  				}
  1882  				if iNdEx >= l {
  1883  					return 0, io.ErrUnexpectedEOF
  1884  				}
  1885  				iNdEx++
  1886  				if dAtA[iNdEx-1] < 0x80 {
  1887  					break
  1888  				}
  1889  			}
  1890  		case 1:
  1891  			iNdEx += 8
  1892  		case 2:
  1893  			var length int
  1894  			for shift := uint(0); ; shift += 7 {
  1895  				if shift >= 64 {
  1896  					return 0, ErrIntOverflowLinks
  1897  				}
  1898  				if iNdEx >= l {
  1899  					return 0, io.ErrUnexpectedEOF
  1900  				}
  1901  				b := dAtA[iNdEx]
  1902  				iNdEx++
  1903  				length |= (int(b) & 0x7F) << shift
  1904  				if b < 0x80 {
  1905  					break
  1906  				}
  1907  			}
  1908  			if length < 0 {
  1909  				return 0, ErrInvalidLengthLinks
  1910  			}
  1911  			iNdEx += length
  1912  		case 3:
  1913  			depth++
  1914  		case 4:
  1915  			if depth == 0 {
  1916  				return 0, ErrUnexpectedEndOfGroupLinks
  1917  			}
  1918  			depth--
  1919  		case 5:
  1920  			iNdEx += 4
  1921  		default:
  1922  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  1923  		}
  1924  		if iNdEx < 0 {
  1925  			return 0, ErrInvalidLengthLinks
  1926  		}
  1927  		if depth == 0 {
  1928  			return iNdEx, nil
  1929  		}
  1930  	}
  1931  	return 0, io.ErrUnexpectedEOF
  1932  }
  1933  
  1934  var (
  1935  	ErrInvalidLengthLinks        = fmt.Errorf("proto: negative length found during unmarshaling")
  1936  	ErrIntOverflowLinks          = fmt.Errorf("proto: integer overflow")
  1937  	ErrUnexpectedEndOfGroupLinks = fmt.Errorf("proto: unexpected end of group")
  1938  )