github.com/manicqin/nomad@v0.9.5/plugins/drivers/proto/driver.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // source: plugins/drivers/proto/driver.proto
     3  
     4  package proto
     5  
     6  import proto "github.com/golang/protobuf/proto"
     7  import fmt "fmt"
     8  import math "math"
     9  import duration "github.com/golang/protobuf/ptypes/duration"
    10  import timestamp "github.com/golang/protobuf/ptypes/timestamp"
    11  import hclspec "github.com/hashicorp/nomad/plugins/shared/hclspec"
    12  import proto1 "github.com/hashicorp/nomad/plugins/shared/structs/proto"
    13  
    14  import (
    15  	context "golang.org/x/net/context"
    16  	grpc "google.golang.org/grpc"
    17  )
    18  
    19  // Reference imports to suppress errors if they are not otherwise used.
    20  var _ = proto.Marshal
    21  var _ = fmt.Errorf
    22  var _ = math.Inf
    23  
    24  // This is a compile-time assertion to ensure that this generated file
    25  // is compatible with the proto package it is being compiled against.
    26  // A compilation error at this line likely means your copy of the
    27  // proto package needs to be updated.
    28  const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
    29  
    30  type TaskState int32
    31  
    32  const (
    33  	TaskState_UNKNOWN TaskState = 0
    34  	TaskState_RUNNING TaskState = 1
    35  	TaskState_EXITED  TaskState = 2
    36  )
    37  
    38  var TaskState_name = map[int32]string{
    39  	0: "UNKNOWN",
    40  	1: "RUNNING",
    41  	2: "EXITED",
    42  }
    43  var TaskState_value = map[string]int32{
    44  	"UNKNOWN": 0,
    45  	"RUNNING": 1,
    46  	"EXITED":  2,
    47  }
    48  
    49  func (x TaskState) String() string {
    50  	return proto.EnumName(TaskState_name, int32(x))
    51  }
    52  func (TaskState) EnumDescriptor() ([]byte, []int) {
    53  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{0}
    54  }
    55  
    56  type FingerprintResponse_HealthState int32
    57  
    58  const (
    59  	FingerprintResponse_UNDETECTED FingerprintResponse_HealthState = 0
    60  	FingerprintResponse_UNHEALTHY  FingerprintResponse_HealthState = 1
    61  	FingerprintResponse_HEALTHY    FingerprintResponse_HealthState = 2
    62  )
    63  
    64  var FingerprintResponse_HealthState_name = map[int32]string{
    65  	0: "UNDETECTED",
    66  	1: "UNHEALTHY",
    67  	2: "HEALTHY",
    68  }
    69  var FingerprintResponse_HealthState_value = map[string]int32{
    70  	"UNDETECTED": 0,
    71  	"UNHEALTHY":  1,
    72  	"HEALTHY":    2,
    73  }
    74  
    75  func (x FingerprintResponse_HealthState) String() string {
    76  	return proto.EnumName(FingerprintResponse_HealthState_name, int32(x))
    77  }
    78  func (FingerprintResponse_HealthState) EnumDescriptor() ([]byte, []int) {
    79  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{5, 0}
    80  }
    81  
    82  type StartTaskResponse_Result int32
    83  
    84  const (
    85  	StartTaskResponse_SUCCESS StartTaskResponse_Result = 0
    86  	StartTaskResponse_RETRY   StartTaskResponse_Result = 1
    87  	StartTaskResponse_FATAL   StartTaskResponse_Result = 2
    88  )
    89  
    90  var StartTaskResponse_Result_name = map[int32]string{
    91  	0: "SUCCESS",
    92  	1: "RETRY",
    93  	2: "FATAL",
    94  }
    95  var StartTaskResponse_Result_value = map[string]int32{
    96  	"SUCCESS": 0,
    97  	"RETRY":   1,
    98  	"FATAL":   2,
    99  }
   100  
   101  func (x StartTaskResponse_Result) String() string {
   102  	return proto.EnumName(StartTaskResponse_Result_name, int32(x))
   103  }
   104  func (StartTaskResponse_Result) EnumDescriptor() ([]byte, []int) {
   105  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{9, 0}
   106  }
   107  
   108  type DriverCapabilities_FSIsolation int32
   109  
   110  const (
   111  	DriverCapabilities_NONE   DriverCapabilities_FSIsolation = 0
   112  	DriverCapabilities_CHROOT DriverCapabilities_FSIsolation = 1
   113  	DriverCapabilities_IMAGE  DriverCapabilities_FSIsolation = 2
   114  )
   115  
   116  var DriverCapabilities_FSIsolation_name = map[int32]string{
   117  	0: "NONE",
   118  	1: "CHROOT",
   119  	2: "IMAGE",
   120  }
   121  var DriverCapabilities_FSIsolation_value = map[string]int32{
   122  	"NONE":   0,
   123  	"CHROOT": 1,
   124  	"IMAGE":  2,
   125  }
   126  
   127  func (x DriverCapabilities_FSIsolation) String() string {
   128  	return proto.EnumName(DriverCapabilities_FSIsolation_name, int32(x))
   129  }
   130  func (DriverCapabilities_FSIsolation) EnumDescriptor() ([]byte, []int) {
   131  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{32, 0}
   132  }
   133  
   134  type NetworkIsolationSpec_NetworkIsolationMode int32
   135  
   136  const (
   137  	NetworkIsolationSpec_HOST  NetworkIsolationSpec_NetworkIsolationMode = 0
   138  	NetworkIsolationSpec_GROUP NetworkIsolationSpec_NetworkIsolationMode = 1
   139  	NetworkIsolationSpec_TASK  NetworkIsolationSpec_NetworkIsolationMode = 2
   140  	NetworkIsolationSpec_NONE  NetworkIsolationSpec_NetworkIsolationMode = 3
   141  )
   142  
   143  var NetworkIsolationSpec_NetworkIsolationMode_name = map[int32]string{
   144  	0: "HOST",
   145  	1: "GROUP",
   146  	2: "TASK",
   147  	3: "NONE",
   148  }
   149  var NetworkIsolationSpec_NetworkIsolationMode_value = map[string]int32{
   150  	"HOST":  0,
   151  	"GROUP": 1,
   152  	"TASK":  2,
   153  	"NONE":  3,
   154  }
   155  
   156  func (x NetworkIsolationSpec_NetworkIsolationMode) String() string {
   157  	return proto.EnumName(NetworkIsolationSpec_NetworkIsolationMode_name, int32(x))
   158  }
   159  func (NetworkIsolationSpec_NetworkIsolationMode) EnumDescriptor() ([]byte, []int) {
   160  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{33, 0}
   161  }
   162  
   163  type CPUUsage_Fields int32
   164  
   165  const (
   166  	CPUUsage_SYSTEM_MODE       CPUUsage_Fields = 0
   167  	CPUUsage_USER_MODE         CPUUsage_Fields = 1
   168  	CPUUsage_TOTAL_TICKS       CPUUsage_Fields = 2
   169  	CPUUsage_THROTTLED_PERIODS CPUUsage_Fields = 3
   170  	CPUUsage_THROTTLED_TIME    CPUUsage_Fields = 4
   171  	CPUUsage_PERCENT           CPUUsage_Fields = 5
   172  )
   173  
   174  var CPUUsage_Fields_name = map[int32]string{
   175  	0: "SYSTEM_MODE",
   176  	1: "USER_MODE",
   177  	2: "TOTAL_TICKS",
   178  	3: "THROTTLED_PERIODS",
   179  	4: "THROTTLED_TIME",
   180  	5: "PERCENT",
   181  }
   182  var CPUUsage_Fields_value = map[string]int32{
   183  	"SYSTEM_MODE":       0,
   184  	"USER_MODE":         1,
   185  	"TOTAL_TICKS":       2,
   186  	"THROTTLED_PERIODS": 3,
   187  	"THROTTLED_TIME":    4,
   188  	"PERCENT":           5,
   189  }
   190  
   191  func (x CPUUsage_Fields) String() string {
   192  	return proto.EnumName(CPUUsage_Fields_name, int32(x))
   193  }
   194  func (CPUUsage_Fields) EnumDescriptor() ([]byte, []int) {
   195  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{51, 0}
   196  }
   197  
   198  type MemoryUsage_Fields int32
   199  
   200  const (
   201  	MemoryUsage_RSS              MemoryUsage_Fields = 0
   202  	MemoryUsage_CACHE            MemoryUsage_Fields = 1
   203  	MemoryUsage_MAX_USAGE        MemoryUsage_Fields = 2
   204  	MemoryUsage_KERNEL_USAGE     MemoryUsage_Fields = 3
   205  	MemoryUsage_KERNEL_MAX_USAGE MemoryUsage_Fields = 4
   206  	MemoryUsage_USAGE            MemoryUsage_Fields = 5
   207  	MemoryUsage_SWAP             MemoryUsage_Fields = 6
   208  )
   209  
   210  var MemoryUsage_Fields_name = map[int32]string{
   211  	0: "RSS",
   212  	1: "CACHE",
   213  	2: "MAX_USAGE",
   214  	3: "KERNEL_USAGE",
   215  	4: "KERNEL_MAX_USAGE",
   216  	5: "USAGE",
   217  	6: "SWAP",
   218  }
   219  var MemoryUsage_Fields_value = map[string]int32{
   220  	"RSS":              0,
   221  	"CACHE":            1,
   222  	"MAX_USAGE":        2,
   223  	"KERNEL_USAGE":     3,
   224  	"KERNEL_MAX_USAGE": 4,
   225  	"USAGE":            5,
   226  	"SWAP":             6,
   227  }
   228  
   229  func (x MemoryUsage_Fields) String() string {
   230  	return proto.EnumName(MemoryUsage_Fields_name, int32(x))
   231  }
   232  func (MemoryUsage_Fields) EnumDescriptor() ([]byte, []int) {
   233  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{52, 0}
   234  }
   235  
   236  type TaskConfigSchemaRequest struct {
   237  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   238  	XXX_unrecognized     []byte   `json:"-"`
   239  	XXX_sizecache        int32    `json:"-"`
   240  }
   241  
   242  func (m *TaskConfigSchemaRequest) Reset()         { *m = TaskConfigSchemaRequest{} }
   243  func (m *TaskConfigSchemaRequest) String() string { return proto.CompactTextString(m) }
   244  func (*TaskConfigSchemaRequest) ProtoMessage()    {}
   245  func (*TaskConfigSchemaRequest) Descriptor() ([]byte, []int) {
   246  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{0}
   247  }
   248  func (m *TaskConfigSchemaRequest) XXX_Unmarshal(b []byte) error {
   249  	return xxx_messageInfo_TaskConfigSchemaRequest.Unmarshal(m, b)
   250  }
   251  func (m *TaskConfigSchemaRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   252  	return xxx_messageInfo_TaskConfigSchemaRequest.Marshal(b, m, deterministic)
   253  }
   254  func (dst *TaskConfigSchemaRequest) XXX_Merge(src proto.Message) {
   255  	xxx_messageInfo_TaskConfigSchemaRequest.Merge(dst, src)
   256  }
   257  func (m *TaskConfigSchemaRequest) XXX_Size() int {
   258  	return xxx_messageInfo_TaskConfigSchemaRequest.Size(m)
   259  }
   260  func (m *TaskConfigSchemaRequest) XXX_DiscardUnknown() {
   261  	xxx_messageInfo_TaskConfigSchemaRequest.DiscardUnknown(m)
   262  }
   263  
   264  var xxx_messageInfo_TaskConfigSchemaRequest proto.InternalMessageInfo
   265  
   266  type TaskConfigSchemaResponse struct {
   267  	// Spec is the configuration schema for the job driver config stanza
   268  	Spec                 *hclspec.Spec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"`
   269  	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
   270  	XXX_unrecognized     []byte        `json:"-"`
   271  	XXX_sizecache        int32         `json:"-"`
   272  }
   273  
   274  func (m *TaskConfigSchemaResponse) Reset()         { *m = TaskConfigSchemaResponse{} }
   275  func (m *TaskConfigSchemaResponse) String() string { return proto.CompactTextString(m) }
   276  func (*TaskConfigSchemaResponse) ProtoMessage()    {}
   277  func (*TaskConfigSchemaResponse) Descriptor() ([]byte, []int) {
   278  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{1}
   279  }
   280  func (m *TaskConfigSchemaResponse) XXX_Unmarshal(b []byte) error {
   281  	return xxx_messageInfo_TaskConfigSchemaResponse.Unmarshal(m, b)
   282  }
   283  func (m *TaskConfigSchemaResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   284  	return xxx_messageInfo_TaskConfigSchemaResponse.Marshal(b, m, deterministic)
   285  }
   286  func (dst *TaskConfigSchemaResponse) XXX_Merge(src proto.Message) {
   287  	xxx_messageInfo_TaskConfigSchemaResponse.Merge(dst, src)
   288  }
   289  func (m *TaskConfigSchemaResponse) XXX_Size() int {
   290  	return xxx_messageInfo_TaskConfigSchemaResponse.Size(m)
   291  }
   292  func (m *TaskConfigSchemaResponse) XXX_DiscardUnknown() {
   293  	xxx_messageInfo_TaskConfigSchemaResponse.DiscardUnknown(m)
   294  }
   295  
   296  var xxx_messageInfo_TaskConfigSchemaResponse proto.InternalMessageInfo
   297  
   298  func (m *TaskConfigSchemaResponse) GetSpec() *hclspec.Spec {
   299  	if m != nil {
   300  		return m.Spec
   301  	}
   302  	return nil
   303  }
   304  
   305  type CapabilitiesRequest struct {
   306  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   307  	XXX_unrecognized     []byte   `json:"-"`
   308  	XXX_sizecache        int32    `json:"-"`
   309  }
   310  
   311  func (m *CapabilitiesRequest) Reset()         { *m = CapabilitiesRequest{} }
   312  func (m *CapabilitiesRequest) String() string { return proto.CompactTextString(m) }
   313  func (*CapabilitiesRequest) ProtoMessage()    {}
   314  func (*CapabilitiesRequest) Descriptor() ([]byte, []int) {
   315  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{2}
   316  }
   317  func (m *CapabilitiesRequest) XXX_Unmarshal(b []byte) error {
   318  	return xxx_messageInfo_CapabilitiesRequest.Unmarshal(m, b)
   319  }
   320  func (m *CapabilitiesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   321  	return xxx_messageInfo_CapabilitiesRequest.Marshal(b, m, deterministic)
   322  }
   323  func (dst *CapabilitiesRequest) XXX_Merge(src proto.Message) {
   324  	xxx_messageInfo_CapabilitiesRequest.Merge(dst, src)
   325  }
   326  func (m *CapabilitiesRequest) XXX_Size() int {
   327  	return xxx_messageInfo_CapabilitiesRequest.Size(m)
   328  }
   329  func (m *CapabilitiesRequest) XXX_DiscardUnknown() {
   330  	xxx_messageInfo_CapabilitiesRequest.DiscardUnknown(m)
   331  }
   332  
   333  var xxx_messageInfo_CapabilitiesRequest proto.InternalMessageInfo
   334  
   335  type CapabilitiesResponse struct {
   336  	// Capabilities provides a way for the driver to denote if it implements
   337  	// non-core RPCs. Some Driver service RPCs expose additional information
   338  	// or functionality outside of the core task management functions. These
   339  	// RPCs are only implemented if the driver sets the corresponding capability.
   340  	Capabilities         *DriverCapabilities `protobuf:"bytes,1,opt,name=capabilities,proto3" json:"capabilities,omitempty"`
   341  	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
   342  	XXX_unrecognized     []byte              `json:"-"`
   343  	XXX_sizecache        int32               `json:"-"`
   344  }
   345  
   346  func (m *CapabilitiesResponse) Reset()         { *m = CapabilitiesResponse{} }
   347  func (m *CapabilitiesResponse) String() string { return proto.CompactTextString(m) }
   348  func (*CapabilitiesResponse) ProtoMessage()    {}
   349  func (*CapabilitiesResponse) Descriptor() ([]byte, []int) {
   350  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{3}
   351  }
   352  func (m *CapabilitiesResponse) XXX_Unmarshal(b []byte) error {
   353  	return xxx_messageInfo_CapabilitiesResponse.Unmarshal(m, b)
   354  }
   355  func (m *CapabilitiesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   356  	return xxx_messageInfo_CapabilitiesResponse.Marshal(b, m, deterministic)
   357  }
   358  func (dst *CapabilitiesResponse) XXX_Merge(src proto.Message) {
   359  	xxx_messageInfo_CapabilitiesResponse.Merge(dst, src)
   360  }
   361  func (m *CapabilitiesResponse) XXX_Size() int {
   362  	return xxx_messageInfo_CapabilitiesResponse.Size(m)
   363  }
   364  func (m *CapabilitiesResponse) XXX_DiscardUnknown() {
   365  	xxx_messageInfo_CapabilitiesResponse.DiscardUnknown(m)
   366  }
   367  
   368  var xxx_messageInfo_CapabilitiesResponse proto.InternalMessageInfo
   369  
   370  func (m *CapabilitiesResponse) GetCapabilities() *DriverCapabilities {
   371  	if m != nil {
   372  		return m.Capabilities
   373  	}
   374  	return nil
   375  }
   376  
   377  type FingerprintRequest struct {
   378  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   379  	XXX_unrecognized     []byte   `json:"-"`
   380  	XXX_sizecache        int32    `json:"-"`
   381  }
   382  
   383  func (m *FingerprintRequest) Reset()         { *m = FingerprintRequest{} }
   384  func (m *FingerprintRequest) String() string { return proto.CompactTextString(m) }
   385  func (*FingerprintRequest) ProtoMessage()    {}
   386  func (*FingerprintRequest) Descriptor() ([]byte, []int) {
   387  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{4}
   388  }
   389  func (m *FingerprintRequest) XXX_Unmarshal(b []byte) error {
   390  	return xxx_messageInfo_FingerprintRequest.Unmarshal(m, b)
   391  }
   392  func (m *FingerprintRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   393  	return xxx_messageInfo_FingerprintRequest.Marshal(b, m, deterministic)
   394  }
   395  func (dst *FingerprintRequest) XXX_Merge(src proto.Message) {
   396  	xxx_messageInfo_FingerprintRequest.Merge(dst, src)
   397  }
   398  func (m *FingerprintRequest) XXX_Size() int {
   399  	return xxx_messageInfo_FingerprintRequest.Size(m)
   400  }
   401  func (m *FingerprintRequest) XXX_DiscardUnknown() {
   402  	xxx_messageInfo_FingerprintRequest.DiscardUnknown(m)
   403  }
   404  
   405  var xxx_messageInfo_FingerprintRequest proto.InternalMessageInfo
   406  
   407  type FingerprintResponse struct {
   408  	// Attributes are key/value pairs that annotate the nomad client and can be
   409  	// used in scheduling contraints and affinities.
   410  	Attributes map[string]*proto1.Attribute `protobuf:"bytes,1,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   411  	// Health is used to determine the state of the health the driver is in.
   412  	// Health can be one of the following states:
   413  	//  * UNDETECTED: driver dependencies are not met and the driver can not start
   414  	//  * UNHEALTHY: driver dependencies are met but the driver is unable to
   415  	//      perform operations due to some other problem
   416  	//  * HEALTHY: driver is able to perform all operations
   417  	Health FingerprintResponse_HealthState `protobuf:"varint,2,opt,name=health,proto3,enum=hashicorp.nomad.plugins.drivers.proto.FingerprintResponse_HealthState" json:"health,omitempty"`
   418  	// HealthDescription is a human readable message describing the current
   419  	// state of driver health
   420  	HealthDescription    string   `protobuf:"bytes,3,opt,name=health_description,json=healthDescription,proto3" json:"health_description,omitempty"`
   421  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   422  	XXX_unrecognized     []byte   `json:"-"`
   423  	XXX_sizecache        int32    `json:"-"`
   424  }
   425  
   426  func (m *FingerprintResponse) Reset()         { *m = FingerprintResponse{} }
   427  func (m *FingerprintResponse) String() string { return proto.CompactTextString(m) }
   428  func (*FingerprintResponse) ProtoMessage()    {}
   429  func (*FingerprintResponse) Descriptor() ([]byte, []int) {
   430  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{5}
   431  }
   432  func (m *FingerprintResponse) XXX_Unmarshal(b []byte) error {
   433  	return xxx_messageInfo_FingerprintResponse.Unmarshal(m, b)
   434  }
   435  func (m *FingerprintResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   436  	return xxx_messageInfo_FingerprintResponse.Marshal(b, m, deterministic)
   437  }
   438  func (dst *FingerprintResponse) XXX_Merge(src proto.Message) {
   439  	xxx_messageInfo_FingerprintResponse.Merge(dst, src)
   440  }
   441  func (m *FingerprintResponse) XXX_Size() int {
   442  	return xxx_messageInfo_FingerprintResponse.Size(m)
   443  }
   444  func (m *FingerprintResponse) XXX_DiscardUnknown() {
   445  	xxx_messageInfo_FingerprintResponse.DiscardUnknown(m)
   446  }
   447  
   448  var xxx_messageInfo_FingerprintResponse proto.InternalMessageInfo
   449  
   450  func (m *FingerprintResponse) GetAttributes() map[string]*proto1.Attribute {
   451  	if m != nil {
   452  		return m.Attributes
   453  	}
   454  	return nil
   455  }
   456  
   457  func (m *FingerprintResponse) GetHealth() FingerprintResponse_HealthState {
   458  	if m != nil {
   459  		return m.Health
   460  	}
   461  	return FingerprintResponse_UNDETECTED
   462  }
   463  
   464  func (m *FingerprintResponse) GetHealthDescription() string {
   465  	if m != nil {
   466  		return m.HealthDescription
   467  	}
   468  	return ""
   469  }
   470  
   471  type RecoverTaskRequest struct {
   472  	// TaskId is the ID of the target task
   473  	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
   474  	// Handle is the TaskHandle returned from StartTask
   475  	Handle               *TaskHandle `protobuf:"bytes,2,opt,name=handle,proto3" json:"handle,omitempty"`
   476  	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
   477  	XXX_unrecognized     []byte      `json:"-"`
   478  	XXX_sizecache        int32       `json:"-"`
   479  }
   480  
   481  func (m *RecoverTaskRequest) Reset()         { *m = RecoverTaskRequest{} }
   482  func (m *RecoverTaskRequest) String() string { return proto.CompactTextString(m) }
   483  func (*RecoverTaskRequest) ProtoMessage()    {}
   484  func (*RecoverTaskRequest) Descriptor() ([]byte, []int) {
   485  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{6}
   486  }
   487  func (m *RecoverTaskRequest) XXX_Unmarshal(b []byte) error {
   488  	return xxx_messageInfo_RecoverTaskRequest.Unmarshal(m, b)
   489  }
   490  func (m *RecoverTaskRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   491  	return xxx_messageInfo_RecoverTaskRequest.Marshal(b, m, deterministic)
   492  }
   493  func (dst *RecoverTaskRequest) XXX_Merge(src proto.Message) {
   494  	xxx_messageInfo_RecoverTaskRequest.Merge(dst, src)
   495  }
   496  func (m *RecoverTaskRequest) XXX_Size() int {
   497  	return xxx_messageInfo_RecoverTaskRequest.Size(m)
   498  }
   499  func (m *RecoverTaskRequest) XXX_DiscardUnknown() {
   500  	xxx_messageInfo_RecoverTaskRequest.DiscardUnknown(m)
   501  }
   502  
   503  var xxx_messageInfo_RecoverTaskRequest proto.InternalMessageInfo
   504  
   505  func (m *RecoverTaskRequest) GetTaskId() string {
   506  	if m != nil {
   507  		return m.TaskId
   508  	}
   509  	return ""
   510  }
   511  
   512  func (m *RecoverTaskRequest) GetHandle() *TaskHandle {
   513  	if m != nil {
   514  		return m.Handle
   515  	}
   516  	return nil
   517  }
   518  
   519  type RecoverTaskResponse struct {
   520  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   521  	XXX_unrecognized     []byte   `json:"-"`
   522  	XXX_sizecache        int32    `json:"-"`
   523  }
   524  
   525  func (m *RecoverTaskResponse) Reset()         { *m = RecoverTaskResponse{} }
   526  func (m *RecoverTaskResponse) String() string { return proto.CompactTextString(m) }
   527  func (*RecoverTaskResponse) ProtoMessage()    {}
   528  func (*RecoverTaskResponse) Descriptor() ([]byte, []int) {
   529  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{7}
   530  }
   531  func (m *RecoverTaskResponse) XXX_Unmarshal(b []byte) error {
   532  	return xxx_messageInfo_RecoverTaskResponse.Unmarshal(m, b)
   533  }
   534  func (m *RecoverTaskResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   535  	return xxx_messageInfo_RecoverTaskResponse.Marshal(b, m, deterministic)
   536  }
   537  func (dst *RecoverTaskResponse) XXX_Merge(src proto.Message) {
   538  	xxx_messageInfo_RecoverTaskResponse.Merge(dst, src)
   539  }
   540  func (m *RecoverTaskResponse) XXX_Size() int {
   541  	return xxx_messageInfo_RecoverTaskResponse.Size(m)
   542  }
   543  func (m *RecoverTaskResponse) XXX_DiscardUnknown() {
   544  	xxx_messageInfo_RecoverTaskResponse.DiscardUnknown(m)
   545  }
   546  
   547  var xxx_messageInfo_RecoverTaskResponse proto.InternalMessageInfo
   548  
   549  type StartTaskRequest struct {
   550  	// Task configuration to launch
   551  	Task                 *TaskConfig `protobuf:"bytes,1,opt,name=task,proto3" json:"task,omitempty"`
   552  	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
   553  	XXX_unrecognized     []byte      `json:"-"`
   554  	XXX_sizecache        int32       `json:"-"`
   555  }
   556  
   557  func (m *StartTaskRequest) Reset()         { *m = StartTaskRequest{} }
   558  func (m *StartTaskRequest) String() string { return proto.CompactTextString(m) }
   559  func (*StartTaskRequest) ProtoMessage()    {}
   560  func (*StartTaskRequest) Descriptor() ([]byte, []int) {
   561  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{8}
   562  }
   563  func (m *StartTaskRequest) XXX_Unmarshal(b []byte) error {
   564  	return xxx_messageInfo_StartTaskRequest.Unmarshal(m, b)
   565  }
   566  func (m *StartTaskRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   567  	return xxx_messageInfo_StartTaskRequest.Marshal(b, m, deterministic)
   568  }
   569  func (dst *StartTaskRequest) XXX_Merge(src proto.Message) {
   570  	xxx_messageInfo_StartTaskRequest.Merge(dst, src)
   571  }
   572  func (m *StartTaskRequest) XXX_Size() int {
   573  	return xxx_messageInfo_StartTaskRequest.Size(m)
   574  }
   575  func (m *StartTaskRequest) XXX_DiscardUnknown() {
   576  	xxx_messageInfo_StartTaskRequest.DiscardUnknown(m)
   577  }
   578  
   579  var xxx_messageInfo_StartTaskRequest proto.InternalMessageInfo
   580  
   581  func (m *StartTaskRequest) GetTask() *TaskConfig {
   582  	if m != nil {
   583  		return m.Task
   584  	}
   585  	return nil
   586  }
   587  
   588  type StartTaskResponse struct {
   589  	// Result is set depending on the type of error that occurred while starting
   590  	// a task:
   591  	//
   592  	//   * SUCCESS: No error occurred, handle is set
   593  	//   * RETRY: An error occurred, but is recoverable and the RPC should be retried
   594  	//   * FATAL: A fatal error occurred and is not likely to succeed if retried
   595  	//
   596  	// If Result is not successful, the DriverErrorMsg will be set.
   597  	Result StartTaskResponse_Result `protobuf:"varint,1,opt,name=result,proto3,enum=hashicorp.nomad.plugins.drivers.proto.StartTaskResponse_Result" json:"result,omitempty"`
   598  	// DriverErrorMsg is set if an error occurred
   599  	DriverErrorMsg string `protobuf:"bytes,2,opt,name=driver_error_msg,json=driverErrorMsg,proto3" json:"driver_error_msg,omitempty"`
   600  	// Handle is opaque to the client, but must be stored in order to recover
   601  	// the task.
   602  	Handle *TaskHandle `protobuf:"bytes,3,opt,name=handle,proto3" json:"handle,omitempty"`
   603  	// NetworkOverride is set if the driver sets network settings and the service ip/port
   604  	// needs to be set differently.
   605  	NetworkOverride      *NetworkOverride `protobuf:"bytes,4,opt,name=network_override,json=networkOverride,proto3" json:"network_override,omitempty"`
   606  	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
   607  	XXX_unrecognized     []byte           `json:"-"`
   608  	XXX_sizecache        int32            `json:"-"`
   609  }
   610  
   611  func (m *StartTaskResponse) Reset()         { *m = StartTaskResponse{} }
   612  func (m *StartTaskResponse) String() string { return proto.CompactTextString(m) }
   613  func (*StartTaskResponse) ProtoMessage()    {}
   614  func (*StartTaskResponse) Descriptor() ([]byte, []int) {
   615  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{9}
   616  }
   617  func (m *StartTaskResponse) XXX_Unmarshal(b []byte) error {
   618  	return xxx_messageInfo_StartTaskResponse.Unmarshal(m, b)
   619  }
   620  func (m *StartTaskResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   621  	return xxx_messageInfo_StartTaskResponse.Marshal(b, m, deterministic)
   622  }
   623  func (dst *StartTaskResponse) XXX_Merge(src proto.Message) {
   624  	xxx_messageInfo_StartTaskResponse.Merge(dst, src)
   625  }
   626  func (m *StartTaskResponse) XXX_Size() int {
   627  	return xxx_messageInfo_StartTaskResponse.Size(m)
   628  }
   629  func (m *StartTaskResponse) XXX_DiscardUnknown() {
   630  	xxx_messageInfo_StartTaskResponse.DiscardUnknown(m)
   631  }
   632  
   633  var xxx_messageInfo_StartTaskResponse proto.InternalMessageInfo
   634  
   635  func (m *StartTaskResponse) GetResult() StartTaskResponse_Result {
   636  	if m != nil {
   637  		return m.Result
   638  	}
   639  	return StartTaskResponse_SUCCESS
   640  }
   641  
   642  func (m *StartTaskResponse) GetDriverErrorMsg() string {
   643  	if m != nil {
   644  		return m.DriverErrorMsg
   645  	}
   646  	return ""
   647  }
   648  
   649  func (m *StartTaskResponse) GetHandle() *TaskHandle {
   650  	if m != nil {
   651  		return m.Handle
   652  	}
   653  	return nil
   654  }
   655  
   656  func (m *StartTaskResponse) GetNetworkOverride() *NetworkOverride {
   657  	if m != nil {
   658  		return m.NetworkOverride
   659  	}
   660  	return nil
   661  }
   662  
   663  type WaitTaskRequest struct {
   664  	// TaskId is the ID of the target task
   665  	TaskId               string   `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
   666  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   667  	XXX_unrecognized     []byte   `json:"-"`
   668  	XXX_sizecache        int32    `json:"-"`
   669  }
   670  
   671  func (m *WaitTaskRequest) Reset()         { *m = WaitTaskRequest{} }
   672  func (m *WaitTaskRequest) String() string { return proto.CompactTextString(m) }
   673  func (*WaitTaskRequest) ProtoMessage()    {}
   674  func (*WaitTaskRequest) Descriptor() ([]byte, []int) {
   675  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{10}
   676  }
   677  func (m *WaitTaskRequest) XXX_Unmarshal(b []byte) error {
   678  	return xxx_messageInfo_WaitTaskRequest.Unmarshal(m, b)
   679  }
   680  func (m *WaitTaskRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   681  	return xxx_messageInfo_WaitTaskRequest.Marshal(b, m, deterministic)
   682  }
   683  func (dst *WaitTaskRequest) XXX_Merge(src proto.Message) {
   684  	xxx_messageInfo_WaitTaskRequest.Merge(dst, src)
   685  }
   686  func (m *WaitTaskRequest) XXX_Size() int {
   687  	return xxx_messageInfo_WaitTaskRequest.Size(m)
   688  }
   689  func (m *WaitTaskRequest) XXX_DiscardUnknown() {
   690  	xxx_messageInfo_WaitTaskRequest.DiscardUnknown(m)
   691  }
   692  
   693  var xxx_messageInfo_WaitTaskRequest proto.InternalMessageInfo
   694  
   695  func (m *WaitTaskRequest) GetTaskId() string {
   696  	if m != nil {
   697  		return m.TaskId
   698  	}
   699  	return ""
   700  }
   701  
   702  type WaitTaskResponse struct {
   703  	// Result is the exit status of the task
   704  	Result *ExitResult `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"`
   705  	// Err is set if any driver error occurred while waiting for the task
   706  	Err                  string   `protobuf:"bytes,2,opt,name=err,proto3" json:"err,omitempty"`
   707  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   708  	XXX_unrecognized     []byte   `json:"-"`
   709  	XXX_sizecache        int32    `json:"-"`
   710  }
   711  
   712  func (m *WaitTaskResponse) Reset()         { *m = WaitTaskResponse{} }
   713  func (m *WaitTaskResponse) String() string { return proto.CompactTextString(m) }
   714  func (*WaitTaskResponse) ProtoMessage()    {}
   715  func (*WaitTaskResponse) Descriptor() ([]byte, []int) {
   716  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{11}
   717  }
   718  func (m *WaitTaskResponse) XXX_Unmarshal(b []byte) error {
   719  	return xxx_messageInfo_WaitTaskResponse.Unmarshal(m, b)
   720  }
   721  func (m *WaitTaskResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   722  	return xxx_messageInfo_WaitTaskResponse.Marshal(b, m, deterministic)
   723  }
   724  func (dst *WaitTaskResponse) XXX_Merge(src proto.Message) {
   725  	xxx_messageInfo_WaitTaskResponse.Merge(dst, src)
   726  }
   727  func (m *WaitTaskResponse) XXX_Size() int {
   728  	return xxx_messageInfo_WaitTaskResponse.Size(m)
   729  }
   730  func (m *WaitTaskResponse) XXX_DiscardUnknown() {
   731  	xxx_messageInfo_WaitTaskResponse.DiscardUnknown(m)
   732  }
   733  
   734  var xxx_messageInfo_WaitTaskResponse proto.InternalMessageInfo
   735  
   736  func (m *WaitTaskResponse) GetResult() *ExitResult {
   737  	if m != nil {
   738  		return m.Result
   739  	}
   740  	return nil
   741  }
   742  
   743  func (m *WaitTaskResponse) GetErr() string {
   744  	if m != nil {
   745  		return m.Err
   746  	}
   747  	return ""
   748  }
   749  
   750  type StopTaskRequest struct {
   751  	// TaskId is the ID of the target task
   752  	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
   753  	// Timeout defines the amount of time to wait before forcefully killing
   754  	// the task. For example, on Unix clients, this means sending a SIGKILL to
   755  	// the process.
   756  	Timeout *duration.Duration `protobuf:"bytes,2,opt,name=timeout,proto3" json:"timeout,omitempty"`
   757  	// Signal can be set to override the Task's configured shutdown signal
   758  	Signal               string   `protobuf:"bytes,3,opt,name=signal,proto3" json:"signal,omitempty"`
   759  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   760  	XXX_unrecognized     []byte   `json:"-"`
   761  	XXX_sizecache        int32    `json:"-"`
   762  }
   763  
   764  func (m *StopTaskRequest) Reset()         { *m = StopTaskRequest{} }
   765  func (m *StopTaskRequest) String() string { return proto.CompactTextString(m) }
   766  func (*StopTaskRequest) ProtoMessage()    {}
   767  func (*StopTaskRequest) Descriptor() ([]byte, []int) {
   768  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{12}
   769  }
   770  func (m *StopTaskRequest) XXX_Unmarshal(b []byte) error {
   771  	return xxx_messageInfo_StopTaskRequest.Unmarshal(m, b)
   772  }
   773  func (m *StopTaskRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   774  	return xxx_messageInfo_StopTaskRequest.Marshal(b, m, deterministic)
   775  }
   776  func (dst *StopTaskRequest) XXX_Merge(src proto.Message) {
   777  	xxx_messageInfo_StopTaskRequest.Merge(dst, src)
   778  }
   779  func (m *StopTaskRequest) XXX_Size() int {
   780  	return xxx_messageInfo_StopTaskRequest.Size(m)
   781  }
   782  func (m *StopTaskRequest) XXX_DiscardUnknown() {
   783  	xxx_messageInfo_StopTaskRequest.DiscardUnknown(m)
   784  }
   785  
   786  var xxx_messageInfo_StopTaskRequest proto.InternalMessageInfo
   787  
   788  func (m *StopTaskRequest) GetTaskId() string {
   789  	if m != nil {
   790  		return m.TaskId
   791  	}
   792  	return ""
   793  }
   794  
   795  func (m *StopTaskRequest) GetTimeout() *duration.Duration {
   796  	if m != nil {
   797  		return m.Timeout
   798  	}
   799  	return nil
   800  }
   801  
   802  func (m *StopTaskRequest) GetSignal() string {
   803  	if m != nil {
   804  		return m.Signal
   805  	}
   806  	return ""
   807  }
   808  
   809  type StopTaskResponse struct {
   810  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   811  	XXX_unrecognized     []byte   `json:"-"`
   812  	XXX_sizecache        int32    `json:"-"`
   813  }
   814  
   815  func (m *StopTaskResponse) Reset()         { *m = StopTaskResponse{} }
   816  func (m *StopTaskResponse) String() string { return proto.CompactTextString(m) }
   817  func (*StopTaskResponse) ProtoMessage()    {}
   818  func (*StopTaskResponse) Descriptor() ([]byte, []int) {
   819  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{13}
   820  }
   821  func (m *StopTaskResponse) XXX_Unmarshal(b []byte) error {
   822  	return xxx_messageInfo_StopTaskResponse.Unmarshal(m, b)
   823  }
   824  func (m *StopTaskResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   825  	return xxx_messageInfo_StopTaskResponse.Marshal(b, m, deterministic)
   826  }
   827  func (dst *StopTaskResponse) XXX_Merge(src proto.Message) {
   828  	xxx_messageInfo_StopTaskResponse.Merge(dst, src)
   829  }
   830  func (m *StopTaskResponse) XXX_Size() int {
   831  	return xxx_messageInfo_StopTaskResponse.Size(m)
   832  }
   833  func (m *StopTaskResponse) XXX_DiscardUnknown() {
   834  	xxx_messageInfo_StopTaskResponse.DiscardUnknown(m)
   835  }
   836  
   837  var xxx_messageInfo_StopTaskResponse proto.InternalMessageInfo
   838  
   839  type DestroyTaskRequest struct {
   840  	// TaskId is the ID of the target task
   841  	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
   842  	// Force destroys the task even if it is still in a running state
   843  	Force                bool     `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
   844  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   845  	XXX_unrecognized     []byte   `json:"-"`
   846  	XXX_sizecache        int32    `json:"-"`
   847  }
   848  
   849  func (m *DestroyTaskRequest) Reset()         { *m = DestroyTaskRequest{} }
   850  func (m *DestroyTaskRequest) String() string { return proto.CompactTextString(m) }
   851  func (*DestroyTaskRequest) ProtoMessage()    {}
   852  func (*DestroyTaskRequest) Descriptor() ([]byte, []int) {
   853  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{14}
   854  }
   855  func (m *DestroyTaskRequest) XXX_Unmarshal(b []byte) error {
   856  	return xxx_messageInfo_DestroyTaskRequest.Unmarshal(m, b)
   857  }
   858  func (m *DestroyTaskRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   859  	return xxx_messageInfo_DestroyTaskRequest.Marshal(b, m, deterministic)
   860  }
   861  func (dst *DestroyTaskRequest) XXX_Merge(src proto.Message) {
   862  	xxx_messageInfo_DestroyTaskRequest.Merge(dst, src)
   863  }
   864  func (m *DestroyTaskRequest) XXX_Size() int {
   865  	return xxx_messageInfo_DestroyTaskRequest.Size(m)
   866  }
   867  func (m *DestroyTaskRequest) XXX_DiscardUnknown() {
   868  	xxx_messageInfo_DestroyTaskRequest.DiscardUnknown(m)
   869  }
   870  
   871  var xxx_messageInfo_DestroyTaskRequest proto.InternalMessageInfo
   872  
   873  func (m *DestroyTaskRequest) GetTaskId() string {
   874  	if m != nil {
   875  		return m.TaskId
   876  	}
   877  	return ""
   878  }
   879  
   880  func (m *DestroyTaskRequest) GetForce() bool {
   881  	if m != nil {
   882  		return m.Force
   883  	}
   884  	return false
   885  }
   886  
   887  type DestroyTaskResponse struct {
   888  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   889  	XXX_unrecognized     []byte   `json:"-"`
   890  	XXX_sizecache        int32    `json:"-"`
   891  }
   892  
   893  func (m *DestroyTaskResponse) Reset()         { *m = DestroyTaskResponse{} }
   894  func (m *DestroyTaskResponse) String() string { return proto.CompactTextString(m) }
   895  func (*DestroyTaskResponse) ProtoMessage()    {}
   896  func (*DestroyTaskResponse) Descriptor() ([]byte, []int) {
   897  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{15}
   898  }
   899  func (m *DestroyTaskResponse) XXX_Unmarshal(b []byte) error {
   900  	return xxx_messageInfo_DestroyTaskResponse.Unmarshal(m, b)
   901  }
   902  func (m *DestroyTaskResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   903  	return xxx_messageInfo_DestroyTaskResponse.Marshal(b, m, deterministic)
   904  }
   905  func (dst *DestroyTaskResponse) XXX_Merge(src proto.Message) {
   906  	xxx_messageInfo_DestroyTaskResponse.Merge(dst, src)
   907  }
   908  func (m *DestroyTaskResponse) XXX_Size() int {
   909  	return xxx_messageInfo_DestroyTaskResponse.Size(m)
   910  }
   911  func (m *DestroyTaskResponse) XXX_DiscardUnknown() {
   912  	xxx_messageInfo_DestroyTaskResponse.DiscardUnknown(m)
   913  }
   914  
   915  var xxx_messageInfo_DestroyTaskResponse proto.InternalMessageInfo
   916  
   917  type InspectTaskRequest struct {
   918  	// TaskId is the ID of the target task
   919  	TaskId               string   `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
   920  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   921  	XXX_unrecognized     []byte   `json:"-"`
   922  	XXX_sizecache        int32    `json:"-"`
   923  }
   924  
   925  func (m *InspectTaskRequest) Reset()         { *m = InspectTaskRequest{} }
   926  func (m *InspectTaskRequest) String() string { return proto.CompactTextString(m) }
   927  func (*InspectTaskRequest) ProtoMessage()    {}
   928  func (*InspectTaskRequest) Descriptor() ([]byte, []int) {
   929  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{16}
   930  }
   931  func (m *InspectTaskRequest) XXX_Unmarshal(b []byte) error {
   932  	return xxx_messageInfo_InspectTaskRequest.Unmarshal(m, b)
   933  }
   934  func (m *InspectTaskRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   935  	return xxx_messageInfo_InspectTaskRequest.Marshal(b, m, deterministic)
   936  }
   937  func (dst *InspectTaskRequest) XXX_Merge(src proto.Message) {
   938  	xxx_messageInfo_InspectTaskRequest.Merge(dst, src)
   939  }
   940  func (m *InspectTaskRequest) XXX_Size() int {
   941  	return xxx_messageInfo_InspectTaskRequest.Size(m)
   942  }
   943  func (m *InspectTaskRequest) XXX_DiscardUnknown() {
   944  	xxx_messageInfo_InspectTaskRequest.DiscardUnknown(m)
   945  }
   946  
   947  var xxx_messageInfo_InspectTaskRequest proto.InternalMessageInfo
   948  
   949  func (m *InspectTaskRequest) GetTaskId() string {
   950  	if m != nil {
   951  		return m.TaskId
   952  	}
   953  	return ""
   954  }
   955  
   956  type InspectTaskResponse struct {
   957  	// Task details
   958  	Task *TaskStatus `protobuf:"bytes,1,opt,name=task,proto3" json:"task,omitempty"`
   959  	// Driver details for task
   960  	Driver *TaskDriverStatus `protobuf:"bytes,2,opt,name=driver,proto3" json:"driver,omitempty"`
   961  	// NetworkOverride info if set
   962  	NetworkOverride      *NetworkOverride `protobuf:"bytes,3,opt,name=network_override,json=networkOverride,proto3" json:"network_override,omitempty"`
   963  	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
   964  	XXX_unrecognized     []byte           `json:"-"`
   965  	XXX_sizecache        int32            `json:"-"`
   966  }
   967  
   968  func (m *InspectTaskResponse) Reset()         { *m = InspectTaskResponse{} }
   969  func (m *InspectTaskResponse) String() string { return proto.CompactTextString(m) }
   970  func (*InspectTaskResponse) ProtoMessage()    {}
   971  func (*InspectTaskResponse) Descriptor() ([]byte, []int) {
   972  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{17}
   973  }
   974  func (m *InspectTaskResponse) XXX_Unmarshal(b []byte) error {
   975  	return xxx_messageInfo_InspectTaskResponse.Unmarshal(m, b)
   976  }
   977  func (m *InspectTaskResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   978  	return xxx_messageInfo_InspectTaskResponse.Marshal(b, m, deterministic)
   979  }
   980  func (dst *InspectTaskResponse) XXX_Merge(src proto.Message) {
   981  	xxx_messageInfo_InspectTaskResponse.Merge(dst, src)
   982  }
   983  func (m *InspectTaskResponse) XXX_Size() int {
   984  	return xxx_messageInfo_InspectTaskResponse.Size(m)
   985  }
   986  func (m *InspectTaskResponse) XXX_DiscardUnknown() {
   987  	xxx_messageInfo_InspectTaskResponse.DiscardUnknown(m)
   988  }
   989  
   990  var xxx_messageInfo_InspectTaskResponse proto.InternalMessageInfo
   991  
   992  func (m *InspectTaskResponse) GetTask() *TaskStatus {
   993  	if m != nil {
   994  		return m.Task
   995  	}
   996  	return nil
   997  }
   998  
   999  func (m *InspectTaskResponse) GetDriver() *TaskDriverStatus {
  1000  	if m != nil {
  1001  		return m.Driver
  1002  	}
  1003  	return nil
  1004  }
  1005  
  1006  func (m *InspectTaskResponse) GetNetworkOverride() *NetworkOverride {
  1007  	if m != nil {
  1008  		return m.NetworkOverride
  1009  	}
  1010  	return nil
  1011  }
  1012  
  1013  type TaskStatsRequest struct {
  1014  	// TaskId is the ID of the target task
  1015  	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
  1016  	// CollectionInterval is the interval at which to stream stats to the caller
  1017  	CollectionInterval   *duration.Duration `protobuf:"bytes,2,opt,name=collection_interval,json=collectionInterval,proto3" json:"collection_interval,omitempty"`
  1018  	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
  1019  	XXX_unrecognized     []byte             `json:"-"`
  1020  	XXX_sizecache        int32              `json:"-"`
  1021  }
  1022  
  1023  func (m *TaskStatsRequest) Reset()         { *m = TaskStatsRequest{} }
  1024  func (m *TaskStatsRequest) String() string { return proto.CompactTextString(m) }
  1025  func (*TaskStatsRequest) ProtoMessage()    {}
  1026  func (*TaskStatsRequest) Descriptor() ([]byte, []int) {
  1027  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{18}
  1028  }
  1029  func (m *TaskStatsRequest) XXX_Unmarshal(b []byte) error {
  1030  	return xxx_messageInfo_TaskStatsRequest.Unmarshal(m, b)
  1031  }
  1032  func (m *TaskStatsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1033  	return xxx_messageInfo_TaskStatsRequest.Marshal(b, m, deterministic)
  1034  }
  1035  func (dst *TaskStatsRequest) XXX_Merge(src proto.Message) {
  1036  	xxx_messageInfo_TaskStatsRequest.Merge(dst, src)
  1037  }
  1038  func (m *TaskStatsRequest) XXX_Size() int {
  1039  	return xxx_messageInfo_TaskStatsRequest.Size(m)
  1040  }
  1041  func (m *TaskStatsRequest) XXX_DiscardUnknown() {
  1042  	xxx_messageInfo_TaskStatsRequest.DiscardUnknown(m)
  1043  }
  1044  
  1045  var xxx_messageInfo_TaskStatsRequest proto.InternalMessageInfo
  1046  
  1047  func (m *TaskStatsRequest) GetTaskId() string {
  1048  	if m != nil {
  1049  		return m.TaskId
  1050  	}
  1051  	return ""
  1052  }
  1053  
  1054  func (m *TaskStatsRequest) GetCollectionInterval() *duration.Duration {
  1055  	if m != nil {
  1056  		return m.CollectionInterval
  1057  	}
  1058  	return nil
  1059  }
  1060  
  1061  type TaskStatsResponse struct {
  1062  	// Stats for the task
  1063  	Stats                *TaskStats `protobuf:"bytes,1,opt,name=stats,proto3" json:"stats,omitempty"`
  1064  	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
  1065  	XXX_unrecognized     []byte     `json:"-"`
  1066  	XXX_sizecache        int32      `json:"-"`
  1067  }
  1068  
  1069  func (m *TaskStatsResponse) Reset()         { *m = TaskStatsResponse{} }
  1070  func (m *TaskStatsResponse) String() string { return proto.CompactTextString(m) }
  1071  func (*TaskStatsResponse) ProtoMessage()    {}
  1072  func (*TaskStatsResponse) Descriptor() ([]byte, []int) {
  1073  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{19}
  1074  }
  1075  func (m *TaskStatsResponse) XXX_Unmarshal(b []byte) error {
  1076  	return xxx_messageInfo_TaskStatsResponse.Unmarshal(m, b)
  1077  }
  1078  func (m *TaskStatsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1079  	return xxx_messageInfo_TaskStatsResponse.Marshal(b, m, deterministic)
  1080  }
  1081  func (dst *TaskStatsResponse) XXX_Merge(src proto.Message) {
  1082  	xxx_messageInfo_TaskStatsResponse.Merge(dst, src)
  1083  }
  1084  func (m *TaskStatsResponse) XXX_Size() int {
  1085  	return xxx_messageInfo_TaskStatsResponse.Size(m)
  1086  }
  1087  func (m *TaskStatsResponse) XXX_DiscardUnknown() {
  1088  	xxx_messageInfo_TaskStatsResponse.DiscardUnknown(m)
  1089  }
  1090  
  1091  var xxx_messageInfo_TaskStatsResponse proto.InternalMessageInfo
  1092  
  1093  func (m *TaskStatsResponse) GetStats() *TaskStats {
  1094  	if m != nil {
  1095  		return m.Stats
  1096  	}
  1097  	return nil
  1098  }
  1099  
  1100  type TaskEventsRequest struct {
  1101  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1102  	XXX_unrecognized     []byte   `json:"-"`
  1103  	XXX_sizecache        int32    `json:"-"`
  1104  }
  1105  
  1106  func (m *TaskEventsRequest) Reset()         { *m = TaskEventsRequest{} }
  1107  func (m *TaskEventsRequest) String() string { return proto.CompactTextString(m) }
  1108  func (*TaskEventsRequest) ProtoMessage()    {}
  1109  func (*TaskEventsRequest) Descriptor() ([]byte, []int) {
  1110  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{20}
  1111  }
  1112  func (m *TaskEventsRequest) XXX_Unmarshal(b []byte) error {
  1113  	return xxx_messageInfo_TaskEventsRequest.Unmarshal(m, b)
  1114  }
  1115  func (m *TaskEventsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1116  	return xxx_messageInfo_TaskEventsRequest.Marshal(b, m, deterministic)
  1117  }
  1118  func (dst *TaskEventsRequest) XXX_Merge(src proto.Message) {
  1119  	xxx_messageInfo_TaskEventsRequest.Merge(dst, src)
  1120  }
  1121  func (m *TaskEventsRequest) XXX_Size() int {
  1122  	return xxx_messageInfo_TaskEventsRequest.Size(m)
  1123  }
  1124  func (m *TaskEventsRequest) XXX_DiscardUnknown() {
  1125  	xxx_messageInfo_TaskEventsRequest.DiscardUnknown(m)
  1126  }
  1127  
  1128  var xxx_messageInfo_TaskEventsRequest proto.InternalMessageInfo
  1129  
  1130  type SignalTaskRequest struct {
  1131  	// TaskId is the ID of the target task
  1132  	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
  1133  	// Signal is the operating system signal to send to the task. Ex: SIGHUP
  1134  	Signal               string   `protobuf:"bytes,2,opt,name=signal,proto3" json:"signal,omitempty"`
  1135  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1136  	XXX_unrecognized     []byte   `json:"-"`
  1137  	XXX_sizecache        int32    `json:"-"`
  1138  }
  1139  
  1140  func (m *SignalTaskRequest) Reset()         { *m = SignalTaskRequest{} }
  1141  func (m *SignalTaskRequest) String() string { return proto.CompactTextString(m) }
  1142  func (*SignalTaskRequest) ProtoMessage()    {}
  1143  func (*SignalTaskRequest) Descriptor() ([]byte, []int) {
  1144  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{21}
  1145  }
  1146  func (m *SignalTaskRequest) XXX_Unmarshal(b []byte) error {
  1147  	return xxx_messageInfo_SignalTaskRequest.Unmarshal(m, b)
  1148  }
  1149  func (m *SignalTaskRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1150  	return xxx_messageInfo_SignalTaskRequest.Marshal(b, m, deterministic)
  1151  }
  1152  func (dst *SignalTaskRequest) XXX_Merge(src proto.Message) {
  1153  	xxx_messageInfo_SignalTaskRequest.Merge(dst, src)
  1154  }
  1155  func (m *SignalTaskRequest) XXX_Size() int {
  1156  	return xxx_messageInfo_SignalTaskRequest.Size(m)
  1157  }
  1158  func (m *SignalTaskRequest) XXX_DiscardUnknown() {
  1159  	xxx_messageInfo_SignalTaskRequest.DiscardUnknown(m)
  1160  }
  1161  
  1162  var xxx_messageInfo_SignalTaskRequest proto.InternalMessageInfo
  1163  
  1164  func (m *SignalTaskRequest) GetTaskId() string {
  1165  	if m != nil {
  1166  		return m.TaskId
  1167  	}
  1168  	return ""
  1169  }
  1170  
  1171  func (m *SignalTaskRequest) GetSignal() string {
  1172  	if m != nil {
  1173  		return m.Signal
  1174  	}
  1175  	return ""
  1176  }
  1177  
  1178  type SignalTaskResponse struct {
  1179  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1180  	XXX_unrecognized     []byte   `json:"-"`
  1181  	XXX_sizecache        int32    `json:"-"`
  1182  }
  1183  
  1184  func (m *SignalTaskResponse) Reset()         { *m = SignalTaskResponse{} }
  1185  func (m *SignalTaskResponse) String() string { return proto.CompactTextString(m) }
  1186  func (*SignalTaskResponse) ProtoMessage()    {}
  1187  func (*SignalTaskResponse) Descriptor() ([]byte, []int) {
  1188  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{22}
  1189  }
  1190  func (m *SignalTaskResponse) XXX_Unmarshal(b []byte) error {
  1191  	return xxx_messageInfo_SignalTaskResponse.Unmarshal(m, b)
  1192  }
  1193  func (m *SignalTaskResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1194  	return xxx_messageInfo_SignalTaskResponse.Marshal(b, m, deterministic)
  1195  }
  1196  func (dst *SignalTaskResponse) XXX_Merge(src proto.Message) {
  1197  	xxx_messageInfo_SignalTaskResponse.Merge(dst, src)
  1198  }
  1199  func (m *SignalTaskResponse) XXX_Size() int {
  1200  	return xxx_messageInfo_SignalTaskResponse.Size(m)
  1201  }
  1202  func (m *SignalTaskResponse) XXX_DiscardUnknown() {
  1203  	xxx_messageInfo_SignalTaskResponse.DiscardUnknown(m)
  1204  }
  1205  
  1206  var xxx_messageInfo_SignalTaskResponse proto.InternalMessageInfo
  1207  
  1208  type ExecTaskRequest struct {
  1209  	// TaskId is the ID of the target task
  1210  	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
  1211  	// Command is the command to execute in the task environment
  1212  	Command []string `protobuf:"bytes,2,rep,name=command,proto3" json:"command,omitempty"`
  1213  	// Timeout is the amount of time to wait for the command to stop.
  1214  	// Defaults to 0 (run forever)
  1215  	Timeout              *duration.Duration `protobuf:"bytes,3,opt,name=timeout,proto3" json:"timeout,omitempty"`
  1216  	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
  1217  	XXX_unrecognized     []byte             `json:"-"`
  1218  	XXX_sizecache        int32              `json:"-"`
  1219  }
  1220  
  1221  func (m *ExecTaskRequest) Reset()         { *m = ExecTaskRequest{} }
  1222  func (m *ExecTaskRequest) String() string { return proto.CompactTextString(m) }
  1223  func (*ExecTaskRequest) ProtoMessage()    {}
  1224  func (*ExecTaskRequest) Descriptor() ([]byte, []int) {
  1225  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{23}
  1226  }
  1227  func (m *ExecTaskRequest) XXX_Unmarshal(b []byte) error {
  1228  	return xxx_messageInfo_ExecTaskRequest.Unmarshal(m, b)
  1229  }
  1230  func (m *ExecTaskRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1231  	return xxx_messageInfo_ExecTaskRequest.Marshal(b, m, deterministic)
  1232  }
  1233  func (dst *ExecTaskRequest) XXX_Merge(src proto.Message) {
  1234  	xxx_messageInfo_ExecTaskRequest.Merge(dst, src)
  1235  }
  1236  func (m *ExecTaskRequest) XXX_Size() int {
  1237  	return xxx_messageInfo_ExecTaskRequest.Size(m)
  1238  }
  1239  func (m *ExecTaskRequest) XXX_DiscardUnknown() {
  1240  	xxx_messageInfo_ExecTaskRequest.DiscardUnknown(m)
  1241  }
  1242  
  1243  var xxx_messageInfo_ExecTaskRequest proto.InternalMessageInfo
  1244  
  1245  func (m *ExecTaskRequest) GetTaskId() string {
  1246  	if m != nil {
  1247  		return m.TaskId
  1248  	}
  1249  	return ""
  1250  }
  1251  
  1252  func (m *ExecTaskRequest) GetCommand() []string {
  1253  	if m != nil {
  1254  		return m.Command
  1255  	}
  1256  	return nil
  1257  }
  1258  
  1259  func (m *ExecTaskRequest) GetTimeout() *duration.Duration {
  1260  	if m != nil {
  1261  		return m.Timeout
  1262  	}
  1263  	return nil
  1264  }
  1265  
  1266  type ExecTaskResponse struct {
  1267  	// Stdout from the exec
  1268  	Stdout []byte `protobuf:"bytes,1,opt,name=stdout,proto3" json:"stdout,omitempty"`
  1269  	// Stderr from the exec
  1270  	Stderr []byte `protobuf:"bytes,2,opt,name=stderr,proto3" json:"stderr,omitempty"`
  1271  	// Result from the exec
  1272  	Result               *ExitResult `protobuf:"bytes,3,opt,name=result,proto3" json:"result,omitempty"`
  1273  	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
  1274  	XXX_unrecognized     []byte      `json:"-"`
  1275  	XXX_sizecache        int32       `json:"-"`
  1276  }
  1277  
  1278  func (m *ExecTaskResponse) Reset()         { *m = ExecTaskResponse{} }
  1279  func (m *ExecTaskResponse) String() string { return proto.CompactTextString(m) }
  1280  func (*ExecTaskResponse) ProtoMessage()    {}
  1281  func (*ExecTaskResponse) Descriptor() ([]byte, []int) {
  1282  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{24}
  1283  }
  1284  func (m *ExecTaskResponse) XXX_Unmarshal(b []byte) error {
  1285  	return xxx_messageInfo_ExecTaskResponse.Unmarshal(m, b)
  1286  }
  1287  func (m *ExecTaskResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1288  	return xxx_messageInfo_ExecTaskResponse.Marshal(b, m, deterministic)
  1289  }
  1290  func (dst *ExecTaskResponse) XXX_Merge(src proto.Message) {
  1291  	xxx_messageInfo_ExecTaskResponse.Merge(dst, src)
  1292  }
  1293  func (m *ExecTaskResponse) XXX_Size() int {
  1294  	return xxx_messageInfo_ExecTaskResponse.Size(m)
  1295  }
  1296  func (m *ExecTaskResponse) XXX_DiscardUnknown() {
  1297  	xxx_messageInfo_ExecTaskResponse.DiscardUnknown(m)
  1298  }
  1299  
  1300  var xxx_messageInfo_ExecTaskResponse proto.InternalMessageInfo
  1301  
  1302  func (m *ExecTaskResponse) GetStdout() []byte {
  1303  	if m != nil {
  1304  		return m.Stdout
  1305  	}
  1306  	return nil
  1307  }
  1308  
  1309  func (m *ExecTaskResponse) GetStderr() []byte {
  1310  	if m != nil {
  1311  		return m.Stderr
  1312  	}
  1313  	return nil
  1314  }
  1315  
  1316  func (m *ExecTaskResponse) GetResult() *ExitResult {
  1317  	if m != nil {
  1318  		return m.Result
  1319  	}
  1320  	return nil
  1321  }
  1322  
  1323  type ExecTaskStreamingIOOperation struct {
  1324  	Data                 []byte   `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
  1325  	Close                bool     `protobuf:"varint,2,opt,name=close,proto3" json:"close,omitempty"`
  1326  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1327  	XXX_unrecognized     []byte   `json:"-"`
  1328  	XXX_sizecache        int32    `json:"-"`
  1329  }
  1330  
  1331  func (m *ExecTaskStreamingIOOperation) Reset()         { *m = ExecTaskStreamingIOOperation{} }
  1332  func (m *ExecTaskStreamingIOOperation) String() string { return proto.CompactTextString(m) }
  1333  func (*ExecTaskStreamingIOOperation) ProtoMessage()    {}
  1334  func (*ExecTaskStreamingIOOperation) Descriptor() ([]byte, []int) {
  1335  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{25}
  1336  }
  1337  func (m *ExecTaskStreamingIOOperation) XXX_Unmarshal(b []byte) error {
  1338  	return xxx_messageInfo_ExecTaskStreamingIOOperation.Unmarshal(m, b)
  1339  }
  1340  func (m *ExecTaskStreamingIOOperation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1341  	return xxx_messageInfo_ExecTaskStreamingIOOperation.Marshal(b, m, deterministic)
  1342  }
  1343  func (dst *ExecTaskStreamingIOOperation) XXX_Merge(src proto.Message) {
  1344  	xxx_messageInfo_ExecTaskStreamingIOOperation.Merge(dst, src)
  1345  }
  1346  func (m *ExecTaskStreamingIOOperation) XXX_Size() int {
  1347  	return xxx_messageInfo_ExecTaskStreamingIOOperation.Size(m)
  1348  }
  1349  func (m *ExecTaskStreamingIOOperation) XXX_DiscardUnknown() {
  1350  	xxx_messageInfo_ExecTaskStreamingIOOperation.DiscardUnknown(m)
  1351  }
  1352  
  1353  var xxx_messageInfo_ExecTaskStreamingIOOperation proto.InternalMessageInfo
  1354  
  1355  func (m *ExecTaskStreamingIOOperation) GetData() []byte {
  1356  	if m != nil {
  1357  		return m.Data
  1358  	}
  1359  	return nil
  1360  }
  1361  
  1362  func (m *ExecTaskStreamingIOOperation) GetClose() bool {
  1363  	if m != nil {
  1364  		return m.Close
  1365  	}
  1366  	return false
  1367  }
  1368  
  1369  type ExecTaskStreamingRequest struct {
  1370  	Setup                *ExecTaskStreamingRequest_Setup        `protobuf:"bytes,1,opt,name=setup,proto3" json:"setup,omitempty"`
  1371  	TtySize              *ExecTaskStreamingRequest_TerminalSize `protobuf:"bytes,2,opt,name=tty_size,json=ttySize,proto3" json:"tty_size,omitempty"`
  1372  	Stdin                *ExecTaskStreamingIOOperation          `protobuf:"bytes,3,opt,name=stdin,proto3" json:"stdin,omitempty"`
  1373  	XXX_NoUnkeyedLiteral struct{}                               `json:"-"`
  1374  	XXX_unrecognized     []byte                                 `json:"-"`
  1375  	XXX_sizecache        int32                                  `json:"-"`
  1376  }
  1377  
  1378  func (m *ExecTaskStreamingRequest) Reset()         { *m = ExecTaskStreamingRequest{} }
  1379  func (m *ExecTaskStreamingRequest) String() string { return proto.CompactTextString(m) }
  1380  func (*ExecTaskStreamingRequest) ProtoMessage()    {}
  1381  func (*ExecTaskStreamingRequest) Descriptor() ([]byte, []int) {
  1382  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{26}
  1383  }
  1384  func (m *ExecTaskStreamingRequest) XXX_Unmarshal(b []byte) error {
  1385  	return xxx_messageInfo_ExecTaskStreamingRequest.Unmarshal(m, b)
  1386  }
  1387  func (m *ExecTaskStreamingRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1388  	return xxx_messageInfo_ExecTaskStreamingRequest.Marshal(b, m, deterministic)
  1389  }
  1390  func (dst *ExecTaskStreamingRequest) XXX_Merge(src proto.Message) {
  1391  	xxx_messageInfo_ExecTaskStreamingRequest.Merge(dst, src)
  1392  }
  1393  func (m *ExecTaskStreamingRequest) XXX_Size() int {
  1394  	return xxx_messageInfo_ExecTaskStreamingRequest.Size(m)
  1395  }
  1396  func (m *ExecTaskStreamingRequest) XXX_DiscardUnknown() {
  1397  	xxx_messageInfo_ExecTaskStreamingRequest.DiscardUnknown(m)
  1398  }
  1399  
  1400  var xxx_messageInfo_ExecTaskStreamingRequest proto.InternalMessageInfo
  1401  
  1402  func (m *ExecTaskStreamingRequest) GetSetup() *ExecTaskStreamingRequest_Setup {
  1403  	if m != nil {
  1404  		return m.Setup
  1405  	}
  1406  	return nil
  1407  }
  1408  
  1409  func (m *ExecTaskStreamingRequest) GetTtySize() *ExecTaskStreamingRequest_TerminalSize {
  1410  	if m != nil {
  1411  		return m.TtySize
  1412  	}
  1413  	return nil
  1414  }
  1415  
  1416  func (m *ExecTaskStreamingRequest) GetStdin() *ExecTaskStreamingIOOperation {
  1417  	if m != nil {
  1418  		return m.Stdin
  1419  	}
  1420  	return nil
  1421  }
  1422  
  1423  type ExecTaskStreamingRequest_Setup struct {
  1424  	TaskId               string   `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
  1425  	Command              []string `protobuf:"bytes,2,rep,name=command,proto3" json:"command,omitempty"`
  1426  	Tty                  bool     `protobuf:"varint,3,opt,name=tty,proto3" json:"tty,omitempty"`
  1427  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1428  	XXX_unrecognized     []byte   `json:"-"`
  1429  	XXX_sizecache        int32    `json:"-"`
  1430  }
  1431  
  1432  func (m *ExecTaskStreamingRequest_Setup) Reset()         { *m = ExecTaskStreamingRequest_Setup{} }
  1433  func (m *ExecTaskStreamingRequest_Setup) String() string { return proto.CompactTextString(m) }
  1434  func (*ExecTaskStreamingRequest_Setup) ProtoMessage()    {}
  1435  func (*ExecTaskStreamingRequest_Setup) Descriptor() ([]byte, []int) {
  1436  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{26, 0}
  1437  }
  1438  func (m *ExecTaskStreamingRequest_Setup) XXX_Unmarshal(b []byte) error {
  1439  	return xxx_messageInfo_ExecTaskStreamingRequest_Setup.Unmarshal(m, b)
  1440  }
  1441  func (m *ExecTaskStreamingRequest_Setup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1442  	return xxx_messageInfo_ExecTaskStreamingRequest_Setup.Marshal(b, m, deterministic)
  1443  }
  1444  func (dst *ExecTaskStreamingRequest_Setup) XXX_Merge(src proto.Message) {
  1445  	xxx_messageInfo_ExecTaskStreamingRequest_Setup.Merge(dst, src)
  1446  }
  1447  func (m *ExecTaskStreamingRequest_Setup) XXX_Size() int {
  1448  	return xxx_messageInfo_ExecTaskStreamingRequest_Setup.Size(m)
  1449  }
  1450  func (m *ExecTaskStreamingRequest_Setup) XXX_DiscardUnknown() {
  1451  	xxx_messageInfo_ExecTaskStreamingRequest_Setup.DiscardUnknown(m)
  1452  }
  1453  
  1454  var xxx_messageInfo_ExecTaskStreamingRequest_Setup proto.InternalMessageInfo
  1455  
  1456  func (m *ExecTaskStreamingRequest_Setup) GetTaskId() string {
  1457  	if m != nil {
  1458  		return m.TaskId
  1459  	}
  1460  	return ""
  1461  }
  1462  
  1463  func (m *ExecTaskStreamingRequest_Setup) GetCommand() []string {
  1464  	if m != nil {
  1465  		return m.Command
  1466  	}
  1467  	return nil
  1468  }
  1469  
  1470  func (m *ExecTaskStreamingRequest_Setup) GetTty() bool {
  1471  	if m != nil {
  1472  		return m.Tty
  1473  	}
  1474  	return false
  1475  }
  1476  
  1477  type ExecTaskStreamingRequest_TerminalSize struct {
  1478  	Height               int32    `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
  1479  	Width                int32    `protobuf:"varint,2,opt,name=width,proto3" json:"width,omitempty"`
  1480  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1481  	XXX_unrecognized     []byte   `json:"-"`
  1482  	XXX_sizecache        int32    `json:"-"`
  1483  }
  1484  
  1485  func (m *ExecTaskStreamingRequest_TerminalSize) Reset()         { *m = ExecTaskStreamingRequest_TerminalSize{} }
  1486  func (m *ExecTaskStreamingRequest_TerminalSize) String() string { return proto.CompactTextString(m) }
  1487  func (*ExecTaskStreamingRequest_TerminalSize) ProtoMessage()    {}
  1488  func (*ExecTaskStreamingRequest_TerminalSize) Descriptor() ([]byte, []int) {
  1489  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{26, 1}
  1490  }
  1491  func (m *ExecTaskStreamingRequest_TerminalSize) XXX_Unmarshal(b []byte) error {
  1492  	return xxx_messageInfo_ExecTaskStreamingRequest_TerminalSize.Unmarshal(m, b)
  1493  }
  1494  func (m *ExecTaskStreamingRequest_TerminalSize) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1495  	return xxx_messageInfo_ExecTaskStreamingRequest_TerminalSize.Marshal(b, m, deterministic)
  1496  }
  1497  func (dst *ExecTaskStreamingRequest_TerminalSize) XXX_Merge(src proto.Message) {
  1498  	xxx_messageInfo_ExecTaskStreamingRequest_TerminalSize.Merge(dst, src)
  1499  }
  1500  func (m *ExecTaskStreamingRequest_TerminalSize) XXX_Size() int {
  1501  	return xxx_messageInfo_ExecTaskStreamingRequest_TerminalSize.Size(m)
  1502  }
  1503  func (m *ExecTaskStreamingRequest_TerminalSize) XXX_DiscardUnknown() {
  1504  	xxx_messageInfo_ExecTaskStreamingRequest_TerminalSize.DiscardUnknown(m)
  1505  }
  1506  
  1507  var xxx_messageInfo_ExecTaskStreamingRequest_TerminalSize proto.InternalMessageInfo
  1508  
  1509  func (m *ExecTaskStreamingRequest_TerminalSize) GetHeight() int32 {
  1510  	if m != nil {
  1511  		return m.Height
  1512  	}
  1513  	return 0
  1514  }
  1515  
  1516  func (m *ExecTaskStreamingRequest_TerminalSize) GetWidth() int32 {
  1517  	if m != nil {
  1518  		return m.Width
  1519  	}
  1520  	return 0
  1521  }
  1522  
  1523  type ExecTaskStreamingResponse struct {
  1524  	Stdout               *ExecTaskStreamingIOOperation `protobuf:"bytes,1,opt,name=stdout,proto3" json:"stdout,omitempty"`
  1525  	Stderr               *ExecTaskStreamingIOOperation `protobuf:"bytes,2,opt,name=stderr,proto3" json:"stderr,omitempty"`
  1526  	Exited               bool                          `protobuf:"varint,3,opt,name=exited,proto3" json:"exited,omitempty"`
  1527  	Result               *ExitResult                   `protobuf:"bytes,4,opt,name=result,proto3" json:"result,omitempty"`
  1528  	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
  1529  	XXX_unrecognized     []byte                        `json:"-"`
  1530  	XXX_sizecache        int32                         `json:"-"`
  1531  }
  1532  
  1533  func (m *ExecTaskStreamingResponse) Reset()         { *m = ExecTaskStreamingResponse{} }
  1534  func (m *ExecTaskStreamingResponse) String() string { return proto.CompactTextString(m) }
  1535  func (*ExecTaskStreamingResponse) ProtoMessage()    {}
  1536  func (*ExecTaskStreamingResponse) Descriptor() ([]byte, []int) {
  1537  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{27}
  1538  }
  1539  func (m *ExecTaskStreamingResponse) XXX_Unmarshal(b []byte) error {
  1540  	return xxx_messageInfo_ExecTaskStreamingResponse.Unmarshal(m, b)
  1541  }
  1542  func (m *ExecTaskStreamingResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1543  	return xxx_messageInfo_ExecTaskStreamingResponse.Marshal(b, m, deterministic)
  1544  }
  1545  func (dst *ExecTaskStreamingResponse) XXX_Merge(src proto.Message) {
  1546  	xxx_messageInfo_ExecTaskStreamingResponse.Merge(dst, src)
  1547  }
  1548  func (m *ExecTaskStreamingResponse) XXX_Size() int {
  1549  	return xxx_messageInfo_ExecTaskStreamingResponse.Size(m)
  1550  }
  1551  func (m *ExecTaskStreamingResponse) XXX_DiscardUnknown() {
  1552  	xxx_messageInfo_ExecTaskStreamingResponse.DiscardUnknown(m)
  1553  }
  1554  
  1555  var xxx_messageInfo_ExecTaskStreamingResponse proto.InternalMessageInfo
  1556  
  1557  func (m *ExecTaskStreamingResponse) GetStdout() *ExecTaskStreamingIOOperation {
  1558  	if m != nil {
  1559  		return m.Stdout
  1560  	}
  1561  	return nil
  1562  }
  1563  
  1564  func (m *ExecTaskStreamingResponse) GetStderr() *ExecTaskStreamingIOOperation {
  1565  	if m != nil {
  1566  		return m.Stderr
  1567  	}
  1568  	return nil
  1569  }
  1570  
  1571  func (m *ExecTaskStreamingResponse) GetExited() bool {
  1572  	if m != nil {
  1573  		return m.Exited
  1574  	}
  1575  	return false
  1576  }
  1577  
  1578  func (m *ExecTaskStreamingResponse) GetResult() *ExitResult {
  1579  	if m != nil {
  1580  		return m.Result
  1581  	}
  1582  	return nil
  1583  }
  1584  
  1585  type CreateNetworkRequest struct {
  1586  	// AllocID of the allocation the network is associated with
  1587  	AllocId              string   `protobuf:"bytes,1,opt,name=alloc_id,json=allocId,proto3" json:"alloc_id,omitempty"`
  1588  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1589  	XXX_unrecognized     []byte   `json:"-"`
  1590  	XXX_sizecache        int32    `json:"-"`
  1591  }
  1592  
  1593  func (m *CreateNetworkRequest) Reset()         { *m = CreateNetworkRequest{} }
  1594  func (m *CreateNetworkRequest) String() string { return proto.CompactTextString(m) }
  1595  func (*CreateNetworkRequest) ProtoMessage()    {}
  1596  func (*CreateNetworkRequest) Descriptor() ([]byte, []int) {
  1597  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{28}
  1598  }
  1599  func (m *CreateNetworkRequest) XXX_Unmarshal(b []byte) error {
  1600  	return xxx_messageInfo_CreateNetworkRequest.Unmarshal(m, b)
  1601  }
  1602  func (m *CreateNetworkRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1603  	return xxx_messageInfo_CreateNetworkRequest.Marshal(b, m, deterministic)
  1604  }
  1605  func (dst *CreateNetworkRequest) XXX_Merge(src proto.Message) {
  1606  	xxx_messageInfo_CreateNetworkRequest.Merge(dst, src)
  1607  }
  1608  func (m *CreateNetworkRequest) XXX_Size() int {
  1609  	return xxx_messageInfo_CreateNetworkRequest.Size(m)
  1610  }
  1611  func (m *CreateNetworkRequest) XXX_DiscardUnknown() {
  1612  	xxx_messageInfo_CreateNetworkRequest.DiscardUnknown(m)
  1613  }
  1614  
  1615  var xxx_messageInfo_CreateNetworkRequest proto.InternalMessageInfo
  1616  
  1617  func (m *CreateNetworkRequest) GetAllocId() string {
  1618  	if m != nil {
  1619  		return m.AllocId
  1620  	}
  1621  	return ""
  1622  }
  1623  
  1624  type CreateNetworkResponse struct {
  1625  	IsolationSpec *NetworkIsolationSpec `protobuf:"bytes,1,opt,name=isolation_spec,json=isolationSpec,proto3" json:"isolation_spec,omitempty"`
  1626  	// created indicates that the network namespace is newly created
  1627  	// as a result of this request. if false, the NetworkIsolationSpec
  1628  	// value returned is an existing spec.
  1629  	Created              bool     `protobuf:"varint,2,opt,name=created,proto3" json:"created,omitempty"`
  1630  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1631  	XXX_unrecognized     []byte   `json:"-"`
  1632  	XXX_sizecache        int32    `json:"-"`
  1633  }
  1634  
  1635  func (m *CreateNetworkResponse) Reset()         { *m = CreateNetworkResponse{} }
  1636  func (m *CreateNetworkResponse) String() string { return proto.CompactTextString(m) }
  1637  func (*CreateNetworkResponse) ProtoMessage()    {}
  1638  func (*CreateNetworkResponse) Descriptor() ([]byte, []int) {
  1639  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{29}
  1640  }
  1641  func (m *CreateNetworkResponse) XXX_Unmarshal(b []byte) error {
  1642  	return xxx_messageInfo_CreateNetworkResponse.Unmarshal(m, b)
  1643  }
  1644  func (m *CreateNetworkResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1645  	return xxx_messageInfo_CreateNetworkResponse.Marshal(b, m, deterministic)
  1646  }
  1647  func (dst *CreateNetworkResponse) XXX_Merge(src proto.Message) {
  1648  	xxx_messageInfo_CreateNetworkResponse.Merge(dst, src)
  1649  }
  1650  func (m *CreateNetworkResponse) XXX_Size() int {
  1651  	return xxx_messageInfo_CreateNetworkResponse.Size(m)
  1652  }
  1653  func (m *CreateNetworkResponse) XXX_DiscardUnknown() {
  1654  	xxx_messageInfo_CreateNetworkResponse.DiscardUnknown(m)
  1655  }
  1656  
  1657  var xxx_messageInfo_CreateNetworkResponse proto.InternalMessageInfo
  1658  
  1659  func (m *CreateNetworkResponse) GetIsolationSpec() *NetworkIsolationSpec {
  1660  	if m != nil {
  1661  		return m.IsolationSpec
  1662  	}
  1663  	return nil
  1664  }
  1665  
  1666  func (m *CreateNetworkResponse) GetCreated() bool {
  1667  	if m != nil {
  1668  		return m.Created
  1669  	}
  1670  	return false
  1671  }
  1672  
  1673  type DestroyNetworkRequest struct {
  1674  	// AllocID of the allocation the network is associated with
  1675  	AllocId              string                `protobuf:"bytes,1,opt,name=alloc_id,json=allocId,proto3" json:"alloc_id,omitempty"`
  1676  	IsolationSpec        *NetworkIsolationSpec `protobuf:"bytes,2,opt,name=isolation_spec,json=isolationSpec,proto3" json:"isolation_spec,omitempty"`
  1677  	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
  1678  	XXX_unrecognized     []byte                `json:"-"`
  1679  	XXX_sizecache        int32                 `json:"-"`
  1680  }
  1681  
  1682  func (m *DestroyNetworkRequest) Reset()         { *m = DestroyNetworkRequest{} }
  1683  func (m *DestroyNetworkRequest) String() string { return proto.CompactTextString(m) }
  1684  func (*DestroyNetworkRequest) ProtoMessage()    {}
  1685  func (*DestroyNetworkRequest) Descriptor() ([]byte, []int) {
  1686  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{30}
  1687  }
  1688  func (m *DestroyNetworkRequest) XXX_Unmarshal(b []byte) error {
  1689  	return xxx_messageInfo_DestroyNetworkRequest.Unmarshal(m, b)
  1690  }
  1691  func (m *DestroyNetworkRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1692  	return xxx_messageInfo_DestroyNetworkRequest.Marshal(b, m, deterministic)
  1693  }
  1694  func (dst *DestroyNetworkRequest) XXX_Merge(src proto.Message) {
  1695  	xxx_messageInfo_DestroyNetworkRequest.Merge(dst, src)
  1696  }
  1697  func (m *DestroyNetworkRequest) XXX_Size() int {
  1698  	return xxx_messageInfo_DestroyNetworkRequest.Size(m)
  1699  }
  1700  func (m *DestroyNetworkRequest) XXX_DiscardUnknown() {
  1701  	xxx_messageInfo_DestroyNetworkRequest.DiscardUnknown(m)
  1702  }
  1703  
  1704  var xxx_messageInfo_DestroyNetworkRequest proto.InternalMessageInfo
  1705  
  1706  func (m *DestroyNetworkRequest) GetAllocId() string {
  1707  	if m != nil {
  1708  		return m.AllocId
  1709  	}
  1710  	return ""
  1711  }
  1712  
  1713  func (m *DestroyNetworkRequest) GetIsolationSpec() *NetworkIsolationSpec {
  1714  	if m != nil {
  1715  		return m.IsolationSpec
  1716  	}
  1717  	return nil
  1718  }
  1719  
  1720  type DestroyNetworkResponse struct {
  1721  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1722  	XXX_unrecognized     []byte   `json:"-"`
  1723  	XXX_sizecache        int32    `json:"-"`
  1724  }
  1725  
  1726  func (m *DestroyNetworkResponse) Reset()         { *m = DestroyNetworkResponse{} }
  1727  func (m *DestroyNetworkResponse) String() string { return proto.CompactTextString(m) }
  1728  func (*DestroyNetworkResponse) ProtoMessage()    {}
  1729  func (*DestroyNetworkResponse) Descriptor() ([]byte, []int) {
  1730  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{31}
  1731  }
  1732  func (m *DestroyNetworkResponse) XXX_Unmarshal(b []byte) error {
  1733  	return xxx_messageInfo_DestroyNetworkResponse.Unmarshal(m, b)
  1734  }
  1735  func (m *DestroyNetworkResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1736  	return xxx_messageInfo_DestroyNetworkResponse.Marshal(b, m, deterministic)
  1737  }
  1738  func (dst *DestroyNetworkResponse) XXX_Merge(src proto.Message) {
  1739  	xxx_messageInfo_DestroyNetworkResponse.Merge(dst, src)
  1740  }
  1741  func (m *DestroyNetworkResponse) XXX_Size() int {
  1742  	return xxx_messageInfo_DestroyNetworkResponse.Size(m)
  1743  }
  1744  func (m *DestroyNetworkResponse) XXX_DiscardUnknown() {
  1745  	xxx_messageInfo_DestroyNetworkResponse.DiscardUnknown(m)
  1746  }
  1747  
  1748  var xxx_messageInfo_DestroyNetworkResponse proto.InternalMessageInfo
  1749  
  1750  type DriverCapabilities struct {
  1751  	// SendSignals indicates that the driver can send process signals (ex. SIGUSR1)
  1752  	// to the task.
  1753  	SendSignals bool `protobuf:"varint,1,opt,name=send_signals,json=sendSignals,proto3" json:"send_signals,omitempty"`
  1754  	// Exec indicates that the driver supports executing arbitrary commands
  1755  	// in the task's execution environment.
  1756  	Exec bool `protobuf:"varint,2,opt,name=exec,proto3" json:"exec,omitempty"`
  1757  	// FsIsolation indicates what kind of filesystem isolation a driver supports.
  1758  	FsIsolation           DriverCapabilities_FSIsolation              `protobuf:"varint,3,opt,name=fs_isolation,json=fsIsolation,proto3,enum=hashicorp.nomad.plugins.drivers.proto.DriverCapabilities_FSIsolation" json:"fs_isolation,omitempty"`
  1759  	NetworkIsolationModes []NetworkIsolationSpec_NetworkIsolationMode `protobuf:"varint,4,rep,packed,name=network_isolation_modes,json=networkIsolationModes,proto3,enum=hashicorp.nomad.plugins.drivers.proto.NetworkIsolationSpec_NetworkIsolationMode" json:"network_isolation_modes,omitempty"`
  1760  	MustCreateNetwork     bool                                        `protobuf:"varint,5,opt,name=must_create_network,json=mustCreateNetwork,proto3" json:"must_create_network,omitempty"`
  1761  	XXX_NoUnkeyedLiteral  struct{}                                    `json:"-"`
  1762  	XXX_unrecognized      []byte                                      `json:"-"`
  1763  	XXX_sizecache         int32                                       `json:"-"`
  1764  }
  1765  
  1766  func (m *DriverCapabilities) Reset()         { *m = DriverCapabilities{} }
  1767  func (m *DriverCapabilities) String() string { return proto.CompactTextString(m) }
  1768  func (*DriverCapabilities) ProtoMessage()    {}
  1769  func (*DriverCapabilities) Descriptor() ([]byte, []int) {
  1770  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{32}
  1771  }
  1772  func (m *DriverCapabilities) XXX_Unmarshal(b []byte) error {
  1773  	return xxx_messageInfo_DriverCapabilities.Unmarshal(m, b)
  1774  }
  1775  func (m *DriverCapabilities) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1776  	return xxx_messageInfo_DriverCapabilities.Marshal(b, m, deterministic)
  1777  }
  1778  func (dst *DriverCapabilities) XXX_Merge(src proto.Message) {
  1779  	xxx_messageInfo_DriverCapabilities.Merge(dst, src)
  1780  }
  1781  func (m *DriverCapabilities) XXX_Size() int {
  1782  	return xxx_messageInfo_DriverCapabilities.Size(m)
  1783  }
  1784  func (m *DriverCapabilities) XXX_DiscardUnknown() {
  1785  	xxx_messageInfo_DriverCapabilities.DiscardUnknown(m)
  1786  }
  1787  
  1788  var xxx_messageInfo_DriverCapabilities proto.InternalMessageInfo
  1789  
  1790  func (m *DriverCapabilities) GetSendSignals() bool {
  1791  	if m != nil {
  1792  		return m.SendSignals
  1793  	}
  1794  	return false
  1795  }
  1796  
  1797  func (m *DriverCapabilities) GetExec() bool {
  1798  	if m != nil {
  1799  		return m.Exec
  1800  	}
  1801  	return false
  1802  }
  1803  
  1804  func (m *DriverCapabilities) GetFsIsolation() DriverCapabilities_FSIsolation {
  1805  	if m != nil {
  1806  		return m.FsIsolation
  1807  	}
  1808  	return DriverCapabilities_NONE
  1809  }
  1810  
  1811  func (m *DriverCapabilities) GetNetworkIsolationModes() []NetworkIsolationSpec_NetworkIsolationMode {
  1812  	if m != nil {
  1813  		return m.NetworkIsolationModes
  1814  	}
  1815  	return nil
  1816  }
  1817  
  1818  func (m *DriverCapabilities) GetMustCreateNetwork() bool {
  1819  	if m != nil {
  1820  		return m.MustCreateNetwork
  1821  	}
  1822  	return false
  1823  }
  1824  
  1825  type NetworkIsolationSpec struct {
  1826  	Mode                 NetworkIsolationSpec_NetworkIsolationMode `protobuf:"varint,1,opt,name=mode,proto3,enum=hashicorp.nomad.plugins.drivers.proto.NetworkIsolationSpec_NetworkIsolationMode" json:"mode,omitempty"`
  1827  	Path                 string                                    `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
  1828  	Labels               map[string]string                         `protobuf:"bytes,3,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1829  	XXX_NoUnkeyedLiteral struct{}                                  `json:"-"`
  1830  	XXX_unrecognized     []byte                                    `json:"-"`
  1831  	XXX_sizecache        int32                                     `json:"-"`
  1832  }
  1833  
  1834  func (m *NetworkIsolationSpec) Reset()         { *m = NetworkIsolationSpec{} }
  1835  func (m *NetworkIsolationSpec) String() string { return proto.CompactTextString(m) }
  1836  func (*NetworkIsolationSpec) ProtoMessage()    {}
  1837  func (*NetworkIsolationSpec) Descriptor() ([]byte, []int) {
  1838  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{33}
  1839  }
  1840  func (m *NetworkIsolationSpec) XXX_Unmarshal(b []byte) error {
  1841  	return xxx_messageInfo_NetworkIsolationSpec.Unmarshal(m, b)
  1842  }
  1843  func (m *NetworkIsolationSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1844  	return xxx_messageInfo_NetworkIsolationSpec.Marshal(b, m, deterministic)
  1845  }
  1846  func (dst *NetworkIsolationSpec) XXX_Merge(src proto.Message) {
  1847  	xxx_messageInfo_NetworkIsolationSpec.Merge(dst, src)
  1848  }
  1849  func (m *NetworkIsolationSpec) XXX_Size() int {
  1850  	return xxx_messageInfo_NetworkIsolationSpec.Size(m)
  1851  }
  1852  func (m *NetworkIsolationSpec) XXX_DiscardUnknown() {
  1853  	xxx_messageInfo_NetworkIsolationSpec.DiscardUnknown(m)
  1854  }
  1855  
  1856  var xxx_messageInfo_NetworkIsolationSpec proto.InternalMessageInfo
  1857  
  1858  func (m *NetworkIsolationSpec) GetMode() NetworkIsolationSpec_NetworkIsolationMode {
  1859  	if m != nil {
  1860  		return m.Mode
  1861  	}
  1862  	return NetworkIsolationSpec_HOST
  1863  }
  1864  
  1865  func (m *NetworkIsolationSpec) GetPath() string {
  1866  	if m != nil {
  1867  		return m.Path
  1868  	}
  1869  	return ""
  1870  }
  1871  
  1872  func (m *NetworkIsolationSpec) GetLabels() map[string]string {
  1873  	if m != nil {
  1874  		return m.Labels
  1875  	}
  1876  	return nil
  1877  }
  1878  
  1879  type TaskConfig struct {
  1880  	// Id of the task, recommended to the globally unique, must be unique to the driver.
  1881  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  1882  	// Name of the task
  1883  	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
  1884  	// MsgpackDriverConfig is the encoded driver configuation of the task
  1885  	MsgpackDriverConfig []byte `protobuf:"bytes,3,opt,name=msgpack_driver_config,json=msgpackDriverConfig,proto3" json:"msgpack_driver_config,omitempty"`
  1886  	// Env is the a set of key/value pairs to be set as environment variables
  1887  	Env map[string]string `protobuf:"bytes,4,rep,name=env,proto3" json:"env,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1888  	// DeviceEnv is the set of environment variables that are defined by device
  1889  	// plugins. This allows the driver to differentiate environment variables
  1890  	// set by the device plugins and those by the user. When populating the
  1891  	// task's environment env should be used.
  1892  	DeviceEnv map[string]string `protobuf:"bytes,5,rep,name=device_env,json=deviceEnv,proto3" json:"device_env,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1893  	// Resources defines the resources to isolate
  1894  	Resources *Resources `protobuf:"bytes,6,opt,name=resources,proto3" json:"resources,omitempty"`
  1895  	// Mounts is a list of targets to bind mount into the task directory
  1896  	Mounts []*Mount `protobuf:"bytes,7,rep,name=mounts,proto3" json:"mounts,omitempty"`
  1897  	// Devices is a list of system devices to mount into the task's execution
  1898  	// environment.
  1899  	Devices []*Device `protobuf:"bytes,8,rep,name=devices,proto3" json:"devices,omitempty"`
  1900  	// User defines the operating system user the tasks should run as
  1901  	User string `protobuf:"bytes,9,opt,name=user,proto3" json:"user,omitempty"`
  1902  	// AllocDir is the directory on the host where the allocation directory
  1903  	// exists.
  1904  	AllocDir string `protobuf:"bytes,10,opt,name=alloc_dir,json=allocDir,proto3" json:"alloc_dir,omitempty"`
  1905  	// StdoutPath is the path to the file to open and write task stdout to
  1906  	StdoutPath string `protobuf:"bytes,11,opt,name=stdout_path,json=stdoutPath,proto3" json:"stdout_path,omitempty"`
  1907  	// StderrPath is the path to the file to open and write task stderr to
  1908  	StderrPath string `protobuf:"bytes,12,opt,name=stderr_path,json=stderrPath,proto3" json:"stderr_path,omitempty"`
  1909  	// TaskGroupName is the name of the task group which this task is a member of
  1910  	TaskGroupName string `protobuf:"bytes,13,opt,name=task_group_name,json=taskGroupName,proto3" json:"task_group_name,omitempty"`
  1911  	// JobName is the name of the job of which this task is part of
  1912  	JobName string `protobuf:"bytes,14,opt,name=job_name,json=jobName,proto3" json:"job_name,omitempty"`
  1913  	// AllocId is the ID of the associated allocation
  1914  	AllocId string `protobuf:"bytes,15,opt,name=alloc_id,json=allocId,proto3" json:"alloc_id,omitempty"`
  1915  	// NetworkIsolationSpec specifies the configuration for the network namespace
  1916  	// to use for the task. *Only supported on Linux
  1917  	NetworkIsolationSpec *NetworkIsolationSpec `protobuf:"bytes,16,opt,name=network_isolation_spec,json=networkIsolationSpec,proto3" json:"network_isolation_spec,omitempty"`
  1918  	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
  1919  	XXX_unrecognized     []byte                `json:"-"`
  1920  	XXX_sizecache        int32                 `json:"-"`
  1921  }
  1922  
  1923  func (m *TaskConfig) Reset()         { *m = TaskConfig{} }
  1924  func (m *TaskConfig) String() string { return proto.CompactTextString(m) }
  1925  func (*TaskConfig) ProtoMessage()    {}
  1926  func (*TaskConfig) Descriptor() ([]byte, []int) {
  1927  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{34}
  1928  }
  1929  func (m *TaskConfig) XXX_Unmarshal(b []byte) error {
  1930  	return xxx_messageInfo_TaskConfig.Unmarshal(m, b)
  1931  }
  1932  func (m *TaskConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1933  	return xxx_messageInfo_TaskConfig.Marshal(b, m, deterministic)
  1934  }
  1935  func (dst *TaskConfig) XXX_Merge(src proto.Message) {
  1936  	xxx_messageInfo_TaskConfig.Merge(dst, src)
  1937  }
  1938  func (m *TaskConfig) XXX_Size() int {
  1939  	return xxx_messageInfo_TaskConfig.Size(m)
  1940  }
  1941  func (m *TaskConfig) XXX_DiscardUnknown() {
  1942  	xxx_messageInfo_TaskConfig.DiscardUnknown(m)
  1943  }
  1944  
  1945  var xxx_messageInfo_TaskConfig proto.InternalMessageInfo
  1946  
  1947  func (m *TaskConfig) GetId() string {
  1948  	if m != nil {
  1949  		return m.Id
  1950  	}
  1951  	return ""
  1952  }
  1953  
  1954  func (m *TaskConfig) GetName() string {
  1955  	if m != nil {
  1956  		return m.Name
  1957  	}
  1958  	return ""
  1959  }
  1960  
  1961  func (m *TaskConfig) GetMsgpackDriverConfig() []byte {
  1962  	if m != nil {
  1963  		return m.MsgpackDriverConfig
  1964  	}
  1965  	return nil
  1966  }
  1967  
  1968  func (m *TaskConfig) GetEnv() map[string]string {
  1969  	if m != nil {
  1970  		return m.Env
  1971  	}
  1972  	return nil
  1973  }
  1974  
  1975  func (m *TaskConfig) GetDeviceEnv() map[string]string {
  1976  	if m != nil {
  1977  		return m.DeviceEnv
  1978  	}
  1979  	return nil
  1980  }
  1981  
  1982  func (m *TaskConfig) GetResources() *Resources {
  1983  	if m != nil {
  1984  		return m.Resources
  1985  	}
  1986  	return nil
  1987  }
  1988  
  1989  func (m *TaskConfig) GetMounts() []*Mount {
  1990  	if m != nil {
  1991  		return m.Mounts
  1992  	}
  1993  	return nil
  1994  }
  1995  
  1996  func (m *TaskConfig) GetDevices() []*Device {
  1997  	if m != nil {
  1998  		return m.Devices
  1999  	}
  2000  	return nil
  2001  }
  2002  
  2003  func (m *TaskConfig) GetUser() string {
  2004  	if m != nil {
  2005  		return m.User
  2006  	}
  2007  	return ""
  2008  }
  2009  
  2010  func (m *TaskConfig) GetAllocDir() string {
  2011  	if m != nil {
  2012  		return m.AllocDir
  2013  	}
  2014  	return ""
  2015  }
  2016  
  2017  func (m *TaskConfig) GetStdoutPath() string {
  2018  	if m != nil {
  2019  		return m.StdoutPath
  2020  	}
  2021  	return ""
  2022  }
  2023  
  2024  func (m *TaskConfig) GetStderrPath() string {
  2025  	if m != nil {
  2026  		return m.StderrPath
  2027  	}
  2028  	return ""
  2029  }
  2030  
  2031  func (m *TaskConfig) GetTaskGroupName() string {
  2032  	if m != nil {
  2033  		return m.TaskGroupName
  2034  	}
  2035  	return ""
  2036  }
  2037  
  2038  func (m *TaskConfig) GetJobName() string {
  2039  	if m != nil {
  2040  		return m.JobName
  2041  	}
  2042  	return ""
  2043  }
  2044  
  2045  func (m *TaskConfig) GetAllocId() string {
  2046  	if m != nil {
  2047  		return m.AllocId
  2048  	}
  2049  	return ""
  2050  }
  2051  
  2052  func (m *TaskConfig) GetNetworkIsolationSpec() *NetworkIsolationSpec {
  2053  	if m != nil {
  2054  		return m.NetworkIsolationSpec
  2055  	}
  2056  	return nil
  2057  }
  2058  
  2059  type Resources struct {
  2060  	// AllocatedResources are the resources set for the task
  2061  	AllocatedResources *AllocatedTaskResources `protobuf:"bytes,1,opt,name=allocated_resources,json=allocatedResources,proto3" json:"allocated_resources,omitempty"`
  2062  	// LinuxResources are the computed values to set for specific Linux features
  2063  	LinuxResources       *LinuxResources `protobuf:"bytes,2,opt,name=linux_resources,json=linuxResources,proto3" json:"linux_resources,omitempty"`
  2064  	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
  2065  	XXX_unrecognized     []byte          `json:"-"`
  2066  	XXX_sizecache        int32           `json:"-"`
  2067  }
  2068  
  2069  func (m *Resources) Reset()         { *m = Resources{} }
  2070  func (m *Resources) String() string { return proto.CompactTextString(m) }
  2071  func (*Resources) ProtoMessage()    {}
  2072  func (*Resources) Descriptor() ([]byte, []int) {
  2073  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{35}
  2074  }
  2075  func (m *Resources) XXX_Unmarshal(b []byte) error {
  2076  	return xxx_messageInfo_Resources.Unmarshal(m, b)
  2077  }
  2078  func (m *Resources) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2079  	return xxx_messageInfo_Resources.Marshal(b, m, deterministic)
  2080  }
  2081  func (dst *Resources) XXX_Merge(src proto.Message) {
  2082  	xxx_messageInfo_Resources.Merge(dst, src)
  2083  }
  2084  func (m *Resources) XXX_Size() int {
  2085  	return xxx_messageInfo_Resources.Size(m)
  2086  }
  2087  func (m *Resources) XXX_DiscardUnknown() {
  2088  	xxx_messageInfo_Resources.DiscardUnknown(m)
  2089  }
  2090  
  2091  var xxx_messageInfo_Resources proto.InternalMessageInfo
  2092  
  2093  func (m *Resources) GetAllocatedResources() *AllocatedTaskResources {
  2094  	if m != nil {
  2095  		return m.AllocatedResources
  2096  	}
  2097  	return nil
  2098  }
  2099  
  2100  func (m *Resources) GetLinuxResources() *LinuxResources {
  2101  	if m != nil {
  2102  		return m.LinuxResources
  2103  	}
  2104  	return nil
  2105  }
  2106  
  2107  type AllocatedTaskResources struct {
  2108  	Cpu                  *AllocatedCpuResources    `protobuf:"bytes,1,opt,name=cpu,proto3" json:"cpu,omitempty"`
  2109  	Memory               *AllocatedMemoryResources `protobuf:"bytes,2,opt,name=memory,proto3" json:"memory,omitempty"`
  2110  	Networks             []*NetworkResource        `protobuf:"bytes,5,rep,name=networks,proto3" json:"networks,omitempty"`
  2111  	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
  2112  	XXX_unrecognized     []byte                    `json:"-"`
  2113  	XXX_sizecache        int32                     `json:"-"`
  2114  }
  2115  
  2116  func (m *AllocatedTaskResources) Reset()         { *m = AllocatedTaskResources{} }
  2117  func (m *AllocatedTaskResources) String() string { return proto.CompactTextString(m) }
  2118  func (*AllocatedTaskResources) ProtoMessage()    {}
  2119  func (*AllocatedTaskResources) Descriptor() ([]byte, []int) {
  2120  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{36}
  2121  }
  2122  func (m *AllocatedTaskResources) XXX_Unmarshal(b []byte) error {
  2123  	return xxx_messageInfo_AllocatedTaskResources.Unmarshal(m, b)
  2124  }
  2125  func (m *AllocatedTaskResources) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2126  	return xxx_messageInfo_AllocatedTaskResources.Marshal(b, m, deterministic)
  2127  }
  2128  func (dst *AllocatedTaskResources) XXX_Merge(src proto.Message) {
  2129  	xxx_messageInfo_AllocatedTaskResources.Merge(dst, src)
  2130  }
  2131  func (m *AllocatedTaskResources) XXX_Size() int {
  2132  	return xxx_messageInfo_AllocatedTaskResources.Size(m)
  2133  }
  2134  func (m *AllocatedTaskResources) XXX_DiscardUnknown() {
  2135  	xxx_messageInfo_AllocatedTaskResources.DiscardUnknown(m)
  2136  }
  2137  
  2138  var xxx_messageInfo_AllocatedTaskResources proto.InternalMessageInfo
  2139  
  2140  func (m *AllocatedTaskResources) GetCpu() *AllocatedCpuResources {
  2141  	if m != nil {
  2142  		return m.Cpu
  2143  	}
  2144  	return nil
  2145  }
  2146  
  2147  func (m *AllocatedTaskResources) GetMemory() *AllocatedMemoryResources {
  2148  	if m != nil {
  2149  		return m.Memory
  2150  	}
  2151  	return nil
  2152  }
  2153  
  2154  func (m *AllocatedTaskResources) GetNetworks() []*NetworkResource {
  2155  	if m != nil {
  2156  		return m.Networks
  2157  	}
  2158  	return nil
  2159  }
  2160  
  2161  type AllocatedCpuResources struct {
  2162  	CpuShares            int64    `protobuf:"varint,1,opt,name=cpu_shares,json=cpuShares,proto3" json:"cpu_shares,omitempty"`
  2163  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2164  	XXX_unrecognized     []byte   `json:"-"`
  2165  	XXX_sizecache        int32    `json:"-"`
  2166  }
  2167  
  2168  func (m *AllocatedCpuResources) Reset()         { *m = AllocatedCpuResources{} }
  2169  func (m *AllocatedCpuResources) String() string { return proto.CompactTextString(m) }
  2170  func (*AllocatedCpuResources) ProtoMessage()    {}
  2171  func (*AllocatedCpuResources) Descriptor() ([]byte, []int) {
  2172  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{37}
  2173  }
  2174  func (m *AllocatedCpuResources) XXX_Unmarshal(b []byte) error {
  2175  	return xxx_messageInfo_AllocatedCpuResources.Unmarshal(m, b)
  2176  }
  2177  func (m *AllocatedCpuResources) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2178  	return xxx_messageInfo_AllocatedCpuResources.Marshal(b, m, deterministic)
  2179  }
  2180  func (dst *AllocatedCpuResources) XXX_Merge(src proto.Message) {
  2181  	xxx_messageInfo_AllocatedCpuResources.Merge(dst, src)
  2182  }
  2183  func (m *AllocatedCpuResources) XXX_Size() int {
  2184  	return xxx_messageInfo_AllocatedCpuResources.Size(m)
  2185  }
  2186  func (m *AllocatedCpuResources) XXX_DiscardUnknown() {
  2187  	xxx_messageInfo_AllocatedCpuResources.DiscardUnknown(m)
  2188  }
  2189  
  2190  var xxx_messageInfo_AllocatedCpuResources proto.InternalMessageInfo
  2191  
  2192  func (m *AllocatedCpuResources) GetCpuShares() int64 {
  2193  	if m != nil {
  2194  		return m.CpuShares
  2195  	}
  2196  	return 0
  2197  }
  2198  
  2199  type AllocatedMemoryResources struct {
  2200  	MemoryMb             int64    `protobuf:"varint,2,opt,name=memory_mb,json=memoryMb,proto3" json:"memory_mb,omitempty"`
  2201  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2202  	XXX_unrecognized     []byte   `json:"-"`
  2203  	XXX_sizecache        int32    `json:"-"`
  2204  }
  2205  
  2206  func (m *AllocatedMemoryResources) Reset()         { *m = AllocatedMemoryResources{} }
  2207  func (m *AllocatedMemoryResources) String() string { return proto.CompactTextString(m) }
  2208  func (*AllocatedMemoryResources) ProtoMessage()    {}
  2209  func (*AllocatedMemoryResources) Descriptor() ([]byte, []int) {
  2210  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{38}
  2211  }
  2212  func (m *AllocatedMemoryResources) XXX_Unmarshal(b []byte) error {
  2213  	return xxx_messageInfo_AllocatedMemoryResources.Unmarshal(m, b)
  2214  }
  2215  func (m *AllocatedMemoryResources) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2216  	return xxx_messageInfo_AllocatedMemoryResources.Marshal(b, m, deterministic)
  2217  }
  2218  func (dst *AllocatedMemoryResources) XXX_Merge(src proto.Message) {
  2219  	xxx_messageInfo_AllocatedMemoryResources.Merge(dst, src)
  2220  }
  2221  func (m *AllocatedMemoryResources) XXX_Size() int {
  2222  	return xxx_messageInfo_AllocatedMemoryResources.Size(m)
  2223  }
  2224  func (m *AllocatedMemoryResources) XXX_DiscardUnknown() {
  2225  	xxx_messageInfo_AllocatedMemoryResources.DiscardUnknown(m)
  2226  }
  2227  
  2228  var xxx_messageInfo_AllocatedMemoryResources proto.InternalMessageInfo
  2229  
  2230  func (m *AllocatedMemoryResources) GetMemoryMb() int64 {
  2231  	if m != nil {
  2232  		return m.MemoryMb
  2233  	}
  2234  	return 0
  2235  }
  2236  
  2237  type NetworkResource struct {
  2238  	Device               string         `protobuf:"bytes,1,opt,name=device,proto3" json:"device,omitempty"`
  2239  	Cidr                 string         `protobuf:"bytes,2,opt,name=cidr,proto3" json:"cidr,omitempty"`
  2240  	Ip                   string         `protobuf:"bytes,3,opt,name=ip,proto3" json:"ip,omitempty"`
  2241  	Mbits                int32          `protobuf:"varint,4,opt,name=mbits,proto3" json:"mbits,omitempty"`
  2242  	ReservedPorts        []*NetworkPort `protobuf:"bytes,5,rep,name=reserved_ports,json=reservedPorts,proto3" json:"reserved_ports,omitempty"`
  2243  	DynamicPorts         []*NetworkPort `protobuf:"bytes,6,rep,name=dynamic_ports,json=dynamicPorts,proto3" json:"dynamic_ports,omitempty"`
  2244  	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
  2245  	XXX_unrecognized     []byte         `json:"-"`
  2246  	XXX_sizecache        int32          `json:"-"`
  2247  }
  2248  
  2249  func (m *NetworkResource) Reset()         { *m = NetworkResource{} }
  2250  func (m *NetworkResource) String() string { return proto.CompactTextString(m) }
  2251  func (*NetworkResource) ProtoMessage()    {}
  2252  func (*NetworkResource) Descriptor() ([]byte, []int) {
  2253  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{39}
  2254  }
  2255  func (m *NetworkResource) XXX_Unmarshal(b []byte) error {
  2256  	return xxx_messageInfo_NetworkResource.Unmarshal(m, b)
  2257  }
  2258  func (m *NetworkResource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2259  	return xxx_messageInfo_NetworkResource.Marshal(b, m, deterministic)
  2260  }
  2261  func (dst *NetworkResource) XXX_Merge(src proto.Message) {
  2262  	xxx_messageInfo_NetworkResource.Merge(dst, src)
  2263  }
  2264  func (m *NetworkResource) XXX_Size() int {
  2265  	return xxx_messageInfo_NetworkResource.Size(m)
  2266  }
  2267  func (m *NetworkResource) XXX_DiscardUnknown() {
  2268  	xxx_messageInfo_NetworkResource.DiscardUnknown(m)
  2269  }
  2270  
  2271  var xxx_messageInfo_NetworkResource proto.InternalMessageInfo
  2272  
  2273  func (m *NetworkResource) GetDevice() string {
  2274  	if m != nil {
  2275  		return m.Device
  2276  	}
  2277  	return ""
  2278  }
  2279  
  2280  func (m *NetworkResource) GetCidr() string {
  2281  	if m != nil {
  2282  		return m.Cidr
  2283  	}
  2284  	return ""
  2285  }
  2286  
  2287  func (m *NetworkResource) GetIp() string {
  2288  	if m != nil {
  2289  		return m.Ip
  2290  	}
  2291  	return ""
  2292  }
  2293  
  2294  func (m *NetworkResource) GetMbits() int32 {
  2295  	if m != nil {
  2296  		return m.Mbits
  2297  	}
  2298  	return 0
  2299  }
  2300  
  2301  func (m *NetworkResource) GetReservedPorts() []*NetworkPort {
  2302  	if m != nil {
  2303  		return m.ReservedPorts
  2304  	}
  2305  	return nil
  2306  }
  2307  
  2308  func (m *NetworkResource) GetDynamicPorts() []*NetworkPort {
  2309  	if m != nil {
  2310  		return m.DynamicPorts
  2311  	}
  2312  	return nil
  2313  }
  2314  
  2315  type NetworkPort struct {
  2316  	Label                string   `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
  2317  	Value                int32    `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
  2318  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2319  	XXX_unrecognized     []byte   `json:"-"`
  2320  	XXX_sizecache        int32    `json:"-"`
  2321  }
  2322  
  2323  func (m *NetworkPort) Reset()         { *m = NetworkPort{} }
  2324  func (m *NetworkPort) String() string { return proto.CompactTextString(m) }
  2325  func (*NetworkPort) ProtoMessage()    {}
  2326  func (*NetworkPort) Descriptor() ([]byte, []int) {
  2327  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{40}
  2328  }
  2329  func (m *NetworkPort) XXX_Unmarshal(b []byte) error {
  2330  	return xxx_messageInfo_NetworkPort.Unmarshal(m, b)
  2331  }
  2332  func (m *NetworkPort) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2333  	return xxx_messageInfo_NetworkPort.Marshal(b, m, deterministic)
  2334  }
  2335  func (dst *NetworkPort) XXX_Merge(src proto.Message) {
  2336  	xxx_messageInfo_NetworkPort.Merge(dst, src)
  2337  }
  2338  func (m *NetworkPort) XXX_Size() int {
  2339  	return xxx_messageInfo_NetworkPort.Size(m)
  2340  }
  2341  func (m *NetworkPort) XXX_DiscardUnknown() {
  2342  	xxx_messageInfo_NetworkPort.DiscardUnknown(m)
  2343  }
  2344  
  2345  var xxx_messageInfo_NetworkPort proto.InternalMessageInfo
  2346  
  2347  func (m *NetworkPort) GetLabel() string {
  2348  	if m != nil {
  2349  		return m.Label
  2350  	}
  2351  	return ""
  2352  }
  2353  
  2354  func (m *NetworkPort) GetValue() int32 {
  2355  	if m != nil {
  2356  		return m.Value
  2357  	}
  2358  	return 0
  2359  }
  2360  
  2361  type LinuxResources struct {
  2362  	// CPU CFS (Completely Fair Scheduler) period. Default: 0 (not specified)
  2363  	CpuPeriod int64 `protobuf:"varint,1,opt,name=cpu_period,json=cpuPeriod,proto3" json:"cpu_period,omitempty"`
  2364  	// CPU CFS (Completely Fair Scheduler) quota. Default: 0 (not specified)
  2365  	CpuQuota int64 `protobuf:"varint,2,opt,name=cpu_quota,json=cpuQuota,proto3" json:"cpu_quota,omitempty"`
  2366  	// CPU shares (relative weight vs. other containers). Default: 0 (not specified)
  2367  	CpuShares int64 `protobuf:"varint,3,opt,name=cpu_shares,json=cpuShares,proto3" json:"cpu_shares,omitempty"`
  2368  	// Memory limit in bytes. Default: 0 (not specified)
  2369  	MemoryLimitBytes int64 `protobuf:"varint,4,opt,name=memory_limit_bytes,json=memoryLimitBytes,proto3" json:"memory_limit_bytes,omitempty"`
  2370  	// OOMScoreAdj adjusts the oom-killer score. Default: 0 (not specified)
  2371  	OomScoreAdj int64 `protobuf:"varint,5,opt,name=oom_score_adj,json=oomScoreAdj,proto3" json:"oom_score_adj,omitempty"`
  2372  	// CpusetCpus constrains the allowed set of logical CPUs. Default: "" (not specified)
  2373  	CpusetCpus string `protobuf:"bytes,6,opt,name=cpuset_cpus,json=cpusetCpus,proto3" json:"cpuset_cpus,omitempty"`
  2374  	// CpusetMems constrains the allowed set of memory nodes. Default: "" (not specified)
  2375  	CpusetMems string `protobuf:"bytes,7,opt,name=cpuset_mems,json=cpusetMems,proto3" json:"cpuset_mems,omitempty"`
  2376  	// PercentTicks is a compatibility option for docker and should not be used
  2377  	PercentTicks         float64  `protobuf:"fixed64,8,opt,name=PercentTicks,proto3" json:"PercentTicks,omitempty"`
  2378  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2379  	XXX_unrecognized     []byte   `json:"-"`
  2380  	XXX_sizecache        int32    `json:"-"`
  2381  }
  2382  
  2383  func (m *LinuxResources) Reset()         { *m = LinuxResources{} }
  2384  func (m *LinuxResources) String() string { return proto.CompactTextString(m) }
  2385  func (*LinuxResources) ProtoMessage()    {}
  2386  func (*LinuxResources) Descriptor() ([]byte, []int) {
  2387  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{41}
  2388  }
  2389  func (m *LinuxResources) XXX_Unmarshal(b []byte) error {
  2390  	return xxx_messageInfo_LinuxResources.Unmarshal(m, b)
  2391  }
  2392  func (m *LinuxResources) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2393  	return xxx_messageInfo_LinuxResources.Marshal(b, m, deterministic)
  2394  }
  2395  func (dst *LinuxResources) XXX_Merge(src proto.Message) {
  2396  	xxx_messageInfo_LinuxResources.Merge(dst, src)
  2397  }
  2398  func (m *LinuxResources) XXX_Size() int {
  2399  	return xxx_messageInfo_LinuxResources.Size(m)
  2400  }
  2401  func (m *LinuxResources) XXX_DiscardUnknown() {
  2402  	xxx_messageInfo_LinuxResources.DiscardUnknown(m)
  2403  }
  2404  
  2405  var xxx_messageInfo_LinuxResources proto.InternalMessageInfo
  2406  
  2407  func (m *LinuxResources) GetCpuPeriod() int64 {
  2408  	if m != nil {
  2409  		return m.CpuPeriod
  2410  	}
  2411  	return 0
  2412  }
  2413  
  2414  func (m *LinuxResources) GetCpuQuota() int64 {
  2415  	if m != nil {
  2416  		return m.CpuQuota
  2417  	}
  2418  	return 0
  2419  }
  2420  
  2421  func (m *LinuxResources) GetCpuShares() int64 {
  2422  	if m != nil {
  2423  		return m.CpuShares
  2424  	}
  2425  	return 0
  2426  }
  2427  
  2428  func (m *LinuxResources) GetMemoryLimitBytes() int64 {
  2429  	if m != nil {
  2430  		return m.MemoryLimitBytes
  2431  	}
  2432  	return 0
  2433  }
  2434  
  2435  func (m *LinuxResources) GetOomScoreAdj() int64 {
  2436  	if m != nil {
  2437  		return m.OomScoreAdj
  2438  	}
  2439  	return 0
  2440  }
  2441  
  2442  func (m *LinuxResources) GetCpusetCpus() string {
  2443  	if m != nil {
  2444  		return m.CpusetCpus
  2445  	}
  2446  	return ""
  2447  }
  2448  
  2449  func (m *LinuxResources) GetCpusetMems() string {
  2450  	if m != nil {
  2451  		return m.CpusetMems
  2452  	}
  2453  	return ""
  2454  }
  2455  
  2456  func (m *LinuxResources) GetPercentTicks() float64 {
  2457  	if m != nil {
  2458  		return m.PercentTicks
  2459  	}
  2460  	return 0
  2461  }
  2462  
  2463  type Mount struct {
  2464  	// TaskPath is the file path within the task directory to mount to
  2465  	TaskPath string `protobuf:"bytes,1,opt,name=task_path,json=taskPath,proto3" json:"task_path,omitempty"`
  2466  	// HostPath is the file path on the host to mount from
  2467  	HostPath string `protobuf:"bytes,2,opt,name=host_path,json=hostPath,proto3" json:"host_path,omitempty"`
  2468  	// Readonly if set true, mounts the path in readonly mode
  2469  	Readonly             bool     `protobuf:"varint,3,opt,name=readonly,proto3" json:"readonly,omitempty"`
  2470  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2471  	XXX_unrecognized     []byte   `json:"-"`
  2472  	XXX_sizecache        int32    `json:"-"`
  2473  }
  2474  
  2475  func (m *Mount) Reset()         { *m = Mount{} }
  2476  func (m *Mount) String() string { return proto.CompactTextString(m) }
  2477  func (*Mount) ProtoMessage()    {}
  2478  func (*Mount) Descriptor() ([]byte, []int) {
  2479  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{42}
  2480  }
  2481  func (m *Mount) XXX_Unmarshal(b []byte) error {
  2482  	return xxx_messageInfo_Mount.Unmarshal(m, b)
  2483  }
  2484  func (m *Mount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2485  	return xxx_messageInfo_Mount.Marshal(b, m, deterministic)
  2486  }
  2487  func (dst *Mount) XXX_Merge(src proto.Message) {
  2488  	xxx_messageInfo_Mount.Merge(dst, src)
  2489  }
  2490  func (m *Mount) XXX_Size() int {
  2491  	return xxx_messageInfo_Mount.Size(m)
  2492  }
  2493  func (m *Mount) XXX_DiscardUnknown() {
  2494  	xxx_messageInfo_Mount.DiscardUnknown(m)
  2495  }
  2496  
  2497  var xxx_messageInfo_Mount proto.InternalMessageInfo
  2498  
  2499  func (m *Mount) GetTaskPath() string {
  2500  	if m != nil {
  2501  		return m.TaskPath
  2502  	}
  2503  	return ""
  2504  }
  2505  
  2506  func (m *Mount) GetHostPath() string {
  2507  	if m != nil {
  2508  		return m.HostPath
  2509  	}
  2510  	return ""
  2511  }
  2512  
  2513  func (m *Mount) GetReadonly() bool {
  2514  	if m != nil {
  2515  		return m.Readonly
  2516  	}
  2517  	return false
  2518  }
  2519  
  2520  type Device struct {
  2521  	// TaskPath is the file path within the task to mount the device to
  2522  	TaskPath string `protobuf:"bytes,1,opt,name=task_path,json=taskPath,proto3" json:"task_path,omitempty"`
  2523  	// HostPath is the path on the host to the source device
  2524  	HostPath string `protobuf:"bytes,2,opt,name=host_path,json=hostPath,proto3" json:"host_path,omitempty"`
  2525  	// CgroupPermissions defines the Cgroup permissions of the device.
  2526  	// One or more of the following options can be set:
  2527  	//  * r - allows the task to read from the specified device.
  2528  	//  * w - allows the task to write to the specified device.
  2529  	//  * m - allows the task to create device files that do not yet exist.
  2530  	//
  2531  	// Example: "rw"
  2532  	CgroupPermissions    string   `protobuf:"bytes,3,opt,name=cgroup_permissions,json=cgroupPermissions,proto3" json:"cgroup_permissions,omitempty"`
  2533  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2534  	XXX_unrecognized     []byte   `json:"-"`
  2535  	XXX_sizecache        int32    `json:"-"`
  2536  }
  2537  
  2538  func (m *Device) Reset()         { *m = Device{} }
  2539  func (m *Device) String() string { return proto.CompactTextString(m) }
  2540  func (*Device) ProtoMessage()    {}
  2541  func (*Device) Descriptor() ([]byte, []int) {
  2542  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{43}
  2543  }
  2544  func (m *Device) XXX_Unmarshal(b []byte) error {
  2545  	return xxx_messageInfo_Device.Unmarshal(m, b)
  2546  }
  2547  func (m *Device) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2548  	return xxx_messageInfo_Device.Marshal(b, m, deterministic)
  2549  }
  2550  func (dst *Device) XXX_Merge(src proto.Message) {
  2551  	xxx_messageInfo_Device.Merge(dst, src)
  2552  }
  2553  func (m *Device) XXX_Size() int {
  2554  	return xxx_messageInfo_Device.Size(m)
  2555  }
  2556  func (m *Device) XXX_DiscardUnknown() {
  2557  	xxx_messageInfo_Device.DiscardUnknown(m)
  2558  }
  2559  
  2560  var xxx_messageInfo_Device proto.InternalMessageInfo
  2561  
  2562  func (m *Device) GetTaskPath() string {
  2563  	if m != nil {
  2564  		return m.TaskPath
  2565  	}
  2566  	return ""
  2567  }
  2568  
  2569  func (m *Device) GetHostPath() string {
  2570  	if m != nil {
  2571  		return m.HostPath
  2572  	}
  2573  	return ""
  2574  }
  2575  
  2576  func (m *Device) GetCgroupPermissions() string {
  2577  	if m != nil {
  2578  		return m.CgroupPermissions
  2579  	}
  2580  	return ""
  2581  }
  2582  
  2583  // TaskHandle is created when starting a task and is used to recover task
  2584  type TaskHandle struct {
  2585  	// Version is used by the driver to version the DriverState schema.
  2586  	// Version 0 is reserved by Nomad and should not be used.
  2587  	Version int32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
  2588  	// Config is the TaskConfig for the task
  2589  	Config *TaskConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"`
  2590  	// State is the state of the task's execution
  2591  	State TaskState `protobuf:"varint,3,opt,name=state,proto3,enum=hashicorp.nomad.plugins.drivers.proto.TaskState" json:"state,omitempty"`
  2592  	// DriverState is the encoded state for the specific driver
  2593  	DriverState          []byte   `protobuf:"bytes,4,opt,name=driver_state,json=driverState,proto3" json:"driver_state,omitempty"`
  2594  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2595  	XXX_unrecognized     []byte   `json:"-"`
  2596  	XXX_sizecache        int32    `json:"-"`
  2597  }
  2598  
  2599  func (m *TaskHandle) Reset()         { *m = TaskHandle{} }
  2600  func (m *TaskHandle) String() string { return proto.CompactTextString(m) }
  2601  func (*TaskHandle) ProtoMessage()    {}
  2602  func (*TaskHandle) Descriptor() ([]byte, []int) {
  2603  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{44}
  2604  }
  2605  func (m *TaskHandle) XXX_Unmarshal(b []byte) error {
  2606  	return xxx_messageInfo_TaskHandle.Unmarshal(m, b)
  2607  }
  2608  func (m *TaskHandle) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2609  	return xxx_messageInfo_TaskHandle.Marshal(b, m, deterministic)
  2610  }
  2611  func (dst *TaskHandle) XXX_Merge(src proto.Message) {
  2612  	xxx_messageInfo_TaskHandle.Merge(dst, src)
  2613  }
  2614  func (m *TaskHandle) XXX_Size() int {
  2615  	return xxx_messageInfo_TaskHandle.Size(m)
  2616  }
  2617  func (m *TaskHandle) XXX_DiscardUnknown() {
  2618  	xxx_messageInfo_TaskHandle.DiscardUnknown(m)
  2619  }
  2620  
  2621  var xxx_messageInfo_TaskHandle proto.InternalMessageInfo
  2622  
  2623  func (m *TaskHandle) GetVersion() int32 {
  2624  	if m != nil {
  2625  		return m.Version
  2626  	}
  2627  	return 0
  2628  }
  2629  
  2630  func (m *TaskHandle) GetConfig() *TaskConfig {
  2631  	if m != nil {
  2632  		return m.Config
  2633  	}
  2634  	return nil
  2635  }
  2636  
  2637  func (m *TaskHandle) GetState() TaskState {
  2638  	if m != nil {
  2639  		return m.State
  2640  	}
  2641  	return TaskState_UNKNOWN
  2642  }
  2643  
  2644  func (m *TaskHandle) GetDriverState() []byte {
  2645  	if m != nil {
  2646  		return m.DriverState
  2647  	}
  2648  	return nil
  2649  }
  2650  
  2651  // NetworkOverride contains network settings which the driver may override
  2652  // for the task, such as when the driver is setting up the task's network.
  2653  type NetworkOverride struct {
  2654  	// PortMap can be set to replace ports with driver-specific mappings
  2655  	PortMap map[string]int32 `protobuf:"bytes,1,rep,name=port_map,json=portMap,proto3" json:"port_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
  2656  	// Addr is the IP address for the task created by the driver
  2657  	Addr string `protobuf:"bytes,2,opt,name=addr,proto3" json:"addr,omitempty"`
  2658  	// AutoAdvertise indicates whether the driver thinks services that choose
  2659  	// to auto_advertise_addresses should use this IP instead of the host's.
  2660  	AutoAdvertise        bool     `protobuf:"varint,3,opt,name=auto_advertise,json=autoAdvertise,proto3" json:"auto_advertise,omitempty"`
  2661  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2662  	XXX_unrecognized     []byte   `json:"-"`
  2663  	XXX_sizecache        int32    `json:"-"`
  2664  }
  2665  
  2666  func (m *NetworkOverride) Reset()         { *m = NetworkOverride{} }
  2667  func (m *NetworkOverride) String() string { return proto.CompactTextString(m) }
  2668  func (*NetworkOverride) ProtoMessage()    {}
  2669  func (*NetworkOverride) Descriptor() ([]byte, []int) {
  2670  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{45}
  2671  }
  2672  func (m *NetworkOverride) XXX_Unmarshal(b []byte) error {
  2673  	return xxx_messageInfo_NetworkOverride.Unmarshal(m, b)
  2674  }
  2675  func (m *NetworkOverride) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2676  	return xxx_messageInfo_NetworkOverride.Marshal(b, m, deterministic)
  2677  }
  2678  func (dst *NetworkOverride) XXX_Merge(src proto.Message) {
  2679  	xxx_messageInfo_NetworkOverride.Merge(dst, src)
  2680  }
  2681  func (m *NetworkOverride) XXX_Size() int {
  2682  	return xxx_messageInfo_NetworkOverride.Size(m)
  2683  }
  2684  func (m *NetworkOverride) XXX_DiscardUnknown() {
  2685  	xxx_messageInfo_NetworkOverride.DiscardUnknown(m)
  2686  }
  2687  
  2688  var xxx_messageInfo_NetworkOverride proto.InternalMessageInfo
  2689  
  2690  func (m *NetworkOverride) GetPortMap() map[string]int32 {
  2691  	if m != nil {
  2692  		return m.PortMap
  2693  	}
  2694  	return nil
  2695  }
  2696  
  2697  func (m *NetworkOverride) GetAddr() string {
  2698  	if m != nil {
  2699  		return m.Addr
  2700  	}
  2701  	return ""
  2702  }
  2703  
  2704  func (m *NetworkOverride) GetAutoAdvertise() bool {
  2705  	if m != nil {
  2706  		return m.AutoAdvertise
  2707  	}
  2708  	return false
  2709  }
  2710  
  2711  // ExitResult contains information about the exit status of a task
  2712  type ExitResult struct {
  2713  	// ExitCode returned from the task on exit
  2714  	ExitCode int32 `protobuf:"varint,1,opt,name=exit_code,json=exitCode,proto3" json:"exit_code,omitempty"`
  2715  	// Signal is set if a signal was sent to the task
  2716  	Signal int32 `protobuf:"varint,2,opt,name=signal,proto3" json:"signal,omitempty"`
  2717  	// OomKilled is true if the task exited as a result of the OOM Killer
  2718  	OomKilled            bool     `protobuf:"varint,3,opt,name=oom_killed,json=oomKilled,proto3" json:"oom_killed,omitempty"`
  2719  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  2720  	XXX_unrecognized     []byte   `json:"-"`
  2721  	XXX_sizecache        int32    `json:"-"`
  2722  }
  2723  
  2724  func (m *ExitResult) Reset()         { *m = ExitResult{} }
  2725  func (m *ExitResult) String() string { return proto.CompactTextString(m) }
  2726  func (*ExitResult) ProtoMessage()    {}
  2727  func (*ExitResult) Descriptor() ([]byte, []int) {
  2728  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{46}
  2729  }
  2730  func (m *ExitResult) XXX_Unmarshal(b []byte) error {
  2731  	return xxx_messageInfo_ExitResult.Unmarshal(m, b)
  2732  }
  2733  func (m *ExitResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2734  	return xxx_messageInfo_ExitResult.Marshal(b, m, deterministic)
  2735  }
  2736  func (dst *ExitResult) XXX_Merge(src proto.Message) {
  2737  	xxx_messageInfo_ExitResult.Merge(dst, src)
  2738  }
  2739  func (m *ExitResult) XXX_Size() int {
  2740  	return xxx_messageInfo_ExitResult.Size(m)
  2741  }
  2742  func (m *ExitResult) XXX_DiscardUnknown() {
  2743  	xxx_messageInfo_ExitResult.DiscardUnknown(m)
  2744  }
  2745  
  2746  var xxx_messageInfo_ExitResult proto.InternalMessageInfo
  2747  
  2748  func (m *ExitResult) GetExitCode() int32 {
  2749  	if m != nil {
  2750  		return m.ExitCode
  2751  	}
  2752  	return 0
  2753  }
  2754  
  2755  func (m *ExitResult) GetSignal() int32 {
  2756  	if m != nil {
  2757  		return m.Signal
  2758  	}
  2759  	return 0
  2760  }
  2761  
  2762  func (m *ExitResult) GetOomKilled() bool {
  2763  	if m != nil {
  2764  		return m.OomKilled
  2765  	}
  2766  	return false
  2767  }
  2768  
  2769  // TaskStatus includes information of a specific task
  2770  type TaskStatus struct {
  2771  	Id   string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  2772  	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
  2773  	// State is the state of the task's execution
  2774  	State TaskState `protobuf:"varint,3,opt,name=state,proto3,enum=hashicorp.nomad.plugins.drivers.proto.TaskState" json:"state,omitempty"`
  2775  	// StartedAt is the timestamp when the task was started
  2776  	StartedAt *timestamp.Timestamp `protobuf:"bytes,4,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"`
  2777  	// CompletedAt is the timestamp when the task exited.
  2778  	// If the task is still running, CompletedAt will not be set
  2779  	CompletedAt *timestamp.Timestamp `protobuf:"bytes,5,opt,name=completed_at,json=completedAt,proto3" json:"completed_at,omitempty"`
  2780  	// Result is set when CompletedAt is set.
  2781  	Result               *ExitResult `protobuf:"bytes,6,opt,name=result,proto3" json:"result,omitempty"`
  2782  	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
  2783  	XXX_unrecognized     []byte      `json:"-"`
  2784  	XXX_sizecache        int32       `json:"-"`
  2785  }
  2786  
  2787  func (m *TaskStatus) Reset()         { *m = TaskStatus{} }
  2788  func (m *TaskStatus) String() string { return proto.CompactTextString(m) }
  2789  func (*TaskStatus) ProtoMessage()    {}
  2790  func (*TaskStatus) Descriptor() ([]byte, []int) {
  2791  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{47}
  2792  }
  2793  func (m *TaskStatus) XXX_Unmarshal(b []byte) error {
  2794  	return xxx_messageInfo_TaskStatus.Unmarshal(m, b)
  2795  }
  2796  func (m *TaskStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2797  	return xxx_messageInfo_TaskStatus.Marshal(b, m, deterministic)
  2798  }
  2799  func (dst *TaskStatus) XXX_Merge(src proto.Message) {
  2800  	xxx_messageInfo_TaskStatus.Merge(dst, src)
  2801  }
  2802  func (m *TaskStatus) XXX_Size() int {
  2803  	return xxx_messageInfo_TaskStatus.Size(m)
  2804  }
  2805  func (m *TaskStatus) XXX_DiscardUnknown() {
  2806  	xxx_messageInfo_TaskStatus.DiscardUnknown(m)
  2807  }
  2808  
  2809  var xxx_messageInfo_TaskStatus proto.InternalMessageInfo
  2810  
  2811  func (m *TaskStatus) GetId() string {
  2812  	if m != nil {
  2813  		return m.Id
  2814  	}
  2815  	return ""
  2816  }
  2817  
  2818  func (m *TaskStatus) GetName() string {
  2819  	if m != nil {
  2820  		return m.Name
  2821  	}
  2822  	return ""
  2823  }
  2824  
  2825  func (m *TaskStatus) GetState() TaskState {
  2826  	if m != nil {
  2827  		return m.State
  2828  	}
  2829  	return TaskState_UNKNOWN
  2830  }
  2831  
  2832  func (m *TaskStatus) GetStartedAt() *timestamp.Timestamp {
  2833  	if m != nil {
  2834  		return m.StartedAt
  2835  	}
  2836  	return nil
  2837  }
  2838  
  2839  func (m *TaskStatus) GetCompletedAt() *timestamp.Timestamp {
  2840  	if m != nil {
  2841  		return m.CompletedAt
  2842  	}
  2843  	return nil
  2844  }
  2845  
  2846  func (m *TaskStatus) GetResult() *ExitResult {
  2847  	if m != nil {
  2848  		return m.Result
  2849  	}
  2850  	return nil
  2851  }
  2852  
  2853  type TaskDriverStatus struct {
  2854  	// Attributes is a set of string/string key value pairs specific to the
  2855  	// implementing driver
  2856  	Attributes           map[string]string `protobuf:"bytes,1,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  2857  	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
  2858  	XXX_unrecognized     []byte            `json:"-"`
  2859  	XXX_sizecache        int32             `json:"-"`
  2860  }
  2861  
  2862  func (m *TaskDriverStatus) Reset()         { *m = TaskDriverStatus{} }
  2863  func (m *TaskDriverStatus) String() string { return proto.CompactTextString(m) }
  2864  func (*TaskDriverStatus) ProtoMessage()    {}
  2865  func (*TaskDriverStatus) Descriptor() ([]byte, []int) {
  2866  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{48}
  2867  }
  2868  func (m *TaskDriverStatus) XXX_Unmarshal(b []byte) error {
  2869  	return xxx_messageInfo_TaskDriverStatus.Unmarshal(m, b)
  2870  }
  2871  func (m *TaskDriverStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2872  	return xxx_messageInfo_TaskDriverStatus.Marshal(b, m, deterministic)
  2873  }
  2874  func (dst *TaskDriverStatus) XXX_Merge(src proto.Message) {
  2875  	xxx_messageInfo_TaskDriverStatus.Merge(dst, src)
  2876  }
  2877  func (m *TaskDriverStatus) XXX_Size() int {
  2878  	return xxx_messageInfo_TaskDriverStatus.Size(m)
  2879  }
  2880  func (m *TaskDriverStatus) XXX_DiscardUnknown() {
  2881  	xxx_messageInfo_TaskDriverStatus.DiscardUnknown(m)
  2882  }
  2883  
  2884  var xxx_messageInfo_TaskDriverStatus proto.InternalMessageInfo
  2885  
  2886  func (m *TaskDriverStatus) GetAttributes() map[string]string {
  2887  	if m != nil {
  2888  		return m.Attributes
  2889  	}
  2890  	return nil
  2891  }
  2892  
  2893  type TaskStats struct {
  2894  	// Id of the task
  2895  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  2896  	// Timestamp for which the stats were collected
  2897  	Timestamp *timestamp.Timestamp `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
  2898  	// AggResourceUsage is the aggreate usage of all processes
  2899  	AggResourceUsage *TaskResourceUsage `protobuf:"bytes,3,opt,name=agg_resource_usage,json=aggResourceUsage,proto3" json:"agg_resource_usage,omitempty"`
  2900  	// ResourceUsageByPid breaks the usage stats by process
  2901  	ResourceUsageByPid   map[string]*TaskResourceUsage `protobuf:"bytes,4,rep,name=resource_usage_by_pid,json=resourceUsageByPid,proto3" json:"resource_usage_by_pid,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  2902  	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
  2903  	XXX_unrecognized     []byte                        `json:"-"`
  2904  	XXX_sizecache        int32                         `json:"-"`
  2905  }
  2906  
  2907  func (m *TaskStats) Reset()         { *m = TaskStats{} }
  2908  func (m *TaskStats) String() string { return proto.CompactTextString(m) }
  2909  func (*TaskStats) ProtoMessage()    {}
  2910  func (*TaskStats) Descriptor() ([]byte, []int) {
  2911  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{49}
  2912  }
  2913  func (m *TaskStats) XXX_Unmarshal(b []byte) error {
  2914  	return xxx_messageInfo_TaskStats.Unmarshal(m, b)
  2915  }
  2916  func (m *TaskStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2917  	return xxx_messageInfo_TaskStats.Marshal(b, m, deterministic)
  2918  }
  2919  func (dst *TaskStats) XXX_Merge(src proto.Message) {
  2920  	xxx_messageInfo_TaskStats.Merge(dst, src)
  2921  }
  2922  func (m *TaskStats) XXX_Size() int {
  2923  	return xxx_messageInfo_TaskStats.Size(m)
  2924  }
  2925  func (m *TaskStats) XXX_DiscardUnknown() {
  2926  	xxx_messageInfo_TaskStats.DiscardUnknown(m)
  2927  }
  2928  
  2929  var xxx_messageInfo_TaskStats proto.InternalMessageInfo
  2930  
  2931  func (m *TaskStats) GetId() string {
  2932  	if m != nil {
  2933  		return m.Id
  2934  	}
  2935  	return ""
  2936  }
  2937  
  2938  func (m *TaskStats) GetTimestamp() *timestamp.Timestamp {
  2939  	if m != nil {
  2940  		return m.Timestamp
  2941  	}
  2942  	return nil
  2943  }
  2944  
  2945  func (m *TaskStats) GetAggResourceUsage() *TaskResourceUsage {
  2946  	if m != nil {
  2947  		return m.AggResourceUsage
  2948  	}
  2949  	return nil
  2950  }
  2951  
  2952  func (m *TaskStats) GetResourceUsageByPid() map[string]*TaskResourceUsage {
  2953  	if m != nil {
  2954  		return m.ResourceUsageByPid
  2955  	}
  2956  	return nil
  2957  }
  2958  
  2959  type TaskResourceUsage struct {
  2960  	// CPU usage stats
  2961  	Cpu *CPUUsage `protobuf:"bytes,1,opt,name=cpu,proto3" json:"cpu,omitempty"`
  2962  	// Memory usage stats
  2963  	Memory               *MemoryUsage `protobuf:"bytes,2,opt,name=memory,proto3" json:"memory,omitempty"`
  2964  	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
  2965  	XXX_unrecognized     []byte       `json:"-"`
  2966  	XXX_sizecache        int32        `json:"-"`
  2967  }
  2968  
  2969  func (m *TaskResourceUsage) Reset()         { *m = TaskResourceUsage{} }
  2970  func (m *TaskResourceUsage) String() string { return proto.CompactTextString(m) }
  2971  func (*TaskResourceUsage) ProtoMessage()    {}
  2972  func (*TaskResourceUsage) Descriptor() ([]byte, []int) {
  2973  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{50}
  2974  }
  2975  func (m *TaskResourceUsage) XXX_Unmarshal(b []byte) error {
  2976  	return xxx_messageInfo_TaskResourceUsage.Unmarshal(m, b)
  2977  }
  2978  func (m *TaskResourceUsage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2979  	return xxx_messageInfo_TaskResourceUsage.Marshal(b, m, deterministic)
  2980  }
  2981  func (dst *TaskResourceUsage) XXX_Merge(src proto.Message) {
  2982  	xxx_messageInfo_TaskResourceUsage.Merge(dst, src)
  2983  }
  2984  func (m *TaskResourceUsage) XXX_Size() int {
  2985  	return xxx_messageInfo_TaskResourceUsage.Size(m)
  2986  }
  2987  func (m *TaskResourceUsage) XXX_DiscardUnknown() {
  2988  	xxx_messageInfo_TaskResourceUsage.DiscardUnknown(m)
  2989  }
  2990  
  2991  var xxx_messageInfo_TaskResourceUsage proto.InternalMessageInfo
  2992  
  2993  func (m *TaskResourceUsage) GetCpu() *CPUUsage {
  2994  	if m != nil {
  2995  		return m.Cpu
  2996  	}
  2997  	return nil
  2998  }
  2999  
  3000  func (m *TaskResourceUsage) GetMemory() *MemoryUsage {
  3001  	if m != nil {
  3002  		return m.Memory
  3003  	}
  3004  	return nil
  3005  }
  3006  
  3007  type CPUUsage struct {
  3008  	SystemMode       float64 `protobuf:"fixed64,1,opt,name=system_mode,json=systemMode,proto3" json:"system_mode,omitempty"`
  3009  	UserMode         float64 `protobuf:"fixed64,2,opt,name=user_mode,json=userMode,proto3" json:"user_mode,omitempty"`
  3010  	TotalTicks       float64 `protobuf:"fixed64,3,opt,name=total_ticks,json=totalTicks,proto3" json:"total_ticks,omitempty"`
  3011  	ThrottledPeriods uint64  `protobuf:"varint,4,opt,name=throttled_periods,json=throttledPeriods,proto3" json:"throttled_periods,omitempty"`
  3012  	ThrottledTime    uint64  `protobuf:"varint,5,opt,name=throttled_time,json=throttledTime,proto3" json:"throttled_time,omitempty"`
  3013  	Percent          float64 `protobuf:"fixed64,6,opt,name=percent,proto3" json:"percent,omitempty"`
  3014  	// MeasuredFields indicates which fields were actually sampled
  3015  	MeasuredFields       []CPUUsage_Fields `protobuf:"varint,7,rep,packed,name=measured_fields,json=measuredFields,proto3,enum=hashicorp.nomad.plugins.drivers.proto.CPUUsage_Fields" json:"measured_fields,omitempty"`
  3016  	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
  3017  	XXX_unrecognized     []byte            `json:"-"`
  3018  	XXX_sizecache        int32             `json:"-"`
  3019  }
  3020  
  3021  func (m *CPUUsage) Reset()         { *m = CPUUsage{} }
  3022  func (m *CPUUsage) String() string { return proto.CompactTextString(m) }
  3023  func (*CPUUsage) ProtoMessage()    {}
  3024  func (*CPUUsage) Descriptor() ([]byte, []int) {
  3025  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{51}
  3026  }
  3027  func (m *CPUUsage) XXX_Unmarshal(b []byte) error {
  3028  	return xxx_messageInfo_CPUUsage.Unmarshal(m, b)
  3029  }
  3030  func (m *CPUUsage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  3031  	return xxx_messageInfo_CPUUsage.Marshal(b, m, deterministic)
  3032  }
  3033  func (dst *CPUUsage) XXX_Merge(src proto.Message) {
  3034  	xxx_messageInfo_CPUUsage.Merge(dst, src)
  3035  }
  3036  func (m *CPUUsage) XXX_Size() int {
  3037  	return xxx_messageInfo_CPUUsage.Size(m)
  3038  }
  3039  func (m *CPUUsage) XXX_DiscardUnknown() {
  3040  	xxx_messageInfo_CPUUsage.DiscardUnknown(m)
  3041  }
  3042  
  3043  var xxx_messageInfo_CPUUsage proto.InternalMessageInfo
  3044  
  3045  func (m *CPUUsage) GetSystemMode() float64 {
  3046  	if m != nil {
  3047  		return m.SystemMode
  3048  	}
  3049  	return 0
  3050  }
  3051  
  3052  func (m *CPUUsage) GetUserMode() float64 {
  3053  	if m != nil {
  3054  		return m.UserMode
  3055  	}
  3056  	return 0
  3057  }
  3058  
  3059  func (m *CPUUsage) GetTotalTicks() float64 {
  3060  	if m != nil {
  3061  		return m.TotalTicks
  3062  	}
  3063  	return 0
  3064  }
  3065  
  3066  func (m *CPUUsage) GetThrottledPeriods() uint64 {
  3067  	if m != nil {
  3068  		return m.ThrottledPeriods
  3069  	}
  3070  	return 0
  3071  }
  3072  
  3073  func (m *CPUUsage) GetThrottledTime() uint64 {
  3074  	if m != nil {
  3075  		return m.ThrottledTime
  3076  	}
  3077  	return 0
  3078  }
  3079  
  3080  func (m *CPUUsage) GetPercent() float64 {
  3081  	if m != nil {
  3082  		return m.Percent
  3083  	}
  3084  	return 0
  3085  }
  3086  
  3087  func (m *CPUUsage) GetMeasuredFields() []CPUUsage_Fields {
  3088  	if m != nil {
  3089  		return m.MeasuredFields
  3090  	}
  3091  	return nil
  3092  }
  3093  
  3094  type MemoryUsage struct {
  3095  	Rss            uint64 `protobuf:"varint,1,opt,name=rss,proto3" json:"rss,omitempty"`
  3096  	Cache          uint64 `protobuf:"varint,2,opt,name=cache,proto3" json:"cache,omitempty"`
  3097  	MaxUsage       uint64 `protobuf:"varint,3,opt,name=max_usage,json=maxUsage,proto3" json:"max_usage,omitempty"`
  3098  	KernelUsage    uint64 `protobuf:"varint,4,opt,name=kernel_usage,json=kernelUsage,proto3" json:"kernel_usage,omitempty"`
  3099  	KernelMaxUsage uint64 `protobuf:"varint,5,opt,name=kernel_max_usage,json=kernelMaxUsage,proto3" json:"kernel_max_usage,omitempty"`
  3100  	Usage          uint64 `protobuf:"varint,7,opt,name=usage,proto3" json:"usage,omitempty"`
  3101  	Swap           uint64 `protobuf:"varint,8,opt,name=swap,proto3" json:"swap,omitempty"`
  3102  	// MeasuredFields indicates which fields were actually sampled
  3103  	MeasuredFields       []MemoryUsage_Fields `protobuf:"varint,6,rep,packed,name=measured_fields,json=measuredFields,proto3,enum=hashicorp.nomad.plugins.drivers.proto.MemoryUsage_Fields" json:"measured_fields,omitempty"`
  3104  	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
  3105  	XXX_unrecognized     []byte               `json:"-"`
  3106  	XXX_sizecache        int32                `json:"-"`
  3107  }
  3108  
  3109  func (m *MemoryUsage) Reset()         { *m = MemoryUsage{} }
  3110  func (m *MemoryUsage) String() string { return proto.CompactTextString(m) }
  3111  func (*MemoryUsage) ProtoMessage()    {}
  3112  func (*MemoryUsage) Descriptor() ([]byte, []int) {
  3113  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{52}
  3114  }
  3115  func (m *MemoryUsage) XXX_Unmarshal(b []byte) error {
  3116  	return xxx_messageInfo_MemoryUsage.Unmarshal(m, b)
  3117  }
  3118  func (m *MemoryUsage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  3119  	return xxx_messageInfo_MemoryUsage.Marshal(b, m, deterministic)
  3120  }
  3121  func (dst *MemoryUsage) XXX_Merge(src proto.Message) {
  3122  	xxx_messageInfo_MemoryUsage.Merge(dst, src)
  3123  }
  3124  func (m *MemoryUsage) XXX_Size() int {
  3125  	return xxx_messageInfo_MemoryUsage.Size(m)
  3126  }
  3127  func (m *MemoryUsage) XXX_DiscardUnknown() {
  3128  	xxx_messageInfo_MemoryUsage.DiscardUnknown(m)
  3129  }
  3130  
  3131  var xxx_messageInfo_MemoryUsage proto.InternalMessageInfo
  3132  
  3133  func (m *MemoryUsage) GetRss() uint64 {
  3134  	if m != nil {
  3135  		return m.Rss
  3136  	}
  3137  	return 0
  3138  }
  3139  
  3140  func (m *MemoryUsage) GetCache() uint64 {
  3141  	if m != nil {
  3142  		return m.Cache
  3143  	}
  3144  	return 0
  3145  }
  3146  
  3147  func (m *MemoryUsage) GetMaxUsage() uint64 {
  3148  	if m != nil {
  3149  		return m.MaxUsage
  3150  	}
  3151  	return 0
  3152  }
  3153  
  3154  func (m *MemoryUsage) GetKernelUsage() uint64 {
  3155  	if m != nil {
  3156  		return m.KernelUsage
  3157  	}
  3158  	return 0
  3159  }
  3160  
  3161  func (m *MemoryUsage) GetKernelMaxUsage() uint64 {
  3162  	if m != nil {
  3163  		return m.KernelMaxUsage
  3164  	}
  3165  	return 0
  3166  }
  3167  
  3168  func (m *MemoryUsage) GetUsage() uint64 {
  3169  	if m != nil {
  3170  		return m.Usage
  3171  	}
  3172  	return 0
  3173  }
  3174  
  3175  func (m *MemoryUsage) GetSwap() uint64 {
  3176  	if m != nil {
  3177  		return m.Swap
  3178  	}
  3179  	return 0
  3180  }
  3181  
  3182  func (m *MemoryUsage) GetMeasuredFields() []MemoryUsage_Fields {
  3183  	if m != nil {
  3184  		return m.MeasuredFields
  3185  	}
  3186  	return nil
  3187  }
  3188  
  3189  type DriverTaskEvent struct {
  3190  	// TaskId is the id of the task for the event
  3191  	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
  3192  	// AllocId of the task for the event
  3193  	AllocId string `protobuf:"bytes,2,opt,name=alloc_id,json=allocId,proto3" json:"alloc_id,omitempty"`
  3194  	// TaskName is the name of the task for the event
  3195  	TaskName string `protobuf:"bytes,3,opt,name=task_name,json=taskName,proto3" json:"task_name,omitempty"`
  3196  	// Timestamp when the event occurred
  3197  	Timestamp *timestamp.Timestamp `protobuf:"bytes,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
  3198  	// Message is the body of the event
  3199  	Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
  3200  	// Annotations allows for additional key/value data to be sent along with the event
  3201  	Annotations          map[string]string `protobuf:"bytes,6,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  3202  	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
  3203  	XXX_unrecognized     []byte            `json:"-"`
  3204  	XXX_sizecache        int32             `json:"-"`
  3205  }
  3206  
  3207  func (m *DriverTaskEvent) Reset()         { *m = DriverTaskEvent{} }
  3208  func (m *DriverTaskEvent) String() string { return proto.CompactTextString(m) }
  3209  func (*DriverTaskEvent) ProtoMessage()    {}
  3210  func (*DriverTaskEvent) Descriptor() ([]byte, []int) {
  3211  	return fileDescriptor_driver_8edefdede9e0ed2d, []int{53}
  3212  }
  3213  func (m *DriverTaskEvent) XXX_Unmarshal(b []byte) error {
  3214  	return xxx_messageInfo_DriverTaskEvent.Unmarshal(m, b)
  3215  }
  3216  func (m *DriverTaskEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  3217  	return xxx_messageInfo_DriverTaskEvent.Marshal(b, m, deterministic)
  3218  }
  3219  func (dst *DriverTaskEvent) XXX_Merge(src proto.Message) {
  3220  	xxx_messageInfo_DriverTaskEvent.Merge(dst, src)
  3221  }
  3222  func (m *DriverTaskEvent) XXX_Size() int {
  3223  	return xxx_messageInfo_DriverTaskEvent.Size(m)
  3224  }
  3225  func (m *DriverTaskEvent) XXX_DiscardUnknown() {
  3226  	xxx_messageInfo_DriverTaskEvent.DiscardUnknown(m)
  3227  }
  3228  
  3229  var xxx_messageInfo_DriverTaskEvent proto.InternalMessageInfo
  3230  
  3231  func (m *DriverTaskEvent) GetTaskId() string {
  3232  	if m != nil {
  3233  		return m.TaskId
  3234  	}
  3235  	return ""
  3236  }
  3237  
  3238  func (m *DriverTaskEvent) GetAllocId() string {
  3239  	if m != nil {
  3240  		return m.AllocId
  3241  	}
  3242  	return ""
  3243  }
  3244  
  3245  func (m *DriverTaskEvent) GetTaskName() string {
  3246  	if m != nil {
  3247  		return m.TaskName
  3248  	}
  3249  	return ""
  3250  }
  3251  
  3252  func (m *DriverTaskEvent) GetTimestamp() *timestamp.Timestamp {
  3253  	if m != nil {
  3254  		return m.Timestamp
  3255  	}
  3256  	return nil
  3257  }
  3258  
  3259  func (m *DriverTaskEvent) GetMessage() string {
  3260  	if m != nil {
  3261  		return m.Message
  3262  	}
  3263  	return ""
  3264  }
  3265  
  3266  func (m *DriverTaskEvent) GetAnnotations() map[string]string {
  3267  	if m != nil {
  3268  		return m.Annotations
  3269  	}
  3270  	return nil
  3271  }
  3272  
  3273  func init() {
  3274  	proto.RegisterType((*TaskConfigSchemaRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskConfigSchemaRequest")
  3275  	proto.RegisterType((*TaskConfigSchemaResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskConfigSchemaResponse")
  3276  	proto.RegisterType((*CapabilitiesRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.CapabilitiesRequest")
  3277  	proto.RegisterType((*CapabilitiesResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.CapabilitiesResponse")
  3278  	proto.RegisterType((*FingerprintRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.FingerprintRequest")
  3279  	proto.RegisterType((*FingerprintResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.FingerprintResponse")
  3280  	proto.RegisterMapType((map[string]*proto1.Attribute)(nil), "hashicorp.nomad.plugins.drivers.proto.FingerprintResponse.AttributesEntry")
  3281  	proto.RegisterType((*RecoverTaskRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.RecoverTaskRequest")
  3282  	proto.RegisterType((*RecoverTaskResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.RecoverTaskResponse")
  3283  	proto.RegisterType((*StartTaskRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.StartTaskRequest")
  3284  	proto.RegisterType((*StartTaskResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.StartTaskResponse")
  3285  	proto.RegisterType((*WaitTaskRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.WaitTaskRequest")
  3286  	proto.RegisterType((*WaitTaskResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.WaitTaskResponse")
  3287  	proto.RegisterType((*StopTaskRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.StopTaskRequest")
  3288  	proto.RegisterType((*StopTaskResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.StopTaskResponse")
  3289  	proto.RegisterType((*DestroyTaskRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.DestroyTaskRequest")
  3290  	proto.RegisterType((*DestroyTaskResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.DestroyTaskResponse")
  3291  	proto.RegisterType((*InspectTaskRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.InspectTaskRequest")
  3292  	proto.RegisterType((*InspectTaskResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.InspectTaskResponse")
  3293  	proto.RegisterType((*TaskStatsRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskStatsRequest")
  3294  	proto.RegisterType((*TaskStatsResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskStatsResponse")
  3295  	proto.RegisterType((*TaskEventsRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskEventsRequest")
  3296  	proto.RegisterType((*SignalTaskRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.SignalTaskRequest")
  3297  	proto.RegisterType((*SignalTaskResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.SignalTaskResponse")
  3298  	proto.RegisterType((*ExecTaskRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.ExecTaskRequest")
  3299  	proto.RegisterType((*ExecTaskResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.ExecTaskResponse")
  3300  	proto.RegisterType((*ExecTaskStreamingIOOperation)(nil), "hashicorp.nomad.plugins.drivers.proto.ExecTaskStreamingIOOperation")
  3301  	proto.RegisterType((*ExecTaskStreamingRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.ExecTaskStreamingRequest")
  3302  	proto.RegisterType((*ExecTaskStreamingRequest_Setup)(nil), "hashicorp.nomad.plugins.drivers.proto.ExecTaskStreamingRequest.Setup")
  3303  	proto.RegisterType((*ExecTaskStreamingRequest_TerminalSize)(nil), "hashicorp.nomad.plugins.drivers.proto.ExecTaskStreamingRequest.TerminalSize")
  3304  	proto.RegisterType((*ExecTaskStreamingResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.ExecTaskStreamingResponse")
  3305  	proto.RegisterType((*CreateNetworkRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.CreateNetworkRequest")
  3306  	proto.RegisterType((*CreateNetworkResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.CreateNetworkResponse")
  3307  	proto.RegisterType((*DestroyNetworkRequest)(nil), "hashicorp.nomad.plugins.drivers.proto.DestroyNetworkRequest")
  3308  	proto.RegisterType((*DestroyNetworkResponse)(nil), "hashicorp.nomad.plugins.drivers.proto.DestroyNetworkResponse")
  3309  	proto.RegisterType((*DriverCapabilities)(nil), "hashicorp.nomad.plugins.drivers.proto.DriverCapabilities")
  3310  	proto.RegisterType((*NetworkIsolationSpec)(nil), "hashicorp.nomad.plugins.drivers.proto.NetworkIsolationSpec")
  3311  	proto.RegisterMapType((map[string]string)(nil), "hashicorp.nomad.plugins.drivers.proto.NetworkIsolationSpec.LabelsEntry")
  3312  	proto.RegisterType((*TaskConfig)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskConfig")
  3313  	proto.RegisterMapType((map[string]string)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskConfig.DeviceEnvEntry")
  3314  	proto.RegisterMapType((map[string]string)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskConfig.EnvEntry")
  3315  	proto.RegisterType((*Resources)(nil), "hashicorp.nomad.plugins.drivers.proto.Resources")
  3316  	proto.RegisterType((*AllocatedTaskResources)(nil), "hashicorp.nomad.plugins.drivers.proto.AllocatedTaskResources")
  3317  	proto.RegisterType((*AllocatedCpuResources)(nil), "hashicorp.nomad.plugins.drivers.proto.AllocatedCpuResources")
  3318  	proto.RegisterType((*AllocatedMemoryResources)(nil), "hashicorp.nomad.plugins.drivers.proto.AllocatedMemoryResources")
  3319  	proto.RegisterType((*NetworkResource)(nil), "hashicorp.nomad.plugins.drivers.proto.NetworkResource")
  3320  	proto.RegisterType((*NetworkPort)(nil), "hashicorp.nomad.plugins.drivers.proto.NetworkPort")
  3321  	proto.RegisterType((*LinuxResources)(nil), "hashicorp.nomad.plugins.drivers.proto.LinuxResources")
  3322  	proto.RegisterType((*Mount)(nil), "hashicorp.nomad.plugins.drivers.proto.Mount")
  3323  	proto.RegisterType((*Device)(nil), "hashicorp.nomad.plugins.drivers.proto.Device")
  3324  	proto.RegisterType((*TaskHandle)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskHandle")
  3325  	proto.RegisterType((*NetworkOverride)(nil), "hashicorp.nomad.plugins.drivers.proto.NetworkOverride")
  3326  	proto.RegisterMapType((map[string]int32)(nil), "hashicorp.nomad.plugins.drivers.proto.NetworkOverride.PortMapEntry")
  3327  	proto.RegisterType((*ExitResult)(nil), "hashicorp.nomad.plugins.drivers.proto.ExitResult")
  3328  	proto.RegisterType((*TaskStatus)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskStatus")
  3329  	proto.RegisterType((*TaskDriverStatus)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskDriverStatus")
  3330  	proto.RegisterMapType((map[string]string)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskDriverStatus.AttributesEntry")
  3331  	proto.RegisterType((*TaskStats)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskStats")
  3332  	proto.RegisterMapType((map[string]*TaskResourceUsage)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskStats.ResourceUsageByPidEntry")
  3333  	proto.RegisterType((*TaskResourceUsage)(nil), "hashicorp.nomad.plugins.drivers.proto.TaskResourceUsage")
  3334  	proto.RegisterType((*CPUUsage)(nil), "hashicorp.nomad.plugins.drivers.proto.CPUUsage")
  3335  	proto.RegisterType((*MemoryUsage)(nil), "hashicorp.nomad.plugins.drivers.proto.MemoryUsage")
  3336  	proto.RegisterType((*DriverTaskEvent)(nil), "hashicorp.nomad.plugins.drivers.proto.DriverTaskEvent")
  3337  	proto.RegisterMapType((map[string]string)(nil), "hashicorp.nomad.plugins.drivers.proto.DriverTaskEvent.AnnotationsEntry")
  3338  	proto.RegisterEnum("hashicorp.nomad.plugins.drivers.proto.TaskState", TaskState_name, TaskState_value)
  3339  	proto.RegisterEnum("hashicorp.nomad.plugins.drivers.proto.FingerprintResponse_HealthState", FingerprintResponse_HealthState_name, FingerprintResponse_HealthState_value)
  3340  	proto.RegisterEnum("hashicorp.nomad.plugins.drivers.proto.StartTaskResponse_Result", StartTaskResponse_Result_name, StartTaskResponse_Result_value)
  3341  	proto.RegisterEnum("hashicorp.nomad.plugins.drivers.proto.DriverCapabilities_FSIsolation", DriverCapabilities_FSIsolation_name, DriverCapabilities_FSIsolation_value)
  3342  	proto.RegisterEnum("hashicorp.nomad.plugins.drivers.proto.NetworkIsolationSpec_NetworkIsolationMode", NetworkIsolationSpec_NetworkIsolationMode_name, NetworkIsolationSpec_NetworkIsolationMode_value)
  3343  	proto.RegisterEnum("hashicorp.nomad.plugins.drivers.proto.CPUUsage_Fields", CPUUsage_Fields_name, CPUUsage_Fields_value)
  3344  	proto.RegisterEnum("hashicorp.nomad.plugins.drivers.proto.MemoryUsage_Fields", MemoryUsage_Fields_name, MemoryUsage_Fields_value)
  3345  }
  3346  
  3347  // Reference imports to suppress errors if they are not otherwise used.
  3348  var _ context.Context
  3349  var _ grpc.ClientConn
  3350  
  3351  // This is a compile-time assertion to ensure that this generated file
  3352  // is compatible with the grpc package it is being compiled against.
  3353  const _ = grpc.SupportPackageIsVersion4
  3354  
  3355  // DriverClient is the client API for Driver service.
  3356  //
  3357  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  3358  type DriverClient interface {
  3359  	// TaskConfigSchema returns the schema for parsing the driver
  3360  	// configuration of a task.
  3361  	TaskConfigSchema(ctx context.Context, in *TaskConfigSchemaRequest, opts ...grpc.CallOption) (*TaskConfigSchemaResponse, error)
  3362  	// Capabilities returns a set of features which the driver implements. Some
  3363  	// RPCs are not possible to implement on some runtimes, this allows the
  3364  	// driver to indicate if it doesn't support these RPCs and features.
  3365  	Capabilities(ctx context.Context, in *CapabilitiesRequest, opts ...grpc.CallOption) (*CapabilitiesResponse, error)
  3366  	// Fingerprint starts a stream which emits information about the driver
  3367  	// including whether the driver healthy and able to function in the
  3368  	// existing environment.
  3369  	//
  3370  	// The driver should immediately stream a FingerprintResponse when the RPC
  3371  	// is initially called, then send any additional responses if there is a
  3372  	// change in the driver's state.
  3373  	Fingerprint(ctx context.Context, in *FingerprintRequest, opts ...grpc.CallOption) (Driver_FingerprintClient, error)
  3374  	// RecoverTask is used when a task has been started but the driver may not
  3375  	// know about it. Such is the case if the driver restarts or is upgraded.
  3376  	RecoverTask(ctx context.Context, in *RecoverTaskRequest, opts ...grpc.CallOption) (*RecoverTaskResponse, error)
  3377  	// StartTask starts and tracks the task on the implemented runtime
  3378  	StartTask(ctx context.Context, in *StartTaskRequest, opts ...grpc.CallOption) (*StartTaskResponse, error)
  3379  	// WaitTask blocks until the given task exits, returning the result of the
  3380  	// task. It may be called after the task has exited, but before the task is
  3381  	// destroyed.
  3382  	WaitTask(ctx context.Context, in *WaitTaskRequest, opts ...grpc.CallOption) (*WaitTaskResponse, error)
  3383  	// StopTask stops a given task by sending the desired signal to the process.
  3384  	// If the task does not exit on its own within the given timeout, it will be
  3385  	// forcefully killed.
  3386  	StopTask(ctx context.Context, in *StopTaskRequest, opts ...grpc.CallOption) (*StopTaskResponse, error)
  3387  	// DestroyTask removes the task from the driver's internal state and cleans
  3388  	// up any additional resources created by the driver. It cannot be called
  3389  	// on a running task, unless force is set to true.
  3390  	DestroyTask(ctx context.Context, in *DestroyTaskRequest, opts ...grpc.CallOption) (*DestroyTaskResponse, error)
  3391  	// InspectTask returns detailed information for the given task
  3392  	InspectTask(ctx context.Context, in *InspectTaskRequest, opts ...grpc.CallOption) (*InspectTaskResponse, error)
  3393  	// TaskStats collects and returns runtime metrics for the given task
  3394  	TaskStats(ctx context.Context, in *TaskStatsRequest, opts ...grpc.CallOption) (Driver_TaskStatsClient, error)
  3395  	// TaskEvents starts a streaming RPC where all task events emitted by the
  3396  	// driver are streamed to the caller.
  3397  	TaskEvents(ctx context.Context, in *TaskEventsRequest, opts ...grpc.CallOption) (Driver_TaskEventsClient, error)
  3398  	// SignalTask sends a signal to the task
  3399  	SignalTask(ctx context.Context, in *SignalTaskRequest, opts ...grpc.CallOption) (*SignalTaskResponse, error)
  3400  	// ExecTask executes a command inside the tasks execution context
  3401  	ExecTask(ctx context.Context, in *ExecTaskRequest, opts ...grpc.CallOption) (*ExecTaskResponse, error)
  3402  	// ExecTaskStreaming executes a command inside the tasks execution context
  3403  	// and streams back results
  3404  	ExecTaskStreaming(ctx context.Context, opts ...grpc.CallOption) (Driver_ExecTaskStreamingClient, error)
  3405  	// CreateNetwork is implemented when the driver needs to create the network
  3406  	// namespace instead of allowing the Nomad client to do.
  3407  	CreateNetwork(ctx context.Context, in *CreateNetworkRequest, opts ...grpc.CallOption) (*CreateNetworkResponse, error)
  3408  	// DestroyNetwork destroys a previously created network. This rpc is only
  3409  	// implemented if the driver needs to manage network namespace creation.
  3410  	DestroyNetwork(ctx context.Context, in *DestroyNetworkRequest, opts ...grpc.CallOption) (*DestroyNetworkResponse, error)
  3411  }
  3412  
  3413  type driverClient struct {
  3414  	cc *grpc.ClientConn
  3415  }
  3416  
  3417  func NewDriverClient(cc *grpc.ClientConn) DriverClient {
  3418  	return &driverClient{cc}
  3419  }
  3420  
  3421  func (c *driverClient) TaskConfigSchema(ctx context.Context, in *TaskConfigSchemaRequest, opts ...grpc.CallOption) (*TaskConfigSchemaResponse, error) {
  3422  	out := new(TaskConfigSchemaResponse)
  3423  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/TaskConfigSchema", in, out, opts...)
  3424  	if err != nil {
  3425  		return nil, err
  3426  	}
  3427  	return out, nil
  3428  }
  3429  
  3430  func (c *driverClient) Capabilities(ctx context.Context, in *CapabilitiesRequest, opts ...grpc.CallOption) (*CapabilitiesResponse, error) {
  3431  	out := new(CapabilitiesResponse)
  3432  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/Capabilities", in, out, opts...)
  3433  	if err != nil {
  3434  		return nil, err
  3435  	}
  3436  	return out, nil
  3437  }
  3438  
  3439  func (c *driverClient) Fingerprint(ctx context.Context, in *FingerprintRequest, opts ...grpc.CallOption) (Driver_FingerprintClient, error) {
  3440  	stream, err := c.cc.NewStream(ctx, &_Driver_serviceDesc.Streams[0], "/hashicorp.nomad.plugins.drivers.proto.Driver/Fingerprint", opts...)
  3441  	if err != nil {
  3442  		return nil, err
  3443  	}
  3444  	x := &driverFingerprintClient{stream}
  3445  	if err := x.ClientStream.SendMsg(in); err != nil {
  3446  		return nil, err
  3447  	}
  3448  	if err := x.ClientStream.CloseSend(); err != nil {
  3449  		return nil, err
  3450  	}
  3451  	return x, nil
  3452  }
  3453  
  3454  type Driver_FingerprintClient interface {
  3455  	Recv() (*FingerprintResponse, error)
  3456  	grpc.ClientStream
  3457  }
  3458  
  3459  type driverFingerprintClient struct {
  3460  	grpc.ClientStream
  3461  }
  3462  
  3463  func (x *driverFingerprintClient) Recv() (*FingerprintResponse, error) {
  3464  	m := new(FingerprintResponse)
  3465  	if err := x.ClientStream.RecvMsg(m); err != nil {
  3466  		return nil, err
  3467  	}
  3468  	return m, nil
  3469  }
  3470  
  3471  func (c *driverClient) RecoverTask(ctx context.Context, in *RecoverTaskRequest, opts ...grpc.CallOption) (*RecoverTaskResponse, error) {
  3472  	out := new(RecoverTaskResponse)
  3473  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/RecoverTask", in, out, opts...)
  3474  	if err != nil {
  3475  		return nil, err
  3476  	}
  3477  	return out, nil
  3478  }
  3479  
  3480  func (c *driverClient) StartTask(ctx context.Context, in *StartTaskRequest, opts ...grpc.CallOption) (*StartTaskResponse, error) {
  3481  	out := new(StartTaskResponse)
  3482  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/StartTask", in, out, opts...)
  3483  	if err != nil {
  3484  		return nil, err
  3485  	}
  3486  	return out, nil
  3487  }
  3488  
  3489  func (c *driverClient) WaitTask(ctx context.Context, in *WaitTaskRequest, opts ...grpc.CallOption) (*WaitTaskResponse, error) {
  3490  	out := new(WaitTaskResponse)
  3491  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/WaitTask", in, out, opts...)
  3492  	if err != nil {
  3493  		return nil, err
  3494  	}
  3495  	return out, nil
  3496  }
  3497  
  3498  func (c *driverClient) StopTask(ctx context.Context, in *StopTaskRequest, opts ...grpc.CallOption) (*StopTaskResponse, error) {
  3499  	out := new(StopTaskResponse)
  3500  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/StopTask", in, out, opts...)
  3501  	if err != nil {
  3502  		return nil, err
  3503  	}
  3504  	return out, nil
  3505  }
  3506  
  3507  func (c *driverClient) DestroyTask(ctx context.Context, in *DestroyTaskRequest, opts ...grpc.CallOption) (*DestroyTaskResponse, error) {
  3508  	out := new(DestroyTaskResponse)
  3509  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/DestroyTask", in, out, opts...)
  3510  	if err != nil {
  3511  		return nil, err
  3512  	}
  3513  	return out, nil
  3514  }
  3515  
  3516  func (c *driverClient) InspectTask(ctx context.Context, in *InspectTaskRequest, opts ...grpc.CallOption) (*InspectTaskResponse, error) {
  3517  	out := new(InspectTaskResponse)
  3518  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/InspectTask", in, out, opts...)
  3519  	if err != nil {
  3520  		return nil, err
  3521  	}
  3522  	return out, nil
  3523  }
  3524  
  3525  func (c *driverClient) TaskStats(ctx context.Context, in *TaskStatsRequest, opts ...grpc.CallOption) (Driver_TaskStatsClient, error) {
  3526  	stream, err := c.cc.NewStream(ctx, &_Driver_serviceDesc.Streams[1], "/hashicorp.nomad.plugins.drivers.proto.Driver/TaskStats", opts...)
  3527  	if err != nil {
  3528  		return nil, err
  3529  	}
  3530  	x := &driverTaskStatsClient{stream}
  3531  	if err := x.ClientStream.SendMsg(in); err != nil {
  3532  		return nil, err
  3533  	}
  3534  	if err := x.ClientStream.CloseSend(); err != nil {
  3535  		return nil, err
  3536  	}
  3537  	return x, nil
  3538  }
  3539  
  3540  type Driver_TaskStatsClient interface {
  3541  	Recv() (*TaskStatsResponse, error)
  3542  	grpc.ClientStream
  3543  }
  3544  
  3545  type driverTaskStatsClient struct {
  3546  	grpc.ClientStream
  3547  }
  3548  
  3549  func (x *driverTaskStatsClient) Recv() (*TaskStatsResponse, error) {
  3550  	m := new(TaskStatsResponse)
  3551  	if err := x.ClientStream.RecvMsg(m); err != nil {
  3552  		return nil, err
  3553  	}
  3554  	return m, nil
  3555  }
  3556  
  3557  func (c *driverClient) TaskEvents(ctx context.Context, in *TaskEventsRequest, opts ...grpc.CallOption) (Driver_TaskEventsClient, error) {
  3558  	stream, err := c.cc.NewStream(ctx, &_Driver_serviceDesc.Streams[2], "/hashicorp.nomad.plugins.drivers.proto.Driver/TaskEvents", opts...)
  3559  	if err != nil {
  3560  		return nil, err
  3561  	}
  3562  	x := &driverTaskEventsClient{stream}
  3563  	if err := x.ClientStream.SendMsg(in); err != nil {
  3564  		return nil, err
  3565  	}
  3566  	if err := x.ClientStream.CloseSend(); err != nil {
  3567  		return nil, err
  3568  	}
  3569  	return x, nil
  3570  }
  3571  
  3572  type Driver_TaskEventsClient interface {
  3573  	Recv() (*DriverTaskEvent, error)
  3574  	grpc.ClientStream
  3575  }
  3576  
  3577  type driverTaskEventsClient struct {
  3578  	grpc.ClientStream
  3579  }
  3580  
  3581  func (x *driverTaskEventsClient) Recv() (*DriverTaskEvent, error) {
  3582  	m := new(DriverTaskEvent)
  3583  	if err := x.ClientStream.RecvMsg(m); err != nil {
  3584  		return nil, err
  3585  	}
  3586  	return m, nil
  3587  }
  3588  
  3589  func (c *driverClient) SignalTask(ctx context.Context, in *SignalTaskRequest, opts ...grpc.CallOption) (*SignalTaskResponse, error) {
  3590  	out := new(SignalTaskResponse)
  3591  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/SignalTask", in, out, opts...)
  3592  	if err != nil {
  3593  		return nil, err
  3594  	}
  3595  	return out, nil
  3596  }
  3597  
  3598  func (c *driverClient) ExecTask(ctx context.Context, in *ExecTaskRequest, opts ...grpc.CallOption) (*ExecTaskResponse, error) {
  3599  	out := new(ExecTaskResponse)
  3600  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/ExecTask", in, out, opts...)
  3601  	if err != nil {
  3602  		return nil, err
  3603  	}
  3604  	return out, nil
  3605  }
  3606  
  3607  func (c *driverClient) ExecTaskStreaming(ctx context.Context, opts ...grpc.CallOption) (Driver_ExecTaskStreamingClient, error) {
  3608  	stream, err := c.cc.NewStream(ctx, &_Driver_serviceDesc.Streams[3], "/hashicorp.nomad.plugins.drivers.proto.Driver/ExecTaskStreaming", opts...)
  3609  	if err != nil {
  3610  		return nil, err
  3611  	}
  3612  	x := &driverExecTaskStreamingClient{stream}
  3613  	return x, nil
  3614  }
  3615  
  3616  type Driver_ExecTaskStreamingClient interface {
  3617  	Send(*ExecTaskStreamingRequest) error
  3618  	Recv() (*ExecTaskStreamingResponse, error)
  3619  	grpc.ClientStream
  3620  }
  3621  
  3622  type driverExecTaskStreamingClient struct {
  3623  	grpc.ClientStream
  3624  }
  3625  
  3626  func (x *driverExecTaskStreamingClient) Send(m *ExecTaskStreamingRequest) error {
  3627  	return x.ClientStream.SendMsg(m)
  3628  }
  3629  
  3630  func (x *driverExecTaskStreamingClient) Recv() (*ExecTaskStreamingResponse, error) {
  3631  	m := new(ExecTaskStreamingResponse)
  3632  	if err := x.ClientStream.RecvMsg(m); err != nil {
  3633  		return nil, err
  3634  	}
  3635  	return m, nil
  3636  }
  3637  
  3638  func (c *driverClient) CreateNetwork(ctx context.Context, in *CreateNetworkRequest, opts ...grpc.CallOption) (*CreateNetworkResponse, error) {
  3639  	out := new(CreateNetworkResponse)
  3640  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/CreateNetwork", in, out, opts...)
  3641  	if err != nil {
  3642  		return nil, err
  3643  	}
  3644  	return out, nil
  3645  }
  3646  
  3647  func (c *driverClient) DestroyNetwork(ctx context.Context, in *DestroyNetworkRequest, opts ...grpc.CallOption) (*DestroyNetworkResponse, error) {
  3648  	out := new(DestroyNetworkResponse)
  3649  	err := c.cc.Invoke(ctx, "/hashicorp.nomad.plugins.drivers.proto.Driver/DestroyNetwork", in, out, opts...)
  3650  	if err != nil {
  3651  		return nil, err
  3652  	}
  3653  	return out, nil
  3654  }
  3655  
  3656  // DriverServer is the server API for Driver service.
  3657  type DriverServer interface {
  3658  	// TaskConfigSchema returns the schema for parsing the driver
  3659  	// configuration of a task.
  3660  	TaskConfigSchema(context.Context, *TaskConfigSchemaRequest) (*TaskConfigSchemaResponse, error)
  3661  	// Capabilities returns a set of features which the driver implements. Some
  3662  	// RPCs are not possible to implement on some runtimes, this allows the
  3663  	// driver to indicate if it doesn't support these RPCs and features.
  3664  	Capabilities(context.Context, *CapabilitiesRequest) (*CapabilitiesResponse, error)
  3665  	// Fingerprint starts a stream which emits information about the driver
  3666  	// including whether the driver healthy and able to function in the
  3667  	// existing environment.
  3668  	//
  3669  	// The driver should immediately stream a FingerprintResponse when the RPC
  3670  	// is initially called, then send any additional responses if there is a
  3671  	// change in the driver's state.
  3672  	Fingerprint(*FingerprintRequest, Driver_FingerprintServer) error
  3673  	// RecoverTask is used when a task has been started but the driver may not
  3674  	// know about it. Such is the case if the driver restarts or is upgraded.
  3675  	RecoverTask(context.Context, *RecoverTaskRequest) (*RecoverTaskResponse, error)
  3676  	// StartTask starts and tracks the task on the implemented runtime
  3677  	StartTask(context.Context, *StartTaskRequest) (*StartTaskResponse, error)
  3678  	// WaitTask blocks until the given task exits, returning the result of the
  3679  	// task. It may be called after the task has exited, but before the task is
  3680  	// destroyed.
  3681  	WaitTask(context.Context, *WaitTaskRequest) (*WaitTaskResponse, error)
  3682  	// StopTask stops a given task by sending the desired signal to the process.
  3683  	// If the task does not exit on its own within the given timeout, it will be
  3684  	// forcefully killed.
  3685  	StopTask(context.Context, *StopTaskRequest) (*StopTaskResponse, error)
  3686  	// DestroyTask removes the task from the driver's internal state and cleans
  3687  	// up any additional resources created by the driver. It cannot be called
  3688  	// on a running task, unless force is set to true.
  3689  	DestroyTask(context.Context, *DestroyTaskRequest) (*DestroyTaskResponse, error)
  3690  	// InspectTask returns detailed information for the given task
  3691  	InspectTask(context.Context, *InspectTaskRequest) (*InspectTaskResponse, error)
  3692  	// TaskStats collects and returns runtime metrics for the given task
  3693  	TaskStats(*TaskStatsRequest, Driver_TaskStatsServer) error
  3694  	// TaskEvents starts a streaming RPC where all task events emitted by the
  3695  	// driver are streamed to the caller.
  3696  	TaskEvents(*TaskEventsRequest, Driver_TaskEventsServer) error
  3697  	// SignalTask sends a signal to the task
  3698  	SignalTask(context.Context, *SignalTaskRequest) (*SignalTaskResponse, error)
  3699  	// ExecTask executes a command inside the tasks execution context
  3700  	ExecTask(context.Context, *ExecTaskRequest) (*ExecTaskResponse, error)
  3701  	// ExecTaskStreaming executes a command inside the tasks execution context
  3702  	// and streams back results
  3703  	ExecTaskStreaming(Driver_ExecTaskStreamingServer) error
  3704  	// CreateNetwork is implemented when the driver needs to create the network
  3705  	// namespace instead of allowing the Nomad client to do.
  3706  	CreateNetwork(context.Context, *CreateNetworkRequest) (*CreateNetworkResponse, error)
  3707  	// DestroyNetwork destroys a previously created network. This rpc is only
  3708  	// implemented if the driver needs to manage network namespace creation.
  3709  	DestroyNetwork(context.Context, *DestroyNetworkRequest) (*DestroyNetworkResponse, error)
  3710  }
  3711  
  3712  func RegisterDriverServer(s *grpc.Server, srv DriverServer) {
  3713  	s.RegisterService(&_Driver_serviceDesc, srv)
  3714  }
  3715  
  3716  func _Driver_TaskConfigSchema_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3717  	in := new(TaskConfigSchemaRequest)
  3718  	if err := dec(in); err != nil {
  3719  		return nil, err
  3720  	}
  3721  	if interceptor == nil {
  3722  		return srv.(DriverServer).TaskConfigSchema(ctx, in)
  3723  	}
  3724  	info := &grpc.UnaryServerInfo{
  3725  		Server:     srv,
  3726  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/TaskConfigSchema",
  3727  	}
  3728  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3729  		return srv.(DriverServer).TaskConfigSchema(ctx, req.(*TaskConfigSchemaRequest))
  3730  	}
  3731  	return interceptor(ctx, in, info, handler)
  3732  }
  3733  
  3734  func _Driver_Capabilities_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3735  	in := new(CapabilitiesRequest)
  3736  	if err := dec(in); err != nil {
  3737  		return nil, err
  3738  	}
  3739  	if interceptor == nil {
  3740  		return srv.(DriverServer).Capabilities(ctx, in)
  3741  	}
  3742  	info := &grpc.UnaryServerInfo{
  3743  		Server:     srv,
  3744  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/Capabilities",
  3745  	}
  3746  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3747  		return srv.(DriverServer).Capabilities(ctx, req.(*CapabilitiesRequest))
  3748  	}
  3749  	return interceptor(ctx, in, info, handler)
  3750  }
  3751  
  3752  func _Driver_Fingerprint_Handler(srv interface{}, stream grpc.ServerStream) error {
  3753  	m := new(FingerprintRequest)
  3754  	if err := stream.RecvMsg(m); err != nil {
  3755  		return err
  3756  	}
  3757  	return srv.(DriverServer).Fingerprint(m, &driverFingerprintServer{stream})
  3758  }
  3759  
  3760  type Driver_FingerprintServer interface {
  3761  	Send(*FingerprintResponse) error
  3762  	grpc.ServerStream
  3763  }
  3764  
  3765  type driverFingerprintServer struct {
  3766  	grpc.ServerStream
  3767  }
  3768  
  3769  func (x *driverFingerprintServer) Send(m *FingerprintResponse) error {
  3770  	return x.ServerStream.SendMsg(m)
  3771  }
  3772  
  3773  func _Driver_RecoverTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3774  	in := new(RecoverTaskRequest)
  3775  	if err := dec(in); err != nil {
  3776  		return nil, err
  3777  	}
  3778  	if interceptor == nil {
  3779  		return srv.(DriverServer).RecoverTask(ctx, in)
  3780  	}
  3781  	info := &grpc.UnaryServerInfo{
  3782  		Server:     srv,
  3783  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/RecoverTask",
  3784  	}
  3785  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3786  		return srv.(DriverServer).RecoverTask(ctx, req.(*RecoverTaskRequest))
  3787  	}
  3788  	return interceptor(ctx, in, info, handler)
  3789  }
  3790  
  3791  func _Driver_StartTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3792  	in := new(StartTaskRequest)
  3793  	if err := dec(in); err != nil {
  3794  		return nil, err
  3795  	}
  3796  	if interceptor == nil {
  3797  		return srv.(DriverServer).StartTask(ctx, in)
  3798  	}
  3799  	info := &grpc.UnaryServerInfo{
  3800  		Server:     srv,
  3801  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/StartTask",
  3802  	}
  3803  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3804  		return srv.(DriverServer).StartTask(ctx, req.(*StartTaskRequest))
  3805  	}
  3806  	return interceptor(ctx, in, info, handler)
  3807  }
  3808  
  3809  func _Driver_WaitTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3810  	in := new(WaitTaskRequest)
  3811  	if err := dec(in); err != nil {
  3812  		return nil, err
  3813  	}
  3814  	if interceptor == nil {
  3815  		return srv.(DriverServer).WaitTask(ctx, in)
  3816  	}
  3817  	info := &grpc.UnaryServerInfo{
  3818  		Server:     srv,
  3819  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/WaitTask",
  3820  	}
  3821  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3822  		return srv.(DriverServer).WaitTask(ctx, req.(*WaitTaskRequest))
  3823  	}
  3824  	return interceptor(ctx, in, info, handler)
  3825  }
  3826  
  3827  func _Driver_StopTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3828  	in := new(StopTaskRequest)
  3829  	if err := dec(in); err != nil {
  3830  		return nil, err
  3831  	}
  3832  	if interceptor == nil {
  3833  		return srv.(DriverServer).StopTask(ctx, in)
  3834  	}
  3835  	info := &grpc.UnaryServerInfo{
  3836  		Server:     srv,
  3837  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/StopTask",
  3838  	}
  3839  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3840  		return srv.(DriverServer).StopTask(ctx, req.(*StopTaskRequest))
  3841  	}
  3842  	return interceptor(ctx, in, info, handler)
  3843  }
  3844  
  3845  func _Driver_DestroyTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3846  	in := new(DestroyTaskRequest)
  3847  	if err := dec(in); err != nil {
  3848  		return nil, err
  3849  	}
  3850  	if interceptor == nil {
  3851  		return srv.(DriverServer).DestroyTask(ctx, in)
  3852  	}
  3853  	info := &grpc.UnaryServerInfo{
  3854  		Server:     srv,
  3855  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/DestroyTask",
  3856  	}
  3857  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3858  		return srv.(DriverServer).DestroyTask(ctx, req.(*DestroyTaskRequest))
  3859  	}
  3860  	return interceptor(ctx, in, info, handler)
  3861  }
  3862  
  3863  func _Driver_InspectTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3864  	in := new(InspectTaskRequest)
  3865  	if err := dec(in); err != nil {
  3866  		return nil, err
  3867  	}
  3868  	if interceptor == nil {
  3869  		return srv.(DriverServer).InspectTask(ctx, in)
  3870  	}
  3871  	info := &grpc.UnaryServerInfo{
  3872  		Server:     srv,
  3873  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/InspectTask",
  3874  	}
  3875  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3876  		return srv.(DriverServer).InspectTask(ctx, req.(*InspectTaskRequest))
  3877  	}
  3878  	return interceptor(ctx, in, info, handler)
  3879  }
  3880  
  3881  func _Driver_TaskStats_Handler(srv interface{}, stream grpc.ServerStream) error {
  3882  	m := new(TaskStatsRequest)
  3883  	if err := stream.RecvMsg(m); err != nil {
  3884  		return err
  3885  	}
  3886  	return srv.(DriverServer).TaskStats(m, &driverTaskStatsServer{stream})
  3887  }
  3888  
  3889  type Driver_TaskStatsServer interface {
  3890  	Send(*TaskStatsResponse) error
  3891  	grpc.ServerStream
  3892  }
  3893  
  3894  type driverTaskStatsServer struct {
  3895  	grpc.ServerStream
  3896  }
  3897  
  3898  func (x *driverTaskStatsServer) Send(m *TaskStatsResponse) error {
  3899  	return x.ServerStream.SendMsg(m)
  3900  }
  3901  
  3902  func _Driver_TaskEvents_Handler(srv interface{}, stream grpc.ServerStream) error {
  3903  	m := new(TaskEventsRequest)
  3904  	if err := stream.RecvMsg(m); err != nil {
  3905  		return err
  3906  	}
  3907  	return srv.(DriverServer).TaskEvents(m, &driverTaskEventsServer{stream})
  3908  }
  3909  
  3910  type Driver_TaskEventsServer interface {
  3911  	Send(*DriverTaskEvent) error
  3912  	grpc.ServerStream
  3913  }
  3914  
  3915  type driverTaskEventsServer struct {
  3916  	grpc.ServerStream
  3917  }
  3918  
  3919  func (x *driverTaskEventsServer) Send(m *DriverTaskEvent) error {
  3920  	return x.ServerStream.SendMsg(m)
  3921  }
  3922  
  3923  func _Driver_SignalTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3924  	in := new(SignalTaskRequest)
  3925  	if err := dec(in); err != nil {
  3926  		return nil, err
  3927  	}
  3928  	if interceptor == nil {
  3929  		return srv.(DriverServer).SignalTask(ctx, in)
  3930  	}
  3931  	info := &grpc.UnaryServerInfo{
  3932  		Server:     srv,
  3933  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/SignalTask",
  3934  	}
  3935  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3936  		return srv.(DriverServer).SignalTask(ctx, req.(*SignalTaskRequest))
  3937  	}
  3938  	return interceptor(ctx, in, info, handler)
  3939  }
  3940  
  3941  func _Driver_ExecTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3942  	in := new(ExecTaskRequest)
  3943  	if err := dec(in); err != nil {
  3944  		return nil, err
  3945  	}
  3946  	if interceptor == nil {
  3947  		return srv.(DriverServer).ExecTask(ctx, in)
  3948  	}
  3949  	info := &grpc.UnaryServerInfo{
  3950  		Server:     srv,
  3951  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/ExecTask",
  3952  	}
  3953  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3954  		return srv.(DriverServer).ExecTask(ctx, req.(*ExecTaskRequest))
  3955  	}
  3956  	return interceptor(ctx, in, info, handler)
  3957  }
  3958  
  3959  func _Driver_ExecTaskStreaming_Handler(srv interface{}, stream grpc.ServerStream) error {
  3960  	return srv.(DriverServer).ExecTaskStreaming(&driverExecTaskStreamingServer{stream})
  3961  }
  3962  
  3963  type Driver_ExecTaskStreamingServer interface {
  3964  	Send(*ExecTaskStreamingResponse) error
  3965  	Recv() (*ExecTaskStreamingRequest, error)
  3966  	grpc.ServerStream
  3967  }
  3968  
  3969  type driverExecTaskStreamingServer struct {
  3970  	grpc.ServerStream
  3971  }
  3972  
  3973  func (x *driverExecTaskStreamingServer) Send(m *ExecTaskStreamingResponse) error {
  3974  	return x.ServerStream.SendMsg(m)
  3975  }
  3976  
  3977  func (x *driverExecTaskStreamingServer) Recv() (*ExecTaskStreamingRequest, error) {
  3978  	m := new(ExecTaskStreamingRequest)
  3979  	if err := x.ServerStream.RecvMsg(m); err != nil {
  3980  		return nil, err
  3981  	}
  3982  	return m, nil
  3983  }
  3984  
  3985  func _Driver_CreateNetwork_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  3986  	in := new(CreateNetworkRequest)
  3987  	if err := dec(in); err != nil {
  3988  		return nil, err
  3989  	}
  3990  	if interceptor == nil {
  3991  		return srv.(DriverServer).CreateNetwork(ctx, in)
  3992  	}
  3993  	info := &grpc.UnaryServerInfo{
  3994  		Server:     srv,
  3995  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/CreateNetwork",
  3996  	}
  3997  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  3998  		return srv.(DriverServer).CreateNetwork(ctx, req.(*CreateNetworkRequest))
  3999  	}
  4000  	return interceptor(ctx, in, info, handler)
  4001  }
  4002  
  4003  func _Driver_DestroyNetwork_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4004  	in := new(DestroyNetworkRequest)
  4005  	if err := dec(in); err != nil {
  4006  		return nil, err
  4007  	}
  4008  	if interceptor == nil {
  4009  		return srv.(DriverServer).DestroyNetwork(ctx, in)
  4010  	}
  4011  	info := &grpc.UnaryServerInfo{
  4012  		Server:     srv,
  4013  		FullMethod: "/hashicorp.nomad.plugins.drivers.proto.Driver/DestroyNetwork",
  4014  	}
  4015  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4016  		return srv.(DriverServer).DestroyNetwork(ctx, req.(*DestroyNetworkRequest))
  4017  	}
  4018  	return interceptor(ctx, in, info, handler)
  4019  }
  4020  
  4021  var _Driver_serviceDesc = grpc.ServiceDesc{
  4022  	ServiceName: "hashicorp.nomad.plugins.drivers.proto.Driver",
  4023  	HandlerType: (*DriverServer)(nil),
  4024  	Methods: []grpc.MethodDesc{
  4025  		{
  4026  			MethodName: "TaskConfigSchema",
  4027  			Handler:    _Driver_TaskConfigSchema_Handler,
  4028  		},
  4029  		{
  4030  			MethodName: "Capabilities",
  4031  			Handler:    _Driver_Capabilities_Handler,
  4032  		},
  4033  		{
  4034  			MethodName: "RecoverTask",
  4035  			Handler:    _Driver_RecoverTask_Handler,
  4036  		},
  4037  		{
  4038  			MethodName: "StartTask",
  4039  			Handler:    _Driver_StartTask_Handler,
  4040  		},
  4041  		{
  4042  			MethodName: "WaitTask",
  4043  			Handler:    _Driver_WaitTask_Handler,
  4044  		},
  4045  		{
  4046  			MethodName: "StopTask",
  4047  			Handler:    _Driver_StopTask_Handler,
  4048  		},
  4049  		{
  4050  			MethodName: "DestroyTask",
  4051  			Handler:    _Driver_DestroyTask_Handler,
  4052  		},
  4053  		{
  4054  			MethodName: "InspectTask",
  4055  			Handler:    _Driver_InspectTask_Handler,
  4056  		},
  4057  		{
  4058  			MethodName: "SignalTask",
  4059  			Handler:    _Driver_SignalTask_Handler,
  4060  		},
  4061  		{
  4062  			MethodName: "ExecTask",
  4063  			Handler:    _Driver_ExecTask_Handler,
  4064  		},
  4065  		{
  4066  			MethodName: "CreateNetwork",
  4067  			Handler:    _Driver_CreateNetwork_Handler,
  4068  		},
  4069  		{
  4070  			MethodName: "DestroyNetwork",
  4071  			Handler:    _Driver_DestroyNetwork_Handler,
  4072  		},
  4073  	},
  4074  	Streams: []grpc.StreamDesc{
  4075  		{
  4076  			StreamName:    "Fingerprint",
  4077  			Handler:       _Driver_Fingerprint_Handler,
  4078  			ServerStreams: true,
  4079  		},
  4080  		{
  4081  			StreamName:    "TaskStats",
  4082  			Handler:       _Driver_TaskStats_Handler,
  4083  			ServerStreams: true,
  4084  		},
  4085  		{
  4086  			StreamName:    "TaskEvents",
  4087  			Handler:       _Driver_TaskEvents_Handler,
  4088  			ServerStreams: true,
  4089  		},
  4090  		{
  4091  			StreamName:    "ExecTaskStreaming",
  4092  			Handler:       _Driver_ExecTaskStreaming_Handler,
  4093  			ServerStreams: true,
  4094  			ClientStreams: true,
  4095  		},
  4096  	},
  4097  	Metadata: "plugins/drivers/proto/driver.proto",
  4098  }
  4099  
  4100  func init() {
  4101  	proto.RegisterFile("plugins/drivers/proto/driver.proto", fileDescriptor_driver_8edefdede9e0ed2d)
  4102  }
  4103  
  4104  var fileDescriptor_driver_8edefdede9e0ed2d = []byte{
  4105  	// 3525 bytes of a gzipped FileDescriptorProto
  4106  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x5a, 0x4f, 0x6f, 0x23, 0x47,
  4107  	0x76, 0x57, 0xf3, 0x9f, 0xc8, 0x47, 0x89, 0x6a, 0x95, 0xa4, 0x31, 0x87, 0x4e, 0xe2, 0xd9, 0x06,
  4108  	0x36, 0x10, 0x76, 0x6d, 0xca, 0xd6, 0x22, 0x1e, 0xcb, 0x3b, 0xde, 0x31, 0x4d, 0x71, 0x24, 0x79,
  4109  	0x24, 0x4a, 0x29, 0x52, 0x98, 0x9d, 0x38, 0xeb, 0x4e, 0xab, 0xbb, 0x86, 0xec, 0x11, 0xfb, 0x8f,
  4110  	0xbb, 0x8b, 0x1a, 0x69, 0x83, 0x20, 0xc1, 0x06, 0x08, 0x36, 0x40, 0x82, 0xe4, 0xe2, 0xec, 0x25,
  4111  	0x87, 0x60, 0x73, 0x4c, 0x3e, 0x40, 0x90, 0x60, 0xcf, 0xf9, 0x10, 0xc9, 0x25, 0xb7, 0x5c, 0x72,
  4112  	0xc8, 0x37, 0x58, 0xd4, 0x9f, 0x6e, 0x76, 0x8b, 0x1c, 0x4f, 0x93, 0x9a, 0x53, 0x77, 0xbd, 0xaa,
  4113  	0xfa, 0xd5, 0xab, 0xf7, 0x5e, 0xd5, 0x7b, 0x55, 0xf5, 0x40, 0xf3, 0x47, 0xe3, 0x81, 0xed, 0x86,
  4114  	0x3b, 0x56, 0x60, 0x5f, 0x91, 0x20, 0xdc, 0xf1, 0x03, 0x8f, 0x7a, 0xb2, 0xd4, 0xe4, 0x05, 0xf4,
  4115  	0xfd, 0xa1, 0x11, 0x0e, 0x6d, 0xd3, 0x0b, 0xfc, 0xa6, 0xeb, 0x39, 0x86, 0xd5, 0x94, 0x7d, 0x9a,
  4116  	0xb2, 0x8f, 0x68, 0xd6, 0xf8, 0xbd, 0x81, 0xe7, 0x0d, 0x46, 0x44, 0x20, 0x5c, 0x8c, 0x5f, 0xec,
  4117  	0x58, 0xe3, 0xc0, 0xa0, 0xb6, 0xe7, 0xca, 0xfa, 0xf7, 0x6e, 0xd7, 0x53, 0xdb, 0x21, 0x21, 0x35,
  4118  	0x1c, 0x5f, 0x36, 0xf8, 0x7c, 0x60, 0xd3, 0xe1, 0xf8, 0xa2, 0x69, 0x7a, 0xce, 0x4e, 0x3c, 0xe4,
  4119  	0x0e, 0x1f, 0x72, 0x27, 0x62, 0x33, 0x1c, 0x1a, 0x01, 0xb1, 0x76, 0x86, 0xe6, 0x28, 0xf4, 0x89,
  4120  	0xc9, 0xbe, 0x3a, 0xfb, 0x91, 0x08, 0x07, 0xd9, 0x11, 0x42, 0x1a, 0x8c, 0x4d, 0x1a, 0xcd, 0xd7,
  4121  	0xa0, 0x34, 0xb0, 0x2f, 0xc6, 0x94, 0x08, 0x20, 0xed, 0x3e, 0xbc, 0xd3, 0x37, 0xc2, 0xcb, 0xb6,
  4122  	0xe7, 0xbe, 0xb0, 0x07, 0x3d, 0x73, 0x48, 0x1c, 0x03, 0x93, 0x6f, 0xc6, 0x24, 0xa4, 0xda, 0x1f,
  4123  	0x43, 0x7d, 0xba, 0x2a, 0xf4, 0x3d, 0x37, 0x24, 0xe8, 0x73, 0x28, 0x30, 0x6e, 0xea, 0xca, 0x03,
  4124  	0x65, 0xbb, 0xba, 0xfb, 0x7e, 0xf3, 0x75, 0x82, 0x13, 0x3c, 0x34, 0xe5, 0x2c, 0x9a, 0x3d, 0x9f,
  4125  	0x98, 0x98, 0xf7, 0xd4, 0xb6, 0x60, 0xa3, 0x6d, 0xf8, 0xc6, 0x85, 0x3d, 0xb2, 0xa9, 0x4d, 0xc2,
  4126  	0x68, 0xd0, 0x31, 0x6c, 0xa6, 0xc9, 0x72, 0xc0, 0x9f, 0xc1, 0x8a, 0x99, 0xa0, 0xcb, 0x81, 0xf7,
  4127  	0x9a, 0x99, 0x34, 0xd6, 0xdc, 0xe7, 0xa5, 0x14, 0x70, 0x0a, 0x4e, 0xdb, 0x04, 0xf4, 0xc4, 0x76,
  4128  	0x07, 0x24, 0xf0, 0x03, 0xdb, 0xa5, 0x11, 0x33, 0xbf, 0xc9, 0xc3, 0x46, 0x8a, 0x2c, 0x99, 0x79,
  4129  	0x09, 0x10, 0xcb, 0x91, 0xb1, 0x92, 0xdf, 0xae, 0xee, 0x7e, 0x99, 0x91, 0x95, 0x19, 0x78, 0xcd,
  4130  	0x56, 0x0c, 0xd6, 0x71, 0x69, 0x70, 0x83, 0x13, 0xe8, 0xe8, 0x6b, 0x28, 0x0d, 0x89, 0x31, 0xa2,
  4131  	0xc3, 0x7a, 0xee, 0x81, 0xb2, 0x5d, 0xdb, 0x7d, 0x72, 0x87, 0x71, 0x0e, 0x39, 0x50, 0x8f, 0x1a,
  4132  	0x94, 0x60, 0x89, 0x8a, 0x3e, 0x00, 0x24, 0xfe, 0x74, 0x8b, 0x84, 0x66, 0x60, 0xfb, 0xcc, 0x90,
  4133  	0xeb, 0xf9, 0x07, 0xca, 0x76, 0x05, 0xaf, 0x8b, 0x9a, 0xfd, 0x49, 0x45, 0xc3, 0x87, 0xb5, 0x5b,
  4134  	0xdc, 0x22, 0x15, 0xf2, 0x97, 0xe4, 0x86, 0x6b, 0xa4, 0x82, 0xd9, 0x2f, 0x3a, 0x80, 0xe2, 0x95,
  4135  	0x31, 0x1a, 0x13, 0xce, 0x72, 0x75, 0xf7, 0xa3, 0x37, 0x99, 0x87, 0x34, 0xd1, 0x89, 0x1c, 0xb0,
  4136  	0xe8, 0xff, 0x69, 0xee, 0x13, 0x45, 0xdb, 0x83, 0x6a, 0x82, 0x6f, 0x54, 0x03, 0x38, 0xef, 0xee,
  4137  	0x77, 0xfa, 0x9d, 0x76, 0xbf, 0xb3, 0xaf, 0x2e, 0xa1, 0x55, 0xa8, 0x9c, 0x77, 0x0f, 0x3b, 0xad,
  4138  	0xe3, 0xfe, 0xe1, 0x73, 0x55, 0x41, 0x55, 0x58, 0x8e, 0x0a, 0x39, 0xed, 0x1a, 0x10, 0x26, 0xa6,
  4139  	0x77, 0x45, 0x02, 0x66, 0xc8, 0x52, 0xab, 0xe8, 0x1d, 0x58, 0xa6, 0x46, 0x78, 0xa9, 0xdb, 0x96,
  4140  	0xe4, 0xb9, 0xc4, 0x8a, 0x47, 0x16, 0x3a, 0x82, 0xd2, 0xd0, 0x70, 0xad, 0xd1, 0x9b, 0xf9, 0x4e,
  4141  	0x8b, 0x9a, 0x81, 0x1f, 0xf2, 0x8e, 0x58, 0x02, 0x30, 0xeb, 0x4e, 0x8d, 0x2c, 0x14, 0xa0, 0x3d,
  4142  	0x07, 0xb5, 0x47, 0x8d, 0x80, 0x26, 0xd9, 0xe9, 0x40, 0x81, 0x8d, 0x2f, 0x2d, 0x7a, 0x9e, 0x31,
  4143  	0xc5, 0xca, 0xc4, 0xbc, 0xbb, 0xf6, 0xff, 0x39, 0x58, 0x4f, 0x60, 0x4b, 0x4b, 0x7d, 0x06, 0xa5,
  4144  	0x80, 0x84, 0xe3, 0x11, 0xe5, 0xf0, 0xb5, 0xdd, 0xc7, 0x19, 0xe1, 0xa7, 0x90, 0x9a, 0x98, 0xc3,
  4145  	0x60, 0x09, 0x87, 0xb6, 0x41, 0x15, 0x3d, 0x74, 0x12, 0x04, 0x5e, 0xa0, 0x3b, 0xe1, 0x80, 0x4b,
  4146  	0xad, 0x82, 0x6b, 0x82, 0xde, 0x61, 0xe4, 0x93, 0x70, 0x90, 0x90, 0x6a, 0xfe, 0x8e, 0x52, 0x45,
  4147  	0x06, 0xa8, 0x2e, 0xa1, 0xaf, 0xbc, 0xe0, 0x52, 0x67, 0xa2, 0x0d, 0x6c, 0x8b, 0xd4, 0x0b, 0x1c,
  4148  	0xf4, 0xe3, 0x8c, 0xa0, 0x5d, 0xd1, 0xfd, 0x54, 0xf6, 0xc6, 0x6b, 0x6e, 0x9a, 0xa0, 0xfd, 0x10,
  4149  	0x4a, 0x62, 0xa6, 0xcc, 0x92, 0x7a, 0xe7, 0xed, 0x76, 0xa7, 0xd7, 0x53, 0x97, 0x50, 0x05, 0x8a,
  4150  	0xb8, 0xd3, 0xc7, 0xcc, 0xc2, 0x2a, 0x50, 0x7c, 0xd2, 0xea, 0xb7, 0x8e, 0xd5, 0x9c, 0xf6, 0x03,
  4151  	0x58, 0x7b, 0x66, 0xd8, 0x34, 0x8b, 0x71, 0x69, 0x1e, 0xa8, 0x93, 0xb6, 0x52, 0x3b, 0x47, 0x29,
  4152  	0xed, 0x64, 0x17, 0x4d, 0xe7, 0xda, 0xa6, 0xb7, 0xf4, 0xa1, 0x42, 0x9e, 0x04, 0x81, 0x54, 0x01,
  4153  	0xfb, 0xd5, 0x5e, 0xc1, 0x5a, 0x8f, 0x7a, 0x7e, 0x26, 0xcb, 0xff, 0x11, 0x2c, 0x33, 0x1f, 0xe5,
  4154  	0x8d, 0xa9, 0x34, 0xfd, 0xfb, 0x4d, 0xe1, 0xc3, 0x9a, 0x91, 0x0f, 0x6b, 0xee, 0x4b, 0x1f, 0x87,
  4155  	0xa3, 0x96, 0xe8, 0x1e, 0x94, 0x42, 0x7b, 0xe0, 0x1a, 0x23, 0xb9, 0x5b, 0xc8, 0x92, 0x86, 0x98,
  4156  	0x91, 0x47, 0x03, 0x4b, 0xc3, 0x6f, 0x03, 0xda, 0x27, 0x21, 0x0d, 0xbc, 0x9b, 0x4c, 0xfc, 0x6c,
  4157  	0x42, 0xf1, 0x85, 0x17, 0x98, 0x62, 0x21, 0x96, 0xb1, 0x28, 0xb0, 0x45, 0x95, 0x02, 0x91, 0xd8,
  4158  	0x1f, 0x00, 0x3a, 0x72, 0x99, 0x4f, 0xc9, 0xa6, 0x88, 0xbf, 0xcf, 0xc1, 0x46, 0xaa, 0xbd, 0x54,
  4159  	0xc6, 0xe2, 0xeb, 0x90, 0x6d, 0x4c, 0xe3, 0x50, 0xac, 0x43, 0x74, 0x0a, 0x25, 0xd1, 0x42, 0x4a,
  4160  	0xf2, 0xe1, 0x1c, 0x40, 0xc2, 0x4d, 0x49, 0x38, 0x09, 0x33, 0xd3, 0xe8, 0xf3, 0x6f, 0xd7, 0xe8,
  4161  	0x5f, 0x81, 0x1a, 0xcd, 0x23, 0x7c, 0xa3, 0x6e, 0xbe, 0x84, 0x0d, 0xd3, 0x1b, 0x8d, 0x88, 0xc9,
  4162  	0xac, 0x41, 0xb7, 0x5d, 0x4a, 0x82, 0x2b, 0x63, 0xf4, 0x66, 0xbb, 0x41, 0x93, 0x5e, 0x47, 0xb2,
  4163  	0x93, 0xf6, 0x15, 0xac, 0x27, 0x06, 0x96, 0x8a, 0x78, 0x02, 0xc5, 0x90, 0x11, 0xa4, 0x26, 0x3e,
  4164  	0x9c, 0x53, 0x13, 0x21, 0x16, 0xdd, 0xb5, 0x0d, 0x01, 0xde, 0xb9, 0x22, 0x6e, 0x3c, 0x2d, 0x6d,
  4165  	0x1f, 0xd6, 0x7b, 0xdc, 0x4c, 0x33, 0xd9, 0xe1, 0xc4, 0xc4, 0x73, 0x29, 0x13, 0xdf, 0x04, 0x94,
  4166  	0x44, 0x91, 0x86, 0x78, 0x03, 0x6b, 0x9d, 0x6b, 0x62, 0x66, 0x42, 0xae, 0xc3, 0xb2, 0xe9, 0x39,
  4167  	0x8e, 0xe1, 0x5a, 0xf5, 0xdc, 0x83, 0xfc, 0x76, 0x05, 0x47, 0xc5, 0xe4, 0x5a, 0xcc, 0x67, 0x5d,
  4168  	0x8b, 0xda, 0xdf, 0x2a, 0xa0, 0x4e, 0xc6, 0x96, 0x82, 0x64, 0xdc, 0x53, 0x8b, 0x01, 0xb1, 0xb1,
  4169  	0x57, 0xb0, 0x2c, 0x49, 0x7a, 0xb4, 0x5d, 0x08, 0x3a, 0x09, 0x82, 0xc4, 0x76, 0x94, 0xbf, 0xe3,
  4170  	0x76, 0xa4, 0x1d, 0xc2, 0xef, 0x44, 0xec, 0xf4, 0x68, 0x40, 0x0c, 0xc7, 0x76, 0x07, 0x47, 0xa7,
  4171  	0xa7, 0x3e, 0x11, 0x8c, 0x23, 0x04, 0x05, 0xcb, 0xa0, 0x86, 0x64, 0x8c, 0xff, 0xb3, 0x45, 0x6f,
  4172  	0x8e, 0xbc, 0x30, 0x5e, 0xf4, 0xbc, 0xa0, 0xfd, 0x67, 0x1e, 0xea, 0x53, 0x50, 0x91, 0x78, 0xbf,
  4173  	0x82, 0x62, 0x48, 0xe8, 0xd8, 0x97, 0xa6, 0xd2, 0xc9, 0xcc, 0xf0, 0x6c, 0xbc, 0x66, 0x8f, 0x81,
  4174  	0x61, 0x81, 0x89, 0x06, 0x50, 0xa6, 0xf4, 0x46, 0x0f, 0xed, 0x9f, 0x47, 0x01, 0xc1, 0xf1, 0x5d,
  4175  	0xf1, 0xfb, 0x24, 0x70, 0x6c, 0xd7, 0x18, 0xf5, 0xec, 0x9f, 0x13, 0xbc, 0x4c, 0xe9, 0x0d, 0xfb,
  4176  	0x41, 0xcf, 0x99, 0xc1, 0x5b, 0xb6, 0x2b, 0xc5, 0xde, 0x5e, 0x74, 0x94, 0x84, 0x80, 0xb1, 0x40,
  4177  	0x6c, 0x1c, 0x43, 0x91, 0xcf, 0x69, 0x11, 0x43, 0x54, 0x21, 0x4f, 0xe9, 0x0d, 0x67, 0xaa, 0x8c,
  4178  	0xd9, 0x6f, 0xe3, 0x11, 0xac, 0x24, 0x67, 0xc0, 0x0c, 0x69, 0x48, 0xec, 0xc1, 0x50, 0x18, 0x58,
  4179  	0x11, 0xcb, 0x12, 0xd3, 0xe4, 0x2b, 0xdb, 0x92, 0x21, 0x6b, 0x11, 0x8b, 0x82, 0xf6, 0x6f, 0x39,
  4180  	0xb8, 0x3f, 0x43, 0x32, 0xd2, 0x58, 0xbf, 0x4a, 0x19, 0xeb, 0x5b, 0x92, 0x42, 0x64, 0xf1, 0x5f,
  4181  	0xa5, 0x2c, 0xfe, 0x2d, 0x82, 0xb3, 0x65, 0x73, 0x0f, 0x4a, 0xe4, 0xda, 0xa6, 0xc4, 0x92, 0xa2,
  4182  	0x92, 0xa5, 0xc4, 0x72, 0x2a, 0xdc, 0x75, 0x39, 0x7d, 0x04, 0x9b, 0xed, 0x80, 0x18, 0x94, 0xc8,
  4183  	0xad, 0x3c, 0xb2, 0xff, 0xfb, 0x50, 0x36, 0x46, 0x23, 0xcf, 0x9c, 0xa8, 0x75, 0x99, 0x97, 0x8f,
  4184  	0x2c, 0xed, 0x5b, 0x05, 0xb6, 0x6e, 0xf5, 0x91, 0x92, 0xbe, 0x80, 0x9a, 0x1d, 0x7a, 0x23, 0x3e,
  4185  	0x09, 0x3d, 0x71, 0x8a, 0xfb, 0xf1, 0x7c, 0xee, 0xe4, 0x28, 0xc2, 0xe0, 0x87, 0xba, 0x55, 0x3b,
  4186  	0x59, 0xe4, 0x56, 0xc5, 0x07, 0xb7, 0xe4, 0x6a, 0x8e, 0x8a, 0xda, 0x3f, 0x28, 0xb0, 0x25, 0xbd,
  4187  	0x78, 0xe6, 0xc9, 0xcc, 0x60, 0x39, 0xf7, 0xb6, 0x59, 0xd6, 0xea, 0x70, 0xef, 0x36, 0x5f, 0x72,
  4188  	0x5f, 0xff, 0xa7, 0x3c, 0xa0, 0xe9, 0x13, 0x24, 0xfa, 0x1e, 0xac, 0x84, 0xc4, 0xb5, 0x74, 0xe1,
  4189  	0x13, 0x84, 0xbb, 0x2a, 0xe3, 0x2a, 0xa3, 0x09, 0xe7, 0x10, 0xb2, 0x6d, 0x8e, 0x5c, 0x4b, 0x6e,
  4190  	0xcb, 0x98, 0xff, 0xa3, 0x21, 0xac, 0xbc, 0x08, 0xf5, 0x78, 0x6c, 0x6e, 0x34, 0xb5, 0xcc, 0x5b,
  4191  	0xd7, 0x34, 0x1f, 0xcd, 0x27, 0xbd, 0x78, 0x5e, 0xb8, 0xfa, 0x22, 0x8c, 0x0b, 0xe8, 0x97, 0x0a,
  4192  	0xbc, 0x13, 0x85, 0x0e, 0x13, 0xf1, 0x39, 0x9e, 0x45, 0xc2, 0x7a, 0xe1, 0x41, 0x7e, 0xbb, 0xb6,
  4193  	0x7b, 0x76, 0x07, 0xf9, 0x4d, 0x11, 0x4f, 0x3c, 0x8b, 0xe0, 0x2d, 0x77, 0x06, 0x35, 0x44, 0x4d,
  4194  	0xd8, 0x70, 0xc6, 0x21, 0xd5, 0x85, 0x15, 0xe8, 0xb2, 0x51, 0xbd, 0xc8, 0xe5, 0xb2, 0xce, 0xaa,
  4195  	0x52, 0xb6, 0xaa, 0x35, 0xa1, 0x9a, 0x98, 0x16, 0x2a, 0x43, 0xa1, 0x7b, 0xda, 0xed, 0xa8, 0x4b,
  4196  	0x08, 0xa0, 0xd4, 0x3e, 0xc4, 0xa7, 0xa7, 0x7d, 0x11, 0x89, 0x1f, 0x9d, 0xb4, 0x0e, 0x3a, 0x6a,
  4197  	0x4e, 0xfb, 0xbf, 0x1c, 0x6c, 0xce, 0x62, 0x12, 0x59, 0x50, 0x60, 0x13, 0x96, 0xc7, 0x9f, 0xb7,
  4198  	0x3f, 0x5f, 0x8e, 0xce, 0xf4, 0xec, 0x1b, 0x72, 0xbf, 0xab, 0x60, 0xfe, 0x8f, 0x74, 0x28, 0x8d,
  4199  	0x8c, 0x0b, 0x32, 0x0a, 0xeb, 0x79, 0x7e, 0x41, 0x70, 0x70, 0x97, 0xb1, 0x8f, 0x39, 0x92, 0xb8,
  4200  	0x1d, 0x90, 0xb0, 0x8d, 0x3d, 0xa8, 0x26, 0xc8, 0x33, 0x8e, 0xe1, 0x9b, 0xc9, 0x63, 0x78, 0x25,
  4201  	0x79, 0xa6, 0x7e, 0x3c, 0x2d, 0x2d, 0x36, 0x1b, 0x26, 0xe7, 0xc3, 0xd3, 0x5e, 0x5f, 0x1c, 0x78,
  4202  	0x0e, 0xf0, 0xe9, 0xf9, 0x99, 0xaa, 0x30, 0x62, 0xbf, 0xd5, 0x7b, 0xaa, 0xe6, 0x62, 0x35, 0xe4,
  4203  	0xb5, 0x7f, 0x5d, 0x06, 0x98, 0x1c, 0x41, 0x51, 0x0d, 0x72, 0xf1, 0xa2, 0xcd, 0xd9, 0x16, 0x93,
  4204  	0x87, 0x6b, 0x38, 0xd1, 0xc0, 0xfc, 0x1f, 0xed, 0xc2, 0x96, 0x13, 0x0e, 0x7c, 0xc3, 0xbc, 0xd4,
  4205  	0xe5, 0xc9, 0xd1, 0xe4, 0x9d, 0xf9, 0x02, 0x58, 0xc1, 0x1b, 0xb2, 0x52, 0x1a, 0xb8, 0xc0, 0x3d,
  4206  	0x86, 0x3c, 0x71, 0xaf, 0xb8, 0xb1, 0x56, 0x77, 0x3f, 0x9d, 0xfb, 0x68, 0xdc, 0xec, 0xb8, 0x57,
  4207  	0x42, 0x66, 0x0c, 0x06, 0xe9, 0x00, 0x16, 0xb9, 0xb2, 0x4d, 0xa2, 0x33, 0xd0, 0x22, 0x07, 0xfd,
  4208  	0x7c, 0x7e, 0xd0, 0x7d, 0x8e, 0x11, 0x43, 0x57, 0xac, 0xa8, 0x8c, 0xba, 0x50, 0x09, 0x48, 0xe8,
  4209  	0x8d, 0x03, 0x93, 0x84, 0xf5, 0xd2, 0x5c, 0xd1, 0x2b, 0x8e, 0xfa, 0xe1, 0x09, 0x04, 0xda, 0x87,
  4210  	0x92, 0xe3, 0x8d, 0x5d, 0x1a, 0xd6, 0x97, 0x39, 0xb3, 0xef, 0x67, 0x04, 0x3b, 0x61, 0x9d, 0xb0,
  4211  	0xec, 0x8b, 0x0e, 0x60, 0x59, 0xb0, 0x18, 0xd6, 0xcb, 0x1c, 0xe6, 0x83, 0xac, 0x7b, 0x0d, 0xef,
  4212  	0x85, 0xa3, 0xde, 0x4c, 0xab, 0xe3, 0x90, 0x04, 0xf5, 0x8a, 0xd0, 0x2a, 0xfb, 0x47, 0xef, 0x42,
  4213  	0x45, 0x6c, 0xda, 0x96, 0x1d, 0xd4, 0x81, 0x57, 0x88, 0x5d, 0x7c, 0xdf, 0x0e, 0xd0, 0x7b, 0x50,
  4214  	0x15, 0x0e, 0x58, 0xe7, 0xab, 0xa3, 0xca, 0xab, 0x41, 0x90, 0xce, 0xd8, 0x1a, 0x11, 0x0d, 0x48,
  4215  	0x10, 0x88, 0x06, 0x2b, 0x71, 0x03, 0x12, 0x04, 0xbc, 0xc1, 0xef, 0xc3, 0x1a, 0x0f, 0x5b, 0x06,
  4216  	0x81, 0x37, 0xf6, 0x75, 0x6e, 0x53, 0xab, 0xbc, 0xd1, 0x2a, 0x23, 0x1f, 0x30, 0x6a, 0x97, 0x19,
  4217  	0xd7, 0x7d, 0x28, 0xbf, 0xf4, 0x2e, 0x44, 0x83, 0x9a, 0xf0, 0x1d, 0x2f, 0xbd, 0x8b, 0xa8, 0x2a,
  4218  	0x76, 0x2b, 0x6b, 0x69, 0xb7, 0xf2, 0x0d, 0xdc, 0x9b, 0xde, 0x1f, 0xb9, 0x7b, 0x51, 0xef, 0xee,
  4219  	0x5e, 0x36, 0xdd, 0x19, 0xd4, 0xc6, 0xc7, 0x50, 0x8e, 0x2c, 0x67, 0x9e, 0x15, 0xdb, 0x78, 0x04,
  4220  	0xb5, 0xb4, 0xdd, 0xcd, 0xb5, 0xde, 0xff, 0x4b, 0x81, 0x4a, 0x6c, 0x61, 0xc8, 0x85, 0x0d, 0x2e,
  4221  	0x01, 0xe6, 0x8f, 0xf5, 0x89, 0xc1, 0x8a, 0x28, 0xe0, 0xb3, 0x8c, 0x73, 0x6e, 0x45, 0x08, 0xf2,
  4222  	0xc8, 0x21, 0xad, 0x17, 0xc5, 0xc8, 0x93, 0xf1, 0xbe, 0x86, 0xb5, 0x91, 0xed, 0x8e, 0xaf, 0x13,
  4223  	0x63, 0x09, 0xf7, 0xfd, 0x07, 0x19, 0xc7, 0x3a, 0x66, 0xbd, 0x27, 0x63, 0xd4, 0x46, 0xa9, 0xb2,
  4224  	0xf6, 0x6d, 0x0e, 0xee, 0xcd, 0x66, 0x07, 0x75, 0x21, 0x6f, 0xfa, 0x63, 0x39, 0xb5, 0x47, 0xf3,
  4225  	0x4e, 0xad, 0xed, 0x8f, 0x27, 0xa3, 0x32, 0x20, 0xf4, 0x0c, 0x4a, 0x0e, 0x71, 0xbc, 0xe0, 0x46,
  4226  	0xce, 0xe0, 0xf1, 0xbc, 0x90, 0x27, 0xbc, 0xf7, 0x04, 0x55, 0xc2, 0x21, 0x0c, 0x65, 0x69, 0x2f,
  4227  	0xa1, 0xdc, 0x99, 0xe6, 0x3c, 0xdd, 0x47, 0x90, 0x38, 0xc6, 0xd1, 0x3e, 0x86, 0xad, 0x99, 0x53,
  4228  	0x41, 0xbf, 0x0b, 0x60, 0xfa, 0x63, 0x9d, 0xdf, 0xbe, 0x0a, 0xbd, 0xe7, 0x71, 0xc5, 0xf4, 0xc7,
  4229  	0x3d, 0x4e, 0xd0, 0x1e, 0x42, 0xfd, 0x75, 0xfc, 0xb2, 0xf5, 0x2e, 0x38, 0xd6, 0x9d, 0x0b, 0x2e,
  4230  	0x83, 0x3c, 0x2e, 0x0b, 0xc2, 0xc9, 0x85, 0xf6, 0xab, 0x1c, 0xac, 0xdd, 0x62, 0x87, 0x45, 0xc7,
  4231  	0x62, 0xff, 0x88, 0xce, 0x1d, 0xa2, 0xc4, 0x36, 0x13, 0xd3, 0xb6, 0xa2, 0x1b, 0x2b, 0xfe, 0xcf,
  4232  	0xdd, 0x88, 0x2f, 0x6f, 0x93, 0x72, 0xb6, 0xcf, 0x0c, 0xda, 0xb9, 0xb0, 0x69, 0xc8, 0x03, 0xe8,
  4233  	0x22, 0x16, 0x05, 0xf4, 0x1c, 0x6a, 0x01, 0x09, 0x49, 0x70, 0x45, 0x2c, 0xdd, 0xf7, 0x02, 0x1a,
  4234  	0x09, 0x6c, 0x77, 0x3e, 0x81, 0x9d, 0x79, 0x01, 0xc5, 0xab, 0x11, 0x12, 0x2b, 0x85, 0xe8, 0x19,
  4235  	0xac, 0x5a, 0x37, 0xae, 0xe1, 0xd8, 0xa6, 0x44, 0x2e, 0x2d, 0x8c, 0xbc, 0x22, 0x81, 0x38, 0xb0,
  4236  	0xb6, 0x07, 0xd5, 0x44, 0x25, 0x9b, 0x18, 0x77, 0xe2, 0x52, 0x26, 0xa2, 0x90, 0x5e, 0xbf, 0x45,
  4237  	0xb9, 0x7e, 0xb5, 0x7f, 0xce, 0x41, 0x2d, 0xbd, 0x00, 0x22, 0xfd, 0xf9, 0x24, 0xb0, 0x3d, 0x2b,
  4238  	0xa1, 0xbf, 0x33, 0x4e, 0x60, 0x3a, 0x62, 0xd5, 0xdf, 0x8c, 0x3d, 0x6a, 0x44, 0x3a, 0x32, 0xfd,
  4239  	0xf1, 0x1f, 0xb2, 0xf2, 0x2d, 0xdd, 0xe7, 0x6f, 0xe9, 0x1e, 0xbd, 0x0f, 0x48, 0xea, 0x77, 0x64,
  4240  	0x3b, 0x36, 0xd5, 0x2f, 0x6e, 0x28, 0x11, 0xf2, 0xcf, 0x63, 0x55, 0xd4, 0x1c, 0xb3, 0x8a, 0x2f,
  4241  	0x18, 0x1d, 0x69, 0xb0, 0xea, 0x79, 0x8e, 0x1e, 0x9a, 0x5e, 0x40, 0x74, 0xc3, 0x7a, 0xc9, 0x03,
  4242  	0xba, 0x3c, 0xae, 0x7a, 0x9e, 0xd3, 0x63, 0xb4, 0x96, 0xf5, 0x92, 0xed, 0xf1, 0xa6, 0x3f, 0x0e,
  4243  	0x09, 0xd5, 0xd9, 0x87, 0xbb, 0xc5, 0x0a, 0x06, 0x41, 0x6a, 0xfb, 0xe3, 0x30, 0xd1, 0xc0, 0x21,
  4244  	0x0e, 0x73, 0x75, 0x89, 0x06, 0x27, 0xc4, 0x61, 0xa3, 0xac, 0x9c, 0x91, 0xc0, 0x24, 0x2e, 0xed,
  4245  	0xdb, 0xe6, 0x25, 0xf3, 0x62, 0xca, 0xb6, 0x82, 0x53, 0x34, 0xed, 0x67, 0x50, 0xe4, 0x5e, 0x8f,
  4246  	0x4d, 0x9e, 0x7b, 0x0c, 0xee, 0x50, 0x84, 0x78, 0xcb, 0x8c, 0xc0, 0xdd, 0xc9, 0xbb, 0x50, 0x19,
  4247  	0x7a, 0xa1, 0x74, 0x47, 0xc2, 0xf2, 0xca, 0x8c, 0xc0, 0x2b, 0x1b, 0x50, 0x0e, 0x88, 0x61, 0x79,
  4248  	0xee, 0x28, 0x3a, 0xf4, 0xc6, 0x65, 0xed, 0x1b, 0x28, 0x89, 0xed, 0xf7, 0x0e, 0xf8, 0x1f, 0x00,
  4249  	0x32, 0x85, 0x1f, 0xf3, 0xd9, 0x21, 0x3a, 0x0c, 0x6d, 0xcf, 0x0d, 0xa3, 0x97, 0x16, 0x51, 0x73,
  4250  	0x36, 0xa9, 0xd0, 0xfe, 0x5b, 0x11, 0x21, 0x96, 0xb8, 0x03, 0x67, 0x27, 0x2a, 0x66, 0x69, 0xec,
  4251  	0xc4, 0x20, 0x0e, 0xdb, 0x51, 0x91, 0x9d, 0x33, 0x65, 0x24, 0x95, 0x5b, 0xf4, 0x09, 0x41, 0x02,
  4252  	0x44, 0x57, 0x6f, 0x44, 0x1e, 0x4a, 0xe6, 0xbd, 0x7a, 0x23, 0xe2, 0xea, 0x8d, 0xb0, 0xa3, 0x91,
  4253  	0x8c, 0xf1, 0x04, 0x5c, 0x81, 0x87, 0x78, 0x55, 0x2b, 0xbe, 0xdf, 0x24, 0xda, 0xff, 0x2a, 0xf1,
  4254  	0x5e, 0x11, 0xdd, 0x43, 0xa2, 0xaf, 0xa1, 0xcc, 0x96, 0x9d, 0xee, 0x18, 0xbe, 0x7c, 0x55, 0x6b,
  4255  	0x2f, 0x76, 0xc5, 0xd9, 0x64, 0xab, 0xec, 0xc4, 0xf0, 0x45, 0x84, 0xb6, 0xec, 0x8b, 0x12, 0xdb,
  4256  	0x73, 0x0c, 0x6b, 0xb2, 0xe7, 0xb0, 0x7f, 0xf4, 0x7d, 0xa8, 0x19, 0x63, 0xea, 0xe9, 0x86, 0x75,
  4257  	0x45, 0x02, 0x6a, 0x87, 0x44, 0xea, 0x7e, 0x95, 0x51, 0x5b, 0x11, 0xb1, 0xf1, 0x29, 0xac, 0x24,
  4258  	0x31, 0xdf, 0xe4, 0x7d, 0x8b, 0x49, 0xef, 0xfb, 0x27, 0x00, 0x93, 0x33, 0x3d, 0xb3, 0x11, 0x72,
  4259  	0x6d, 0x53, 0xdd, 0x8c, 0x8e, 0x25, 0x45, 0x5c, 0x66, 0x84, 0x36, 0x0b, 0xc0, 0xd3, 0x17, 0x8e,
  4260  	0xc5, 0xe8, 0xc2, 0x91, 0xad, 0x5a, 0xb6, 0xd0, 0x2e, 0xed, 0xd1, 0x28, 0xbe, 0x67, 0xa8, 0x78,
  4261  	0x9e, 0xf3, 0x94, 0x13, 0xb4, 0xdf, 0xe4, 0x84, 0xad, 0x88, 0xab, 0xe3, 0x4c, 0xe1, 0xf8, 0xdb,
  4262  	0x52, 0xf5, 0x1e, 0x40, 0x48, 0x8d, 0x80, 0x85, 0x12, 0x46, 0x74, 0xd3, 0xd1, 0x98, 0xba, 0xb1,
  4263  	0xec, 0x47, 0x2f, 0xe0, 0xb8, 0x22, 0x5b, 0xb7, 0x28, 0xfa, 0x0c, 0x56, 0x4c, 0xcf, 0xf1, 0x47,
  4264  	0x44, 0x76, 0x2e, 0xbe, 0xb1, 0x73, 0x35, 0x6e, 0xdf, 0xa2, 0x89, 0xfb, 0x95, 0xd2, 0x5d, 0xef,
  4265  	0x57, 0xfe, 0x5d, 0x11, 0x37, 0xe0, 0xc9, 0x0b, 0x78, 0x34, 0x98, 0xf1, 0xca, 0x7b, 0xb0, 0xe0,
  4266  	0x6d, 0xfe, 0x77, 0x3d, 0xf1, 0x36, 0x3e, 0xcb, 0xf2, 0xa6, 0xfa, 0xfa, 0xe0, 0xee, 0x3f, 0xf2,
  4267  	0x50, 0x89, 0x2f, 0xbf, 0xa7, 0x74, 0xff, 0x09, 0x54, 0xe2, 0xf4, 0x03, 0xb9, 0x41, 0x7c, 0xa7,
  4268  	0x7a, 0xe2, 0xc6, 0xe8, 0x05, 0x20, 0x63, 0x30, 0x88, 0x83, 0x36, 0x7d, 0x1c, 0x1a, 0x83, 0xe8,
  4269  	0xe9, 0xe1, 0x93, 0x39, 0xe4, 0x10, 0xf9, 0xad, 0x73, 0xd6, 0x1f, 0xab, 0xc6, 0x60, 0x90, 0xa2,
  4270  	0xa0, 0x3f, 0x85, 0xad, 0xf4, 0x18, 0xfa, 0xc5, 0x8d, 0xee, 0xdb, 0x96, 0x3c, 0xf6, 0x1d, 0xce,
  4271  	0x7b, 0xff, 0xdf, 0x4c, 0xc1, 0x7f, 0x71, 0x73, 0x66, 0x5b, 0x42, 0xe6, 0x28, 0x98, 0xaa, 0x68,
  4272  	0xfc, 0x39, 0xbc, 0xf3, 0x9a, 0xe6, 0x33, 0x74, 0xd0, 0x4d, 0xbf, 0x6b, 0x2f, 0x2e, 0x84, 0x84,
  4273  	0xf6, 0x7e, 0xad, 0x88, 0x67, 0x8a, 0xb4, 0x4c, 0x5a, 0xc9, 0xb8, 0x75, 0x27, 0xe3, 0x38, 0xed,
  4274  	0xb3, 0x73, 0x01, 0xcf, 0x43, 0xd5, 0x2f, 0x6f, 0x85, 0xaa, 0x59, 0x83, 0x18, 0x11, 0xf1, 0x09,
  4275  	0x20, 0x89, 0xa0, 0xfd, 0x4b, 0x1e, 0xca, 0x11, 0x3a, 0x3f, 0xb4, 0xdd, 0x84, 0x94, 0x38, 0x7a,
  4276  	0x7c, 0xb3, 0xa2, 0x60, 0x10, 0x24, 0x7e, 0x8b, 0xf0, 0x2e, 0x54, 0xd8, 0xd9, 0x50, 0x54, 0xe7,
  4277  	0x78, 0x75, 0x99, 0x11, 0x78, 0xe5, 0x7b, 0x50, 0xa5, 0x1e, 0x35, 0x46, 0x3a, 0xe5, 0xbe, 0x3c,
  4278  	0x2f, 0x7a, 0x73, 0x12, 0xf7, 0xe4, 0xe8, 0x87, 0xb0, 0x4e, 0x87, 0x81, 0x47, 0xe9, 0x88, 0xc5,
  4279  	0x77, 0x3c, 0xa2, 0x11, 0x01, 0x48, 0x01, 0xab, 0x71, 0x85, 0x88, 0x74, 0x42, 0xb6, 0x7b, 0x4f,
  4280  	0x1a, 0x33, 0xd3, 0xe5, 0x9b, 0x48, 0x01, 0xaf, 0xc6, 0x54, 0x66, 0xda, 0xcc, 0x79, 0xfa, 0x22,
  4281  	0x5a, 0xe0, 0x7b, 0x85, 0x82, 0xa3, 0x22, 0xd2, 0x61, 0xcd, 0x21, 0x46, 0x38, 0x0e, 0x88, 0xa5,
  4282  	0xbf, 0xb0, 0xc9, 0xc8, 0x12, 0x67, 0xed, 0x5a, 0xe6, 0xf0, 0x3b, 0x12, 0x4b, 0xf3, 0x09, 0xef,
  4283  	0x8d, 0x6b, 0x11, 0x9c, 0x28, 0xb3, 0xc8, 0x41, 0xfc, 0xa1, 0x35, 0xa8, 0xf6, 0x9e, 0xf7, 0xfa,
  4284  	0x9d, 0x13, 0xfd, 0xe4, 0x74, 0xbf, 0x23, 0x53, 0x17, 0x7a, 0x1d, 0x2c, 0x8a, 0x0a, 0xab, 0xef,
  4285  	0x9f, 0xf6, 0x5b, 0xc7, 0x7a, 0xff, 0xa8, 0xfd, 0xb4, 0xa7, 0xe6, 0xd0, 0x16, 0xac, 0xf7, 0x0f,
  4286  	0xf1, 0x69, 0xbf, 0x7f, 0xdc, 0xd9, 0xd7, 0xcf, 0x3a, 0xf8, 0xe8, 0x74, 0xbf, 0xa7, 0xe6, 0x11,
  4287  	0x82, 0xda, 0x84, 0xdc, 0x3f, 0x3a, 0xe9, 0xa8, 0x05, 0x54, 0x85, 0xe5, 0xb3, 0x0e, 0x6e, 0x77,
  4288  	0xba, 0x7d, 0xb5, 0xa8, 0xfd, 0x2a, 0x0f, 0xd5, 0x84, 0x16, 0x99, 0x21, 0x07, 0xa1, 0x88, 0xf3,
  4289  	0x0b, 0x98, 0xfd, 0xf2, 0xa7, 0x16, 0xc3, 0x1c, 0x0a, 0xed, 0x14, 0xb0, 0x28, 0xf0, 0xd8, 0xde,
  4290  	0xb8, 0x4e, 0xac, 0xf3, 0x02, 0x2e, 0x3b, 0xc6, 0xb5, 0x00, 0xf9, 0x1e, 0xac, 0x5c, 0x92, 0xc0,
  4291  	0x25, 0x23, 0x59, 0x2f, 0x34, 0x52, 0x15, 0x34, 0xd1, 0x64, 0x1b, 0x54, 0xd9, 0x64, 0x02, 0x23,
  4292  	0xd4, 0x51, 0x13, 0xf4, 0x93, 0x08, 0x6c, 0x13, 0x8a, 0xa2, 0x7a, 0x59, 0x8c, 0xcf, 0x0b, 0xcc,
  4293  	0x4d, 0x85, 0xaf, 0x0c, 0x9f, 0xc7, 0x77, 0x05, 0xcc, 0xff, 0xd1, 0xc5, 0xb4, 0x7e, 0x4a, 0x5c,
  4294  	0x3f, 0x7b, 0xf3, 0x9b, 0xf3, 0xeb, 0x54, 0x34, 0x8c, 0x55, 0xb4, 0x0c, 0x79, 0x1c, 0xbd, 0xf7,
  4295  	0xb7, 0x5b, 0xed, 0x43, 0xa6, 0x96, 0x55, 0xa8, 0x9c, 0xb4, 0x7e, 0xaa, 0x9f, 0xf7, 0xf8, 0x4d,
  4296  	0x23, 0x52, 0x61, 0xe5, 0x69, 0x07, 0x77, 0x3b, 0xc7, 0x92, 0x92, 0x47, 0x9b, 0xa0, 0x4a, 0xca,
  4297  	0xa4, 0x5d, 0x81, 0x21, 0x88, 0xdf, 0x22, 0x2a, 0x43, 0xa1, 0xf7, 0xac, 0x75, 0xa6, 0x96, 0xb4,
  4298  	0xff, 0xc9, 0xc1, 0x9a, 0x70, 0x0b, 0xf1, 0xcb, 0xe4, 0xeb, 0x5f, 0x66, 0x92, 0x17, 0x17, 0xb9,
  4299  	0xf4, 0xc5, 0x45, 0x14, 0x84, 0x72, 0xaf, 0x9e, 0x9f, 0x04, 0xa1, 0xfc, 0xc2, 0x23, 0xb5, 0xe3,
  4300  	0x17, 0xe6, 0xd9, 0xf1, 0xeb, 0xb0, 0xec, 0x90, 0x30, 0xd6, 0x5b, 0x05, 0x47, 0x45, 0x64, 0x43,
  4301  	0xd5, 0x70, 0x5d, 0x8f, 0xf2, 0x8b, 0x8c, 0xe8, 0x58, 0x74, 0x30, 0xd7, 0x9d, 0x75, 0x3c, 0xe3,
  4302  	0x66, 0x6b, 0x82, 0x24, 0x36, 0xe6, 0x24, 0x76, 0xe3, 0x27, 0xa0, 0xde, 0x6e, 0x30, 0x8f, 0x3b,
  4303  	0xfc, 0xc1, 0x47, 0x13, 0x6f, 0x48, 0xd8, 0xba, 0x38, 0xef, 0x3e, 0xed, 0x9e, 0x3e, 0xeb, 0xaa,
  4304  	0x4b, 0xac, 0x80, 0xcf, 0xbb, 0xdd, 0xa3, 0xee, 0x81, 0xaa, 0x20, 0x80, 0x52, 0xe7, 0xa7, 0x47,
  4305  	0xfd, 0xce, 0xbe, 0x9a, 0xdb, 0xfd, 0xf5, 0x3a, 0x94, 0x04, 0x93, 0xe8, 0x5b, 0x19, 0x09, 0x24,
  4306  	0xb3, 0xde, 0xd0, 0x4f, 0xe6, 0x8e, 0xa8, 0x53, 0x99, 0x74, 0x8d, 0xc7, 0x0b, 0xf7, 0x97, 0x2f,
  4307  	0x10, 0x4b, 0xe8, 0xaf, 0x15, 0x58, 0x49, 0xbd, 0x3e, 0x64, 0xbd, 0x0d, 0x9d, 0x91, 0x64, 0xd7,
  4308  	0xf8, 0xf1, 0x42, 0x7d, 0x63, 0x5e, 0x7e, 0xa9, 0x40, 0x35, 0x91, 0x5e, 0x86, 0xf6, 0x16, 0x49,
  4309  	0x49, 0x13, 0x9c, 0x7c, 0xba, 0x78, 0x36, 0x9b, 0xb6, 0xf4, 0xa1, 0x82, 0xfe, 0x4a, 0x81, 0x6a,
  4310  	0x22, 0xd1, 0x2a, 0x33, 0x2b, 0xd3, 0x69, 0x61, 0x99, 0x59, 0x99, 0x95, 0xd7, 0xb5, 0x84, 0xfe,
  4311  	0x42, 0x81, 0x4a, 0x9c, 0x34, 0x85, 0x1e, 0xce, 0x9f, 0x66, 0x25, 0x98, 0xf8, 0x64, 0xd1, 0xfc,
  4312  	0x2c, 0x6d, 0x09, 0xfd, 0x19, 0x94, 0xa3, 0x0c, 0x23, 0x94, 0xd5, 0x7b, 0xdd, 0x4a, 0x5f, 0x6a,
  4313  	0x3c, 0x9c, 0xbb, 0x5f, 0x72, 0xf8, 0x28, 0xed, 0x27, 0xf3, 0xf0, 0xb7, 0x12, 0x94, 0x1a, 0x0f,
  4314  	0xe7, 0xee, 0x17, 0x0f, 0xcf, 0x2c, 0x21, 0x91, 0x1d, 0x94, 0xd9, 0x12, 0xa6, 0xd3, 0x92, 0x32,
  4315  	0x5b, 0xc2, 0xac, 0x64, 0x24, 0xc1, 0x48, 0x22, 0xbf, 0x28, 0x33, 0x23, 0xd3, 0x39, 0x4c, 0x99,
  4316  	0x19, 0x99, 0x91, 0xce, 0xa4, 0x2d, 0xa1, 0x5f, 0x28, 0xc9, 0x73, 0xc1, 0xc3, 0xb9, 0xd3, 0x68,
  4317  	0xe6, 0x34, 0xc9, 0xa9, 0x44, 0x1e, 0xbe, 0x40, 0x7f, 0x21, 0x6f, 0x31, 0x44, 0x16, 0x0e, 0x9a,
  4318  	0x07, 0x2c, 0x95, 0xb8, 0xd3, 0xf8, 0x78, 0x31, 0x67, 0xc3, 0x99, 0xf8, 0x4b, 0x05, 0x60, 0x92,
  4319  	0xaf, 0x93, 0x99, 0x89, 0xa9, 0x44, 0xa1, 0xc6, 0xde, 0x02, 0x3d, 0x93, 0x0b, 0x24, 0xca, 0x27,
  4320  	0xc8, 0xbc, 0x40, 0x6e, 0xe5, 0x13, 0x65, 0x5e, 0x20, 0xb7, 0x73, 0x81, 0xb4, 0x25, 0xf4, 0x8f,
  4321  	0x0a, 0xac, 0x4f, 0xe5, 0x33, 0xa0, 0xc7, 0x77, 0x4c, 0x69, 0x69, 0x7c, 0xbe, 0x38, 0x40, 0xc4,
  4322  	0xda, 0xb6, 0xf2, 0xa1, 0x82, 0xfe, 0x46, 0x81, 0xd5, 0xd4, 0x1b, 0x30, 0xca, 0xec, 0xa5, 0x66,
  4323  	0x64, 0x46, 0x34, 0x1e, 0x2d, 0xd6, 0x39, 0x96, 0xd6, 0xdf, 0x29, 0x50, 0x4b, 0xa7, 0x03, 0xa0,
  4324  	0x47, 0xf3, 0x6d, 0x0b, 0xb7, 0x18, 0xfa, 0x6c, 0xc1, 0xde, 0x11, 0x47, 0x5f, 0x2c, 0xff, 0x51,
  4325  	0x51, 0x44, 0x6f, 0x25, 0xfe, 0xf9, 0xd1, 0x6f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x81, 0xc8, 0x42,
  4326  	0x4f, 0xd2, 0x30, 0x00, 0x00,
  4327  }