github.com/containerd/Containerd@v1.4.13/api/services/containers/v1/containers.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: github.com/containerd/containerd/api/services/containers/v1/containers.proto
     3  
     4  package containers
     5  
     6  import (
     7  	context "context"
     8  	fmt "fmt"
     9  	proto "github.com/gogo/protobuf/proto"
    10  	github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
    11  	github_com_gogo_protobuf_types "github.com/gogo/protobuf/types"
    12  	types "github.com/gogo/protobuf/types"
    13  	grpc "google.golang.org/grpc"
    14  	codes "google.golang.org/grpc/codes"
    15  	status "google.golang.org/grpc/status"
    16  	io "io"
    17  	math "math"
    18  	math_bits "math/bits"
    19  	reflect "reflect"
    20  	strings "strings"
    21  	time "time"
    22  )
    23  
    24  // Reference imports to suppress errors if they are not otherwise used.
    25  var _ = proto.Marshal
    26  var _ = fmt.Errorf
    27  var _ = math.Inf
    28  var _ = time.Kitchen
    29  
    30  // This is a compile-time assertion to ensure that this generated file
    31  // is compatible with the proto package it is being compiled against.
    32  // A compilation error at this line likely means your copy of the
    33  // proto package needs to be updated.
    34  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    35  
    36  type Container struct {
    37  	// ID is the user-specified identifier.
    38  	//
    39  	// This field may not be updated.
    40  	ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
    41  	// Labels provides an area to include arbitrary data on containers.
    42  	//
    43  	// The combined size of a key/value pair cannot exceed 4096 bytes.
    44  	//
    45  	// Note that to add a new value to this field, read the existing set and
    46  	// include the entire result in the update call.
    47  	Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
    48  	// Image contains the reference of the image used to build the
    49  	// specification and snapshots for running this container.
    50  	//
    51  	// If this field is updated, the spec and rootfs needed to updated, as well.
    52  	Image string `protobuf:"bytes,3,opt,name=image,proto3" json:"image,omitempty"`
    53  	// Runtime specifies which runtime to use for executing this container.
    54  	Runtime *Container_Runtime `protobuf:"bytes,4,opt,name=runtime,proto3" json:"runtime,omitempty"`
    55  	// Spec to be used when creating the container. This is runtime specific.
    56  	Spec *types.Any `protobuf:"bytes,5,opt,name=spec,proto3" json:"spec,omitempty"`
    57  	// Snapshotter specifies the snapshotter name used for rootfs
    58  	Snapshotter string `protobuf:"bytes,6,opt,name=snapshotter,proto3" json:"snapshotter,omitempty"`
    59  	// SnapshotKey specifies the snapshot key to use for the container's root
    60  	// filesystem. When starting a task from this container, a caller should
    61  	// look up the mounts from the snapshot service and include those on the
    62  	// task create request.
    63  	//
    64  	// Snapshots referenced in this field will not be garbage collected.
    65  	//
    66  	// This field is set to empty when the rootfs is not a snapshot.
    67  	//
    68  	// This field may be updated.
    69  	SnapshotKey string `protobuf:"bytes,7,opt,name=snapshot_key,json=snapshotKey,proto3" json:"snapshot_key,omitempty"`
    70  	// CreatedAt is the time the container was first created.
    71  	CreatedAt time.Time `protobuf:"bytes,8,opt,name=created_at,json=createdAt,proto3,stdtime" json:"created_at"`
    72  	// UpdatedAt is the last time the container was mutated.
    73  	UpdatedAt time.Time `protobuf:"bytes,9,opt,name=updated_at,json=updatedAt,proto3,stdtime" json:"updated_at"`
    74  	// Extensions allow clients to provide zero or more blobs that are directly
    75  	// associated with the container. One may provide protobuf, json, or other
    76  	// encoding formats. The primary use of this is to further decorate the
    77  	// container object with fields that may be specific to a client integration.
    78  	//
    79  	// The key portion of this map should identify a "name" for the extension
    80  	// that should be unique against other extensions. When updating extension
    81  	// data, one should only update the specified extension using field paths
    82  	// to select a specific map key.
    83  	Extensions           map[string]types.Any `protobuf:"bytes,10,rep,name=extensions,proto3" json:"extensions" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
    84  	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
    85  	XXX_unrecognized     []byte               `json:"-"`
    86  	XXX_sizecache        int32                `json:"-"`
    87  }
    88  
    89  func (m *Container) Reset()      { *m = Container{} }
    90  func (*Container) ProtoMessage() {}
    91  func (*Container) Descriptor() ([]byte, []int) {
    92  	return fileDescriptor_311afb8e15951042, []int{0}
    93  }
    94  func (m *Container) XXX_Unmarshal(b []byte) error {
    95  	return m.Unmarshal(b)
    96  }
    97  func (m *Container) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    98  	if deterministic {
    99  		return xxx_messageInfo_Container.Marshal(b, m, deterministic)
   100  	} else {
   101  		b = b[:cap(b)]
   102  		n, err := m.MarshalToSizedBuffer(b)
   103  		if err != nil {
   104  			return nil, err
   105  		}
   106  		return b[:n], nil
   107  	}
   108  }
   109  func (m *Container) XXX_Merge(src proto.Message) {
   110  	xxx_messageInfo_Container.Merge(m, src)
   111  }
   112  func (m *Container) XXX_Size() int {
   113  	return m.Size()
   114  }
   115  func (m *Container) XXX_DiscardUnknown() {
   116  	xxx_messageInfo_Container.DiscardUnknown(m)
   117  }
   118  
   119  var xxx_messageInfo_Container proto.InternalMessageInfo
   120  
   121  type Container_Runtime struct {
   122  	// Name is the name of the runtime.
   123  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   124  	// Options specify additional runtime initialization options.
   125  	Options              *types.Any `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
   126  	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
   127  	XXX_unrecognized     []byte     `json:"-"`
   128  	XXX_sizecache        int32      `json:"-"`
   129  }
   130  
   131  func (m *Container_Runtime) Reset()      { *m = Container_Runtime{} }
   132  func (*Container_Runtime) ProtoMessage() {}
   133  func (*Container_Runtime) Descriptor() ([]byte, []int) {
   134  	return fileDescriptor_311afb8e15951042, []int{0, 1}
   135  }
   136  func (m *Container_Runtime) XXX_Unmarshal(b []byte) error {
   137  	return m.Unmarshal(b)
   138  }
   139  func (m *Container_Runtime) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   140  	if deterministic {
   141  		return xxx_messageInfo_Container_Runtime.Marshal(b, m, deterministic)
   142  	} else {
   143  		b = b[:cap(b)]
   144  		n, err := m.MarshalToSizedBuffer(b)
   145  		if err != nil {
   146  			return nil, err
   147  		}
   148  		return b[:n], nil
   149  	}
   150  }
   151  func (m *Container_Runtime) XXX_Merge(src proto.Message) {
   152  	xxx_messageInfo_Container_Runtime.Merge(m, src)
   153  }
   154  func (m *Container_Runtime) XXX_Size() int {
   155  	return m.Size()
   156  }
   157  func (m *Container_Runtime) XXX_DiscardUnknown() {
   158  	xxx_messageInfo_Container_Runtime.DiscardUnknown(m)
   159  }
   160  
   161  var xxx_messageInfo_Container_Runtime proto.InternalMessageInfo
   162  
   163  type GetContainerRequest struct {
   164  	ID                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
   165  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   166  	XXX_unrecognized     []byte   `json:"-"`
   167  	XXX_sizecache        int32    `json:"-"`
   168  }
   169  
   170  func (m *GetContainerRequest) Reset()      { *m = GetContainerRequest{} }
   171  func (*GetContainerRequest) ProtoMessage() {}
   172  func (*GetContainerRequest) Descriptor() ([]byte, []int) {
   173  	return fileDescriptor_311afb8e15951042, []int{1}
   174  }
   175  func (m *GetContainerRequest) XXX_Unmarshal(b []byte) error {
   176  	return m.Unmarshal(b)
   177  }
   178  func (m *GetContainerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   179  	if deterministic {
   180  		return xxx_messageInfo_GetContainerRequest.Marshal(b, m, deterministic)
   181  	} else {
   182  		b = b[:cap(b)]
   183  		n, err := m.MarshalToSizedBuffer(b)
   184  		if err != nil {
   185  			return nil, err
   186  		}
   187  		return b[:n], nil
   188  	}
   189  }
   190  func (m *GetContainerRequest) XXX_Merge(src proto.Message) {
   191  	xxx_messageInfo_GetContainerRequest.Merge(m, src)
   192  }
   193  func (m *GetContainerRequest) XXX_Size() int {
   194  	return m.Size()
   195  }
   196  func (m *GetContainerRequest) XXX_DiscardUnknown() {
   197  	xxx_messageInfo_GetContainerRequest.DiscardUnknown(m)
   198  }
   199  
   200  var xxx_messageInfo_GetContainerRequest proto.InternalMessageInfo
   201  
   202  type GetContainerResponse struct {
   203  	Container            Container `protobuf:"bytes,1,opt,name=container,proto3" json:"container"`
   204  	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
   205  	XXX_unrecognized     []byte    `json:"-"`
   206  	XXX_sizecache        int32     `json:"-"`
   207  }
   208  
   209  func (m *GetContainerResponse) Reset()      { *m = GetContainerResponse{} }
   210  func (*GetContainerResponse) ProtoMessage() {}
   211  func (*GetContainerResponse) Descriptor() ([]byte, []int) {
   212  	return fileDescriptor_311afb8e15951042, []int{2}
   213  }
   214  func (m *GetContainerResponse) XXX_Unmarshal(b []byte) error {
   215  	return m.Unmarshal(b)
   216  }
   217  func (m *GetContainerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   218  	if deterministic {
   219  		return xxx_messageInfo_GetContainerResponse.Marshal(b, m, deterministic)
   220  	} else {
   221  		b = b[:cap(b)]
   222  		n, err := m.MarshalToSizedBuffer(b)
   223  		if err != nil {
   224  			return nil, err
   225  		}
   226  		return b[:n], nil
   227  	}
   228  }
   229  func (m *GetContainerResponse) XXX_Merge(src proto.Message) {
   230  	xxx_messageInfo_GetContainerResponse.Merge(m, src)
   231  }
   232  func (m *GetContainerResponse) XXX_Size() int {
   233  	return m.Size()
   234  }
   235  func (m *GetContainerResponse) XXX_DiscardUnknown() {
   236  	xxx_messageInfo_GetContainerResponse.DiscardUnknown(m)
   237  }
   238  
   239  var xxx_messageInfo_GetContainerResponse proto.InternalMessageInfo
   240  
   241  type ListContainersRequest struct {
   242  	// Filters contains one or more filters using the syntax defined in the
   243  	// containerd filter package.
   244  	//
   245  	// The returned result will be those that match any of the provided
   246  	// filters. Expanded, containers that match the following will be
   247  	// returned:
   248  	//
   249  	//   filters[0] or filters[1] or ... or filters[n-1] or filters[n]
   250  	//
   251  	// If filters is zero-length or nil, all items will be returned.
   252  	Filters              []string `protobuf:"bytes,1,rep,name=filters,proto3" json:"filters,omitempty"`
   253  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   254  	XXX_unrecognized     []byte   `json:"-"`
   255  	XXX_sizecache        int32    `json:"-"`
   256  }
   257  
   258  func (m *ListContainersRequest) Reset()      { *m = ListContainersRequest{} }
   259  func (*ListContainersRequest) ProtoMessage() {}
   260  func (*ListContainersRequest) Descriptor() ([]byte, []int) {
   261  	return fileDescriptor_311afb8e15951042, []int{3}
   262  }
   263  func (m *ListContainersRequest) XXX_Unmarshal(b []byte) error {
   264  	return m.Unmarshal(b)
   265  }
   266  func (m *ListContainersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   267  	if deterministic {
   268  		return xxx_messageInfo_ListContainersRequest.Marshal(b, m, deterministic)
   269  	} else {
   270  		b = b[:cap(b)]
   271  		n, err := m.MarshalToSizedBuffer(b)
   272  		if err != nil {
   273  			return nil, err
   274  		}
   275  		return b[:n], nil
   276  	}
   277  }
   278  func (m *ListContainersRequest) XXX_Merge(src proto.Message) {
   279  	xxx_messageInfo_ListContainersRequest.Merge(m, src)
   280  }
   281  func (m *ListContainersRequest) XXX_Size() int {
   282  	return m.Size()
   283  }
   284  func (m *ListContainersRequest) XXX_DiscardUnknown() {
   285  	xxx_messageInfo_ListContainersRequest.DiscardUnknown(m)
   286  }
   287  
   288  var xxx_messageInfo_ListContainersRequest proto.InternalMessageInfo
   289  
   290  type ListContainersResponse struct {
   291  	Containers           []Container `protobuf:"bytes,1,rep,name=containers,proto3" json:"containers"`
   292  	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
   293  	XXX_unrecognized     []byte      `json:"-"`
   294  	XXX_sizecache        int32       `json:"-"`
   295  }
   296  
   297  func (m *ListContainersResponse) Reset()      { *m = ListContainersResponse{} }
   298  func (*ListContainersResponse) ProtoMessage() {}
   299  func (*ListContainersResponse) Descriptor() ([]byte, []int) {
   300  	return fileDescriptor_311afb8e15951042, []int{4}
   301  }
   302  func (m *ListContainersResponse) XXX_Unmarshal(b []byte) error {
   303  	return m.Unmarshal(b)
   304  }
   305  func (m *ListContainersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   306  	if deterministic {
   307  		return xxx_messageInfo_ListContainersResponse.Marshal(b, m, deterministic)
   308  	} else {
   309  		b = b[:cap(b)]
   310  		n, err := m.MarshalToSizedBuffer(b)
   311  		if err != nil {
   312  			return nil, err
   313  		}
   314  		return b[:n], nil
   315  	}
   316  }
   317  func (m *ListContainersResponse) XXX_Merge(src proto.Message) {
   318  	xxx_messageInfo_ListContainersResponse.Merge(m, src)
   319  }
   320  func (m *ListContainersResponse) XXX_Size() int {
   321  	return m.Size()
   322  }
   323  func (m *ListContainersResponse) XXX_DiscardUnknown() {
   324  	xxx_messageInfo_ListContainersResponse.DiscardUnknown(m)
   325  }
   326  
   327  var xxx_messageInfo_ListContainersResponse proto.InternalMessageInfo
   328  
   329  type CreateContainerRequest struct {
   330  	Container            Container `protobuf:"bytes,1,opt,name=container,proto3" json:"container"`
   331  	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
   332  	XXX_unrecognized     []byte    `json:"-"`
   333  	XXX_sizecache        int32     `json:"-"`
   334  }
   335  
   336  func (m *CreateContainerRequest) Reset()      { *m = CreateContainerRequest{} }
   337  func (*CreateContainerRequest) ProtoMessage() {}
   338  func (*CreateContainerRequest) Descriptor() ([]byte, []int) {
   339  	return fileDescriptor_311afb8e15951042, []int{5}
   340  }
   341  func (m *CreateContainerRequest) XXX_Unmarshal(b []byte) error {
   342  	return m.Unmarshal(b)
   343  }
   344  func (m *CreateContainerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   345  	if deterministic {
   346  		return xxx_messageInfo_CreateContainerRequest.Marshal(b, m, deterministic)
   347  	} else {
   348  		b = b[:cap(b)]
   349  		n, err := m.MarshalToSizedBuffer(b)
   350  		if err != nil {
   351  			return nil, err
   352  		}
   353  		return b[:n], nil
   354  	}
   355  }
   356  func (m *CreateContainerRequest) XXX_Merge(src proto.Message) {
   357  	xxx_messageInfo_CreateContainerRequest.Merge(m, src)
   358  }
   359  func (m *CreateContainerRequest) XXX_Size() int {
   360  	return m.Size()
   361  }
   362  func (m *CreateContainerRequest) XXX_DiscardUnknown() {
   363  	xxx_messageInfo_CreateContainerRequest.DiscardUnknown(m)
   364  }
   365  
   366  var xxx_messageInfo_CreateContainerRequest proto.InternalMessageInfo
   367  
   368  type CreateContainerResponse struct {
   369  	Container            Container `protobuf:"bytes,1,opt,name=container,proto3" json:"container"`
   370  	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
   371  	XXX_unrecognized     []byte    `json:"-"`
   372  	XXX_sizecache        int32     `json:"-"`
   373  }
   374  
   375  func (m *CreateContainerResponse) Reset()      { *m = CreateContainerResponse{} }
   376  func (*CreateContainerResponse) ProtoMessage() {}
   377  func (*CreateContainerResponse) Descriptor() ([]byte, []int) {
   378  	return fileDescriptor_311afb8e15951042, []int{6}
   379  }
   380  func (m *CreateContainerResponse) XXX_Unmarshal(b []byte) error {
   381  	return m.Unmarshal(b)
   382  }
   383  func (m *CreateContainerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   384  	if deterministic {
   385  		return xxx_messageInfo_CreateContainerResponse.Marshal(b, m, deterministic)
   386  	} else {
   387  		b = b[:cap(b)]
   388  		n, err := m.MarshalToSizedBuffer(b)
   389  		if err != nil {
   390  			return nil, err
   391  		}
   392  		return b[:n], nil
   393  	}
   394  }
   395  func (m *CreateContainerResponse) XXX_Merge(src proto.Message) {
   396  	xxx_messageInfo_CreateContainerResponse.Merge(m, src)
   397  }
   398  func (m *CreateContainerResponse) XXX_Size() int {
   399  	return m.Size()
   400  }
   401  func (m *CreateContainerResponse) XXX_DiscardUnknown() {
   402  	xxx_messageInfo_CreateContainerResponse.DiscardUnknown(m)
   403  }
   404  
   405  var xxx_messageInfo_CreateContainerResponse proto.InternalMessageInfo
   406  
   407  // UpdateContainerRequest updates the metadata on one or more container.
   408  //
   409  // The operation should follow semantics described in
   410  // https://developers.google.com/protocol-buffers/docs/reference/csharp/class/google/protobuf/well-known-types/field-mask,
   411  // unless otherwise qualified.
   412  type UpdateContainerRequest struct {
   413  	// Container provides the target values, as declared by the mask, for the update.
   414  	//
   415  	// The ID field must be set.
   416  	Container Container `protobuf:"bytes,1,opt,name=container,proto3" json:"container"`
   417  	// UpdateMask specifies which fields to perform the update on. If empty,
   418  	// the operation applies to all fields.
   419  	UpdateMask           *types.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
   420  	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
   421  	XXX_unrecognized     []byte           `json:"-"`
   422  	XXX_sizecache        int32            `json:"-"`
   423  }
   424  
   425  func (m *UpdateContainerRequest) Reset()      { *m = UpdateContainerRequest{} }
   426  func (*UpdateContainerRequest) ProtoMessage() {}
   427  func (*UpdateContainerRequest) Descriptor() ([]byte, []int) {
   428  	return fileDescriptor_311afb8e15951042, []int{7}
   429  }
   430  func (m *UpdateContainerRequest) XXX_Unmarshal(b []byte) error {
   431  	return m.Unmarshal(b)
   432  }
   433  func (m *UpdateContainerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   434  	if deterministic {
   435  		return xxx_messageInfo_UpdateContainerRequest.Marshal(b, m, deterministic)
   436  	} else {
   437  		b = b[:cap(b)]
   438  		n, err := m.MarshalToSizedBuffer(b)
   439  		if err != nil {
   440  			return nil, err
   441  		}
   442  		return b[:n], nil
   443  	}
   444  }
   445  func (m *UpdateContainerRequest) XXX_Merge(src proto.Message) {
   446  	xxx_messageInfo_UpdateContainerRequest.Merge(m, src)
   447  }
   448  func (m *UpdateContainerRequest) XXX_Size() int {
   449  	return m.Size()
   450  }
   451  func (m *UpdateContainerRequest) XXX_DiscardUnknown() {
   452  	xxx_messageInfo_UpdateContainerRequest.DiscardUnknown(m)
   453  }
   454  
   455  var xxx_messageInfo_UpdateContainerRequest proto.InternalMessageInfo
   456  
   457  type UpdateContainerResponse struct {
   458  	Container            Container `protobuf:"bytes,1,opt,name=container,proto3" json:"container"`
   459  	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
   460  	XXX_unrecognized     []byte    `json:"-"`
   461  	XXX_sizecache        int32     `json:"-"`
   462  }
   463  
   464  func (m *UpdateContainerResponse) Reset()      { *m = UpdateContainerResponse{} }
   465  func (*UpdateContainerResponse) ProtoMessage() {}
   466  func (*UpdateContainerResponse) Descriptor() ([]byte, []int) {
   467  	return fileDescriptor_311afb8e15951042, []int{8}
   468  }
   469  func (m *UpdateContainerResponse) XXX_Unmarshal(b []byte) error {
   470  	return m.Unmarshal(b)
   471  }
   472  func (m *UpdateContainerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   473  	if deterministic {
   474  		return xxx_messageInfo_UpdateContainerResponse.Marshal(b, m, deterministic)
   475  	} else {
   476  		b = b[:cap(b)]
   477  		n, err := m.MarshalToSizedBuffer(b)
   478  		if err != nil {
   479  			return nil, err
   480  		}
   481  		return b[:n], nil
   482  	}
   483  }
   484  func (m *UpdateContainerResponse) XXX_Merge(src proto.Message) {
   485  	xxx_messageInfo_UpdateContainerResponse.Merge(m, src)
   486  }
   487  func (m *UpdateContainerResponse) XXX_Size() int {
   488  	return m.Size()
   489  }
   490  func (m *UpdateContainerResponse) XXX_DiscardUnknown() {
   491  	xxx_messageInfo_UpdateContainerResponse.DiscardUnknown(m)
   492  }
   493  
   494  var xxx_messageInfo_UpdateContainerResponse proto.InternalMessageInfo
   495  
   496  type DeleteContainerRequest struct {
   497  	ID                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
   498  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   499  	XXX_unrecognized     []byte   `json:"-"`
   500  	XXX_sizecache        int32    `json:"-"`
   501  }
   502  
   503  func (m *DeleteContainerRequest) Reset()      { *m = DeleteContainerRequest{} }
   504  func (*DeleteContainerRequest) ProtoMessage() {}
   505  func (*DeleteContainerRequest) Descriptor() ([]byte, []int) {
   506  	return fileDescriptor_311afb8e15951042, []int{9}
   507  }
   508  func (m *DeleteContainerRequest) XXX_Unmarshal(b []byte) error {
   509  	return m.Unmarshal(b)
   510  }
   511  func (m *DeleteContainerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   512  	if deterministic {
   513  		return xxx_messageInfo_DeleteContainerRequest.Marshal(b, m, deterministic)
   514  	} else {
   515  		b = b[:cap(b)]
   516  		n, err := m.MarshalToSizedBuffer(b)
   517  		if err != nil {
   518  			return nil, err
   519  		}
   520  		return b[:n], nil
   521  	}
   522  }
   523  func (m *DeleteContainerRequest) XXX_Merge(src proto.Message) {
   524  	xxx_messageInfo_DeleteContainerRequest.Merge(m, src)
   525  }
   526  func (m *DeleteContainerRequest) XXX_Size() int {
   527  	return m.Size()
   528  }
   529  func (m *DeleteContainerRequest) XXX_DiscardUnknown() {
   530  	xxx_messageInfo_DeleteContainerRequest.DiscardUnknown(m)
   531  }
   532  
   533  var xxx_messageInfo_DeleteContainerRequest proto.InternalMessageInfo
   534  
   535  type ListContainerMessage struct {
   536  	Container            *Container `protobuf:"bytes,1,opt,name=container,proto3" json:"container,omitempty"`
   537  	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
   538  	XXX_unrecognized     []byte     `json:"-"`
   539  	XXX_sizecache        int32      `json:"-"`
   540  }
   541  
   542  func (m *ListContainerMessage) Reset()      { *m = ListContainerMessage{} }
   543  func (*ListContainerMessage) ProtoMessage() {}
   544  func (*ListContainerMessage) Descriptor() ([]byte, []int) {
   545  	return fileDescriptor_311afb8e15951042, []int{10}
   546  }
   547  func (m *ListContainerMessage) XXX_Unmarshal(b []byte) error {
   548  	return m.Unmarshal(b)
   549  }
   550  func (m *ListContainerMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   551  	if deterministic {
   552  		return xxx_messageInfo_ListContainerMessage.Marshal(b, m, deterministic)
   553  	} else {
   554  		b = b[:cap(b)]
   555  		n, err := m.MarshalToSizedBuffer(b)
   556  		if err != nil {
   557  			return nil, err
   558  		}
   559  		return b[:n], nil
   560  	}
   561  }
   562  func (m *ListContainerMessage) XXX_Merge(src proto.Message) {
   563  	xxx_messageInfo_ListContainerMessage.Merge(m, src)
   564  }
   565  func (m *ListContainerMessage) XXX_Size() int {
   566  	return m.Size()
   567  }
   568  func (m *ListContainerMessage) XXX_DiscardUnknown() {
   569  	xxx_messageInfo_ListContainerMessage.DiscardUnknown(m)
   570  }
   571  
   572  var xxx_messageInfo_ListContainerMessage proto.InternalMessageInfo
   573  
   574  func init() {
   575  	proto.RegisterType((*Container)(nil), "containerd.services.containers.v1.Container")
   576  	proto.RegisterMapType((map[string]types.Any)(nil), "containerd.services.containers.v1.Container.ExtensionsEntry")
   577  	proto.RegisterMapType((map[string]string)(nil), "containerd.services.containers.v1.Container.LabelsEntry")
   578  	proto.RegisterType((*Container_Runtime)(nil), "containerd.services.containers.v1.Container.Runtime")
   579  	proto.RegisterType((*GetContainerRequest)(nil), "containerd.services.containers.v1.GetContainerRequest")
   580  	proto.RegisterType((*GetContainerResponse)(nil), "containerd.services.containers.v1.GetContainerResponse")
   581  	proto.RegisterType((*ListContainersRequest)(nil), "containerd.services.containers.v1.ListContainersRequest")
   582  	proto.RegisterType((*ListContainersResponse)(nil), "containerd.services.containers.v1.ListContainersResponse")
   583  	proto.RegisterType((*CreateContainerRequest)(nil), "containerd.services.containers.v1.CreateContainerRequest")
   584  	proto.RegisterType((*CreateContainerResponse)(nil), "containerd.services.containers.v1.CreateContainerResponse")
   585  	proto.RegisterType((*UpdateContainerRequest)(nil), "containerd.services.containers.v1.UpdateContainerRequest")
   586  	proto.RegisterType((*UpdateContainerResponse)(nil), "containerd.services.containers.v1.UpdateContainerResponse")
   587  	proto.RegisterType((*DeleteContainerRequest)(nil), "containerd.services.containers.v1.DeleteContainerRequest")
   588  	proto.RegisterType((*ListContainerMessage)(nil), "containerd.services.containers.v1.ListContainerMessage")
   589  }
   590  
   591  func init() {
   592  	proto.RegisterFile("github.com/containerd/containerd/api/services/containers/v1/containers.proto", fileDescriptor_311afb8e15951042)
   593  }
   594  
   595  var fileDescriptor_311afb8e15951042 = []byte{
   596  	// 820 bytes of a gzipped FileDescriptorProto
   597  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xcb, 0x6e, 0x13, 0x49,
   598  	0x14, 0x75, 0xdb, 0x4e, 0x3b, 0xbe, 0x1e, 0x69, 0x46, 0x35, 0x1e, 0x4f, 0x4f, 0x8f, 0x64, 0x3b,
   599  	0x5e, 0x59, 0xa3, 0xa1, 0x9d, 0x18, 0x44, 0x5e, 0x6c, 0xe2, 0xbc, 0x04, 0x24, 0x28, 0xea, 0x80,
   600  	0x84, 0x60, 0x11, 0xda, 0x76, 0xc5, 0x69, 0xdc, 0x2f, 0xba, 0xca, 0x16, 0x16, 0x8b, 0xc0, 0x1f,
   601  	0xb0, 0xe3, 0x13, 0xf8, 0x95, 0x2c, 0x59, 0xb2, 0x0a, 0xc4, 0xe2, 0x43, 0x50, 0x57, 0x57, 0xbb,
   602  	0x3b, 0x7e, 0x80, 0x9d, 0x90, 0x5d, 0x5d, 0xd7, 0x3d, 0xf7, 0x9e, 0x3a, 0xb7, 0x4e, 0xb9, 0x61,
   603  	0xaf, 0xa5, 0xd3, 0x93, 0x4e, 0x5d, 0x69, 0xd8, 0x66, 0xa5, 0x61, 0x5b, 0x54, 0xd3, 0x2d, 0xec,
   604  	0x36, 0xa3, 0x4b, 0xcd, 0xd1, 0x2b, 0x04, 0xbb, 0x5d, 0xbd, 0x81, 0x49, 0xf8, 0x3b, 0xa9, 0x74,
   605  	0x97, 0x22, 0x91, 0xe2, 0xb8, 0x36, 0xb5, 0xd1, 0x42, 0x88, 0x53, 0x02, 0x8c, 0x12, 0xc9, 0xea,
   606  	0x2e, 0xc9, 0xd9, 0x96, 0xdd, 0xb2, 0x59, 0x76, 0xc5, 0x5b, 0xf9, 0x40, 0xf9, 0x9f, 0x96, 0x6d,
   607  	0xb7, 0x0c, 0x5c, 0x61, 0x51, 0xbd, 0x73, 0x5c, 0xd1, 0xac, 0x1e, 0xdf, 0xfa, 0x77, 0x78, 0x0b,
   608  	0x9b, 0x0e, 0x0d, 0x36, 0x8b, 0xc3, 0x9b, 0xc7, 0x3a, 0x36, 0x9a, 0x47, 0xa6, 0x46, 0xda, 0x3c,
   609  	0xa3, 0x30, 0x9c, 0x41, 0x75, 0x13, 0x13, 0xaa, 0x99, 0x8e, 0x9f, 0x50, 0xfa, 0x20, 0x42, 0x7a,
   610  	0x33, 0xa0, 0x88, 0x72, 0x10, 0xd7, 0x9b, 0x92, 0x50, 0x14, 0xca, 0xe9, 0x9a, 0xd8, 0x3f, 0x2f,
   611  	0xc4, 0xef, 0x6f, 0xa9, 0x71, 0xbd, 0x89, 0x0e, 0x40, 0x34, 0xb4, 0x3a, 0x36, 0x88, 0x14, 0x2f,
   612  	0x26, 0xca, 0x99, 0xea, 0x8a, 0xf2, 0xd3, 0xa3, 0x2a, 0x83, 0xaa, 0xca, 0x1e, 0x83, 0x6e, 0x5b,
   613  	0xd4, 0xed, 0xa9, 0xbc, 0x0e, 0xca, 0xc2, 0x9c, 0x6e, 0x6a, 0x2d, 0x2c, 0x25, 0xbc, 0x66, 0xaa,
   614  	0x1f, 0xa0, 0x47, 0x90, 0x72, 0x3b, 0x96, 0xc7, 0x51, 0x4a, 0x16, 0x85, 0x72, 0xa6, 0x7a, 0x67,
   615  	0xa6, 0x46, 0xaa, 0x8f, 0x55, 0x83, 0x22, 0xa8, 0x0c, 0x49, 0xe2, 0xe0, 0x86, 0x34, 0xc7, 0x8a,
   616  	0x65, 0x15, 0x5f, 0x0d, 0x25, 0x50, 0x43, 0xd9, 0xb0, 0x7a, 0x2a, 0xcb, 0x40, 0x45, 0xc8, 0x10,
   617  	0x4b, 0x73, 0xc8, 0x89, 0x4d, 0x29, 0x76, 0x25, 0x91, 0xb1, 0x8a, 0xfe, 0x84, 0x16, 0xe0, 0xb7,
   618  	0x20, 0x3c, 0x6a, 0xe3, 0x9e, 0x94, 0xba, 0x9c, 0xf2, 0x10, 0xf7, 0xd0, 0x26, 0x40, 0xc3, 0xc5,
   619  	0x1a, 0xc5, 0xcd, 0x23, 0x8d, 0x4a, 0xf3, 0xac, 0xa9, 0x3c, 0xd2, 0xf4, 0x71, 0x30, 0x82, 0xda,
   620  	0xfc, 0xd9, 0x79, 0x21, 0xf6, 0xfe, 0x4b, 0x41, 0x50, 0xd3, 0x1c, 0xb7, 0x41, 0xbd, 0x22, 0x1d,
   621  	0xa7, 0x19, 0x14, 0x49, 0xcf, 0x52, 0x84, 0xe3, 0x36, 0x28, 0xaa, 0x03, 0xe0, 0xd7, 0x14, 0x5b,
   622  	0x44, 0xb7, 0x2d, 0x22, 0x01, 0x1b, 0xda, 0xbd, 0x99, 0xb4, 0xdc, 0x1e, 0xc0, 0xd9, 0xe0, 0x6a,
   623  	0x49, 0xaf, 0x8d, 0x1a, 0xa9, 0x2a, 0xaf, 0x42, 0x26, 0x32, 0x59, 0xf4, 0x07, 0x24, 0x3c, 0x59,
   624  	0xd8, 0xe5, 0x51, 0xbd, 0xa5, 0x37, 0xe3, 0xae, 0x66, 0x74, 0xb0, 0x14, 0xf7, 0x67, 0xcc, 0x82,
   625  	0xb5, 0xf8, 0x8a, 0x20, 0xef, 0x43, 0x8a, 0xcf, 0x0a, 0x21, 0x48, 0x5a, 0x9a, 0x89, 0x39, 0x8e,
   626  	0xad, 0x91, 0x02, 0x29, 0xdb, 0xa1, 0x8c, 0x7a, 0xfc, 0x07, 0x93, 0x0b, 0x92, 0xe4, 0x43, 0xf8,
   627  	0x7d, 0x88, 0xee, 0x18, 0x36, 0xff, 0x45, 0xd9, 0x4c, 0x2a, 0x19, 0x72, 0x2c, 0xdd, 0x82, 0x3f,
   628  	0x77, 0x31, 0x1d, 0x08, 0xa2, 0xe2, 0x57, 0x1d, 0x4c, 0xe8, 0x24, 0x8b, 0x94, 0x4e, 0x20, 0x7b,
   629  	0x39, 0x9d, 0x38, 0xb6, 0x45, 0x30, 0x3a, 0x80, 0xf4, 0x40, 0x62, 0x06, 0xcb, 0x54, 0xff, 0x9f,
   630  	0x65, 0x10, 0x5c, 0xf8, 0xb0, 0x48, 0x69, 0x09, 0xfe, 0xda, 0xd3, 0x49, 0xd8, 0x8a, 0x04, 0xd4,
   631  	0x24, 0x48, 0x1d, 0xeb, 0x06, 0xc5, 0x2e, 0x91, 0x84, 0x62, 0xa2, 0x9c, 0x56, 0x83, 0xb0, 0x64,
   632  	0x40, 0x6e, 0x18, 0xc2, 0xe9, 0xa9, 0x00, 0x61, 0x63, 0x06, 0xbb, 0x1a, 0xbf, 0x48, 0x95, 0xd2,
   633  	0x4b, 0xc8, 0x6d, 0xb2, 0xeb, 0x3c, 0x22, 0xde, 0xaf, 0x17, 0xa3, 0x0d, 0x7f, 0x8f, 0xf4, 0xba,
   634  	0x31, 0xe5, 0x3f, 0x0a, 0x90, 0x7b, 0xc2, 0x3c, 0x76, 0xf3, 0x27, 0x43, 0xeb, 0x90, 0xf1, 0xfd,
   635  	0xcc, 0xde, 0x73, 0x7e, 0x6b, 0x47, 0x1f, 0x82, 0x1d, 0xef, 0xc9, 0xdf, 0xd7, 0x48, 0x5b, 0xe5,
   636  	0xcf, 0x86, 0xb7, 0xf6, 0x64, 0x19, 0x21, 0x7a, 0x63, 0xb2, 0x2c, 0x42, 0x6e, 0x0b, 0x1b, 0x78,
   637  	0x8c, 0x2a, 0x93, 0xcc, 0x52, 0x87, 0xec, 0xa5, 0xfb, 0xb8, 0x8f, 0x09, 0xf1, 0xde, 0xff, 0x07,
   638  	0xd7, 0xe4, 0x16, 0x61, 0x55, 0xfd, 0x36, 0x07, 0x10, 0x5e, 0x78, 0xd4, 0x85, 0xc4, 0x2e, 0xa6,
   639  	0xe8, 0xee, 0x14, 0xe5, 0xc6, 0xd8, 0x5e, 0x5e, 0x9e, 0x19, 0xc7, 0xe5, 0x7e, 0x03, 0x49, 0xef,
   640  	0xa8, 0x68, 0x9a, 0xbf, 0xcc, 0xb1, 0xb6, 0x96, 0x57, 0xaf, 0x80, 0xe4, 0xcd, 0xdf, 0x09, 0x00,
   641  	0xde, 0xd6, 0x21, 0x75, 0xb1, 0x66, 0x5e, 0x83, 0xc3, 0xf2, 0xac, 0x48, 0x3e, 0xd1, 0x45, 0x01,
   642  	0x9d, 0x82, 0xe8, 0x3b, 0x14, 0x4d, 0x73, 0x90, 0xf1, 0x0f, 0x87, 0xbc, 0x76, 0x15, 0x28, 0x17,
   643  	0xe1, 0x14, 0x44, 0xdf, 0x0b, 0x53, 0x11, 0x18, 0xef, 0xef, 0xa9, 0x08, 0x4c, 0x72, 0xdc, 0x73,
   644  	0x10, 0x7d, 0x7f, 0x4c, 0x45, 0x60, 0xbc, 0x95, 0xe4, 0xdc, 0x88, 0xf3, 0xb7, 0xbd, 0x2f, 0xc1,
   645  	0xda, 0x8b, 0xb3, 0x8b, 0x7c, 0xec, 0xf3, 0x45, 0x3e, 0xf6, 0xb6, 0x9f, 0x17, 0xce, 0xfa, 0x79,
   646  	0xe1, 0x53, 0x3f, 0x2f, 0x7c, 0xed, 0xe7, 0x85, 0x67, 0x3b, 0xd7, 0xf8, 0xb8, 0x5d, 0x0f, 0xa3,
   647  	0xa7, 0xb1, 0xba, 0xc8, 0x7a, 0xde, 0xfe, 0x1e, 0x00, 0x00, 0xff, 0xff, 0xd0, 0xae, 0xca, 0xcb,
   648  	0x2f, 0x0b, 0x00, 0x00,
   649  }
   650  
   651  // Reference imports to suppress errors if they are not otherwise used.
   652  var _ context.Context
   653  var _ grpc.ClientConn
   654  
   655  // This is a compile-time assertion to ensure that this generated file
   656  // is compatible with the grpc package it is being compiled against.
   657  const _ = grpc.SupportPackageIsVersion4
   658  
   659  // ContainersClient is the client API for Containers service.
   660  //
   661  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
   662  type ContainersClient interface {
   663  	Get(ctx context.Context, in *GetContainerRequest, opts ...grpc.CallOption) (*GetContainerResponse, error)
   664  	List(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (*ListContainersResponse, error)
   665  	ListStream(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (Containers_ListStreamClient, error)
   666  	Create(ctx context.Context, in *CreateContainerRequest, opts ...grpc.CallOption) (*CreateContainerResponse, error)
   667  	Update(ctx context.Context, in *UpdateContainerRequest, opts ...grpc.CallOption) (*UpdateContainerResponse, error)
   668  	Delete(ctx context.Context, in *DeleteContainerRequest, opts ...grpc.CallOption) (*types.Empty, error)
   669  }
   670  
   671  type containersClient struct {
   672  	cc *grpc.ClientConn
   673  }
   674  
   675  func NewContainersClient(cc *grpc.ClientConn) ContainersClient {
   676  	return &containersClient{cc}
   677  }
   678  
   679  func (c *containersClient) Get(ctx context.Context, in *GetContainerRequest, opts ...grpc.CallOption) (*GetContainerResponse, error) {
   680  	out := new(GetContainerResponse)
   681  	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/Get", in, out, opts...)
   682  	if err != nil {
   683  		return nil, err
   684  	}
   685  	return out, nil
   686  }
   687  
   688  func (c *containersClient) List(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (*ListContainersResponse, error) {
   689  	out := new(ListContainersResponse)
   690  	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/List", in, out, opts...)
   691  	if err != nil {
   692  		return nil, err
   693  	}
   694  	return out, nil
   695  }
   696  
   697  func (c *containersClient) ListStream(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (Containers_ListStreamClient, error) {
   698  	stream, err := c.cc.NewStream(ctx, &_Containers_serviceDesc.Streams[0], "/containerd.services.containers.v1.Containers/ListStream", opts...)
   699  	if err != nil {
   700  		return nil, err
   701  	}
   702  	x := &containersListStreamClient{stream}
   703  	if err := x.ClientStream.SendMsg(in); err != nil {
   704  		return nil, err
   705  	}
   706  	if err := x.ClientStream.CloseSend(); err != nil {
   707  		return nil, err
   708  	}
   709  	return x, nil
   710  }
   711  
   712  type Containers_ListStreamClient interface {
   713  	Recv() (*ListContainerMessage, error)
   714  	grpc.ClientStream
   715  }
   716  
   717  type containersListStreamClient struct {
   718  	grpc.ClientStream
   719  }
   720  
   721  func (x *containersListStreamClient) Recv() (*ListContainerMessage, error) {
   722  	m := new(ListContainerMessage)
   723  	if err := x.ClientStream.RecvMsg(m); err != nil {
   724  		return nil, err
   725  	}
   726  	return m, nil
   727  }
   728  
   729  func (c *containersClient) Create(ctx context.Context, in *CreateContainerRequest, opts ...grpc.CallOption) (*CreateContainerResponse, error) {
   730  	out := new(CreateContainerResponse)
   731  	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/Create", in, out, opts...)
   732  	if err != nil {
   733  		return nil, err
   734  	}
   735  	return out, nil
   736  }
   737  
   738  func (c *containersClient) Update(ctx context.Context, in *UpdateContainerRequest, opts ...grpc.CallOption) (*UpdateContainerResponse, error) {
   739  	out := new(UpdateContainerResponse)
   740  	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/Update", in, out, opts...)
   741  	if err != nil {
   742  		return nil, err
   743  	}
   744  	return out, nil
   745  }
   746  
   747  func (c *containersClient) Delete(ctx context.Context, in *DeleteContainerRequest, opts ...grpc.CallOption) (*types.Empty, error) {
   748  	out := new(types.Empty)
   749  	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/Delete", in, out, opts...)
   750  	if err != nil {
   751  		return nil, err
   752  	}
   753  	return out, nil
   754  }
   755  
   756  // ContainersServer is the server API for Containers service.
   757  type ContainersServer interface {
   758  	Get(context.Context, *GetContainerRequest) (*GetContainerResponse, error)
   759  	List(context.Context, *ListContainersRequest) (*ListContainersResponse, error)
   760  	ListStream(*ListContainersRequest, Containers_ListStreamServer) error
   761  	Create(context.Context, *CreateContainerRequest) (*CreateContainerResponse, error)
   762  	Update(context.Context, *UpdateContainerRequest) (*UpdateContainerResponse, error)
   763  	Delete(context.Context, *DeleteContainerRequest) (*types.Empty, error)
   764  }
   765  
   766  // UnimplementedContainersServer can be embedded to have forward compatible implementations.
   767  type UnimplementedContainersServer struct {
   768  }
   769  
   770  func (*UnimplementedContainersServer) Get(ctx context.Context, req *GetContainerRequest) (*GetContainerResponse, error) {
   771  	return nil, status.Errorf(codes.Unimplemented, "method Get not implemented")
   772  }
   773  func (*UnimplementedContainersServer) List(ctx context.Context, req *ListContainersRequest) (*ListContainersResponse, error) {
   774  	return nil, status.Errorf(codes.Unimplemented, "method List not implemented")
   775  }
   776  func (*UnimplementedContainersServer) ListStream(req *ListContainersRequest, srv Containers_ListStreamServer) error {
   777  	return status.Errorf(codes.Unimplemented, "method ListStream not implemented")
   778  }
   779  func (*UnimplementedContainersServer) Create(ctx context.Context, req *CreateContainerRequest) (*CreateContainerResponse, error) {
   780  	return nil, status.Errorf(codes.Unimplemented, "method Create not implemented")
   781  }
   782  func (*UnimplementedContainersServer) Update(ctx context.Context, req *UpdateContainerRequest) (*UpdateContainerResponse, error) {
   783  	return nil, status.Errorf(codes.Unimplemented, "method Update not implemented")
   784  }
   785  func (*UnimplementedContainersServer) Delete(ctx context.Context, req *DeleteContainerRequest) (*types.Empty, error) {
   786  	return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented")
   787  }
   788  
   789  func RegisterContainersServer(s *grpc.Server, srv ContainersServer) {
   790  	s.RegisterService(&_Containers_serviceDesc, srv)
   791  }
   792  
   793  func _Containers_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   794  	in := new(GetContainerRequest)
   795  	if err := dec(in); err != nil {
   796  		return nil, err
   797  	}
   798  	if interceptor == nil {
   799  		return srv.(ContainersServer).Get(ctx, in)
   800  	}
   801  	info := &grpc.UnaryServerInfo{
   802  		Server:     srv,
   803  		FullMethod: "/containerd.services.containers.v1.Containers/Get",
   804  	}
   805  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   806  		return srv.(ContainersServer).Get(ctx, req.(*GetContainerRequest))
   807  	}
   808  	return interceptor(ctx, in, info, handler)
   809  }
   810  
   811  func _Containers_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   812  	in := new(ListContainersRequest)
   813  	if err := dec(in); err != nil {
   814  		return nil, err
   815  	}
   816  	if interceptor == nil {
   817  		return srv.(ContainersServer).List(ctx, in)
   818  	}
   819  	info := &grpc.UnaryServerInfo{
   820  		Server:     srv,
   821  		FullMethod: "/containerd.services.containers.v1.Containers/List",
   822  	}
   823  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   824  		return srv.(ContainersServer).List(ctx, req.(*ListContainersRequest))
   825  	}
   826  	return interceptor(ctx, in, info, handler)
   827  }
   828  
   829  func _Containers_ListStream_Handler(srv interface{}, stream grpc.ServerStream) error {
   830  	m := new(ListContainersRequest)
   831  	if err := stream.RecvMsg(m); err != nil {
   832  		return err
   833  	}
   834  	return srv.(ContainersServer).ListStream(m, &containersListStreamServer{stream})
   835  }
   836  
   837  type Containers_ListStreamServer interface {
   838  	Send(*ListContainerMessage) error
   839  	grpc.ServerStream
   840  }
   841  
   842  type containersListStreamServer struct {
   843  	grpc.ServerStream
   844  }
   845  
   846  func (x *containersListStreamServer) Send(m *ListContainerMessage) error {
   847  	return x.ServerStream.SendMsg(m)
   848  }
   849  
   850  func _Containers_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   851  	in := new(CreateContainerRequest)
   852  	if err := dec(in); err != nil {
   853  		return nil, err
   854  	}
   855  	if interceptor == nil {
   856  		return srv.(ContainersServer).Create(ctx, in)
   857  	}
   858  	info := &grpc.UnaryServerInfo{
   859  		Server:     srv,
   860  		FullMethod: "/containerd.services.containers.v1.Containers/Create",
   861  	}
   862  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   863  		return srv.(ContainersServer).Create(ctx, req.(*CreateContainerRequest))
   864  	}
   865  	return interceptor(ctx, in, info, handler)
   866  }
   867  
   868  func _Containers_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   869  	in := new(UpdateContainerRequest)
   870  	if err := dec(in); err != nil {
   871  		return nil, err
   872  	}
   873  	if interceptor == nil {
   874  		return srv.(ContainersServer).Update(ctx, in)
   875  	}
   876  	info := &grpc.UnaryServerInfo{
   877  		Server:     srv,
   878  		FullMethod: "/containerd.services.containers.v1.Containers/Update",
   879  	}
   880  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   881  		return srv.(ContainersServer).Update(ctx, req.(*UpdateContainerRequest))
   882  	}
   883  	return interceptor(ctx, in, info, handler)
   884  }
   885  
   886  func _Containers_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   887  	in := new(DeleteContainerRequest)
   888  	if err := dec(in); err != nil {
   889  		return nil, err
   890  	}
   891  	if interceptor == nil {
   892  		return srv.(ContainersServer).Delete(ctx, in)
   893  	}
   894  	info := &grpc.UnaryServerInfo{
   895  		Server:     srv,
   896  		FullMethod: "/containerd.services.containers.v1.Containers/Delete",
   897  	}
   898  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   899  		return srv.(ContainersServer).Delete(ctx, req.(*DeleteContainerRequest))
   900  	}
   901  	return interceptor(ctx, in, info, handler)
   902  }
   903  
   904  var _Containers_serviceDesc = grpc.ServiceDesc{
   905  	ServiceName: "containerd.services.containers.v1.Containers",
   906  	HandlerType: (*ContainersServer)(nil),
   907  	Methods: []grpc.MethodDesc{
   908  		{
   909  			MethodName: "Get",
   910  			Handler:    _Containers_Get_Handler,
   911  		},
   912  		{
   913  			MethodName: "List",
   914  			Handler:    _Containers_List_Handler,
   915  		},
   916  		{
   917  			MethodName: "Create",
   918  			Handler:    _Containers_Create_Handler,
   919  		},
   920  		{
   921  			MethodName: "Update",
   922  			Handler:    _Containers_Update_Handler,
   923  		},
   924  		{
   925  			MethodName: "Delete",
   926  			Handler:    _Containers_Delete_Handler,
   927  		},
   928  	},
   929  	Streams: []grpc.StreamDesc{
   930  		{
   931  			StreamName:    "ListStream",
   932  			Handler:       _Containers_ListStream_Handler,
   933  			ServerStreams: true,
   934  		},
   935  	},
   936  	Metadata: "github.com/containerd/containerd/api/services/containers/v1/containers.proto",
   937  }
   938  
   939  func (m *Container) Marshal() (dAtA []byte, err error) {
   940  	size := m.Size()
   941  	dAtA = make([]byte, size)
   942  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   943  	if err != nil {
   944  		return nil, err
   945  	}
   946  	return dAtA[:n], nil
   947  }
   948  
   949  func (m *Container) MarshalTo(dAtA []byte) (int, error) {
   950  	size := m.Size()
   951  	return m.MarshalToSizedBuffer(dAtA[:size])
   952  }
   953  
   954  func (m *Container) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   955  	i := len(dAtA)
   956  	_ = i
   957  	var l int
   958  	_ = l
   959  	if m.XXX_unrecognized != nil {
   960  		i -= len(m.XXX_unrecognized)
   961  		copy(dAtA[i:], m.XXX_unrecognized)
   962  	}
   963  	if len(m.Extensions) > 0 {
   964  		for k := range m.Extensions {
   965  			v := m.Extensions[k]
   966  			baseI := i
   967  			{
   968  				size, err := (&v).MarshalToSizedBuffer(dAtA[:i])
   969  				if err != nil {
   970  					return 0, err
   971  				}
   972  				i -= size
   973  				i = encodeVarintContainers(dAtA, i, uint64(size))
   974  			}
   975  			i--
   976  			dAtA[i] = 0x12
   977  			i -= len(k)
   978  			copy(dAtA[i:], k)
   979  			i = encodeVarintContainers(dAtA, i, uint64(len(k)))
   980  			i--
   981  			dAtA[i] = 0xa
   982  			i = encodeVarintContainers(dAtA, i, uint64(baseI-i))
   983  			i--
   984  			dAtA[i] = 0x52
   985  		}
   986  	}
   987  	n2, err2 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.UpdatedAt, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.UpdatedAt):])
   988  	if err2 != nil {
   989  		return 0, err2
   990  	}
   991  	i -= n2
   992  	i = encodeVarintContainers(dAtA, i, uint64(n2))
   993  	i--
   994  	dAtA[i] = 0x4a
   995  	n3, err3 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.CreatedAt, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.CreatedAt):])
   996  	if err3 != nil {
   997  		return 0, err3
   998  	}
   999  	i -= n3
  1000  	i = encodeVarintContainers(dAtA, i, uint64(n3))
  1001  	i--
  1002  	dAtA[i] = 0x42
  1003  	if len(m.SnapshotKey) > 0 {
  1004  		i -= len(m.SnapshotKey)
  1005  		copy(dAtA[i:], m.SnapshotKey)
  1006  		i = encodeVarintContainers(dAtA, i, uint64(len(m.SnapshotKey)))
  1007  		i--
  1008  		dAtA[i] = 0x3a
  1009  	}
  1010  	if len(m.Snapshotter) > 0 {
  1011  		i -= len(m.Snapshotter)
  1012  		copy(dAtA[i:], m.Snapshotter)
  1013  		i = encodeVarintContainers(dAtA, i, uint64(len(m.Snapshotter)))
  1014  		i--
  1015  		dAtA[i] = 0x32
  1016  	}
  1017  	if m.Spec != nil {
  1018  		{
  1019  			size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i])
  1020  			if err != nil {
  1021  				return 0, err
  1022  			}
  1023  			i -= size
  1024  			i = encodeVarintContainers(dAtA, i, uint64(size))
  1025  		}
  1026  		i--
  1027  		dAtA[i] = 0x2a
  1028  	}
  1029  	if m.Runtime != nil {
  1030  		{
  1031  			size, err := m.Runtime.MarshalToSizedBuffer(dAtA[:i])
  1032  			if err != nil {
  1033  				return 0, err
  1034  			}
  1035  			i -= size
  1036  			i = encodeVarintContainers(dAtA, i, uint64(size))
  1037  		}
  1038  		i--
  1039  		dAtA[i] = 0x22
  1040  	}
  1041  	if len(m.Image) > 0 {
  1042  		i -= len(m.Image)
  1043  		copy(dAtA[i:], m.Image)
  1044  		i = encodeVarintContainers(dAtA, i, uint64(len(m.Image)))
  1045  		i--
  1046  		dAtA[i] = 0x1a
  1047  	}
  1048  	if len(m.Labels) > 0 {
  1049  		for k := range m.Labels {
  1050  			v := m.Labels[k]
  1051  			baseI := i
  1052  			i -= len(v)
  1053  			copy(dAtA[i:], v)
  1054  			i = encodeVarintContainers(dAtA, i, uint64(len(v)))
  1055  			i--
  1056  			dAtA[i] = 0x12
  1057  			i -= len(k)
  1058  			copy(dAtA[i:], k)
  1059  			i = encodeVarintContainers(dAtA, i, uint64(len(k)))
  1060  			i--
  1061  			dAtA[i] = 0xa
  1062  			i = encodeVarintContainers(dAtA, i, uint64(baseI-i))
  1063  			i--
  1064  			dAtA[i] = 0x12
  1065  		}
  1066  	}
  1067  	if len(m.ID) > 0 {
  1068  		i -= len(m.ID)
  1069  		copy(dAtA[i:], m.ID)
  1070  		i = encodeVarintContainers(dAtA, i, uint64(len(m.ID)))
  1071  		i--
  1072  		dAtA[i] = 0xa
  1073  	}
  1074  	return len(dAtA) - i, nil
  1075  }
  1076  
  1077  func (m *Container_Runtime) Marshal() (dAtA []byte, err error) {
  1078  	size := m.Size()
  1079  	dAtA = make([]byte, size)
  1080  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1081  	if err != nil {
  1082  		return nil, err
  1083  	}
  1084  	return dAtA[:n], nil
  1085  }
  1086  
  1087  func (m *Container_Runtime) MarshalTo(dAtA []byte) (int, error) {
  1088  	size := m.Size()
  1089  	return m.MarshalToSizedBuffer(dAtA[:size])
  1090  }
  1091  
  1092  func (m *Container_Runtime) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1093  	i := len(dAtA)
  1094  	_ = i
  1095  	var l int
  1096  	_ = l
  1097  	if m.XXX_unrecognized != nil {
  1098  		i -= len(m.XXX_unrecognized)
  1099  		copy(dAtA[i:], m.XXX_unrecognized)
  1100  	}
  1101  	if m.Options != nil {
  1102  		{
  1103  			size, err := m.Options.MarshalToSizedBuffer(dAtA[:i])
  1104  			if err != nil {
  1105  				return 0, err
  1106  			}
  1107  			i -= size
  1108  			i = encodeVarintContainers(dAtA, i, uint64(size))
  1109  		}
  1110  		i--
  1111  		dAtA[i] = 0x12
  1112  	}
  1113  	if len(m.Name) > 0 {
  1114  		i -= len(m.Name)
  1115  		copy(dAtA[i:], m.Name)
  1116  		i = encodeVarintContainers(dAtA, i, uint64(len(m.Name)))
  1117  		i--
  1118  		dAtA[i] = 0xa
  1119  	}
  1120  	return len(dAtA) - i, nil
  1121  }
  1122  
  1123  func (m *GetContainerRequest) Marshal() (dAtA []byte, err error) {
  1124  	size := m.Size()
  1125  	dAtA = make([]byte, size)
  1126  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1127  	if err != nil {
  1128  		return nil, err
  1129  	}
  1130  	return dAtA[:n], nil
  1131  }
  1132  
  1133  func (m *GetContainerRequest) MarshalTo(dAtA []byte) (int, error) {
  1134  	size := m.Size()
  1135  	return m.MarshalToSizedBuffer(dAtA[:size])
  1136  }
  1137  
  1138  func (m *GetContainerRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1139  	i := len(dAtA)
  1140  	_ = i
  1141  	var l int
  1142  	_ = l
  1143  	if m.XXX_unrecognized != nil {
  1144  		i -= len(m.XXX_unrecognized)
  1145  		copy(dAtA[i:], m.XXX_unrecognized)
  1146  	}
  1147  	if len(m.ID) > 0 {
  1148  		i -= len(m.ID)
  1149  		copy(dAtA[i:], m.ID)
  1150  		i = encodeVarintContainers(dAtA, i, uint64(len(m.ID)))
  1151  		i--
  1152  		dAtA[i] = 0xa
  1153  	}
  1154  	return len(dAtA) - i, nil
  1155  }
  1156  
  1157  func (m *GetContainerResponse) Marshal() (dAtA []byte, err error) {
  1158  	size := m.Size()
  1159  	dAtA = make([]byte, size)
  1160  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1161  	if err != nil {
  1162  		return nil, err
  1163  	}
  1164  	return dAtA[:n], nil
  1165  }
  1166  
  1167  func (m *GetContainerResponse) MarshalTo(dAtA []byte) (int, error) {
  1168  	size := m.Size()
  1169  	return m.MarshalToSizedBuffer(dAtA[:size])
  1170  }
  1171  
  1172  func (m *GetContainerResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1173  	i := len(dAtA)
  1174  	_ = i
  1175  	var l int
  1176  	_ = l
  1177  	if m.XXX_unrecognized != nil {
  1178  		i -= len(m.XXX_unrecognized)
  1179  		copy(dAtA[i:], m.XXX_unrecognized)
  1180  	}
  1181  	{
  1182  		size, err := m.Container.MarshalToSizedBuffer(dAtA[:i])
  1183  		if err != nil {
  1184  			return 0, err
  1185  		}
  1186  		i -= size
  1187  		i = encodeVarintContainers(dAtA, i, uint64(size))
  1188  	}
  1189  	i--
  1190  	dAtA[i] = 0xa
  1191  	return len(dAtA) - i, nil
  1192  }
  1193  
  1194  func (m *ListContainersRequest) Marshal() (dAtA []byte, err error) {
  1195  	size := m.Size()
  1196  	dAtA = make([]byte, size)
  1197  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1198  	if err != nil {
  1199  		return nil, err
  1200  	}
  1201  	return dAtA[:n], nil
  1202  }
  1203  
  1204  func (m *ListContainersRequest) MarshalTo(dAtA []byte) (int, error) {
  1205  	size := m.Size()
  1206  	return m.MarshalToSizedBuffer(dAtA[:size])
  1207  }
  1208  
  1209  func (m *ListContainersRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1210  	i := len(dAtA)
  1211  	_ = i
  1212  	var l int
  1213  	_ = l
  1214  	if m.XXX_unrecognized != nil {
  1215  		i -= len(m.XXX_unrecognized)
  1216  		copy(dAtA[i:], m.XXX_unrecognized)
  1217  	}
  1218  	if len(m.Filters) > 0 {
  1219  		for iNdEx := len(m.Filters) - 1; iNdEx >= 0; iNdEx-- {
  1220  			i -= len(m.Filters[iNdEx])
  1221  			copy(dAtA[i:], m.Filters[iNdEx])
  1222  			i = encodeVarintContainers(dAtA, i, uint64(len(m.Filters[iNdEx])))
  1223  			i--
  1224  			dAtA[i] = 0xa
  1225  		}
  1226  	}
  1227  	return len(dAtA) - i, nil
  1228  }
  1229  
  1230  func (m *ListContainersResponse) Marshal() (dAtA []byte, err error) {
  1231  	size := m.Size()
  1232  	dAtA = make([]byte, size)
  1233  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1234  	if err != nil {
  1235  		return nil, err
  1236  	}
  1237  	return dAtA[:n], nil
  1238  }
  1239  
  1240  func (m *ListContainersResponse) MarshalTo(dAtA []byte) (int, error) {
  1241  	size := m.Size()
  1242  	return m.MarshalToSizedBuffer(dAtA[:size])
  1243  }
  1244  
  1245  func (m *ListContainersResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1246  	i := len(dAtA)
  1247  	_ = i
  1248  	var l int
  1249  	_ = l
  1250  	if m.XXX_unrecognized != nil {
  1251  		i -= len(m.XXX_unrecognized)
  1252  		copy(dAtA[i:], m.XXX_unrecognized)
  1253  	}
  1254  	if len(m.Containers) > 0 {
  1255  		for iNdEx := len(m.Containers) - 1; iNdEx >= 0; iNdEx-- {
  1256  			{
  1257  				size, err := m.Containers[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1258  				if err != nil {
  1259  					return 0, err
  1260  				}
  1261  				i -= size
  1262  				i = encodeVarintContainers(dAtA, i, uint64(size))
  1263  			}
  1264  			i--
  1265  			dAtA[i] = 0xa
  1266  		}
  1267  	}
  1268  	return len(dAtA) - i, nil
  1269  }
  1270  
  1271  func (m *CreateContainerRequest) Marshal() (dAtA []byte, err error) {
  1272  	size := m.Size()
  1273  	dAtA = make([]byte, size)
  1274  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1275  	if err != nil {
  1276  		return nil, err
  1277  	}
  1278  	return dAtA[:n], nil
  1279  }
  1280  
  1281  func (m *CreateContainerRequest) MarshalTo(dAtA []byte) (int, error) {
  1282  	size := m.Size()
  1283  	return m.MarshalToSizedBuffer(dAtA[:size])
  1284  }
  1285  
  1286  func (m *CreateContainerRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1287  	i := len(dAtA)
  1288  	_ = i
  1289  	var l int
  1290  	_ = l
  1291  	if m.XXX_unrecognized != nil {
  1292  		i -= len(m.XXX_unrecognized)
  1293  		copy(dAtA[i:], m.XXX_unrecognized)
  1294  	}
  1295  	{
  1296  		size, err := m.Container.MarshalToSizedBuffer(dAtA[:i])
  1297  		if err != nil {
  1298  			return 0, err
  1299  		}
  1300  		i -= size
  1301  		i = encodeVarintContainers(dAtA, i, uint64(size))
  1302  	}
  1303  	i--
  1304  	dAtA[i] = 0xa
  1305  	return len(dAtA) - i, nil
  1306  }
  1307  
  1308  func (m *CreateContainerResponse) Marshal() (dAtA []byte, err error) {
  1309  	size := m.Size()
  1310  	dAtA = make([]byte, size)
  1311  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1312  	if err != nil {
  1313  		return nil, err
  1314  	}
  1315  	return dAtA[:n], nil
  1316  }
  1317  
  1318  func (m *CreateContainerResponse) MarshalTo(dAtA []byte) (int, error) {
  1319  	size := m.Size()
  1320  	return m.MarshalToSizedBuffer(dAtA[:size])
  1321  }
  1322  
  1323  func (m *CreateContainerResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1324  	i := len(dAtA)
  1325  	_ = i
  1326  	var l int
  1327  	_ = l
  1328  	if m.XXX_unrecognized != nil {
  1329  		i -= len(m.XXX_unrecognized)
  1330  		copy(dAtA[i:], m.XXX_unrecognized)
  1331  	}
  1332  	{
  1333  		size, err := m.Container.MarshalToSizedBuffer(dAtA[:i])
  1334  		if err != nil {
  1335  			return 0, err
  1336  		}
  1337  		i -= size
  1338  		i = encodeVarintContainers(dAtA, i, uint64(size))
  1339  	}
  1340  	i--
  1341  	dAtA[i] = 0xa
  1342  	return len(dAtA) - i, nil
  1343  }
  1344  
  1345  func (m *UpdateContainerRequest) Marshal() (dAtA []byte, err error) {
  1346  	size := m.Size()
  1347  	dAtA = make([]byte, size)
  1348  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1349  	if err != nil {
  1350  		return nil, err
  1351  	}
  1352  	return dAtA[:n], nil
  1353  }
  1354  
  1355  func (m *UpdateContainerRequest) MarshalTo(dAtA []byte) (int, error) {
  1356  	size := m.Size()
  1357  	return m.MarshalToSizedBuffer(dAtA[:size])
  1358  }
  1359  
  1360  func (m *UpdateContainerRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1361  	i := len(dAtA)
  1362  	_ = i
  1363  	var l int
  1364  	_ = l
  1365  	if m.XXX_unrecognized != nil {
  1366  		i -= len(m.XXX_unrecognized)
  1367  		copy(dAtA[i:], m.XXX_unrecognized)
  1368  	}
  1369  	if m.UpdateMask != nil {
  1370  		{
  1371  			size, err := m.UpdateMask.MarshalToSizedBuffer(dAtA[:i])
  1372  			if err != nil {
  1373  				return 0, err
  1374  			}
  1375  			i -= size
  1376  			i = encodeVarintContainers(dAtA, i, uint64(size))
  1377  		}
  1378  		i--
  1379  		dAtA[i] = 0x12
  1380  	}
  1381  	{
  1382  		size, err := m.Container.MarshalToSizedBuffer(dAtA[:i])
  1383  		if err != nil {
  1384  			return 0, err
  1385  		}
  1386  		i -= size
  1387  		i = encodeVarintContainers(dAtA, i, uint64(size))
  1388  	}
  1389  	i--
  1390  	dAtA[i] = 0xa
  1391  	return len(dAtA) - i, nil
  1392  }
  1393  
  1394  func (m *UpdateContainerResponse) Marshal() (dAtA []byte, err error) {
  1395  	size := m.Size()
  1396  	dAtA = make([]byte, size)
  1397  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1398  	if err != nil {
  1399  		return nil, err
  1400  	}
  1401  	return dAtA[:n], nil
  1402  }
  1403  
  1404  func (m *UpdateContainerResponse) MarshalTo(dAtA []byte) (int, error) {
  1405  	size := m.Size()
  1406  	return m.MarshalToSizedBuffer(dAtA[:size])
  1407  }
  1408  
  1409  func (m *UpdateContainerResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1410  	i := len(dAtA)
  1411  	_ = i
  1412  	var l int
  1413  	_ = l
  1414  	if m.XXX_unrecognized != nil {
  1415  		i -= len(m.XXX_unrecognized)
  1416  		copy(dAtA[i:], m.XXX_unrecognized)
  1417  	}
  1418  	{
  1419  		size, err := m.Container.MarshalToSizedBuffer(dAtA[:i])
  1420  		if err != nil {
  1421  			return 0, err
  1422  		}
  1423  		i -= size
  1424  		i = encodeVarintContainers(dAtA, i, uint64(size))
  1425  	}
  1426  	i--
  1427  	dAtA[i] = 0xa
  1428  	return len(dAtA) - i, nil
  1429  }
  1430  
  1431  func (m *DeleteContainerRequest) Marshal() (dAtA []byte, err error) {
  1432  	size := m.Size()
  1433  	dAtA = make([]byte, size)
  1434  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1435  	if err != nil {
  1436  		return nil, err
  1437  	}
  1438  	return dAtA[:n], nil
  1439  }
  1440  
  1441  func (m *DeleteContainerRequest) MarshalTo(dAtA []byte) (int, error) {
  1442  	size := m.Size()
  1443  	return m.MarshalToSizedBuffer(dAtA[:size])
  1444  }
  1445  
  1446  func (m *DeleteContainerRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1447  	i := len(dAtA)
  1448  	_ = i
  1449  	var l int
  1450  	_ = l
  1451  	if m.XXX_unrecognized != nil {
  1452  		i -= len(m.XXX_unrecognized)
  1453  		copy(dAtA[i:], m.XXX_unrecognized)
  1454  	}
  1455  	if len(m.ID) > 0 {
  1456  		i -= len(m.ID)
  1457  		copy(dAtA[i:], m.ID)
  1458  		i = encodeVarintContainers(dAtA, i, uint64(len(m.ID)))
  1459  		i--
  1460  		dAtA[i] = 0xa
  1461  	}
  1462  	return len(dAtA) - i, nil
  1463  }
  1464  
  1465  func (m *ListContainerMessage) Marshal() (dAtA []byte, err error) {
  1466  	size := m.Size()
  1467  	dAtA = make([]byte, size)
  1468  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1469  	if err != nil {
  1470  		return nil, err
  1471  	}
  1472  	return dAtA[:n], nil
  1473  }
  1474  
  1475  func (m *ListContainerMessage) MarshalTo(dAtA []byte) (int, error) {
  1476  	size := m.Size()
  1477  	return m.MarshalToSizedBuffer(dAtA[:size])
  1478  }
  1479  
  1480  func (m *ListContainerMessage) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1481  	i := len(dAtA)
  1482  	_ = i
  1483  	var l int
  1484  	_ = l
  1485  	if m.XXX_unrecognized != nil {
  1486  		i -= len(m.XXX_unrecognized)
  1487  		copy(dAtA[i:], m.XXX_unrecognized)
  1488  	}
  1489  	if m.Container != nil {
  1490  		{
  1491  			size, err := m.Container.MarshalToSizedBuffer(dAtA[:i])
  1492  			if err != nil {
  1493  				return 0, err
  1494  			}
  1495  			i -= size
  1496  			i = encodeVarintContainers(dAtA, i, uint64(size))
  1497  		}
  1498  		i--
  1499  		dAtA[i] = 0xa
  1500  	}
  1501  	return len(dAtA) - i, nil
  1502  }
  1503  
  1504  func encodeVarintContainers(dAtA []byte, offset int, v uint64) int {
  1505  	offset -= sovContainers(v)
  1506  	base := offset
  1507  	for v >= 1<<7 {
  1508  		dAtA[offset] = uint8(v&0x7f | 0x80)
  1509  		v >>= 7
  1510  		offset++
  1511  	}
  1512  	dAtA[offset] = uint8(v)
  1513  	return base
  1514  }
  1515  func (m *Container) Size() (n int) {
  1516  	if m == nil {
  1517  		return 0
  1518  	}
  1519  	var l int
  1520  	_ = l
  1521  	l = len(m.ID)
  1522  	if l > 0 {
  1523  		n += 1 + l + sovContainers(uint64(l))
  1524  	}
  1525  	if len(m.Labels) > 0 {
  1526  		for k, v := range m.Labels {
  1527  			_ = k
  1528  			_ = v
  1529  			mapEntrySize := 1 + len(k) + sovContainers(uint64(len(k))) + 1 + len(v) + sovContainers(uint64(len(v)))
  1530  			n += mapEntrySize + 1 + sovContainers(uint64(mapEntrySize))
  1531  		}
  1532  	}
  1533  	l = len(m.Image)
  1534  	if l > 0 {
  1535  		n += 1 + l + sovContainers(uint64(l))
  1536  	}
  1537  	if m.Runtime != nil {
  1538  		l = m.Runtime.Size()
  1539  		n += 1 + l + sovContainers(uint64(l))
  1540  	}
  1541  	if m.Spec != nil {
  1542  		l = m.Spec.Size()
  1543  		n += 1 + l + sovContainers(uint64(l))
  1544  	}
  1545  	l = len(m.Snapshotter)
  1546  	if l > 0 {
  1547  		n += 1 + l + sovContainers(uint64(l))
  1548  	}
  1549  	l = len(m.SnapshotKey)
  1550  	if l > 0 {
  1551  		n += 1 + l + sovContainers(uint64(l))
  1552  	}
  1553  	l = github_com_gogo_protobuf_types.SizeOfStdTime(m.CreatedAt)
  1554  	n += 1 + l + sovContainers(uint64(l))
  1555  	l = github_com_gogo_protobuf_types.SizeOfStdTime(m.UpdatedAt)
  1556  	n += 1 + l + sovContainers(uint64(l))
  1557  	if len(m.Extensions) > 0 {
  1558  		for k, v := range m.Extensions {
  1559  			_ = k
  1560  			_ = v
  1561  			l = v.Size()
  1562  			mapEntrySize := 1 + len(k) + sovContainers(uint64(len(k))) + 1 + l + sovContainers(uint64(l))
  1563  			n += mapEntrySize + 1 + sovContainers(uint64(mapEntrySize))
  1564  		}
  1565  	}
  1566  	if m.XXX_unrecognized != nil {
  1567  		n += len(m.XXX_unrecognized)
  1568  	}
  1569  	return n
  1570  }
  1571  
  1572  func (m *Container_Runtime) Size() (n int) {
  1573  	if m == nil {
  1574  		return 0
  1575  	}
  1576  	var l int
  1577  	_ = l
  1578  	l = len(m.Name)
  1579  	if l > 0 {
  1580  		n += 1 + l + sovContainers(uint64(l))
  1581  	}
  1582  	if m.Options != nil {
  1583  		l = m.Options.Size()
  1584  		n += 1 + l + sovContainers(uint64(l))
  1585  	}
  1586  	if m.XXX_unrecognized != nil {
  1587  		n += len(m.XXX_unrecognized)
  1588  	}
  1589  	return n
  1590  }
  1591  
  1592  func (m *GetContainerRequest) Size() (n int) {
  1593  	if m == nil {
  1594  		return 0
  1595  	}
  1596  	var l int
  1597  	_ = l
  1598  	l = len(m.ID)
  1599  	if l > 0 {
  1600  		n += 1 + l + sovContainers(uint64(l))
  1601  	}
  1602  	if m.XXX_unrecognized != nil {
  1603  		n += len(m.XXX_unrecognized)
  1604  	}
  1605  	return n
  1606  }
  1607  
  1608  func (m *GetContainerResponse) Size() (n int) {
  1609  	if m == nil {
  1610  		return 0
  1611  	}
  1612  	var l int
  1613  	_ = l
  1614  	l = m.Container.Size()
  1615  	n += 1 + l + sovContainers(uint64(l))
  1616  	if m.XXX_unrecognized != nil {
  1617  		n += len(m.XXX_unrecognized)
  1618  	}
  1619  	return n
  1620  }
  1621  
  1622  func (m *ListContainersRequest) Size() (n int) {
  1623  	if m == nil {
  1624  		return 0
  1625  	}
  1626  	var l int
  1627  	_ = l
  1628  	if len(m.Filters) > 0 {
  1629  		for _, s := range m.Filters {
  1630  			l = len(s)
  1631  			n += 1 + l + sovContainers(uint64(l))
  1632  		}
  1633  	}
  1634  	if m.XXX_unrecognized != nil {
  1635  		n += len(m.XXX_unrecognized)
  1636  	}
  1637  	return n
  1638  }
  1639  
  1640  func (m *ListContainersResponse) Size() (n int) {
  1641  	if m == nil {
  1642  		return 0
  1643  	}
  1644  	var l int
  1645  	_ = l
  1646  	if len(m.Containers) > 0 {
  1647  		for _, e := range m.Containers {
  1648  			l = e.Size()
  1649  			n += 1 + l + sovContainers(uint64(l))
  1650  		}
  1651  	}
  1652  	if m.XXX_unrecognized != nil {
  1653  		n += len(m.XXX_unrecognized)
  1654  	}
  1655  	return n
  1656  }
  1657  
  1658  func (m *CreateContainerRequest) Size() (n int) {
  1659  	if m == nil {
  1660  		return 0
  1661  	}
  1662  	var l int
  1663  	_ = l
  1664  	l = m.Container.Size()
  1665  	n += 1 + l + sovContainers(uint64(l))
  1666  	if m.XXX_unrecognized != nil {
  1667  		n += len(m.XXX_unrecognized)
  1668  	}
  1669  	return n
  1670  }
  1671  
  1672  func (m *CreateContainerResponse) Size() (n int) {
  1673  	if m == nil {
  1674  		return 0
  1675  	}
  1676  	var l int
  1677  	_ = l
  1678  	l = m.Container.Size()
  1679  	n += 1 + l + sovContainers(uint64(l))
  1680  	if m.XXX_unrecognized != nil {
  1681  		n += len(m.XXX_unrecognized)
  1682  	}
  1683  	return n
  1684  }
  1685  
  1686  func (m *UpdateContainerRequest) Size() (n int) {
  1687  	if m == nil {
  1688  		return 0
  1689  	}
  1690  	var l int
  1691  	_ = l
  1692  	l = m.Container.Size()
  1693  	n += 1 + l + sovContainers(uint64(l))
  1694  	if m.UpdateMask != nil {
  1695  		l = m.UpdateMask.Size()
  1696  		n += 1 + l + sovContainers(uint64(l))
  1697  	}
  1698  	if m.XXX_unrecognized != nil {
  1699  		n += len(m.XXX_unrecognized)
  1700  	}
  1701  	return n
  1702  }
  1703  
  1704  func (m *UpdateContainerResponse) Size() (n int) {
  1705  	if m == nil {
  1706  		return 0
  1707  	}
  1708  	var l int
  1709  	_ = l
  1710  	l = m.Container.Size()
  1711  	n += 1 + l + sovContainers(uint64(l))
  1712  	if m.XXX_unrecognized != nil {
  1713  		n += len(m.XXX_unrecognized)
  1714  	}
  1715  	return n
  1716  }
  1717  
  1718  func (m *DeleteContainerRequest) Size() (n int) {
  1719  	if m == nil {
  1720  		return 0
  1721  	}
  1722  	var l int
  1723  	_ = l
  1724  	l = len(m.ID)
  1725  	if l > 0 {
  1726  		n += 1 + l + sovContainers(uint64(l))
  1727  	}
  1728  	if m.XXX_unrecognized != nil {
  1729  		n += len(m.XXX_unrecognized)
  1730  	}
  1731  	return n
  1732  }
  1733  
  1734  func (m *ListContainerMessage) Size() (n int) {
  1735  	if m == nil {
  1736  		return 0
  1737  	}
  1738  	var l int
  1739  	_ = l
  1740  	if m.Container != nil {
  1741  		l = m.Container.Size()
  1742  		n += 1 + l + sovContainers(uint64(l))
  1743  	}
  1744  	if m.XXX_unrecognized != nil {
  1745  		n += len(m.XXX_unrecognized)
  1746  	}
  1747  	return n
  1748  }
  1749  
  1750  func sovContainers(x uint64) (n int) {
  1751  	return (math_bits.Len64(x|1) + 6) / 7
  1752  }
  1753  func sozContainers(x uint64) (n int) {
  1754  	return sovContainers(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  1755  }
  1756  func (this *Container) String() string {
  1757  	if this == nil {
  1758  		return "nil"
  1759  	}
  1760  	keysForLabels := make([]string, 0, len(this.Labels))
  1761  	for k, _ := range this.Labels {
  1762  		keysForLabels = append(keysForLabels, k)
  1763  	}
  1764  	github_com_gogo_protobuf_sortkeys.Strings(keysForLabels)
  1765  	mapStringForLabels := "map[string]string{"
  1766  	for _, k := range keysForLabels {
  1767  		mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k])
  1768  	}
  1769  	mapStringForLabels += "}"
  1770  	keysForExtensions := make([]string, 0, len(this.Extensions))
  1771  	for k, _ := range this.Extensions {
  1772  		keysForExtensions = append(keysForExtensions, k)
  1773  	}
  1774  	github_com_gogo_protobuf_sortkeys.Strings(keysForExtensions)
  1775  	mapStringForExtensions := "map[string]types.Any{"
  1776  	for _, k := range keysForExtensions {
  1777  		mapStringForExtensions += fmt.Sprintf("%v: %v,", k, this.Extensions[k])
  1778  	}
  1779  	mapStringForExtensions += "}"
  1780  	s := strings.Join([]string{`&Container{`,
  1781  		`ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  1782  		`Labels:` + mapStringForLabels + `,`,
  1783  		`Image:` + fmt.Sprintf("%v", this.Image) + `,`,
  1784  		`Runtime:` + strings.Replace(fmt.Sprintf("%v", this.Runtime), "Container_Runtime", "Container_Runtime", 1) + `,`,
  1785  		`Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "Any", "types.Any", 1) + `,`,
  1786  		`Snapshotter:` + fmt.Sprintf("%v", this.Snapshotter) + `,`,
  1787  		`SnapshotKey:` + fmt.Sprintf("%v", this.SnapshotKey) + `,`,
  1788  		`CreatedAt:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.CreatedAt), "Timestamp", "types.Timestamp", 1), `&`, ``, 1) + `,`,
  1789  		`UpdatedAt:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.UpdatedAt), "Timestamp", "types.Timestamp", 1), `&`, ``, 1) + `,`,
  1790  		`Extensions:` + mapStringForExtensions + `,`,
  1791  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1792  		`}`,
  1793  	}, "")
  1794  	return s
  1795  }
  1796  func (this *Container_Runtime) String() string {
  1797  	if this == nil {
  1798  		return "nil"
  1799  	}
  1800  	s := strings.Join([]string{`&Container_Runtime{`,
  1801  		`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
  1802  		`Options:` + strings.Replace(fmt.Sprintf("%v", this.Options), "Any", "types.Any", 1) + `,`,
  1803  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1804  		`}`,
  1805  	}, "")
  1806  	return s
  1807  }
  1808  func (this *GetContainerRequest) String() string {
  1809  	if this == nil {
  1810  		return "nil"
  1811  	}
  1812  	s := strings.Join([]string{`&GetContainerRequest{`,
  1813  		`ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  1814  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1815  		`}`,
  1816  	}, "")
  1817  	return s
  1818  }
  1819  func (this *GetContainerResponse) String() string {
  1820  	if this == nil {
  1821  		return "nil"
  1822  	}
  1823  	s := strings.Join([]string{`&GetContainerResponse{`,
  1824  		`Container:` + strings.Replace(strings.Replace(this.Container.String(), "Container", "Container", 1), `&`, ``, 1) + `,`,
  1825  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1826  		`}`,
  1827  	}, "")
  1828  	return s
  1829  }
  1830  func (this *ListContainersRequest) String() string {
  1831  	if this == nil {
  1832  		return "nil"
  1833  	}
  1834  	s := strings.Join([]string{`&ListContainersRequest{`,
  1835  		`Filters:` + fmt.Sprintf("%v", this.Filters) + `,`,
  1836  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1837  		`}`,
  1838  	}, "")
  1839  	return s
  1840  }
  1841  func (this *ListContainersResponse) String() string {
  1842  	if this == nil {
  1843  		return "nil"
  1844  	}
  1845  	repeatedStringForContainers := "[]Container{"
  1846  	for _, f := range this.Containers {
  1847  		repeatedStringForContainers += strings.Replace(strings.Replace(f.String(), "Container", "Container", 1), `&`, ``, 1) + ","
  1848  	}
  1849  	repeatedStringForContainers += "}"
  1850  	s := strings.Join([]string{`&ListContainersResponse{`,
  1851  		`Containers:` + repeatedStringForContainers + `,`,
  1852  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1853  		`}`,
  1854  	}, "")
  1855  	return s
  1856  }
  1857  func (this *CreateContainerRequest) String() string {
  1858  	if this == nil {
  1859  		return "nil"
  1860  	}
  1861  	s := strings.Join([]string{`&CreateContainerRequest{`,
  1862  		`Container:` + strings.Replace(strings.Replace(this.Container.String(), "Container", "Container", 1), `&`, ``, 1) + `,`,
  1863  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1864  		`}`,
  1865  	}, "")
  1866  	return s
  1867  }
  1868  func (this *CreateContainerResponse) String() string {
  1869  	if this == nil {
  1870  		return "nil"
  1871  	}
  1872  	s := strings.Join([]string{`&CreateContainerResponse{`,
  1873  		`Container:` + strings.Replace(strings.Replace(this.Container.String(), "Container", "Container", 1), `&`, ``, 1) + `,`,
  1874  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1875  		`}`,
  1876  	}, "")
  1877  	return s
  1878  }
  1879  func (this *UpdateContainerRequest) String() string {
  1880  	if this == nil {
  1881  		return "nil"
  1882  	}
  1883  	s := strings.Join([]string{`&UpdateContainerRequest{`,
  1884  		`Container:` + strings.Replace(strings.Replace(this.Container.String(), "Container", "Container", 1), `&`, ``, 1) + `,`,
  1885  		`UpdateMask:` + strings.Replace(fmt.Sprintf("%v", this.UpdateMask), "FieldMask", "types.FieldMask", 1) + `,`,
  1886  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1887  		`}`,
  1888  	}, "")
  1889  	return s
  1890  }
  1891  func (this *UpdateContainerResponse) String() string {
  1892  	if this == nil {
  1893  		return "nil"
  1894  	}
  1895  	s := strings.Join([]string{`&UpdateContainerResponse{`,
  1896  		`Container:` + strings.Replace(strings.Replace(this.Container.String(), "Container", "Container", 1), `&`, ``, 1) + `,`,
  1897  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1898  		`}`,
  1899  	}, "")
  1900  	return s
  1901  }
  1902  func (this *DeleteContainerRequest) String() string {
  1903  	if this == nil {
  1904  		return "nil"
  1905  	}
  1906  	s := strings.Join([]string{`&DeleteContainerRequest{`,
  1907  		`ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  1908  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1909  		`}`,
  1910  	}, "")
  1911  	return s
  1912  }
  1913  func (this *ListContainerMessage) String() string {
  1914  	if this == nil {
  1915  		return "nil"
  1916  	}
  1917  	s := strings.Join([]string{`&ListContainerMessage{`,
  1918  		`Container:` + strings.Replace(this.Container.String(), "Container", "Container", 1) + `,`,
  1919  		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
  1920  		`}`,
  1921  	}, "")
  1922  	return s
  1923  }
  1924  func valueToStringContainers(v interface{}) string {
  1925  	rv := reflect.ValueOf(v)
  1926  	if rv.IsNil() {
  1927  		return "nil"
  1928  	}
  1929  	pv := reflect.Indirect(rv).Interface()
  1930  	return fmt.Sprintf("*%v", pv)
  1931  }
  1932  func (m *Container) Unmarshal(dAtA []byte) error {
  1933  	l := len(dAtA)
  1934  	iNdEx := 0
  1935  	for iNdEx < l {
  1936  		preIndex := iNdEx
  1937  		var wire uint64
  1938  		for shift := uint(0); ; shift += 7 {
  1939  			if shift >= 64 {
  1940  				return ErrIntOverflowContainers
  1941  			}
  1942  			if iNdEx >= l {
  1943  				return io.ErrUnexpectedEOF
  1944  			}
  1945  			b := dAtA[iNdEx]
  1946  			iNdEx++
  1947  			wire |= uint64(b&0x7F) << shift
  1948  			if b < 0x80 {
  1949  				break
  1950  			}
  1951  		}
  1952  		fieldNum := int32(wire >> 3)
  1953  		wireType := int(wire & 0x7)
  1954  		if wireType == 4 {
  1955  			return fmt.Errorf("proto: Container: wiretype end group for non-group")
  1956  		}
  1957  		if fieldNum <= 0 {
  1958  			return fmt.Errorf("proto: Container: illegal tag %d (wire type %d)", fieldNum, wire)
  1959  		}
  1960  		switch fieldNum {
  1961  		case 1:
  1962  			if wireType != 2 {
  1963  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  1964  			}
  1965  			var stringLen uint64
  1966  			for shift := uint(0); ; shift += 7 {
  1967  				if shift >= 64 {
  1968  					return ErrIntOverflowContainers
  1969  				}
  1970  				if iNdEx >= l {
  1971  					return io.ErrUnexpectedEOF
  1972  				}
  1973  				b := dAtA[iNdEx]
  1974  				iNdEx++
  1975  				stringLen |= uint64(b&0x7F) << shift
  1976  				if b < 0x80 {
  1977  					break
  1978  				}
  1979  			}
  1980  			intStringLen := int(stringLen)
  1981  			if intStringLen < 0 {
  1982  				return ErrInvalidLengthContainers
  1983  			}
  1984  			postIndex := iNdEx + intStringLen
  1985  			if postIndex < 0 {
  1986  				return ErrInvalidLengthContainers
  1987  			}
  1988  			if postIndex > l {
  1989  				return io.ErrUnexpectedEOF
  1990  			}
  1991  			m.ID = string(dAtA[iNdEx:postIndex])
  1992  			iNdEx = postIndex
  1993  		case 2:
  1994  			if wireType != 2 {
  1995  				return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType)
  1996  			}
  1997  			var msglen int
  1998  			for shift := uint(0); ; shift += 7 {
  1999  				if shift >= 64 {
  2000  					return ErrIntOverflowContainers
  2001  				}
  2002  				if iNdEx >= l {
  2003  					return io.ErrUnexpectedEOF
  2004  				}
  2005  				b := dAtA[iNdEx]
  2006  				iNdEx++
  2007  				msglen |= int(b&0x7F) << shift
  2008  				if b < 0x80 {
  2009  					break
  2010  				}
  2011  			}
  2012  			if msglen < 0 {
  2013  				return ErrInvalidLengthContainers
  2014  			}
  2015  			postIndex := iNdEx + msglen
  2016  			if postIndex < 0 {
  2017  				return ErrInvalidLengthContainers
  2018  			}
  2019  			if postIndex > l {
  2020  				return io.ErrUnexpectedEOF
  2021  			}
  2022  			if m.Labels == nil {
  2023  				m.Labels = make(map[string]string)
  2024  			}
  2025  			var mapkey string
  2026  			var mapvalue string
  2027  			for iNdEx < postIndex {
  2028  				entryPreIndex := iNdEx
  2029  				var wire uint64
  2030  				for shift := uint(0); ; shift += 7 {
  2031  					if shift >= 64 {
  2032  						return ErrIntOverflowContainers
  2033  					}
  2034  					if iNdEx >= l {
  2035  						return io.ErrUnexpectedEOF
  2036  					}
  2037  					b := dAtA[iNdEx]
  2038  					iNdEx++
  2039  					wire |= uint64(b&0x7F) << shift
  2040  					if b < 0x80 {
  2041  						break
  2042  					}
  2043  				}
  2044  				fieldNum := int32(wire >> 3)
  2045  				if fieldNum == 1 {
  2046  					var stringLenmapkey uint64
  2047  					for shift := uint(0); ; shift += 7 {
  2048  						if shift >= 64 {
  2049  							return ErrIntOverflowContainers
  2050  						}
  2051  						if iNdEx >= l {
  2052  							return io.ErrUnexpectedEOF
  2053  						}
  2054  						b := dAtA[iNdEx]
  2055  						iNdEx++
  2056  						stringLenmapkey |= uint64(b&0x7F) << shift
  2057  						if b < 0x80 {
  2058  							break
  2059  						}
  2060  					}
  2061  					intStringLenmapkey := int(stringLenmapkey)
  2062  					if intStringLenmapkey < 0 {
  2063  						return ErrInvalidLengthContainers
  2064  					}
  2065  					postStringIndexmapkey := iNdEx + intStringLenmapkey
  2066  					if postStringIndexmapkey < 0 {
  2067  						return ErrInvalidLengthContainers
  2068  					}
  2069  					if postStringIndexmapkey > l {
  2070  						return io.ErrUnexpectedEOF
  2071  					}
  2072  					mapkey = string(dAtA[iNdEx:postStringIndexmapkey])
  2073  					iNdEx = postStringIndexmapkey
  2074  				} else if fieldNum == 2 {
  2075  					var stringLenmapvalue uint64
  2076  					for shift := uint(0); ; shift += 7 {
  2077  						if shift >= 64 {
  2078  							return ErrIntOverflowContainers
  2079  						}
  2080  						if iNdEx >= l {
  2081  							return io.ErrUnexpectedEOF
  2082  						}
  2083  						b := dAtA[iNdEx]
  2084  						iNdEx++
  2085  						stringLenmapvalue |= uint64(b&0x7F) << shift
  2086  						if b < 0x80 {
  2087  							break
  2088  						}
  2089  					}
  2090  					intStringLenmapvalue := int(stringLenmapvalue)
  2091  					if intStringLenmapvalue < 0 {
  2092  						return ErrInvalidLengthContainers
  2093  					}
  2094  					postStringIndexmapvalue := iNdEx + intStringLenmapvalue
  2095  					if postStringIndexmapvalue < 0 {
  2096  						return ErrInvalidLengthContainers
  2097  					}
  2098  					if postStringIndexmapvalue > l {
  2099  						return io.ErrUnexpectedEOF
  2100  					}
  2101  					mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue])
  2102  					iNdEx = postStringIndexmapvalue
  2103  				} else {
  2104  					iNdEx = entryPreIndex
  2105  					skippy, err := skipContainers(dAtA[iNdEx:])
  2106  					if err != nil {
  2107  						return err
  2108  					}
  2109  					if (skippy < 0) || (iNdEx+skippy) < 0 {
  2110  						return ErrInvalidLengthContainers
  2111  					}
  2112  					if (iNdEx + skippy) > postIndex {
  2113  						return io.ErrUnexpectedEOF
  2114  					}
  2115  					iNdEx += skippy
  2116  				}
  2117  			}
  2118  			m.Labels[mapkey] = mapvalue
  2119  			iNdEx = postIndex
  2120  		case 3:
  2121  			if wireType != 2 {
  2122  				return fmt.Errorf("proto: wrong wireType = %d for field Image", wireType)
  2123  			}
  2124  			var stringLen uint64
  2125  			for shift := uint(0); ; shift += 7 {
  2126  				if shift >= 64 {
  2127  					return ErrIntOverflowContainers
  2128  				}
  2129  				if iNdEx >= l {
  2130  					return io.ErrUnexpectedEOF
  2131  				}
  2132  				b := dAtA[iNdEx]
  2133  				iNdEx++
  2134  				stringLen |= uint64(b&0x7F) << shift
  2135  				if b < 0x80 {
  2136  					break
  2137  				}
  2138  			}
  2139  			intStringLen := int(stringLen)
  2140  			if intStringLen < 0 {
  2141  				return ErrInvalidLengthContainers
  2142  			}
  2143  			postIndex := iNdEx + intStringLen
  2144  			if postIndex < 0 {
  2145  				return ErrInvalidLengthContainers
  2146  			}
  2147  			if postIndex > l {
  2148  				return io.ErrUnexpectedEOF
  2149  			}
  2150  			m.Image = string(dAtA[iNdEx:postIndex])
  2151  			iNdEx = postIndex
  2152  		case 4:
  2153  			if wireType != 2 {
  2154  				return fmt.Errorf("proto: wrong wireType = %d for field Runtime", wireType)
  2155  			}
  2156  			var msglen int
  2157  			for shift := uint(0); ; shift += 7 {
  2158  				if shift >= 64 {
  2159  					return ErrIntOverflowContainers
  2160  				}
  2161  				if iNdEx >= l {
  2162  					return io.ErrUnexpectedEOF
  2163  				}
  2164  				b := dAtA[iNdEx]
  2165  				iNdEx++
  2166  				msglen |= int(b&0x7F) << shift
  2167  				if b < 0x80 {
  2168  					break
  2169  				}
  2170  			}
  2171  			if msglen < 0 {
  2172  				return ErrInvalidLengthContainers
  2173  			}
  2174  			postIndex := iNdEx + msglen
  2175  			if postIndex < 0 {
  2176  				return ErrInvalidLengthContainers
  2177  			}
  2178  			if postIndex > l {
  2179  				return io.ErrUnexpectedEOF
  2180  			}
  2181  			if m.Runtime == nil {
  2182  				m.Runtime = &Container_Runtime{}
  2183  			}
  2184  			if err := m.Runtime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2185  				return err
  2186  			}
  2187  			iNdEx = postIndex
  2188  		case 5:
  2189  			if wireType != 2 {
  2190  				return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  2191  			}
  2192  			var msglen int
  2193  			for shift := uint(0); ; shift += 7 {
  2194  				if shift >= 64 {
  2195  					return ErrIntOverflowContainers
  2196  				}
  2197  				if iNdEx >= l {
  2198  					return io.ErrUnexpectedEOF
  2199  				}
  2200  				b := dAtA[iNdEx]
  2201  				iNdEx++
  2202  				msglen |= int(b&0x7F) << shift
  2203  				if b < 0x80 {
  2204  					break
  2205  				}
  2206  			}
  2207  			if msglen < 0 {
  2208  				return ErrInvalidLengthContainers
  2209  			}
  2210  			postIndex := iNdEx + msglen
  2211  			if postIndex < 0 {
  2212  				return ErrInvalidLengthContainers
  2213  			}
  2214  			if postIndex > l {
  2215  				return io.ErrUnexpectedEOF
  2216  			}
  2217  			if m.Spec == nil {
  2218  				m.Spec = &types.Any{}
  2219  			}
  2220  			if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2221  				return err
  2222  			}
  2223  			iNdEx = postIndex
  2224  		case 6:
  2225  			if wireType != 2 {
  2226  				return fmt.Errorf("proto: wrong wireType = %d for field Snapshotter", wireType)
  2227  			}
  2228  			var stringLen uint64
  2229  			for shift := uint(0); ; shift += 7 {
  2230  				if shift >= 64 {
  2231  					return ErrIntOverflowContainers
  2232  				}
  2233  				if iNdEx >= l {
  2234  					return io.ErrUnexpectedEOF
  2235  				}
  2236  				b := dAtA[iNdEx]
  2237  				iNdEx++
  2238  				stringLen |= uint64(b&0x7F) << shift
  2239  				if b < 0x80 {
  2240  					break
  2241  				}
  2242  			}
  2243  			intStringLen := int(stringLen)
  2244  			if intStringLen < 0 {
  2245  				return ErrInvalidLengthContainers
  2246  			}
  2247  			postIndex := iNdEx + intStringLen
  2248  			if postIndex < 0 {
  2249  				return ErrInvalidLengthContainers
  2250  			}
  2251  			if postIndex > l {
  2252  				return io.ErrUnexpectedEOF
  2253  			}
  2254  			m.Snapshotter = string(dAtA[iNdEx:postIndex])
  2255  			iNdEx = postIndex
  2256  		case 7:
  2257  			if wireType != 2 {
  2258  				return fmt.Errorf("proto: wrong wireType = %d for field SnapshotKey", wireType)
  2259  			}
  2260  			var stringLen uint64
  2261  			for shift := uint(0); ; shift += 7 {
  2262  				if shift >= 64 {
  2263  					return ErrIntOverflowContainers
  2264  				}
  2265  				if iNdEx >= l {
  2266  					return io.ErrUnexpectedEOF
  2267  				}
  2268  				b := dAtA[iNdEx]
  2269  				iNdEx++
  2270  				stringLen |= uint64(b&0x7F) << shift
  2271  				if b < 0x80 {
  2272  					break
  2273  				}
  2274  			}
  2275  			intStringLen := int(stringLen)
  2276  			if intStringLen < 0 {
  2277  				return ErrInvalidLengthContainers
  2278  			}
  2279  			postIndex := iNdEx + intStringLen
  2280  			if postIndex < 0 {
  2281  				return ErrInvalidLengthContainers
  2282  			}
  2283  			if postIndex > l {
  2284  				return io.ErrUnexpectedEOF
  2285  			}
  2286  			m.SnapshotKey = string(dAtA[iNdEx:postIndex])
  2287  			iNdEx = postIndex
  2288  		case 8:
  2289  			if wireType != 2 {
  2290  				return fmt.Errorf("proto: wrong wireType = %d for field CreatedAt", wireType)
  2291  			}
  2292  			var msglen int
  2293  			for shift := uint(0); ; shift += 7 {
  2294  				if shift >= 64 {
  2295  					return ErrIntOverflowContainers
  2296  				}
  2297  				if iNdEx >= l {
  2298  					return io.ErrUnexpectedEOF
  2299  				}
  2300  				b := dAtA[iNdEx]
  2301  				iNdEx++
  2302  				msglen |= int(b&0x7F) << shift
  2303  				if b < 0x80 {
  2304  					break
  2305  				}
  2306  			}
  2307  			if msglen < 0 {
  2308  				return ErrInvalidLengthContainers
  2309  			}
  2310  			postIndex := iNdEx + msglen
  2311  			if postIndex < 0 {
  2312  				return ErrInvalidLengthContainers
  2313  			}
  2314  			if postIndex > l {
  2315  				return io.ErrUnexpectedEOF
  2316  			}
  2317  			if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.CreatedAt, dAtA[iNdEx:postIndex]); err != nil {
  2318  				return err
  2319  			}
  2320  			iNdEx = postIndex
  2321  		case 9:
  2322  			if wireType != 2 {
  2323  				return fmt.Errorf("proto: wrong wireType = %d for field UpdatedAt", wireType)
  2324  			}
  2325  			var msglen int
  2326  			for shift := uint(0); ; shift += 7 {
  2327  				if shift >= 64 {
  2328  					return ErrIntOverflowContainers
  2329  				}
  2330  				if iNdEx >= l {
  2331  					return io.ErrUnexpectedEOF
  2332  				}
  2333  				b := dAtA[iNdEx]
  2334  				iNdEx++
  2335  				msglen |= int(b&0x7F) << shift
  2336  				if b < 0x80 {
  2337  					break
  2338  				}
  2339  			}
  2340  			if msglen < 0 {
  2341  				return ErrInvalidLengthContainers
  2342  			}
  2343  			postIndex := iNdEx + msglen
  2344  			if postIndex < 0 {
  2345  				return ErrInvalidLengthContainers
  2346  			}
  2347  			if postIndex > l {
  2348  				return io.ErrUnexpectedEOF
  2349  			}
  2350  			if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.UpdatedAt, dAtA[iNdEx:postIndex]); err != nil {
  2351  				return err
  2352  			}
  2353  			iNdEx = postIndex
  2354  		case 10:
  2355  			if wireType != 2 {
  2356  				return fmt.Errorf("proto: wrong wireType = %d for field Extensions", wireType)
  2357  			}
  2358  			var msglen int
  2359  			for shift := uint(0); ; shift += 7 {
  2360  				if shift >= 64 {
  2361  					return ErrIntOverflowContainers
  2362  				}
  2363  				if iNdEx >= l {
  2364  					return io.ErrUnexpectedEOF
  2365  				}
  2366  				b := dAtA[iNdEx]
  2367  				iNdEx++
  2368  				msglen |= int(b&0x7F) << shift
  2369  				if b < 0x80 {
  2370  					break
  2371  				}
  2372  			}
  2373  			if msglen < 0 {
  2374  				return ErrInvalidLengthContainers
  2375  			}
  2376  			postIndex := iNdEx + msglen
  2377  			if postIndex < 0 {
  2378  				return ErrInvalidLengthContainers
  2379  			}
  2380  			if postIndex > l {
  2381  				return io.ErrUnexpectedEOF
  2382  			}
  2383  			if m.Extensions == nil {
  2384  				m.Extensions = make(map[string]types.Any)
  2385  			}
  2386  			var mapkey string
  2387  			mapvalue := &types.Any{}
  2388  			for iNdEx < postIndex {
  2389  				entryPreIndex := iNdEx
  2390  				var wire uint64
  2391  				for shift := uint(0); ; shift += 7 {
  2392  					if shift >= 64 {
  2393  						return ErrIntOverflowContainers
  2394  					}
  2395  					if iNdEx >= l {
  2396  						return io.ErrUnexpectedEOF
  2397  					}
  2398  					b := dAtA[iNdEx]
  2399  					iNdEx++
  2400  					wire |= uint64(b&0x7F) << shift
  2401  					if b < 0x80 {
  2402  						break
  2403  					}
  2404  				}
  2405  				fieldNum := int32(wire >> 3)
  2406  				if fieldNum == 1 {
  2407  					var stringLenmapkey uint64
  2408  					for shift := uint(0); ; shift += 7 {
  2409  						if shift >= 64 {
  2410  							return ErrIntOverflowContainers
  2411  						}
  2412  						if iNdEx >= l {
  2413  							return io.ErrUnexpectedEOF
  2414  						}
  2415  						b := dAtA[iNdEx]
  2416  						iNdEx++
  2417  						stringLenmapkey |= uint64(b&0x7F) << shift
  2418  						if b < 0x80 {
  2419  							break
  2420  						}
  2421  					}
  2422  					intStringLenmapkey := int(stringLenmapkey)
  2423  					if intStringLenmapkey < 0 {
  2424  						return ErrInvalidLengthContainers
  2425  					}
  2426  					postStringIndexmapkey := iNdEx + intStringLenmapkey
  2427  					if postStringIndexmapkey < 0 {
  2428  						return ErrInvalidLengthContainers
  2429  					}
  2430  					if postStringIndexmapkey > l {
  2431  						return io.ErrUnexpectedEOF
  2432  					}
  2433  					mapkey = string(dAtA[iNdEx:postStringIndexmapkey])
  2434  					iNdEx = postStringIndexmapkey
  2435  				} else if fieldNum == 2 {
  2436  					var mapmsglen int
  2437  					for shift := uint(0); ; shift += 7 {
  2438  						if shift >= 64 {
  2439  							return ErrIntOverflowContainers
  2440  						}
  2441  						if iNdEx >= l {
  2442  							return io.ErrUnexpectedEOF
  2443  						}
  2444  						b := dAtA[iNdEx]
  2445  						iNdEx++
  2446  						mapmsglen |= int(b&0x7F) << shift
  2447  						if b < 0x80 {
  2448  							break
  2449  						}
  2450  					}
  2451  					if mapmsglen < 0 {
  2452  						return ErrInvalidLengthContainers
  2453  					}
  2454  					postmsgIndex := iNdEx + mapmsglen
  2455  					if postmsgIndex < 0 {
  2456  						return ErrInvalidLengthContainers
  2457  					}
  2458  					if postmsgIndex > l {
  2459  						return io.ErrUnexpectedEOF
  2460  					}
  2461  					mapvalue = &types.Any{}
  2462  					if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil {
  2463  						return err
  2464  					}
  2465  					iNdEx = postmsgIndex
  2466  				} else {
  2467  					iNdEx = entryPreIndex
  2468  					skippy, err := skipContainers(dAtA[iNdEx:])
  2469  					if err != nil {
  2470  						return err
  2471  					}
  2472  					if (skippy < 0) || (iNdEx+skippy) < 0 {
  2473  						return ErrInvalidLengthContainers
  2474  					}
  2475  					if (iNdEx + skippy) > postIndex {
  2476  						return io.ErrUnexpectedEOF
  2477  					}
  2478  					iNdEx += skippy
  2479  				}
  2480  			}
  2481  			m.Extensions[mapkey] = *mapvalue
  2482  			iNdEx = postIndex
  2483  		default:
  2484  			iNdEx = preIndex
  2485  			skippy, err := skipContainers(dAtA[iNdEx:])
  2486  			if err != nil {
  2487  				return err
  2488  			}
  2489  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  2490  				return ErrInvalidLengthContainers
  2491  			}
  2492  			if (iNdEx + skippy) > l {
  2493  				return io.ErrUnexpectedEOF
  2494  			}
  2495  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  2496  			iNdEx += skippy
  2497  		}
  2498  	}
  2499  
  2500  	if iNdEx > l {
  2501  		return io.ErrUnexpectedEOF
  2502  	}
  2503  	return nil
  2504  }
  2505  func (m *Container_Runtime) Unmarshal(dAtA []byte) error {
  2506  	l := len(dAtA)
  2507  	iNdEx := 0
  2508  	for iNdEx < l {
  2509  		preIndex := iNdEx
  2510  		var wire uint64
  2511  		for shift := uint(0); ; shift += 7 {
  2512  			if shift >= 64 {
  2513  				return ErrIntOverflowContainers
  2514  			}
  2515  			if iNdEx >= l {
  2516  				return io.ErrUnexpectedEOF
  2517  			}
  2518  			b := dAtA[iNdEx]
  2519  			iNdEx++
  2520  			wire |= uint64(b&0x7F) << shift
  2521  			if b < 0x80 {
  2522  				break
  2523  			}
  2524  		}
  2525  		fieldNum := int32(wire >> 3)
  2526  		wireType := int(wire & 0x7)
  2527  		if wireType == 4 {
  2528  			return fmt.Errorf("proto: Runtime: wiretype end group for non-group")
  2529  		}
  2530  		if fieldNum <= 0 {
  2531  			return fmt.Errorf("proto: Runtime: illegal tag %d (wire type %d)", fieldNum, wire)
  2532  		}
  2533  		switch fieldNum {
  2534  		case 1:
  2535  			if wireType != 2 {
  2536  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  2537  			}
  2538  			var stringLen uint64
  2539  			for shift := uint(0); ; shift += 7 {
  2540  				if shift >= 64 {
  2541  					return ErrIntOverflowContainers
  2542  				}
  2543  				if iNdEx >= l {
  2544  					return io.ErrUnexpectedEOF
  2545  				}
  2546  				b := dAtA[iNdEx]
  2547  				iNdEx++
  2548  				stringLen |= uint64(b&0x7F) << shift
  2549  				if b < 0x80 {
  2550  					break
  2551  				}
  2552  			}
  2553  			intStringLen := int(stringLen)
  2554  			if intStringLen < 0 {
  2555  				return ErrInvalidLengthContainers
  2556  			}
  2557  			postIndex := iNdEx + intStringLen
  2558  			if postIndex < 0 {
  2559  				return ErrInvalidLengthContainers
  2560  			}
  2561  			if postIndex > l {
  2562  				return io.ErrUnexpectedEOF
  2563  			}
  2564  			m.Name = string(dAtA[iNdEx:postIndex])
  2565  			iNdEx = postIndex
  2566  		case 2:
  2567  			if wireType != 2 {
  2568  				return fmt.Errorf("proto: wrong wireType = %d for field Options", wireType)
  2569  			}
  2570  			var msglen int
  2571  			for shift := uint(0); ; shift += 7 {
  2572  				if shift >= 64 {
  2573  					return ErrIntOverflowContainers
  2574  				}
  2575  				if iNdEx >= l {
  2576  					return io.ErrUnexpectedEOF
  2577  				}
  2578  				b := dAtA[iNdEx]
  2579  				iNdEx++
  2580  				msglen |= int(b&0x7F) << shift
  2581  				if b < 0x80 {
  2582  					break
  2583  				}
  2584  			}
  2585  			if msglen < 0 {
  2586  				return ErrInvalidLengthContainers
  2587  			}
  2588  			postIndex := iNdEx + msglen
  2589  			if postIndex < 0 {
  2590  				return ErrInvalidLengthContainers
  2591  			}
  2592  			if postIndex > l {
  2593  				return io.ErrUnexpectedEOF
  2594  			}
  2595  			if m.Options == nil {
  2596  				m.Options = &types.Any{}
  2597  			}
  2598  			if err := m.Options.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2599  				return err
  2600  			}
  2601  			iNdEx = postIndex
  2602  		default:
  2603  			iNdEx = preIndex
  2604  			skippy, err := skipContainers(dAtA[iNdEx:])
  2605  			if err != nil {
  2606  				return err
  2607  			}
  2608  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  2609  				return ErrInvalidLengthContainers
  2610  			}
  2611  			if (iNdEx + skippy) > l {
  2612  				return io.ErrUnexpectedEOF
  2613  			}
  2614  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  2615  			iNdEx += skippy
  2616  		}
  2617  	}
  2618  
  2619  	if iNdEx > l {
  2620  		return io.ErrUnexpectedEOF
  2621  	}
  2622  	return nil
  2623  }
  2624  func (m *GetContainerRequest) Unmarshal(dAtA []byte) error {
  2625  	l := len(dAtA)
  2626  	iNdEx := 0
  2627  	for iNdEx < l {
  2628  		preIndex := iNdEx
  2629  		var wire uint64
  2630  		for shift := uint(0); ; shift += 7 {
  2631  			if shift >= 64 {
  2632  				return ErrIntOverflowContainers
  2633  			}
  2634  			if iNdEx >= l {
  2635  				return io.ErrUnexpectedEOF
  2636  			}
  2637  			b := dAtA[iNdEx]
  2638  			iNdEx++
  2639  			wire |= uint64(b&0x7F) << shift
  2640  			if b < 0x80 {
  2641  				break
  2642  			}
  2643  		}
  2644  		fieldNum := int32(wire >> 3)
  2645  		wireType := int(wire & 0x7)
  2646  		if wireType == 4 {
  2647  			return fmt.Errorf("proto: GetContainerRequest: wiretype end group for non-group")
  2648  		}
  2649  		if fieldNum <= 0 {
  2650  			return fmt.Errorf("proto: GetContainerRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  2651  		}
  2652  		switch fieldNum {
  2653  		case 1:
  2654  			if wireType != 2 {
  2655  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  2656  			}
  2657  			var stringLen uint64
  2658  			for shift := uint(0); ; shift += 7 {
  2659  				if shift >= 64 {
  2660  					return ErrIntOverflowContainers
  2661  				}
  2662  				if iNdEx >= l {
  2663  					return io.ErrUnexpectedEOF
  2664  				}
  2665  				b := dAtA[iNdEx]
  2666  				iNdEx++
  2667  				stringLen |= uint64(b&0x7F) << shift
  2668  				if b < 0x80 {
  2669  					break
  2670  				}
  2671  			}
  2672  			intStringLen := int(stringLen)
  2673  			if intStringLen < 0 {
  2674  				return ErrInvalidLengthContainers
  2675  			}
  2676  			postIndex := iNdEx + intStringLen
  2677  			if postIndex < 0 {
  2678  				return ErrInvalidLengthContainers
  2679  			}
  2680  			if postIndex > l {
  2681  				return io.ErrUnexpectedEOF
  2682  			}
  2683  			m.ID = string(dAtA[iNdEx:postIndex])
  2684  			iNdEx = postIndex
  2685  		default:
  2686  			iNdEx = preIndex
  2687  			skippy, err := skipContainers(dAtA[iNdEx:])
  2688  			if err != nil {
  2689  				return err
  2690  			}
  2691  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  2692  				return ErrInvalidLengthContainers
  2693  			}
  2694  			if (iNdEx + skippy) > l {
  2695  				return io.ErrUnexpectedEOF
  2696  			}
  2697  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  2698  			iNdEx += skippy
  2699  		}
  2700  	}
  2701  
  2702  	if iNdEx > l {
  2703  		return io.ErrUnexpectedEOF
  2704  	}
  2705  	return nil
  2706  }
  2707  func (m *GetContainerResponse) Unmarshal(dAtA []byte) error {
  2708  	l := len(dAtA)
  2709  	iNdEx := 0
  2710  	for iNdEx < l {
  2711  		preIndex := iNdEx
  2712  		var wire uint64
  2713  		for shift := uint(0); ; shift += 7 {
  2714  			if shift >= 64 {
  2715  				return ErrIntOverflowContainers
  2716  			}
  2717  			if iNdEx >= l {
  2718  				return io.ErrUnexpectedEOF
  2719  			}
  2720  			b := dAtA[iNdEx]
  2721  			iNdEx++
  2722  			wire |= uint64(b&0x7F) << shift
  2723  			if b < 0x80 {
  2724  				break
  2725  			}
  2726  		}
  2727  		fieldNum := int32(wire >> 3)
  2728  		wireType := int(wire & 0x7)
  2729  		if wireType == 4 {
  2730  			return fmt.Errorf("proto: GetContainerResponse: wiretype end group for non-group")
  2731  		}
  2732  		if fieldNum <= 0 {
  2733  			return fmt.Errorf("proto: GetContainerResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  2734  		}
  2735  		switch fieldNum {
  2736  		case 1:
  2737  			if wireType != 2 {
  2738  				return fmt.Errorf("proto: wrong wireType = %d for field Container", wireType)
  2739  			}
  2740  			var msglen int
  2741  			for shift := uint(0); ; shift += 7 {
  2742  				if shift >= 64 {
  2743  					return ErrIntOverflowContainers
  2744  				}
  2745  				if iNdEx >= l {
  2746  					return io.ErrUnexpectedEOF
  2747  				}
  2748  				b := dAtA[iNdEx]
  2749  				iNdEx++
  2750  				msglen |= int(b&0x7F) << shift
  2751  				if b < 0x80 {
  2752  					break
  2753  				}
  2754  			}
  2755  			if msglen < 0 {
  2756  				return ErrInvalidLengthContainers
  2757  			}
  2758  			postIndex := iNdEx + msglen
  2759  			if postIndex < 0 {
  2760  				return ErrInvalidLengthContainers
  2761  			}
  2762  			if postIndex > l {
  2763  				return io.ErrUnexpectedEOF
  2764  			}
  2765  			if err := m.Container.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2766  				return err
  2767  			}
  2768  			iNdEx = postIndex
  2769  		default:
  2770  			iNdEx = preIndex
  2771  			skippy, err := skipContainers(dAtA[iNdEx:])
  2772  			if err != nil {
  2773  				return err
  2774  			}
  2775  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  2776  				return ErrInvalidLengthContainers
  2777  			}
  2778  			if (iNdEx + skippy) > l {
  2779  				return io.ErrUnexpectedEOF
  2780  			}
  2781  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  2782  			iNdEx += skippy
  2783  		}
  2784  	}
  2785  
  2786  	if iNdEx > l {
  2787  		return io.ErrUnexpectedEOF
  2788  	}
  2789  	return nil
  2790  }
  2791  func (m *ListContainersRequest) Unmarshal(dAtA []byte) error {
  2792  	l := len(dAtA)
  2793  	iNdEx := 0
  2794  	for iNdEx < l {
  2795  		preIndex := iNdEx
  2796  		var wire uint64
  2797  		for shift := uint(0); ; shift += 7 {
  2798  			if shift >= 64 {
  2799  				return ErrIntOverflowContainers
  2800  			}
  2801  			if iNdEx >= l {
  2802  				return io.ErrUnexpectedEOF
  2803  			}
  2804  			b := dAtA[iNdEx]
  2805  			iNdEx++
  2806  			wire |= uint64(b&0x7F) << shift
  2807  			if b < 0x80 {
  2808  				break
  2809  			}
  2810  		}
  2811  		fieldNum := int32(wire >> 3)
  2812  		wireType := int(wire & 0x7)
  2813  		if wireType == 4 {
  2814  			return fmt.Errorf("proto: ListContainersRequest: wiretype end group for non-group")
  2815  		}
  2816  		if fieldNum <= 0 {
  2817  			return fmt.Errorf("proto: ListContainersRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  2818  		}
  2819  		switch fieldNum {
  2820  		case 1:
  2821  			if wireType != 2 {
  2822  				return fmt.Errorf("proto: wrong wireType = %d for field Filters", wireType)
  2823  			}
  2824  			var stringLen uint64
  2825  			for shift := uint(0); ; shift += 7 {
  2826  				if shift >= 64 {
  2827  					return ErrIntOverflowContainers
  2828  				}
  2829  				if iNdEx >= l {
  2830  					return io.ErrUnexpectedEOF
  2831  				}
  2832  				b := dAtA[iNdEx]
  2833  				iNdEx++
  2834  				stringLen |= uint64(b&0x7F) << shift
  2835  				if b < 0x80 {
  2836  					break
  2837  				}
  2838  			}
  2839  			intStringLen := int(stringLen)
  2840  			if intStringLen < 0 {
  2841  				return ErrInvalidLengthContainers
  2842  			}
  2843  			postIndex := iNdEx + intStringLen
  2844  			if postIndex < 0 {
  2845  				return ErrInvalidLengthContainers
  2846  			}
  2847  			if postIndex > l {
  2848  				return io.ErrUnexpectedEOF
  2849  			}
  2850  			m.Filters = append(m.Filters, string(dAtA[iNdEx:postIndex]))
  2851  			iNdEx = postIndex
  2852  		default:
  2853  			iNdEx = preIndex
  2854  			skippy, err := skipContainers(dAtA[iNdEx:])
  2855  			if err != nil {
  2856  				return err
  2857  			}
  2858  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  2859  				return ErrInvalidLengthContainers
  2860  			}
  2861  			if (iNdEx + skippy) > l {
  2862  				return io.ErrUnexpectedEOF
  2863  			}
  2864  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  2865  			iNdEx += skippy
  2866  		}
  2867  	}
  2868  
  2869  	if iNdEx > l {
  2870  		return io.ErrUnexpectedEOF
  2871  	}
  2872  	return nil
  2873  }
  2874  func (m *ListContainersResponse) Unmarshal(dAtA []byte) error {
  2875  	l := len(dAtA)
  2876  	iNdEx := 0
  2877  	for iNdEx < l {
  2878  		preIndex := iNdEx
  2879  		var wire uint64
  2880  		for shift := uint(0); ; shift += 7 {
  2881  			if shift >= 64 {
  2882  				return ErrIntOverflowContainers
  2883  			}
  2884  			if iNdEx >= l {
  2885  				return io.ErrUnexpectedEOF
  2886  			}
  2887  			b := dAtA[iNdEx]
  2888  			iNdEx++
  2889  			wire |= uint64(b&0x7F) << shift
  2890  			if b < 0x80 {
  2891  				break
  2892  			}
  2893  		}
  2894  		fieldNum := int32(wire >> 3)
  2895  		wireType := int(wire & 0x7)
  2896  		if wireType == 4 {
  2897  			return fmt.Errorf("proto: ListContainersResponse: wiretype end group for non-group")
  2898  		}
  2899  		if fieldNum <= 0 {
  2900  			return fmt.Errorf("proto: ListContainersResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  2901  		}
  2902  		switch fieldNum {
  2903  		case 1:
  2904  			if wireType != 2 {
  2905  				return fmt.Errorf("proto: wrong wireType = %d for field Containers", wireType)
  2906  			}
  2907  			var msglen int
  2908  			for shift := uint(0); ; shift += 7 {
  2909  				if shift >= 64 {
  2910  					return ErrIntOverflowContainers
  2911  				}
  2912  				if iNdEx >= l {
  2913  					return io.ErrUnexpectedEOF
  2914  				}
  2915  				b := dAtA[iNdEx]
  2916  				iNdEx++
  2917  				msglen |= int(b&0x7F) << shift
  2918  				if b < 0x80 {
  2919  					break
  2920  				}
  2921  			}
  2922  			if msglen < 0 {
  2923  				return ErrInvalidLengthContainers
  2924  			}
  2925  			postIndex := iNdEx + msglen
  2926  			if postIndex < 0 {
  2927  				return ErrInvalidLengthContainers
  2928  			}
  2929  			if postIndex > l {
  2930  				return io.ErrUnexpectedEOF
  2931  			}
  2932  			m.Containers = append(m.Containers, Container{})
  2933  			if err := m.Containers[len(m.Containers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2934  				return err
  2935  			}
  2936  			iNdEx = postIndex
  2937  		default:
  2938  			iNdEx = preIndex
  2939  			skippy, err := skipContainers(dAtA[iNdEx:])
  2940  			if err != nil {
  2941  				return err
  2942  			}
  2943  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  2944  				return ErrInvalidLengthContainers
  2945  			}
  2946  			if (iNdEx + skippy) > l {
  2947  				return io.ErrUnexpectedEOF
  2948  			}
  2949  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  2950  			iNdEx += skippy
  2951  		}
  2952  	}
  2953  
  2954  	if iNdEx > l {
  2955  		return io.ErrUnexpectedEOF
  2956  	}
  2957  	return nil
  2958  }
  2959  func (m *CreateContainerRequest) Unmarshal(dAtA []byte) error {
  2960  	l := len(dAtA)
  2961  	iNdEx := 0
  2962  	for iNdEx < l {
  2963  		preIndex := iNdEx
  2964  		var wire uint64
  2965  		for shift := uint(0); ; shift += 7 {
  2966  			if shift >= 64 {
  2967  				return ErrIntOverflowContainers
  2968  			}
  2969  			if iNdEx >= l {
  2970  				return io.ErrUnexpectedEOF
  2971  			}
  2972  			b := dAtA[iNdEx]
  2973  			iNdEx++
  2974  			wire |= uint64(b&0x7F) << shift
  2975  			if b < 0x80 {
  2976  				break
  2977  			}
  2978  		}
  2979  		fieldNum := int32(wire >> 3)
  2980  		wireType := int(wire & 0x7)
  2981  		if wireType == 4 {
  2982  			return fmt.Errorf("proto: CreateContainerRequest: wiretype end group for non-group")
  2983  		}
  2984  		if fieldNum <= 0 {
  2985  			return fmt.Errorf("proto: CreateContainerRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  2986  		}
  2987  		switch fieldNum {
  2988  		case 1:
  2989  			if wireType != 2 {
  2990  				return fmt.Errorf("proto: wrong wireType = %d for field Container", wireType)
  2991  			}
  2992  			var msglen int
  2993  			for shift := uint(0); ; shift += 7 {
  2994  				if shift >= 64 {
  2995  					return ErrIntOverflowContainers
  2996  				}
  2997  				if iNdEx >= l {
  2998  					return io.ErrUnexpectedEOF
  2999  				}
  3000  				b := dAtA[iNdEx]
  3001  				iNdEx++
  3002  				msglen |= int(b&0x7F) << shift
  3003  				if b < 0x80 {
  3004  					break
  3005  				}
  3006  			}
  3007  			if msglen < 0 {
  3008  				return ErrInvalidLengthContainers
  3009  			}
  3010  			postIndex := iNdEx + msglen
  3011  			if postIndex < 0 {
  3012  				return ErrInvalidLengthContainers
  3013  			}
  3014  			if postIndex > l {
  3015  				return io.ErrUnexpectedEOF
  3016  			}
  3017  			if err := m.Container.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3018  				return err
  3019  			}
  3020  			iNdEx = postIndex
  3021  		default:
  3022  			iNdEx = preIndex
  3023  			skippy, err := skipContainers(dAtA[iNdEx:])
  3024  			if err != nil {
  3025  				return err
  3026  			}
  3027  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3028  				return ErrInvalidLengthContainers
  3029  			}
  3030  			if (iNdEx + skippy) > l {
  3031  				return io.ErrUnexpectedEOF
  3032  			}
  3033  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  3034  			iNdEx += skippy
  3035  		}
  3036  	}
  3037  
  3038  	if iNdEx > l {
  3039  		return io.ErrUnexpectedEOF
  3040  	}
  3041  	return nil
  3042  }
  3043  func (m *CreateContainerResponse) Unmarshal(dAtA []byte) error {
  3044  	l := len(dAtA)
  3045  	iNdEx := 0
  3046  	for iNdEx < l {
  3047  		preIndex := iNdEx
  3048  		var wire uint64
  3049  		for shift := uint(0); ; shift += 7 {
  3050  			if shift >= 64 {
  3051  				return ErrIntOverflowContainers
  3052  			}
  3053  			if iNdEx >= l {
  3054  				return io.ErrUnexpectedEOF
  3055  			}
  3056  			b := dAtA[iNdEx]
  3057  			iNdEx++
  3058  			wire |= uint64(b&0x7F) << shift
  3059  			if b < 0x80 {
  3060  				break
  3061  			}
  3062  		}
  3063  		fieldNum := int32(wire >> 3)
  3064  		wireType := int(wire & 0x7)
  3065  		if wireType == 4 {
  3066  			return fmt.Errorf("proto: CreateContainerResponse: wiretype end group for non-group")
  3067  		}
  3068  		if fieldNum <= 0 {
  3069  			return fmt.Errorf("proto: CreateContainerResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  3070  		}
  3071  		switch fieldNum {
  3072  		case 1:
  3073  			if wireType != 2 {
  3074  				return fmt.Errorf("proto: wrong wireType = %d for field Container", wireType)
  3075  			}
  3076  			var msglen int
  3077  			for shift := uint(0); ; shift += 7 {
  3078  				if shift >= 64 {
  3079  					return ErrIntOverflowContainers
  3080  				}
  3081  				if iNdEx >= l {
  3082  					return io.ErrUnexpectedEOF
  3083  				}
  3084  				b := dAtA[iNdEx]
  3085  				iNdEx++
  3086  				msglen |= int(b&0x7F) << shift
  3087  				if b < 0x80 {
  3088  					break
  3089  				}
  3090  			}
  3091  			if msglen < 0 {
  3092  				return ErrInvalidLengthContainers
  3093  			}
  3094  			postIndex := iNdEx + msglen
  3095  			if postIndex < 0 {
  3096  				return ErrInvalidLengthContainers
  3097  			}
  3098  			if postIndex > l {
  3099  				return io.ErrUnexpectedEOF
  3100  			}
  3101  			if err := m.Container.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3102  				return err
  3103  			}
  3104  			iNdEx = postIndex
  3105  		default:
  3106  			iNdEx = preIndex
  3107  			skippy, err := skipContainers(dAtA[iNdEx:])
  3108  			if err != nil {
  3109  				return err
  3110  			}
  3111  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3112  				return ErrInvalidLengthContainers
  3113  			}
  3114  			if (iNdEx + skippy) > l {
  3115  				return io.ErrUnexpectedEOF
  3116  			}
  3117  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  3118  			iNdEx += skippy
  3119  		}
  3120  	}
  3121  
  3122  	if iNdEx > l {
  3123  		return io.ErrUnexpectedEOF
  3124  	}
  3125  	return nil
  3126  }
  3127  func (m *UpdateContainerRequest) Unmarshal(dAtA []byte) error {
  3128  	l := len(dAtA)
  3129  	iNdEx := 0
  3130  	for iNdEx < l {
  3131  		preIndex := iNdEx
  3132  		var wire uint64
  3133  		for shift := uint(0); ; shift += 7 {
  3134  			if shift >= 64 {
  3135  				return ErrIntOverflowContainers
  3136  			}
  3137  			if iNdEx >= l {
  3138  				return io.ErrUnexpectedEOF
  3139  			}
  3140  			b := dAtA[iNdEx]
  3141  			iNdEx++
  3142  			wire |= uint64(b&0x7F) << shift
  3143  			if b < 0x80 {
  3144  				break
  3145  			}
  3146  		}
  3147  		fieldNum := int32(wire >> 3)
  3148  		wireType := int(wire & 0x7)
  3149  		if wireType == 4 {
  3150  			return fmt.Errorf("proto: UpdateContainerRequest: wiretype end group for non-group")
  3151  		}
  3152  		if fieldNum <= 0 {
  3153  			return fmt.Errorf("proto: UpdateContainerRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  3154  		}
  3155  		switch fieldNum {
  3156  		case 1:
  3157  			if wireType != 2 {
  3158  				return fmt.Errorf("proto: wrong wireType = %d for field Container", wireType)
  3159  			}
  3160  			var msglen int
  3161  			for shift := uint(0); ; shift += 7 {
  3162  				if shift >= 64 {
  3163  					return ErrIntOverflowContainers
  3164  				}
  3165  				if iNdEx >= l {
  3166  					return io.ErrUnexpectedEOF
  3167  				}
  3168  				b := dAtA[iNdEx]
  3169  				iNdEx++
  3170  				msglen |= int(b&0x7F) << shift
  3171  				if b < 0x80 {
  3172  					break
  3173  				}
  3174  			}
  3175  			if msglen < 0 {
  3176  				return ErrInvalidLengthContainers
  3177  			}
  3178  			postIndex := iNdEx + msglen
  3179  			if postIndex < 0 {
  3180  				return ErrInvalidLengthContainers
  3181  			}
  3182  			if postIndex > l {
  3183  				return io.ErrUnexpectedEOF
  3184  			}
  3185  			if err := m.Container.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3186  				return err
  3187  			}
  3188  			iNdEx = postIndex
  3189  		case 2:
  3190  			if wireType != 2 {
  3191  				return fmt.Errorf("proto: wrong wireType = %d for field UpdateMask", wireType)
  3192  			}
  3193  			var msglen int
  3194  			for shift := uint(0); ; shift += 7 {
  3195  				if shift >= 64 {
  3196  					return ErrIntOverflowContainers
  3197  				}
  3198  				if iNdEx >= l {
  3199  					return io.ErrUnexpectedEOF
  3200  				}
  3201  				b := dAtA[iNdEx]
  3202  				iNdEx++
  3203  				msglen |= int(b&0x7F) << shift
  3204  				if b < 0x80 {
  3205  					break
  3206  				}
  3207  			}
  3208  			if msglen < 0 {
  3209  				return ErrInvalidLengthContainers
  3210  			}
  3211  			postIndex := iNdEx + msglen
  3212  			if postIndex < 0 {
  3213  				return ErrInvalidLengthContainers
  3214  			}
  3215  			if postIndex > l {
  3216  				return io.ErrUnexpectedEOF
  3217  			}
  3218  			if m.UpdateMask == nil {
  3219  				m.UpdateMask = &types.FieldMask{}
  3220  			}
  3221  			if err := m.UpdateMask.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3222  				return err
  3223  			}
  3224  			iNdEx = postIndex
  3225  		default:
  3226  			iNdEx = preIndex
  3227  			skippy, err := skipContainers(dAtA[iNdEx:])
  3228  			if err != nil {
  3229  				return err
  3230  			}
  3231  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3232  				return ErrInvalidLengthContainers
  3233  			}
  3234  			if (iNdEx + skippy) > l {
  3235  				return io.ErrUnexpectedEOF
  3236  			}
  3237  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  3238  			iNdEx += skippy
  3239  		}
  3240  	}
  3241  
  3242  	if iNdEx > l {
  3243  		return io.ErrUnexpectedEOF
  3244  	}
  3245  	return nil
  3246  }
  3247  func (m *UpdateContainerResponse) Unmarshal(dAtA []byte) error {
  3248  	l := len(dAtA)
  3249  	iNdEx := 0
  3250  	for iNdEx < l {
  3251  		preIndex := iNdEx
  3252  		var wire uint64
  3253  		for shift := uint(0); ; shift += 7 {
  3254  			if shift >= 64 {
  3255  				return ErrIntOverflowContainers
  3256  			}
  3257  			if iNdEx >= l {
  3258  				return io.ErrUnexpectedEOF
  3259  			}
  3260  			b := dAtA[iNdEx]
  3261  			iNdEx++
  3262  			wire |= uint64(b&0x7F) << shift
  3263  			if b < 0x80 {
  3264  				break
  3265  			}
  3266  		}
  3267  		fieldNum := int32(wire >> 3)
  3268  		wireType := int(wire & 0x7)
  3269  		if wireType == 4 {
  3270  			return fmt.Errorf("proto: UpdateContainerResponse: wiretype end group for non-group")
  3271  		}
  3272  		if fieldNum <= 0 {
  3273  			return fmt.Errorf("proto: UpdateContainerResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  3274  		}
  3275  		switch fieldNum {
  3276  		case 1:
  3277  			if wireType != 2 {
  3278  				return fmt.Errorf("proto: wrong wireType = %d for field Container", wireType)
  3279  			}
  3280  			var msglen int
  3281  			for shift := uint(0); ; shift += 7 {
  3282  				if shift >= 64 {
  3283  					return ErrIntOverflowContainers
  3284  				}
  3285  				if iNdEx >= l {
  3286  					return io.ErrUnexpectedEOF
  3287  				}
  3288  				b := dAtA[iNdEx]
  3289  				iNdEx++
  3290  				msglen |= int(b&0x7F) << shift
  3291  				if b < 0x80 {
  3292  					break
  3293  				}
  3294  			}
  3295  			if msglen < 0 {
  3296  				return ErrInvalidLengthContainers
  3297  			}
  3298  			postIndex := iNdEx + msglen
  3299  			if postIndex < 0 {
  3300  				return ErrInvalidLengthContainers
  3301  			}
  3302  			if postIndex > l {
  3303  				return io.ErrUnexpectedEOF
  3304  			}
  3305  			if err := m.Container.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3306  				return err
  3307  			}
  3308  			iNdEx = postIndex
  3309  		default:
  3310  			iNdEx = preIndex
  3311  			skippy, err := skipContainers(dAtA[iNdEx:])
  3312  			if err != nil {
  3313  				return err
  3314  			}
  3315  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3316  				return ErrInvalidLengthContainers
  3317  			}
  3318  			if (iNdEx + skippy) > l {
  3319  				return io.ErrUnexpectedEOF
  3320  			}
  3321  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  3322  			iNdEx += skippy
  3323  		}
  3324  	}
  3325  
  3326  	if iNdEx > l {
  3327  		return io.ErrUnexpectedEOF
  3328  	}
  3329  	return nil
  3330  }
  3331  func (m *DeleteContainerRequest) Unmarshal(dAtA []byte) error {
  3332  	l := len(dAtA)
  3333  	iNdEx := 0
  3334  	for iNdEx < l {
  3335  		preIndex := iNdEx
  3336  		var wire uint64
  3337  		for shift := uint(0); ; shift += 7 {
  3338  			if shift >= 64 {
  3339  				return ErrIntOverflowContainers
  3340  			}
  3341  			if iNdEx >= l {
  3342  				return io.ErrUnexpectedEOF
  3343  			}
  3344  			b := dAtA[iNdEx]
  3345  			iNdEx++
  3346  			wire |= uint64(b&0x7F) << shift
  3347  			if b < 0x80 {
  3348  				break
  3349  			}
  3350  		}
  3351  		fieldNum := int32(wire >> 3)
  3352  		wireType := int(wire & 0x7)
  3353  		if wireType == 4 {
  3354  			return fmt.Errorf("proto: DeleteContainerRequest: wiretype end group for non-group")
  3355  		}
  3356  		if fieldNum <= 0 {
  3357  			return fmt.Errorf("proto: DeleteContainerRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  3358  		}
  3359  		switch fieldNum {
  3360  		case 1:
  3361  			if wireType != 2 {
  3362  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  3363  			}
  3364  			var stringLen uint64
  3365  			for shift := uint(0); ; shift += 7 {
  3366  				if shift >= 64 {
  3367  					return ErrIntOverflowContainers
  3368  				}
  3369  				if iNdEx >= l {
  3370  					return io.ErrUnexpectedEOF
  3371  				}
  3372  				b := dAtA[iNdEx]
  3373  				iNdEx++
  3374  				stringLen |= uint64(b&0x7F) << shift
  3375  				if b < 0x80 {
  3376  					break
  3377  				}
  3378  			}
  3379  			intStringLen := int(stringLen)
  3380  			if intStringLen < 0 {
  3381  				return ErrInvalidLengthContainers
  3382  			}
  3383  			postIndex := iNdEx + intStringLen
  3384  			if postIndex < 0 {
  3385  				return ErrInvalidLengthContainers
  3386  			}
  3387  			if postIndex > l {
  3388  				return io.ErrUnexpectedEOF
  3389  			}
  3390  			m.ID = string(dAtA[iNdEx:postIndex])
  3391  			iNdEx = postIndex
  3392  		default:
  3393  			iNdEx = preIndex
  3394  			skippy, err := skipContainers(dAtA[iNdEx:])
  3395  			if err != nil {
  3396  				return err
  3397  			}
  3398  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3399  				return ErrInvalidLengthContainers
  3400  			}
  3401  			if (iNdEx + skippy) > l {
  3402  				return io.ErrUnexpectedEOF
  3403  			}
  3404  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  3405  			iNdEx += skippy
  3406  		}
  3407  	}
  3408  
  3409  	if iNdEx > l {
  3410  		return io.ErrUnexpectedEOF
  3411  	}
  3412  	return nil
  3413  }
  3414  func (m *ListContainerMessage) Unmarshal(dAtA []byte) error {
  3415  	l := len(dAtA)
  3416  	iNdEx := 0
  3417  	for iNdEx < l {
  3418  		preIndex := iNdEx
  3419  		var wire uint64
  3420  		for shift := uint(0); ; shift += 7 {
  3421  			if shift >= 64 {
  3422  				return ErrIntOverflowContainers
  3423  			}
  3424  			if iNdEx >= l {
  3425  				return io.ErrUnexpectedEOF
  3426  			}
  3427  			b := dAtA[iNdEx]
  3428  			iNdEx++
  3429  			wire |= uint64(b&0x7F) << shift
  3430  			if b < 0x80 {
  3431  				break
  3432  			}
  3433  		}
  3434  		fieldNum := int32(wire >> 3)
  3435  		wireType := int(wire & 0x7)
  3436  		if wireType == 4 {
  3437  			return fmt.Errorf("proto: ListContainerMessage: wiretype end group for non-group")
  3438  		}
  3439  		if fieldNum <= 0 {
  3440  			return fmt.Errorf("proto: ListContainerMessage: illegal tag %d (wire type %d)", fieldNum, wire)
  3441  		}
  3442  		switch fieldNum {
  3443  		case 1:
  3444  			if wireType != 2 {
  3445  				return fmt.Errorf("proto: wrong wireType = %d for field Container", wireType)
  3446  			}
  3447  			var msglen int
  3448  			for shift := uint(0); ; shift += 7 {
  3449  				if shift >= 64 {
  3450  					return ErrIntOverflowContainers
  3451  				}
  3452  				if iNdEx >= l {
  3453  					return io.ErrUnexpectedEOF
  3454  				}
  3455  				b := dAtA[iNdEx]
  3456  				iNdEx++
  3457  				msglen |= int(b&0x7F) << shift
  3458  				if b < 0x80 {
  3459  					break
  3460  				}
  3461  			}
  3462  			if msglen < 0 {
  3463  				return ErrInvalidLengthContainers
  3464  			}
  3465  			postIndex := iNdEx + msglen
  3466  			if postIndex < 0 {
  3467  				return ErrInvalidLengthContainers
  3468  			}
  3469  			if postIndex > l {
  3470  				return io.ErrUnexpectedEOF
  3471  			}
  3472  			if m.Container == nil {
  3473  				m.Container = &Container{}
  3474  			}
  3475  			if err := m.Container.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3476  				return err
  3477  			}
  3478  			iNdEx = postIndex
  3479  		default:
  3480  			iNdEx = preIndex
  3481  			skippy, err := skipContainers(dAtA[iNdEx:])
  3482  			if err != nil {
  3483  				return err
  3484  			}
  3485  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3486  				return ErrInvalidLengthContainers
  3487  			}
  3488  			if (iNdEx + skippy) > l {
  3489  				return io.ErrUnexpectedEOF
  3490  			}
  3491  			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
  3492  			iNdEx += skippy
  3493  		}
  3494  	}
  3495  
  3496  	if iNdEx > l {
  3497  		return io.ErrUnexpectedEOF
  3498  	}
  3499  	return nil
  3500  }
  3501  func skipContainers(dAtA []byte) (n int, err error) {
  3502  	l := len(dAtA)
  3503  	iNdEx := 0
  3504  	depth := 0
  3505  	for iNdEx < l {
  3506  		var wire uint64
  3507  		for shift := uint(0); ; shift += 7 {
  3508  			if shift >= 64 {
  3509  				return 0, ErrIntOverflowContainers
  3510  			}
  3511  			if iNdEx >= l {
  3512  				return 0, io.ErrUnexpectedEOF
  3513  			}
  3514  			b := dAtA[iNdEx]
  3515  			iNdEx++
  3516  			wire |= (uint64(b) & 0x7F) << shift
  3517  			if b < 0x80 {
  3518  				break
  3519  			}
  3520  		}
  3521  		wireType := int(wire & 0x7)
  3522  		switch wireType {
  3523  		case 0:
  3524  			for shift := uint(0); ; shift += 7 {
  3525  				if shift >= 64 {
  3526  					return 0, ErrIntOverflowContainers
  3527  				}
  3528  				if iNdEx >= l {
  3529  					return 0, io.ErrUnexpectedEOF
  3530  				}
  3531  				iNdEx++
  3532  				if dAtA[iNdEx-1] < 0x80 {
  3533  					break
  3534  				}
  3535  			}
  3536  		case 1:
  3537  			iNdEx += 8
  3538  		case 2:
  3539  			var length int
  3540  			for shift := uint(0); ; shift += 7 {
  3541  				if shift >= 64 {
  3542  					return 0, ErrIntOverflowContainers
  3543  				}
  3544  				if iNdEx >= l {
  3545  					return 0, io.ErrUnexpectedEOF
  3546  				}
  3547  				b := dAtA[iNdEx]
  3548  				iNdEx++
  3549  				length |= (int(b) & 0x7F) << shift
  3550  				if b < 0x80 {
  3551  					break
  3552  				}
  3553  			}
  3554  			if length < 0 {
  3555  				return 0, ErrInvalidLengthContainers
  3556  			}
  3557  			iNdEx += length
  3558  		case 3:
  3559  			depth++
  3560  		case 4:
  3561  			if depth == 0 {
  3562  				return 0, ErrUnexpectedEndOfGroupContainers
  3563  			}
  3564  			depth--
  3565  		case 5:
  3566  			iNdEx += 4
  3567  		default:
  3568  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  3569  		}
  3570  		if iNdEx < 0 {
  3571  			return 0, ErrInvalidLengthContainers
  3572  		}
  3573  		if depth == 0 {
  3574  			return iNdEx, nil
  3575  		}
  3576  	}
  3577  	return 0, io.ErrUnexpectedEOF
  3578  }
  3579  
  3580  var (
  3581  	ErrInvalidLengthContainers        = fmt.Errorf("proto: negative length found during unmarshaling")
  3582  	ErrIntOverflowContainers          = fmt.Errorf("proto: integer overflow")
  3583  	ErrUnexpectedEndOfGroupContainers = fmt.Errorf("proto: unexpected end of group")
  3584  )