From 73a86b230aca1ee54448caa8402290ad82f8d116 Mon Sep 17 00:00:00 2001 From: Lakshmi Narasimhan Sundararajan Date: Mon, 9 Nov 2020 20:35:33 +0530 Subject: [PATCH 1/2] extend for fastpath Signed-off-by: Lakshmi Narasimhan Sundararajan --- handler/volume/describe.go | 32 + .../sdk/golang/api.pb.go | 31062 ++++++++++------ .../sdk/golang/api.pb.gw.go | 2363 +- 3 files changed, 20893 insertions(+), 12564 deletions(-) diff --git a/handler/volume/describe.go b/handler/volume/describe.go index cabab6e3..db90eee2 100644 --- a/handler/volume/describe.go +++ b/handler/volume/describe.go @@ -313,6 +313,38 @@ func (p *VolumeDescribeFormatter) addVolumeBasicInfo( if len(v.GetLocator().GetVolumeLabels()) != 0 { util.AddMap(t, "Labels:", v.GetLocator().GetVolumeLabels()) } + + // Extend for reporting fastpath info + t.AddLine("Fastpath preferred:", spec.GetFpPreference()) + fpConfig := v.GetFpConfig() + if spec.GetFpPreference() && fpConfig != nil { + t.AddLine("Fastpath Promoted:", fpConfig.GetPromote()) + t.AddLine("Fastpath dirty:", fpConfig.GetDirty()) + t.AddLine("Fastpath state:", fpConfig.GetStatus()) + t.AddLine("Fastpath Coordinator:", fpConfig.GetCoordUuid()) + t.AddLine("Fastpath replicas:", len(fpConfig.GetReplicas())) + for i, r := range fpConfig.GetReplicas() { + t.AddLine("Replica:", i) + t.AddLine("\tOn Node:", r.GetNodeUuid()) + t.AddLine("\tProtocol:", r.GetProtocol()) + t.AddLine("\tSecure:", r.GetAcl()) + t.AddLine("\tExported:", r.GetExported()) + if r.GetExported() { + t.AddLine("\t\tTarget:", r.GetTarget()) + t.AddLine("\t\tSource:", r.GetExportedDevice()) + if r.GetBlock() { + t.AddLine("\t\tType: BlockDevice") + } else { + t.AddLine("\t\tType: File") + } + } + + t.AddLine("\tImported:", r.GetImported()) + if r.Imported { + t.AddLine("\t\tMapped local device:", r.GetDevpath()) + } + } + } return nil } diff --git a/vendor/github.com/libopenstorage/openstorage-sdk-clients/sdk/golang/api.pb.go b/vendor/github.com/libopenstorage/openstorage-sdk-clients/sdk/golang/api.pb.go index 981b4b49..91800351 100644 --- a/vendor/github.com/libopenstorage/openstorage-sdk-clients/sdk/golang/api.pb.go +++ b/vendor/github.com/libopenstorage/openstorage-sdk-clients/sdk/golang/api.pb.go @@ -1,5 +1,5 @@ // Code generated by protoc-gen-go. DO NOT EDIT. -// source: api.proto +// source: api/api.proto package api @@ -85,7 +85,7 @@ func (x Status) String() string { return proto.EnumName(Status_name, int32(x)) } func (Status) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{0} + return fileDescriptor_api_620b9266792d7166, []int{0} } type DriverType int32 @@ -120,7 +120,7 @@ func (x DriverType) String() string { return proto.EnumName(DriverType_name, int32(x)) } func (DriverType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{1} + return fileDescriptor_api_620b9266792d7166, []int{1} } type FSType int32 @@ -164,7 +164,7 @@ func (x FSType) String() string { return proto.EnumName(FSType_name, int32(x)) } func (FSType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{2} + return fileDescriptor_api_620b9266792d7166, []int{2} } type GraphDriverChangeType int32 @@ -193,7 +193,7 @@ func (x GraphDriverChangeType) String() string { return proto.EnumName(GraphDriverChangeType_name, int32(x)) } func (GraphDriverChangeType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{3} + return fileDescriptor_api_620b9266792d7166, []int{3} } type SeverityType int32 @@ -222,7 +222,7 @@ func (x SeverityType) String() string { return proto.EnumName(SeverityType_name, int32(x)) } func (SeverityType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{4} + return fileDescriptor_api_620b9266792d7166, []int{4} } type ResourceType int32 @@ -233,6 +233,7 @@ const ( ResourceType_RESOURCE_TYPE_NODE ResourceType = 2 ResourceType_RESOURCE_TYPE_CLUSTER ResourceType = 3 ResourceType_RESOURCE_TYPE_DRIVE ResourceType = 4 + ResourceType_RESOURCE_TYPE_POOL ResourceType = 5 ) var ResourceType_name = map[int32]string{ @@ -241,6 +242,7 @@ var ResourceType_name = map[int32]string{ 2: "RESOURCE_TYPE_NODE", 3: "RESOURCE_TYPE_CLUSTER", 4: "RESOURCE_TYPE_DRIVE", + 5: "RESOURCE_TYPE_POOL", } var ResourceType_value = map[string]int32{ "RESOURCE_TYPE_NONE": 0, @@ -248,13 +250,14 @@ var ResourceType_value = map[string]int32{ "RESOURCE_TYPE_NODE": 2, "RESOURCE_TYPE_CLUSTER": 3, "RESOURCE_TYPE_DRIVE": 4, + "RESOURCE_TYPE_POOL": 5, } func (x ResourceType) String() string { return proto.EnumName(ResourceType_name, int32(x)) } func (ResourceType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{5} + return fileDescriptor_api_620b9266792d7166, []int{5} } type AlertActionType int32 @@ -283,7 +286,7 @@ func (x AlertActionType) String() string { return proto.EnumName(AlertActionType_name, int32(x)) } func (AlertActionType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{6} + return fileDescriptor_api_620b9266792d7166, []int{6} } type VolumeActionParam int32 @@ -311,7 +314,7 @@ func (x VolumeActionParam) String() string { return proto.EnumName(VolumeActionParam_name, int32(x)) } func (VolumeActionParam) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{7} + return fileDescriptor_api_620b9266792d7166, []int{7} } type CosType int32 @@ -340,7 +343,7 @@ func (x CosType) String() string { return proto.EnumName(CosType_name, int32(x)) } func (CosType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{8} + return fileDescriptor_api_620b9266792d7166, []int{8} } type IoProfile int32 @@ -352,6 +355,7 @@ const ( IoProfile_IO_PROFILE_DB_REMOTE IoProfile = 3 IoProfile_IO_PROFILE_CMS IoProfile = 4 IoProfile_IO_PROFILE_SYNC_SHARED IoProfile = 5 + IoProfile_IO_PROFILE_AUTO IoProfile = 6 ) var IoProfile_name = map[int32]string{ @@ -361,6 +365,7 @@ var IoProfile_name = map[int32]string{ 3: "IO_PROFILE_DB_REMOTE", 4: "IO_PROFILE_CMS", 5: "IO_PROFILE_SYNC_SHARED", + 6: "IO_PROFILE_AUTO", } var IoProfile_value = map[string]int32{ "IO_PROFILE_SEQUENTIAL": 0, @@ -369,13 +374,14 @@ var IoProfile_value = map[string]int32{ "IO_PROFILE_DB_REMOTE": 3, "IO_PROFILE_CMS": 4, "IO_PROFILE_SYNC_SHARED": 5, + "IO_PROFILE_AUTO": 6, } func (x IoProfile) String() string { return proto.EnumName(IoProfile_name, int32(x)) } func (IoProfile) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{9} + return fileDescriptor_api_620b9266792d7166, []int{9} } // VolumeState represents the state of a volume. @@ -433,7 +439,7 @@ func (x VolumeState) String() string { return proto.EnumName(VolumeState_name, int32(x)) } func (VolumeState) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{10} + return fileDescriptor_api_620b9266792d7166, []int{10} } // VolumeStatus represents a health status for a volume. @@ -471,7 +477,41 @@ func (x VolumeStatus) String() string { return proto.EnumName(VolumeStatus_name, int32(x)) } func (VolumeStatus) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{11} + return fileDescriptor_api_620b9266792d7166, []int{11} +} + +type FilesystemHealthStatus int32 + +const ( + // filesystem health status is unknown + FilesystemHealthStatus_FS_HEALTH_STATUS_UNKNOWN FilesystemHealthStatus = 0 + // filesystem is a healthy + FilesystemHealthStatus_FS_HEALTH_STATUS_HEALTHY FilesystemHealthStatus = 1 + // filesystem has errors, but can be fixed safely + FilesystemHealthStatus_FS_HEALTH_STATUS_SAFE_TO_FIX FilesystemHealthStatus = 2 + // filesystem has errors, these cannot be fixed automatically, + // user needs to review the reported errors and take appropriate action + FilesystemHealthStatus_FS_HEALTH_STATUS_NEEDS_INSPECTION FilesystemHealthStatus = 3 +) + +var FilesystemHealthStatus_name = map[int32]string{ + 0: "FS_HEALTH_STATUS_UNKNOWN", + 1: "FS_HEALTH_STATUS_HEALTHY", + 2: "FS_HEALTH_STATUS_SAFE_TO_FIX", + 3: "FS_HEALTH_STATUS_NEEDS_INSPECTION", +} +var FilesystemHealthStatus_value = map[string]int32{ + "FS_HEALTH_STATUS_UNKNOWN": 0, + "FS_HEALTH_STATUS_HEALTHY": 1, + "FS_HEALTH_STATUS_SAFE_TO_FIX": 2, + "FS_HEALTH_STATUS_NEEDS_INSPECTION": 3, +} + +func (x FilesystemHealthStatus) String() string { + return proto.EnumName(FilesystemHealthStatus_name, int32(x)) +} +func (FilesystemHealthStatus) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{12} } type StorageMedium int32 @@ -500,7 +540,7 @@ func (x StorageMedium) String() string { return proto.EnumName(StorageMedium_name, int32(x)) } func (StorageMedium) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{12} + return fileDescriptor_api_620b9266792d7166, []int{13} } type AttachState int32 @@ -529,7 +569,7 @@ func (x AttachState) String() string { return proto.EnumName(AttachState_name, int32(x)) } func (AttachState) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{13} + return fileDescriptor_api_620b9266792d7166, []int{14} } type OperationFlags int32 @@ -556,7 +596,7 @@ func (x OperationFlags) String() string { return proto.EnumName(OperationFlags_name, int32(x)) } func (OperationFlags) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{14} + return fileDescriptor_api_620b9266792d7166, []int{15} } type HardwareType int32 @@ -585,7 +625,151 @@ func (x HardwareType) String() string { return proto.EnumName(HardwareType_name, int32(x)) } func (HardwareType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{15} + return fileDescriptor_api_620b9266792d7166, []int{16} +} + +// ExportProtocol defines how the device is exported.. +type ExportProtocol int32 + +const ( + // Invalid uninitialized value + ExportProtocol_INVALID ExportProtocol = 0 + // PXD the volume is exported over Portworx block interace. + ExportProtocol_PXD ExportProtocol = 1 + // ISCSI the volume is exported over ISCSI. + ExportProtocol_ISCSI ExportProtocol = 2 + // NFS the volume is exported over NFS. + ExportProtocol_NFS ExportProtocol = 3 + // Custom the volume is exported over custom interace. + ExportProtocol_CUSTOM ExportProtocol = 4 +) + +var ExportProtocol_name = map[int32]string{ + 0: "INVALID", + 1: "PXD", + 2: "ISCSI", + 3: "NFS", + 4: "CUSTOM", +} +var ExportProtocol_value = map[string]int32{ + "INVALID": 0, + "PXD": 1, + "ISCSI": 2, + "NFS": 3, + "CUSTOM": 4, +} + +func (x ExportProtocol) String() string { + return proto.EnumName(ExportProtocol_name, int32(x)) +} +func (ExportProtocol) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{17} +} + +// ProxyProtocol defines the protocol used for proxy. +type ProxyProtocol int32 + +const ( + // Invalid uninitialized value + ProxyProtocol_PROXY_PROTOCOL_INVALID ProxyProtocol = 0 + // NFS indicates that the external data source is NFS and the volume + // will be reflected over NFS protocol + ProxyProtocol_PROXY_PROTOCOL_NFS ProxyProtocol = 1 + // S3 indicates that the external data source is an object store. + ProxyProtocol_PROXY_PROTOCOL_S3 ProxyProtocol = 2 + // PXD indicates that the external data source is a Portworx block volume. + ProxyProtocol_PROXY_PROTOCOL_PXD ProxyProtocol = 3 +) + +var ProxyProtocol_name = map[int32]string{ + 0: "PROXY_PROTOCOL_INVALID", + 1: "PROXY_PROTOCOL_NFS", + 2: "PROXY_PROTOCOL_S3", + 3: "PROXY_PROTOCOL_PXD", +} +var ProxyProtocol_value = map[string]int32{ + "PROXY_PROTOCOL_INVALID": 0, + "PROXY_PROTOCOL_NFS": 1, + "PROXY_PROTOCOL_S3": 2, + "PROXY_PROTOCOL_PXD": 3, +} + +func (x ProxyProtocol) String() string { + return proto.EnumName(ProxyProtocol_name, int32(x)) +} +func (ProxyProtocol) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{18} +} + +// fastpath extensions +type FastpathStatus int32 + +const ( + // backward compatible state + FastpathStatus_FASTPATH_UNKNOWN FastpathStatus = 0 + // fastpath activated and enabled + FastpathStatus_FASTPATH_ACTIVE FastpathStatus = 1 + // fastpath inactive + FastpathStatus_FASTPATH_INACTIVE FastpathStatus = 2 + // fastpath unsupported, disabled + FastpathStatus_FASTPATH_UNSUPPORTED FastpathStatus = 3 + // fastpath operation setup in progress + FastpathStatus_FASTPATH_PENDING FastpathStatus = 4 + // fastpath error'd, possible stuck failure + FastpathStatus_FASTPATH_ERRORED FastpathStatus = 5 +) + +var FastpathStatus_name = map[int32]string{ + 0: "FASTPATH_UNKNOWN", + 1: "FASTPATH_ACTIVE", + 2: "FASTPATH_INACTIVE", + 3: "FASTPATH_UNSUPPORTED", + 4: "FASTPATH_PENDING", + 5: "FASTPATH_ERRORED", +} +var FastpathStatus_value = map[string]int32{ + "FASTPATH_UNKNOWN": 0, + "FASTPATH_ACTIVE": 1, + "FASTPATH_INACTIVE": 2, + "FASTPATH_UNSUPPORTED": 3, + "FASTPATH_PENDING": 4, + "FASTPATH_ERRORED": 5, +} + +func (x FastpathStatus) String() string { + return proto.EnumName(FastpathStatus_name, int32(x)) +} +func (FastpathStatus) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{19} +} + +type FastpathProtocol int32 + +const ( + FastpathProtocol_FASTPATH_PROTO_UNKNOWN FastpathProtocol = 0 + FastpathProtocol_FASTPATH_PROTO_NVMEOF_TCP FastpathProtocol = 1 + FastpathProtocol_FASTPATH_PROTO_ISCSI FastpathProtocol = 2 + FastpathProtocol_FASTPATH_PROTO_LOCAL FastpathProtocol = 3 +) + +var FastpathProtocol_name = map[int32]string{ + 0: "FASTPATH_PROTO_UNKNOWN", + 1: "FASTPATH_PROTO_NVMEOF_TCP", + 2: "FASTPATH_PROTO_ISCSI", + 3: "FASTPATH_PROTO_LOCAL", +} +var FastpathProtocol_value = map[string]int32{ + "FASTPATH_PROTO_UNKNOWN": 0, + "FASTPATH_PROTO_NVMEOF_TCP": 1, + "FASTPATH_PROTO_ISCSI": 2, + "FASTPATH_PROTO_LOCAL": 3, +} + +func (x FastpathProtocol) String() string { + return proto.EnumName(FastpathProtocol_name, int32(x)) +} +func (FastpathProtocol) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{20} } // Defines times of day @@ -631,7 +815,45 @@ func (x SdkTimeWeekday) String() string { return proto.EnumName(SdkTimeWeekday_name, int32(x)) } func (SdkTimeWeekday) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{16} + return fileDescriptor_api_620b9266792d7166, []int{21} +} + +// StorageRebalanceJobState is an enum for state of the current rebalance operation +type StorageRebalanceJobState int32 + +const ( + // Pending indicates job is still pending and has not started work + StorageRebalanceJobState_PENDING StorageRebalanceJobState = 0 + // Running indicates job is actively running + StorageRebalanceJobState_RUNNING StorageRebalanceJobState = 1 + // Done indicates job has finished processing + StorageRebalanceJobState_DONE StorageRebalanceJobState = 2 + // Paused indicates job is paused + StorageRebalanceJobState_PAUSED StorageRebalanceJobState = 3 + // Cancelled indicates job is cancelled + StorageRebalanceJobState_CANCELLED StorageRebalanceJobState = 4 +) + +var StorageRebalanceJobState_name = map[int32]string{ + 0: "PENDING", + 1: "RUNNING", + 2: "DONE", + 3: "PAUSED", + 4: "CANCELLED", +} +var StorageRebalanceJobState_value = map[string]int32{ + "PENDING": 0, + "RUNNING": 1, + "DONE": 2, + "PAUSED": 3, + "CANCELLED": 4, +} + +func (x StorageRebalanceJobState) String() string { + return proto.EnumName(StorageRebalanceJobState_name, int32(x)) +} +func (StorageRebalanceJobState) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{22} } // CloudBackup operations types @@ -661,7 +883,7 @@ func (x SdkCloudBackupOpType) String() string { return proto.EnumName(SdkCloudBackupOpType_name, int32(x)) } func (SdkCloudBackupOpType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{17} + return fileDescriptor_api_620b9266792d7166, []int{23} } // CloudBackup status types @@ -720,7 +942,7 @@ func (x SdkCloudBackupStatusType) String() string { return proto.EnumName(SdkCloudBackupStatusType_name, int32(x)) } func (SdkCloudBackupStatusType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{18} + return fileDescriptor_api_620b9266792d7166, []int{24} } // SdkCloudBackupRequestedState defines states to set a specified backup or restore @@ -755,7 +977,7 @@ func (x SdkCloudBackupRequestedState) String() string { return proto.EnumName(SdkCloudBackupRequestedState_name, int32(x)) } func (SdkCloudBackupRequestedState) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{19} + return fileDescriptor_api_620b9266792d7166, []int{25} } // Defines the types of enforcement on the given rules @@ -781,7 +1003,110 @@ func (x EnforcementType) String() string { return proto.EnumName(EnforcementType_name, int32(x)) } func (EnforcementType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{20} + return fileDescriptor_api_620b9266792d7166, []int{26} +} + +type RestoreParamBoolType int32 + +const ( + RestoreParamBoolType_PARAM_BKUPSRC RestoreParamBoolType = 0 + RestoreParamBoolType_PARAM_FALSE RestoreParamBoolType = 1 + RestoreParamBoolType_PARAM_TRUE RestoreParamBoolType = 2 +) + +var RestoreParamBoolType_name = map[int32]string{ + 0: "PARAM_BKUPSRC", + 1: "PARAM_FALSE", + 2: "PARAM_TRUE", +} +var RestoreParamBoolType_value = map[string]int32{ + "PARAM_BKUPSRC": 0, + "PARAM_FALSE": 1, + "PARAM_TRUE": 2, +} + +func (x RestoreParamBoolType) String() string { + return proto.EnumName(RestoreParamBoolType_name, int32(x)) +} +func (RestoreParamBoolType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{27} +} + +type Xattr_Value int32 + +const ( + // Value is uninitialized or unknown + Xattr_UNSPECIFIED Xattr_Value = 0 + // Enable on-demand copy-on-write on the volume + Xattr_COW_ON_DEMAND Xattr_Value = 1 +) + +var Xattr_Value_name = map[int32]string{ + 0: "UNSPECIFIED", + 1: "COW_ON_DEMAND", +} +var Xattr_Value_value = map[string]int32{ + "UNSPECIFIED": 0, + "COW_ON_DEMAND": 1, +} + +func (x Xattr_Value) String() string { + return proto.EnumName(Xattr_Value_name, int32(x)) +} +func (Xattr_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{8, 0} +} + +type ScanPolicy_ScanTrigger int32 + +const ( + ScanPolicy_SCAN_TRIGGER_NONE ScanPolicy_ScanTrigger = 0 + ScanPolicy_SCAN_TRIGGER_ON_MOUNT ScanPolicy_ScanTrigger = 1 + ScanPolicy_SCAN_TRIGGER_ON_NEXT_MOUNT ScanPolicy_ScanTrigger = 2 +) + +var ScanPolicy_ScanTrigger_name = map[int32]string{ + 0: "SCAN_TRIGGER_NONE", + 1: "SCAN_TRIGGER_ON_MOUNT", + 2: "SCAN_TRIGGER_ON_NEXT_MOUNT", +} +var ScanPolicy_ScanTrigger_value = map[string]int32{ + "SCAN_TRIGGER_NONE": 0, + "SCAN_TRIGGER_ON_MOUNT": 1, + "SCAN_TRIGGER_ON_NEXT_MOUNT": 2, +} + +func (x ScanPolicy_ScanTrigger) String() string { + return proto.EnumName(ScanPolicy_ScanTrigger_name, int32(x)) +} +func (ScanPolicy_ScanTrigger) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{17, 0} +} + +type ScanPolicy_ScanAction int32 + +const ( + ScanPolicy_SCAN_ACTION_NONE ScanPolicy_ScanAction = 0 + ScanPolicy_SCAN_ACTION_SCAN_ONLY ScanPolicy_ScanAction = 1 + ScanPolicy_SCAN_ACTION_SCAN_REPAIR ScanPolicy_ScanAction = 2 +) + +var ScanPolicy_ScanAction_name = map[int32]string{ + 0: "SCAN_ACTION_NONE", + 1: "SCAN_ACTION_SCAN_ONLY", + 2: "SCAN_ACTION_SCAN_REPAIR", +} +var ScanPolicy_ScanAction_value = map[string]int32{ + "SCAN_ACTION_NONE": 0, + "SCAN_ACTION_SCAN_ONLY": 1, + "SCAN_ACTION_SCAN_REPAIR": 2, +} + +func (x ScanPolicy_ScanAction) String() string { + return proto.EnumName(ScanPolicy_ScanAction_name, int32(x)) +} +func (ScanPolicy_ScanAction) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{17, 1} } // This defines an operator for the policy comparisons @@ -811,7 +1136,7 @@ func (x VolumeSpecPolicy_PolicyOp) String() string { return proto.EnumName(VolumeSpecPolicy_PolicyOp_name, int32(x)) } func (VolumeSpecPolicy_PolicyOp) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{10, 0} + return fileDescriptor_api_620b9266792d7166, []int{20, 0} } // Access types can be set by owner to have different levels of access to @@ -847,7 +1172,201 @@ func (x Ownership_AccessType) String() string { return proto.EnumName(Ownership_AccessType_name, int32(x)) } func (Ownership_AccessType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{13, 0} + return fileDescriptor_api_620b9266792d7166, []int{23, 0} +} + +// Type are the supported job types +type Job_Type int32 + +const ( + // Unspecified + Job_UNSPECIFIED_TYPE Job_Type = 0 + // None + Job_NONE Job_Type = 1 + // Job for draining volume attachments + Job_DRAIN_ATTACHMENTS Job_Type = 2 + // Job for transferring cloud drives between nodes + Job_CLOUD_DRIVE_TRANSFER Job_Type = 3 +) + +var Job_Type_name = map[int32]string{ + 0: "UNSPECIFIED_TYPE", + 1: "NONE", + 2: "DRAIN_ATTACHMENTS", + 3: "CLOUD_DRIVE_TRANSFER", +} +var Job_Type_value = map[string]int32{ + "UNSPECIFIED_TYPE": 0, + "NONE": 1, + "DRAIN_ATTACHMENTS": 2, + "CLOUD_DRIVE_TRANSFER": 3, +} + +func (x Job_Type) String() string { + return proto.EnumName(Job_Type_name, int32(x)) +} +func (Job_Type) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{169, 0} +} + +// State is an enum for state of a node drain operation +type Job_State int32 + +const ( + // Unspecified + Job_UNSPECIFIED_STATE Job_State = 0 + // Pending indicates job is still pending and has not started work + Job_PENDING Job_State = 1 + // Running indicates job is actively running + Job_RUNNING Job_State = 2 + // Done indicates job has finished processing + Job_DONE Job_State = 3 + // Paused indicates job is paused + Job_PAUSED Job_State = 4 + // Cancelled indicates job is cancelled + Job_CANCELLED Job_State = 5 + // Failed indicates job has failed + Job_FAILED Job_State = 6 +) + +var Job_State_name = map[int32]string{ + 0: "UNSPECIFIED_STATE", + 1: "PENDING", + 2: "RUNNING", + 3: "DONE", + 4: "PAUSED", + 5: "CANCELLED", + 6: "FAILED", +} +var Job_State_value = map[string]int32{ + "UNSPECIFIED_STATE": 0, + "PENDING": 1, + "RUNNING": 2, + "DONE": 3, + "PAUSED": 4, + "CANCELLED": 5, + "FAILED": 6, +} + +func (x Job_State) String() string { + return proto.EnumName(Job_State_name, int32(x)) +} +func (Job_State) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{169, 1} +} + +// Type is an enum that defines the type fo the trigger threshold +type StorageRebalanceTriggerThreshold_Type int32 + +const ( + // AbsolutePercent indicates absolute percent comparison. + // Example, 75 % used of capacity, or 50 % provisioned of capacity. + StorageRebalanceTriggerThreshold_ABSOLUTE_PERCENT StorageRebalanceTriggerThreshold_Type = 0 + // DeltaMeanPercent indicates mean percent comparision threshold. + // Example, 10 % more than mean for cluster. + StorageRebalanceTriggerThreshold_DELTA_MEAN_PERCENT StorageRebalanceTriggerThreshold_Type = 1 +) + +var StorageRebalanceTriggerThreshold_Type_name = map[int32]string{ + 0: "ABSOLUTE_PERCENT", + 1: "DELTA_MEAN_PERCENT", +} +var StorageRebalanceTriggerThreshold_Type_value = map[string]int32{ + "ABSOLUTE_PERCENT": 0, + "DELTA_MEAN_PERCENT": 1, +} + +func (x StorageRebalanceTriggerThreshold_Type) String() string { + return proto.EnumName(StorageRebalanceTriggerThreshold_Type_name, int32(x)) +} +func (StorageRebalanceTriggerThreshold_Type) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{190, 0} +} + +// Metric is an enum that defines the metric to use for rebalance +type StorageRebalanceTriggerThreshold_Metric int32 + +const ( + // ProvisionSpace indicates rebalance for provisioned space + StorageRebalanceTriggerThreshold_PROVISION_SPACE StorageRebalanceTriggerThreshold_Metric = 0 + // UsedSpace indicates rebalance for used space + StorageRebalanceTriggerThreshold_USED_SPACE StorageRebalanceTriggerThreshold_Metric = 1 +) + +var StorageRebalanceTriggerThreshold_Metric_name = map[int32]string{ + 0: "PROVISION_SPACE", + 1: "USED_SPACE", +} +var StorageRebalanceTriggerThreshold_Metric_value = map[string]int32{ + "PROVISION_SPACE": 0, + "USED_SPACE": 1, +} + +func (x StorageRebalanceTriggerThreshold_Metric) String() string { + return proto.EnumName(StorageRebalanceTriggerThreshold_Metric_name, int32(x)) +} +func (StorageRebalanceTriggerThreshold_Metric) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{190, 1} +} + +// Type is an enum to indicate the type of work summary +type StorageRebalanceWorkSummary_Type int32 + +const ( + // summary for unbalanced pools + StorageRebalanceWorkSummary_UnbalancedPools StorageRebalanceWorkSummary_Type = 0 + // summary for unbalanced volumes + StorageRebalanceWorkSummary_UnbalancedVolumes StorageRebalanceWorkSummary_Type = 1 + // summary for unbalanced provisioned space + StorageRebalanceWorkSummary_UnbalancedProvisionedSpaceBytes StorageRebalanceWorkSummary_Type = 2 + // summary for unbalanced used space + StorageRebalanceWorkSummary_UnbalancedUsedSpaceBytes StorageRebalanceWorkSummary_Type = 3 +) + +var StorageRebalanceWorkSummary_Type_name = map[int32]string{ + 0: "UnbalancedPools", + 1: "UnbalancedVolumes", + 2: "UnbalancedProvisionedSpaceBytes", + 3: "UnbalancedUsedSpaceBytes", +} +var StorageRebalanceWorkSummary_Type_value = map[string]int32{ + "UnbalancedPools": 0, + "UnbalancedVolumes": 1, + "UnbalancedProvisionedSpaceBytes": 2, + "UnbalancedUsedSpaceBytes": 3, +} + +func (x StorageRebalanceWorkSummary_Type) String() string { + return proto.EnumName(StorageRebalanceWorkSummary_Type_name, int32(x)) +} +func (StorageRebalanceWorkSummary_Type) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{195, 0} +} + +// StorageRebalanceAction describes type of rebalance action +type StorageRebalanceAudit_StorageRebalanceAction int32 + +const ( + // Indicates new replica was added + StorageRebalanceAudit_ADD_REPLICA StorageRebalanceAudit_StorageRebalanceAction = 0 + // Indicates existing replica was removed + StorageRebalanceAudit_REMOVE_REPLICA StorageRebalanceAudit_StorageRebalanceAction = 1 +) + +var StorageRebalanceAudit_StorageRebalanceAction_name = map[int32]string{ + 0: "ADD_REPLICA", + 1: "REMOVE_REPLICA", +} +var StorageRebalanceAudit_StorageRebalanceAction_value = map[string]int32{ + "ADD_REPLICA": 0, + "REMOVE_REPLICA": 1, +} + +func (x StorageRebalanceAudit_StorageRebalanceAction) String() string { + return proto.EnumName(StorageRebalanceAudit_StorageRebalanceAction_name, int32(x)) +} +func (StorageRebalanceAudit_StorageRebalanceAction) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{196, 0} } // OperationStatus captures the various statuses of a storage pool operation @@ -881,7 +1400,7 @@ func (x SdkStoragePool_OperationStatus) String() string { return proto.EnumName(SdkStoragePool_OperationStatus_name, int32(x)) } func (SdkStoragePool_OperationStatus) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{151, 0} + return fileDescriptor_api_620b9266792d7166, []int{203, 0} } // OperationType defines the various operations that are performed on a storage pool @@ -903,7 +1422,7 @@ func (x SdkStoragePool_OperationType) String() string { return proto.EnumName(SdkStoragePool_OperationType_name, int32(x)) } func (SdkStoragePool_OperationType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{151, 1} + return fileDescriptor_api_620b9266792d7166, []int{203, 1} } // Defines the operation types available to resize a storage pool @@ -933,7 +1452,102 @@ func (x SdkStoragePool_ResizeOperationType) String() string { return proto.EnumName(SdkStoragePool_ResizeOperationType_name, int32(x)) } func (SdkStoragePool_ResizeOperationType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{151, 2} + return fileDescriptor_api_620b9266792d7166, []int{203, 2} +} + +// FilesystemTrimStatus represents the status codes returned from +// OpenStorageFilesystemTrim service APIs() +type FilesystemTrim_FilesystemTrimStatus int32 + +const ( + // Filesystem Trim operation is an unknown state + FilesystemTrim_FS_TRIM_UNKNOWN FilesystemTrim_FilesystemTrimStatus = 0 + // Filesystem Trim operation is not running for the specified volume + FilesystemTrim_FS_TRIM_NOT_RUNNING FilesystemTrim_FilesystemTrimStatus = 1 + // Filesystem Trim operation started for the specified volume + FilesystemTrim_FS_TRIM_STARTED FilesystemTrim_FilesystemTrimStatus = 2 + // Filesystem Trim operation is in progress for the specified volume + FilesystemTrim_FS_TRIM_INPROGRESS FilesystemTrim_FilesystemTrimStatus = 3 + // Filesystem Trim operation was stopped by the user for the specified volume + FilesystemTrim_FS_TRIM_STOPPED FilesystemTrim_FilesystemTrimStatus = 4 + // Filesystem Trim operation completed successfully for the specified volume + FilesystemTrim_FS_TRIM_COMPLETED FilesystemTrim_FilesystemTrimStatus = 5 + // Filesystem Trim operation failed due to internal error for the specified + // volume + FilesystemTrim_FS_TRIM_FAILED FilesystemTrim_FilesystemTrimStatus = 6 +) + +var FilesystemTrim_FilesystemTrimStatus_name = map[int32]string{ + 0: "FS_TRIM_UNKNOWN", + 1: "FS_TRIM_NOT_RUNNING", + 2: "FS_TRIM_STARTED", + 3: "FS_TRIM_INPROGRESS", + 4: "FS_TRIM_STOPPED", + 5: "FS_TRIM_COMPLETED", + 6: "FS_TRIM_FAILED", +} +var FilesystemTrim_FilesystemTrimStatus_value = map[string]int32{ + "FS_TRIM_UNKNOWN": 0, + "FS_TRIM_NOT_RUNNING": 1, + "FS_TRIM_STARTED": 2, + "FS_TRIM_INPROGRESS": 3, + "FS_TRIM_STOPPED": 4, + "FS_TRIM_COMPLETED": 5, + "FS_TRIM_FAILED": 6, +} + +func (x FilesystemTrim_FilesystemTrimStatus) String() string { + return proto.EnumName(FilesystemTrim_FilesystemTrimStatus_name, int32(x)) +} +func (FilesystemTrim_FilesystemTrimStatus) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{266, 0} +} + +// FilesystemChecktatus represents the status codes returned from +// OpenStorageFilesystemCheck service APIs() +type FilesystemCheck_FilesystemCheckStatus int32 + +const ( + // Filesystem Check operation is an unknown state + FilesystemCheck_FS_CHECK_UNKNOWN FilesystemCheck_FilesystemCheckStatus = 0 + // FilesystemCheck operation not running for the specified volume + FilesystemCheck_FS_CHECK_NOT_RUNNING FilesystemCheck_FilesystemCheckStatus = 1 + // FilesystemCheck operation started for the specified volume + FilesystemCheck_FS_CHECK_STARTED FilesystemCheck_FilesystemCheckStatus = 2 + // FilesystemCheck operation is in progress + FilesystemCheck_FS_CHECK_INPROGRESS FilesystemCheck_FilesystemCheckStatus = 3 + // FilesystemCheck operation was stopped by the user + FilesystemCheck_FS_CHECK_STOPPED FilesystemCheck_FilesystemCheckStatus = 4 + // FilesystemCheck operation completed successfully + FilesystemCheck_FS_CHECK_COMPLETED FilesystemCheck_FilesystemCheckStatus = 5 + // FilesystemCheck operation failed due to internal error + FilesystemCheck_FS_CHECK_FAILED FilesystemCheck_FilesystemCheckStatus = 6 +) + +var FilesystemCheck_FilesystemCheckStatus_name = map[int32]string{ + 0: "FS_CHECK_UNKNOWN", + 1: "FS_CHECK_NOT_RUNNING", + 2: "FS_CHECK_STARTED", + 3: "FS_CHECK_INPROGRESS", + 4: "FS_CHECK_STOPPED", + 5: "FS_CHECK_COMPLETED", + 6: "FS_CHECK_FAILED", +} +var FilesystemCheck_FilesystemCheckStatus_value = map[string]int32{ + "FS_CHECK_UNKNOWN": 0, + "FS_CHECK_NOT_RUNNING": 1, + "FS_CHECK_STARTED": 2, + "FS_CHECK_INPROGRESS": 3, + "FS_CHECK_STOPPED": 4, + "FS_CHECK_COMPLETED": 5, + "FS_CHECK_FAILED": 6, +} + +func (x FilesystemCheck_FilesystemCheckStatus) String() string { + return proto.EnumName(FilesystemCheck_FilesystemCheckStatus_name, int32(x)) +} +func (FilesystemCheck_FilesystemCheckStatus) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{273, 0} } type SdkServiceCapability_OpenStorageService_Type int32 @@ -1006,7 +1620,7 @@ func (x SdkServiceCapability_OpenStorageService_Type) String() string { return proto.EnumName(SdkServiceCapability_OpenStorageService_Type_name, int32(x)) } func (SdkServiceCapability_OpenStorageService_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{216, 0, 0} + return fileDescriptor_api_620b9266792d7166, []int{284, 0, 0} } // These values are constants that can be used by the @@ -1019,29 +1633,29 @@ const ( // SDK version major value of this specification SdkVersion_Major SdkVersion_Version = 0 // SDK version minor value of this specification - SdkVersion_Minor SdkVersion_Version = 42 + SdkVersion_Minor SdkVersion_Version = 104 // SDK version patch value of this specification - SdkVersion_Patch SdkVersion_Version = 22 + SdkVersion_Patch SdkVersion_Version = 0 ) var SdkVersion_Version_name = map[int32]string{ 0: "MUST_HAVE_ZERO_VALUE", // Duplicate value: 0: "Major", - 42: "Minor", - 22: "Patch", + 104: "Minor", + // Duplicate value: 0: "Patch", } var SdkVersion_Version_value = map[string]int32{ "MUST_HAVE_ZERO_VALUE": 0, "Major": 0, - "Minor": 42, - "Patch": 22, + "Minor": 104, + "Patch": 0, } func (x SdkVersion_Version) String() string { return proto.EnumName(SdkVersion_Version_name, int32(x)) } func (SdkVersion_Version) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{217, 0} + return fileDescriptor_api_620b9266792d7166, []int{285, 0} } type CloudMigrate_OperationType int32 @@ -1073,7 +1687,7 @@ func (x CloudMigrate_OperationType) String() string { return proto.EnumName(CloudMigrate_OperationType_name, int32(x)) } func (CloudMigrate_OperationType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{219, 0} + return fileDescriptor_api_620b9266792d7166, []int{287, 0} } type CloudMigrate_Stage int32 @@ -1105,7 +1719,7 @@ func (x CloudMigrate_Stage) String() string { return proto.EnumName(CloudMigrate_Stage_name, int32(x)) } func (CloudMigrate_Stage) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{219, 1} + return fileDescriptor_api_620b9266792d7166, []int{287, 1} } type CloudMigrate_Status int32 @@ -1143,7 +1757,7 @@ func (x CloudMigrate_Status) String() string { return proto.EnumName(CloudMigrate_Status_name, int32(x)) } func (CloudMigrate_Status) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{219, 2} + return fileDescriptor_api_620b9266792d7166, []int{287, 2} } type ClusterPairMode_Mode int32 @@ -1168,7 +1782,7 @@ func (x ClusterPairMode_Mode) String() string { return proto.EnumName(ClusterPairMode_Mode_name, int32(x)) } func (ClusterPairMode_Mode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{233, 0} + return fileDescriptor_api_620b9266792d7166, []int{301, 0} } // This defines operator types used in a label matching rule @@ -1210,7 +1824,7 @@ func (x LabelSelectorRequirement_Operator) String() string { return proto.EnumName(LabelSelectorRequirement_Operator_name, int32(x)) } func (LabelSelectorRequirement_Operator) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{261, 0} + return fileDescriptor_api_620b9266792d7166, []int{329, 0} } // StorageResource groups properties of a storage device. @@ -1252,7 +1866,7 @@ func (m *StorageResource) Reset() { *m = StorageResource{} } func (m *StorageResource) String() string { return proto.CompactTextString(m) } func (*StorageResource) ProtoMessage() {} func (*StorageResource) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{0} + return fileDescriptor_api_620b9266792d7166, []int{0} } func (m *StorageResource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_StorageResource.Unmarshal(m, b) @@ -1399,7 +2013,7 @@ func (m *StoragePool) Reset() { *m = StoragePool{} } func (m *StoragePool) String() string { return proto.CompactTextString(m) } func (*StoragePool) ProtoMessage() {} func (*StoragePool) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{1} + return fileDescriptor_api_620b9266792d7166, []int{1} } func (m *StoragePool) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_StoragePool.Unmarshal(m, b) @@ -1501,7 +2115,7 @@ func (m *StoragePoolOperation) Reset() { *m = StoragePoolOperation{} } func (m *StoragePoolOperation) String() string { return proto.CompactTextString(m) } func (*StoragePoolOperation) ProtoMessage() {} func (*StoragePoolOperation) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{2} + return fileDescriptor_api_620b9266792d7166, []int{2} } func (m *StoragePoolOperation) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_StoragePoolOperation.Unmarshal(m, b) @@ -1571,7 +2185,7 @@ func (m *VolumeLocator) Reset() { *m = VolumeLocator{} } func (m *VolumeLocator) String() string { return proto.CompactTextString(m) } func (*VolumeLocator) ProtoMessage() {} func (*VolumeLocator) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{3} + return fileDescriptor_api_620b9266792d7166, []int{3} } func (m *VolumeLocator) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeLocator.Unmarshal(m, b) @@ -1640,7 +2254,7 @@ func (m *VolumeInspectOptions) Reset() { *m = VolumeInspectOptions{} } func (m *VolumeInspectOptions) String() string { return proto.CompactTextString(m) } func (*VolumeInspectOptions) ProtoMessage() {} func (*VolumeInspectOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{4} + return fileDescriptor_api_620b9266792d7166, []int{4} } func (m *VolumeInspectOptions) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeInspectOptions.Unmarshal(m, b) @@ -1684,7 +2298,7 @@ func (m *Source) Reset() { *m = Source{} } func (m *Source) String() string { return proto.CompactTextString(m) } func (*Source) ProtoMessage() {} func (*Source) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{5} + return fileDescriptor_api_620b9266792d7166, []int{5} } func (m *Source) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Source.Unmarshal(m, b) @@ -1732,7 +2346,7 @@ func (m *Group) Reset() { *m = Group{} } func (m *Group) String() string { return proto.CompactTextString(m) } func (*Group) ProtoMessage() {} func (*Group) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{6} + return fileDescriptor_api_620b9266792d7166, []int{6} } func (m *Group) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Group.Unmarshal(m, b) @@ -1764,7 +2378,9 @@ type IoStrategy struct { // AsyncIO enables kaio. AsyncIo bool `protobuf:"varint,1,opt,name=async_io,json=asyncIo" json:"async_io,omitempty"` // EarlyAck enables acks for async I/O at the source. - EarlyAck bool `protobuf:"varint,2,opt,name=early_ack,json=earlyAck" json:"early_ack,omitempty"` + EarlyAck bool `protobuf:"varint,2,opt,name=early_ack,json=earlyAck" json:"early_ack,omitempty"` + // Enable direct I/O on the backing datastore + DirectIo bool `protobuf:"varint,3,opt,name=direct_io,json=directIo" json:"direct_io,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1774,7 +2390,7 @@ func (m *IoStrategy) Reset() { *m = IoStrategy{} } func (m *IoStrategy) String() string { return proto.CompactTextString(m) } func (*IoStrategy) ProtoMessage() {} func (*IoStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{7} + return fileDescriptor_api_620b9266792d7166, []int{7} } func (m *IoStrategy) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_IoStrategy.Unmarshal(m, b) @@ -1808,7593 +2424,12315 @@ func (m *IoStrategy) GetEarlyAck() bool { return false } -// VolumeSpec has the properties needed to create a volume. -type VolumeSpec struct { - // Ephemeral storage - Ephemeral bool `protobuf:"varint,1,opt,name=ephemeral" json:"ephemeral,omitempty"` - // Size specifies the thin provisioned volume size in bytes - Size uint64 `protobuf:"varint,2,opt,name=size" json:"size,omitempty"` - // Format specifies the filesystem for this volume. - Format FSType `protobuf:"varint,3,opt,name=format,enum=openstorage.api.FSType" json:"format,omitempty"` - // BlockSize for the filesystem. - BlockSize int64 `protobuf:"varint,4,opt,name=block_size,json=blockSize" json:"block_size,omitempty"` - // HaLevel specifies the number of copies of data. - HaLevel int64 `protobuf:"varint,5,opt,name=ha_level,json=haLevel" json:"ha_level,omitempty"` - // Cos specifies the relative class of service. - Cos CosType `protobuf:"varint,6,opt,name=cos,enum=openstorage.api.CosType" json:"cos,omitempty"` - // IoProfile provides a hint about application using this volume. - IoProfile IoProfile `protobuf:"varint,7,opt,name=io_profile,json=ioProfile,enum=openstorage.api.IoProfile" json:"io_profile,omitempty"` - // Dedupe specifies if the volume data is to be de-duplicated. - Dedupe bool `protobuf:"varint,8,opt,name=dedupe" json:"dedupe,omitempty"` - // SnapshotInterval in minutes, set to 0 to disable snapshots - SnapshotInterval uint32 `protobuf:"varint,9,opt,name=snapshot_interval,json=snapshotInterval" json:"snapshot_interval,omitempty"` - // (deprecated, do not use) VolumeLabels configuration labels - VolumeLabels map[string]string `protobuf:"bytes,10,rep,name=volume_labels,json=volumeLabels" json:"volume_labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // Shared is true if this volume can be concurrently accessed by multiple users. - Shared bool `protobuf:"varint,11,opt,name=shared" json:"shared,omitempty"` - // ReplicaSet is the desired set of nodes for the volume data. - ReplicaSet *ReplicaSet `protobuf:"bytes,12,opt,name=replica_set,json=replicaSet" json:"replica_set,omitempty"` - // Aggregation level Specifies the number of parts the volume can be aggregated from. - AggregationLevel uint32 `protobuf:"varint,13,opt,name=aggregation_level,json=aggregationLevel" json:"aggregation_level,omitempty"` - // Encrypted is true if this volume will be cryptographically secured. - Encrypted bool `protobuf:"varint,14,opt,name=encrypted" json:"encrypted,omitempty"` - // Passphrase for an encrypted volume - Passphrase string `protobuf:"bytes,15,opt,name=passphrase" json:"passphrase,omitempty"` - // SnapshotSchedule a well known string that specifies when snapshots should be taken. - SnapshotSchedule string `protobuf:"bytes,16,opt,name=snapshot_schedule,json=snapshotSchedule" json:"snapshot_schedule,omitempty"` - // Scale allows autocreation of volumes. - Scale uint32 `protobuf:"varint,17,opt,name=scale" json:"scale,omitempty"` - // Sticky volumes cannot be deleted until the flag is removed. - Sticky bool `protobuf:"varint,18,opt,name=sticky" json:"sticky,omitempty"` - // Group identifies a consistency group - Group *Group `protobuf:"bytes,21,opt,name=group" json:"group,omitempty"` - // GroupEnforced is true if consistency group creation is enforced. - GroupEnforced bool `protobuf:"varint,22,opt,name=group_enforced,json=groupEnforced" json:"group_enforced,omitempty"` - // Compressed is true if this volume is to be compressed. - Compressed bool `protobuf:"varint,23,opt,name=compressed" json:"compressed,omitempty"` - // Cascaded is true if this volume can be populated on any node from an external source. - Cascaded bool `protobuf:"varint,24,opt,name=cascaded" json:"cascaded,omitempty"` - // Journal is true if data for the volume goes into the journal. - Journal bool `protobuf:"varint,25,opt,name=journal" json:"journal,omitempty"` - // Sharedv4 is true if this volume can be accessed via sharedv4. - Sharedv4 bool `protobuf:"varint,26,opt,name=sharedv4" json:"sharedv4,omitempty"` - // QueueDepth defines the desired block device queue depth - QueueDepth uint32 `protobuf:"varint,27,opt,name=queue_depth,json=queueDepth" json:"queue_depth,omitempty"` - // Use to force a file system type which is not recommended. - // The driver may still refuse to use the file system type. - ForceUnsupportedFsType bool `protobuf:"varint,28,opt,name=force_unsupported_fs_type,json=forceUnsupportedFsType" json:"force_unsupported_fs_type,omitempty"` - // Nodiscard specifies if the volume will be mounted with discard support disabled. - // i.e. FS will not release allocated blocks back to the backing storage pool. - Nodiscard bool `protobuf:"varint,29,opt,name=nodiscard" json:"nodiscard,omitempty"` - // IoStrategy preferred strategy for I/O. - IoStrategy *IoStrategy `protobuf:"bytes,30,opt,name=io_strategy,json=ioStrategy" json:"io_strategy,omitempty"` - // PlacementStrategy specifies a spec to indicate where to place the volume. - PlacementStrategy *VolumePlacementStrategy `protobuf:"bytes,31,opt,name=placement_strategy,json=placementStrategy" json:"placement_strategy,omitempty"` - // StoragePolicy if applied/specified while creating volume - StoragePolicy string `protobuf:"bytes,32,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` - // Owner - Ownership *Ownership `protobuf:"bytes,33,opt,name=ownership" json:"ownership,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *IoStrategy) GetDirectIo() bool { + if m != nil { + return m.DirectIo + } + return false } -func (m *VolumeSpec) Reset() { *m = VolumeSpec{} } -func (m *VolumeSpec) String() string { return proto.CompactTextString(m) } -func (*VolumeSpec) ProtoMessage() {} -func (*VolumeSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{8} -} -func (m *VolumeSpec) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeSpec.Unmarshal(m, b) +// Xattr defines implementation specific volume attribute +type Xattr struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeSpec.Marshal(b, m, deterministic) + +func (m *Xattr) Reset() { *m = Xattr{} } +func (m *Xattr) String() string { return proto.CompactTextString(m) } +func (*Xattr) ProtoMessage() {} +func (*Xattr) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{8} } -func (dst *VolumeSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeSpec.Merge(dst, src) +func (m *Xattr) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Xattr.Unmarshal(m, b) } -func (m *VolumeSpec) XXX_Size() int { - return xxx_messageInfo_VolumeSpec.Size(m) +func (m *Xattr) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Xattr.Marshal(b, m, deterministic) } -func (m *VolumeSpec) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeSpec.DiscardUnknown(m) +func (dst *Xattr) XXX_Merge(src proto.Message) { + xxx_messageInfo_Xattr.Merge(dst, src) +} +func (m *Xattr) XXX_Size() int { + return xxx_messageInfo_Xattr.Size(m) +} +func (m *Xattr) XXX_DiscardUnknown() { + xxx_messageInfo_Xattr.DiscardUnknown(m) } -var xxx_messageInfo_VolumeSpec proto.InternalMessageInfo +var xxx_messageInfo_Xattr proto.InternalMessageInfo -func (m *VolumeSpec) GetEphemeral() bool { +// ExportSpec defines how the volume is exported.. +type ExportSpec struct { + // ExportProtocol defines how the volume is exported. + ExportProtocol ExportProtocol `protobuf:"varint,1,opt,name=export_protocol,json=exportProtocol,enum=openstorage.api.ExportProtocol" json:"export_protocol,omitempty"` + // ExportOptions options exporting the volume. + ExportOptions string `protobuf:"bytes,2,opt,name=export_options,json=exportOptions" json:"export_options,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ExportSpec) Reset() { *m = ExportSpec{} } +func (m *ExportSpec) String() string { return proto.CompactTextString(m) } +func (*ExportSpec) ProtoMessage() {} +func (*ExportSpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{9} +} +func (m *ExportSpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ExportSpec.Unmarshal(m, b) +} +func (m *ExportSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ExportSpec.Marshal(b, m, deterministic) +} +func (dst *ExportSpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_ExportSpec.Merge(dst, src) +} +func (m *ExportSpec) XXX_Size() int { + return xxx_messageInfo_ExportSpec.Size(m) +} +func (m *ExportSpec) XXX_DiscardUnknown() { + xxx_messageInfo_ExportSpec.DiscardUnknown(m) +} + +var xxx_messageInfo_ExportSpec proto.InternalMessageInfo + +func (m *ExportSpec) GetExportProtocol() ExportProtocol { if m != nil { - return m.Ephemeral + return m.ExportProtocol } - return false + return ExportProtocol_INVALID } -func (m *VolumeSpec) GetSize() uint64 { +func (m *ExportSpec) GetExportOptions() string { if m != nil { - return m.Size + return m.ExportOptions } - return 0 + return "" } -func (m *VolumeSpec) GetFormat() FSType { +// NFSProxySpec is the spec for proxying an NFS share. +type NFSProxySpec struct { + // ExportPath is the NFS export path on the NFS server + ExportPath string `protobuf:"bytes,1,opt,name=export_path,json=exportPath" json:"export_path,omitempty"` + // SubPath is the sub-directory from an NFS share that should be reflected. + SubPath string `protobuf:"bytes,2,opt,name=sub_path,json=subPath" json:"sub_path,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *NFSProxySpec) Reset() { *m = NFSProxySpec{} } +func (m *NFSProxySpec) String() string { return proto.CompactTextString(m) } +func (*NFSProxySpec) ProtoMessage() {} +func (*NFSProxySpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{10} +} +func (m *NFSProxySpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_NFSProxySpec.Unmarshal(m, b) +} +func (m *NFSProxySpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_NFSProxySpec.Marshal(b, m, deterministic) +} +func (dst *NFSProxySpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_NFSProxySpec.Merge(dst, src) +} +func (m *NFSProxySpec) XXX_Size() int { + return xxx_messageInfo_NFSProxySpec.Size(m) +} +func (m *NFSProxySpec) XXX_DiscardUnknown() { + xxx_messageInfo_NFSProxySpec.DiscardUnknown(m) +} + +var xxx_messageInfo_NFSProxySpec proto.InternalMessageInfo + +func (m *NFSProxySpec) GetExportPath() string { if m != nil { - return m.Format + return m.ExportPath } - return FSType_FS_TYPE_NONE + return "" } -func (m *VolumeSpec) GetBlockSize() int64 { +func (m *NFSProxySpec) GetSubPath() string { if m != nil { - return m.BlockSize + return m.SubPath } - return 0 + return "" } -func (m *VolumeSpec) GetHaLevel() int64 { +// S3ProxySpec is the spec for proxying an external object store. +type S3ProxySpec struct { + // BucketName is the name of the bucket from the object store + BucketName string `protobuf:"bytes,1,opt,name=bucket_name,json=bucketName" json:"bucket_name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *S3ProxySpec) Reset() { *m = S3ProxySpec{} } +func (m *S3ProxySpec) String() string { return proto.CompactTextString(m) } +func (*S3ProxySpec) ProtoMessage() {} +func (*S3ProxySpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{11} +} +func (m *S3ProxySpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_S3ProxySpec.Unmarshal(m, b) +} +func (m *S3ProxySpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_S3ProxySpec.Marshal(b, m, deterministic) +} +func (dst *S3ProxySpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_S3ProxySpec.Merge(dst, src) +} +func (m *S3ProxySpec) XXX_Size() int { + return xxx_messageInfo_S3ProxySpec.Size(m) +} +func (m *S3ProxySpec) XXX_DiscardUnknown() { + xxx_messageInfo_S3ProxySpec.DiscardUnknown(m) +} + +var xxx_messageInfo_S3ProxySpec proto.InternalMessageInfo + +func (m *S3ProxySpec) GetBucketName() string { if m != nil { - return m.HaLevel + return m.BucketName } - return 0 + return "" } -func (m *VolumeSpec) GetCos() CosType { +// PXDProxySpec is the spec for proxying a Portworx volume +type PXDProxySpec struct { + // ID of the remote portworx volume + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *PXDProxySpec) Reset() { *m = PXDProxySpec{} } +func (m *PXDProxySpec) String() string { return proto.CompactTextString(m) } +func (*PXDProxySpec) ProtoMessage() {} +func (*PXDProxySpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{12} +} +func (m *PXDProxySpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_PXDProxySpec.Unmarshal(m, b) +} +func (m *PXDProxySpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_PXDProxySpec.Marshal(b, m, deterministic) +} +func (dst *PXDProxySpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_PXDProxySpec.Merge(dst, src) +} +func (m *PXDProxySpec) XXX_Size() int { + return xxx_messageInfo_PXDProxySpec.Size(m) +} +func (m *PXDProxySpec) XXX_DiscardUnknown() { + xxx_messageInfo_PXDProxySpec.DiscardUnknown(m) +} + +var xxx_messageInfo_PXDProxySpec proto.InternalMessageInfo + +func (m *PXDProxySpec) GetId() string { if m != nil { - return m.Cos + return m.Id } - return CosType_NONE + return "" } -func (m *VolumeSpec) GetIoProfile() IoProfile { +// ProxySpec defines how this volume will reflect an external data source. +type ProxySpec struct { + // ProxyProtocol defines the protocol used for proxy. + ProxyProtocol ProxyProtocol `protobuf:"varint,1,opt,name=proxy_protocol,json=proxyProtocol,enum=openstorage.api.ProxyProtocol" json:"proxy_protocol,omitempty"` + // Endpoint is the external endpoint which can be used for accessing the + // external data source. + Endpoint string `protobuf:"bytes,2,opt,name=endpoint" json:"endpoint,omitempty"` + // NFSProxySpec is the spec for proxying an NFS share + NfsSpec *NFSProxySpec `protobuf:"bytes,3,opt,name=nfs_spec,json=nfsSpec" json:"nfs_spec,omitempty"` + // S3ProxySpec is the spec for proxying an external object store + S3Spec *S3ProxySpec `protobuf:"bytes,4,opt,name=s3_spec,json=s3Spec" json:"s3_spec,omitempty"` + // PXDProxySpec is the spec for proxying a Portworx volume + PxdSpec *PXDProxySpec `protobuf:"bytes,5,opt,name=pxd_spec,json=pxdSpec" json:"pxd_spec,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ProxySpec) Reset() { *m = ProxySpec{} } +func (m *ProxySpec) String() string { return proto.CompactTextString(m) } +func (*ProxySpec) ProtoMessage() {} +func (*ProxySpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{13} +} +func (m *ProxySpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ProxySpec.Unmarshal(m, b) +} +func (m *ProxySpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ProxySpec.Marshal(b, m, deterministic) +} +func (dst *ProxySpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_ProxySpec.Merge(dst, src) +} +func (m *ProxySpec) XXX_Size() int { + return xxx_messageInfo_ProxySpec.Size(m) +} +func (m *ProxySpec) XXX_DiscardUnknown() { + xxx_messageInfo_ProxySpec.DiscardUnknown(m) +} + +var xxx_messageInfo_ProxySpec proto.InternalMessageInfo + +func (m *ProxySpec) GetProxyProtocol() ProxyProtocol { if m != nil { - return m.IoProfile + return m.ProxyProtocol } - return IoProfile_IO_PROFILE_SEQUENTIAL + return ProxyProtocol_PROXY_PROTOCOL_INVALID } -func (m *VolumeSpec) GetDedupe() bool { +func (m *ProxySpec) GetEndpoint() string { if m != nil { - return m.Dedupe + return m.Endpoint } - return false + return "" } -func (m *VolumeSpec) GetSnapshotInterval() uint32 { +func (m *ProxySpec) GetNfsSpec() *NFSProxySpec { if m != nil { - return m.SnapshotInterval + return m.NfsSpec } - return 0 + return nil } -func (m *VolumeSpec) GetVolumeLabels() map[string]string { +func (m *ProxySpec) GetS3Spec() *S3ProxySpec { if m != nil { - return m.VolumeLabels + return m.S3Spec } return nil } -func (m *VolumeSpec) GetShared() bool { +func (m *ProxySpec) GetPxdSpec() *PXDProxySpec { if m != nil { - return m.Shared + return m.PxdSpec } - return false + return nil } -func (m *VolumeSpec) GetReplicaSet() *ReplicaSet { +// MountOptions defines the mount options with which a volume is mounted. +type MountOptions struct { + // Options are opaque key value pairs that are passed as mount options when + // a volume is mounted. + // If an empty value is provided only the key will be passed as an option + // If both key and value are provided then 'key=value' will be passed as an + // option + Options map[string]string `protobuf:"bytes,1,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MountOptions) Reset() { *m = MountOptions{} } +func (m *MountOptions) String() string { return proto.CompactTextString(m) } +func (*MountOptions) ProtoMessage() {} +func (*MountOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{14} +} +func (m *MountOptions) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MountOptions.Unmarshal(m, b) +} +func (m *MountOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MountOptions.Marshal(b, m, deterministic) +} +func (dst *MountOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_MountOptions.Merge(dst, src) +} +func (m *MountOptions) XXX_Size() int { + return xxx_messageInfo_MountOptions.Size(m) +} +func (m *MountOptions) XXX_DiscardUnknown() { + xxx_messageInfo_MountOptions.DiscardUnknown(m) +} + +var xxx_messageInfo_MountOptions proto.InternalMessageInfo + +func (m *MountOptions) GetOptions() map[string]string { if m != nil { - return m.ReplicaSet + return m.Options } return nil } -func (m *VolumeSpec) GetAggregationLevel() uint32 { +type FastpathReplState struct { + DevId uint64 `protobuf:"varint,1,opt,name=dev_id,json=devId" json:"dev_id,omitempty"` + NodeId uint32 `protobuf:"varint,2,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` + Protocol FastpathProtocol `protobuf:"varint,3,opt,name=protocol,enum=openstorage.api.FastpathProtocol" json:"protocol,omitempty"` + Acl bool `protobuf:"varint,4,opt,name=acl" json:"acl,omitempty"` + // target info + ExportedDevice string `protobuf:"bytes,5,opt,name=exported_device,json=exportedDevice" json:"exported_device,omitempty"` + Block bool `protobuf:"varint,6,opt,name=block" json:"block,omitempty"` + Target string `protobuf:"bytes,7,opt,name=target" json:"target,omitempty"` + Exported bool `protobuf:"varint,8,opt,name=exported" json:"exported,omitempty"` + // initiator info + Imported bool `protobuf:"varint,9,opt,name=imported" json:"imported,omitempty"` + Devpath string `protobuf:"bytes,10,opt,name=devpath" json:"devpath,omitempty"` + // node_uuid added to enhance UI reporting + NodeUuid string `protobuf:"bytes,11,opt,name=node_uuid,json=nodeUuid" json:"node_uuid,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *FastpathReplState) Reset() { *m = FastpathReplState{} } +func (m *FastpathReplState) String() string { return proto.CompactTextString(m) } +func (*FastpathReplState) ProtoMessage() {} +func (*FastpathReplState) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{15} +} +func (m *FastpathReplState) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FastpathReplState.Unmarshal(m, b) +} +func (m *FastpathReplState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FastpathReplState.Marshal(b, m, deterministic) +} +func (dst *FastpathReplState) XXX_Merge(src proto.Message) { + xxx_messageInfo_FastpathReplState.Merge(dst, src) +} +func (m *FastpathReplState) XXX_Size() int { + return xxx_messageInfo_FastpathReplState.Size(m) +} +func (m *FastpathReplState) XXX_DiscardUnknown() { + xxx_messageInfo_FastpathReplState.DiscardUnknown(m) +} + +var xxx_messageInfo_FastpathReplState proto.InternalMessageInfo + +func (m *FastpathReplState) GetDevId() uint64 { if m != nil { - return m.AggregationLevel + return m.DevId } return 0 } -func (m *VolumeSpec) GetEncrypted() bool { +func (m *FastpathReplState) GetNodeId() uint32 { if m != nil { - return m.Encrypted + return m.NodeId } - return false + return 0 } -func (m *VolumeSpec) GetPassphrase() string { +func (m *FastpathReplState) GetProtocol() FastpathProtocol { if m != nil { - return m.Passphrase + return m.Protocol } - return "" + return FastpathProtocol_FASTPATH_PROTO_UNKNOWN } -func (m *VolumeSpec) GetSnapshotSchedule() string { +func (m *FastpathReplState) GetAcl() bool { if m != nil { - return m.SnapshotSchedule + return m.Acl } - return "" + return false } -func (m *VolumeSpec) GetScale() uint32 { +func (m *FastpathReplState) GetExportedDevice() string { if m != nil { - return m.Scale + return m.ExportedDevice } - return 0 + return "" } -func (m *VolumeSpec) GetSticky() bool { +func (m *FastpathReplState) GetBlock() bool { if m != nil { - return m.Sticky + return m.Block } return false } -func (m *VolumeSpec) GetGroup() *Group { +func (m *FastpathReplState) GetTarget() string { if m != nil { - return m.Group + return m.Target } - return nil + return "" } -func (m *VolumeSpec) GetGroupEnforced() bool { +func (m *FastpathReplState) GetExported() bool { if m != nil { - return m.GroupEnforced + return m.Exported } return false } -func (m *VolumeSpec) GetCompressed() bool { +func (m *FastpathReplState) GetImported() bool { if m != nil { - return m.Compressed + return m.Imported } return false } -func (m *VolumeSpec) GetCascaded() bool { +func (m *FastpathReplState) GetDevpath() string { if m != nil { - return m.Cascaded + return m.Devpath } - return false + return "" } -func (m *VolumeSpec) GetJournal() bool { +func (m *FastpathReplState) GetNodeUuid() string { if m != nil { - return m.Journal + return m.NodeUuid } - return false + return "" } -func (m *VolumeSpec) GetSharedv4() bool { - if m != nil { - return m.Sharedv4 - } - return false +// FastpathConfig part of volume +type FastpathConfig struct { + // fastpath setup on this node + SetupOn int32 `protobuf:"varint,1,opt,name=setup_on,json=setupOn" json:"setup_on,omitempty"` + // Fastpath temporary promotion during attach + Promote bool `protobuf:"varint,2,opt,name=promote" json:"promote,omitempty"` + // Fastpath consolidated current status across replicas + Status FastpathStatus `protobuf:"varint,3,opt,name=status,enum=openstorage.api.FastpathStatus" json:"status,omitempty"` + // Fastpath replica state for each replica in replica set + Replicas []*FastpathReplState `protobuf:"bytes,4,rep,name=replicas" json:"replicas,omitempty"` + // Dirty flag on volume - was attached in userspace + Dirty bool `protobuf:"varint,5,opt,name=dirty" json:"dirty,omitempty"` + // fastpath coordinator node uuid to enhance reporting + CoordUuid string `protobuf:"bytes,6,opt,name=coord_uuid,json=coordUuid" json:"coord_uuid,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeSpec) GetQueueDepth() uint32 { +func (m *FastpathConfig) Reset() { *m = FastpathConfig{} } +func (m *FastpathConfig) String() string { return proto.CompactTextString(m) } +func (*FastpathConfig) ProtoMessage() {} +func (*FastpathConfig) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{16} +} +func (m *FastpathConfig) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FastpathConfig.Unmarshal(m, b) +} +func (m *FastpathConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FastpathConfig.Marshal(b, m, deterministic) +} +func (dst *FastpathConfig) XXX_Merge(src proto.Message) { + xxx_messageInfo_FastpathConfig.Merge(dst, src) +} +func (m *FastpathConfig) XXX_Size() int { + return xxx_messageInfo_FastpathConfig.Size(m) +} +func (m *FastpathConfig) XXX_DiscardUnknown() { + xxx_messageInfo_FastpathConfig.DiscardUnknown(m) +} + +var xxx_messageInfo_FastpathConfig proto.InternalMessageInfo + +func (m *FastpathConfig) GetSetupOn() int32 { if m != nil { - return m.QueueDepth + return m.SetupOn } return 0 } -func (m *VolumeSpec) GetForceUnsupportedFsType() bool { +func (m *FastpathConfig) GetPromote() bool { if m != nil { - return m.ForceUnsupportedFsType + return m.Promote } return false } -func (m *VolumeSpec) GetNodiscard() bool { +func (m *FastpathConfig) GetStatus() FastpathStatus { if m != nil { - return m.Nodiscard + return m.Status } - return false + return FastpathStatus_FASTPATH_UNKNOWN } -func (m *VolumeSpec) GetIoStrategy() *IoStrategy { +func (m *FastpathConfig) GetReplicas() []*FastpathReplState { if m != nil { - return m.IoStrategy + return m.Replicas } return nil } -func (m *VolumeSpec) GetPlacementStrategy() *VolumePlacementStrategy { +func (m *FastpathConfig) GetDirty() bool { if m != nil { - return m.PlacementStrategy + return m.Dirty } - return nil + return false } -func (m *VolumeSpec) GetStoragePolicy() string { +func (m *FastpathConfig) GetCoordUuid() string { if m != nil { - return m.StoragePolicy + return m.CoordUuid } return "" } -func (m *VolumeSpec) GetOwnership() *Ownership { +// ScanPolicy defines when a filesystem check is triggered and what action to take +// User can specify *one* of the following valid policies +// 1. trigger=SCAN_TRIGGER_ON_MOUNT, action=SCAN_ACTION_SCAN_ONLY +// 2. trigger=SCAN_TRIGGER_ON_MOUNT, action=SCAN_ACTION_SCAN_REPAIR +// 3. trigger=SCAN_TRIGGER_ON_NEXT_MOUNT, action=SCAN_ACTION_SCAN_ONLY +// 4. trigger=SCAN_TRIGGER_ON_NEXT_MOUNT, action=SCAN_ACTION_SCAN_REPAIR +// 5. trigger=SCAN_TRIGGER_NONE, action=SCAN_ACTION_NONE +// Note: When trigger == SCAN_TRIGGER_ON_NEXT_MOUNT, the associated action is +// performed once on the next mount and the scanpolicy gets reset to +// `trigger=SCAN_TRIGGER_NONE, action=SCAN_ACTION_NONE`, irrespective of the +// output of the action. +type ScanPolicy struct { + Trigger ScanPolicy_ScanTrigger `protobuf:"varint,1,opt,name=trigger,enum=openstorage.api.ScanPolicy_ScanTrigger" json:"trigger,omitempty"` + Action ScanPolicy_ScanAction `protobuf:"varint,2,opt,name=action,enum=openstorage.api.ScanPolicy_ScanAction" json:"action,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ScanPolicy) Reset() { *m = ScanPolicy{} } +func (m *ScanPolicy) String() string { return proto.CompactTextString(m) } +func (*ScanPolicy) ProtoMessage() {} +func (*ScanPolicy) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{17} +} +func (m *ScanPolicy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ScanPolicy.Unmarshal(m, b) +} +func (m *ScanPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ScanPolicy.Marshal(b, m, deterministic) +} +func (dst *ScanPolicy) XXX_Merge(src proto.Message) { + xxx_messageInfo_ScanPolicy.Merge(dst, src) +} +func (m *ScanPolicy) XXX_Size() int { + return xxx_messageInfo_ScanPolicy.Size(m) +} +func (m *ScanPolicy) XXX_DiscardUnknown() { + xxx_messageInfo_ScanPolicy.DiscardUnknown(m) +} + +var xxx_messageInfo_ScanPolicy proto.InternalMessageInfo + +func (m *ScanPolicy) GetTrigger() ScanPolicy_ScanTrigger { if m != nil { - return m.Ownership + return m.Trigger } - return nil + return ScanPolicy_SCAN_TRIGGER_NONE } -// VolumeSpecUpdate provides a method to set any of the VolumeSpec of an existing volume -type VolumeSpecUpdate struct { +func (m *ScanPolicy) GetAction() ScanPolicy_ScanAction { + if m != nil { + return m.Action + } + return ScanPolicy_SCAN_ACTION_NONE +} + +// VolumeSpec has the properties needed to create a volume. +type VolumeSpec struct { + // Ephemeral storage + Ephemeral bool `protobuf:"varint,1,opt,name=ephemeral" json:"ephemeral,omitempty"` // Size specifies the thin provisioned volume size in bytes - // - // Types that are valid to be assigned to SizeOpt: - // *VolumeSpecUpdate_Size - SizeOpt isVolumeSpecUpdate_SizeOpt `protobuf_oneof:"size_opt"` + Size uint64 `protobuf:"varint,2,opt,name=size" json:"size,omitempty"` + // Format specifies the filesystem for this volume. + Format FSType `protobuf:"varint,3,opt,name=format,enum=openstorage.api.FSType" json:"format,omitempty"` + // BlockSize for the filesystem. + BlockSize int64 `protobuf:"varint,4,opt,name=block_size,json=blockSize" json:"block_size,omitempty"` // HaLevel specifies the number of copies of data. - // - // Types that are valid to be assigned to HaLevelOpt: - // *VolumeSpecUpdate_HaLevel - HaLevelOpt isVolumeSpecUpdate_HaLevelOpt `protobuf_oneof:"ha_level_opt"` + HaLevel int64 `protobuf:"varint,5,opt,name=ha_level,json=haLevel" json:"ha_level,omitempty"` // Cos specifies the relative class of service. - // - // Types that are valid to be assigned to CosOpt: - // *VolumeSpecUpdate_Cos - CosOpt isVolumeSpecUpdate_CosOpt `protobuf_oneof:"cos_opt"` + Cos CosType `protobuf:"varint,6,opt,name=cos,enum=openstorage.api.CosType" json:"cos,omitempty"` // IoProfile provides a hint about application using this volume. - // - // Types that are valid to be assigned to IoProfileOpt: - // *VolumeSpecUpdate_IoProfile - IoProfileOpt isVolumeSpecUpdate_IoProfileOpt `protobuf_oneof:"io_profile_opt"` + IoProfile IoProfile `protobuf:"varint,7,opt,name=io_profile,json=ioProfile,enum=openstorage.api.IoProfile" json:"io_profile,omitempty"` // Dedupe specifies if the volume data is to be de-duplicated. - // - // Types that are valid to be assigned to DedupeOpt: - // *VolumeSpecUpdate_Dedupe - DedupeOpt isVolumeSpecUpdate_DedupeOpt `protobuf_oneof:"dedupe_opt"` + Dedupe bool `protobuf:"varint,8,opt,name=dedupe" json:"dedupe,omitempty"` // SnapshotInterval in minutes, set to 0 to disable snapshots - // - // Types that are valid to be assigned to SnapshotIntervalOpt: - // *VolumeSpecUpdate_SnapshotInterval - SnapshotIntervalOpt isVolumeSpecUpdate_SnapshotIntervalOpt `protobuf_oneof:"snapshot_interval_opt"` - // Shared is true if this volume can be remotely accessed. - // - // Types that are valid to be assigned to SharedOpt: - // *VolumeSpecUpdate_Shared - SharedOpt isVolumeSpecUpdate_SharedOpt `protobuf_oneof:"shared_opt"` + SnapshotInterval uint32 `protobuf:"varint,9,opt,name=snapshot_interval,json=snapshotInterval" json:"snapshot_interval,omitempty"` + // (deprecated, do not use) VolumeLabels configuration labels + VolumeLabels map[string]string `protobuf:"bytes,10,rep,name=volume_labels,json=volumeLabels" json:"volume_labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // Shared is true if this volume can be concurrently accessed by multiple users. + Shared bool `protobuf:"varint,11,opt,name=shared" json:"shared,omitempty"` // ReplicaSet is the desired set of nodes for the volume data. ReplicaSet *ReplicaSet `protobuf:"bytes,12,opt,name=replica_set,json=replicaSet" json:"replica_set,omitempty"` + // Aggregation level Specifies the number of parts the volume can be aggregated from. + AggregationLevel uint32 `protobuf:"varint,13,opt,name=aggregation_level,json=aggregationLevel" json:"aggregation_level,omitempty"` + // Encrypted is true if this volume will be cryptographically secured. + Encrypted bool `protobuf:"varint,14,opt,name=encrypted" json:"encrypted,omitempty"` // Passphrase for an encrypted volume - // - // Types that are valid to be assigned to PassphraseOpt: - // *VolumeSpecUpdate_Passphrase - PassphraseOpt isVolumeSpecUpdate_PassphraseOpt `protobuf_oneof:"passphrase_opt"` + Passphrase string `protobuf:"bytes,15,opt,name=passphrase" json:"passphrase,omitempty"` // SnapshotSchedule a well known string that specifies when snapshots should be taken. - // - // Types that are valid to be assigned to SnapshotScheduleOpt: - // *VolumeSpecUpdate_SnapshotSchedule - SnapshotScheduleOpt isVolumeSpecUpdate_SnapshotScheduleOpt `protobuf_oneof:"snapshot_schedule_opt"` + SnapshotSchedule string `protobuf:"bytes,16,opt,name=snapshot_schedule,json=snapshotSchedule" json:"snapshot_schedule,omitempty"` // Scale allows autocreation of volumes. - // - // Types that are valid to be assigned to ScaleOpt: - // *VolumeSpecUpdate_Scale - ScaleOpt isVolumeSpecUpdate_ScaleOpt `protobuf_oneof:"scale_opt"` + Scale uint32 `protobuf:"varint,17,opt,name=scale" json:"scale,omitempty"` // Sticky volumes cannot be deleted until the flag is removed. - // - // Types that are valid to be assigned to StickyOpt: - // *VolumeSpecUpdate_Sticky - StickyOpt isVolumeSpecUpdate_StickyOpt `protobuf_oneof:"sticky_opt"` + Sticky bool `protobuf:"varint,18,opt,name=sticky" json:"sticky,omitempty"` // Group identifies a consistency group - // - // Types that are valid to be assigned to GroupOpt: - // *VolumeSpecUpdate_Group - GroupOpt isVolumeSpecUpdate_GroupOpt `protobuf_oneof:"group_opt"` + Group *Group `protobuf:"bytes,21,opt,name=group" json:"group,omitempty"` + // GroupEnforced is true if consistency group creation is enforced. + GroupEnforced bool `protobuf:"varint,22,opt,name=group_enforced,json=groupEnforced" json:"group_enforced,omitempty"` + // Compressed is true if this volume is to be compressed. + Compressed bool `protobuf:"varint,23,opt,name=compressed" json:"compressed,omitempty"` + // Cascaded is true if this volume can be populated on any node from an external source. + Cascaded bool `protobuf:"varint,24,opt,name=cascaded" json:"cascaded,omitempty"` // Journal is true if data for the volume goes into the journal. - // - // Types that are valid to be assigned to JournalOpt: - // *VolumeSpecUpdate_Journal - JournalOpt isVolumeSpecUpdate_JournalOpt `protobuf_oneof:"journal_opt"` + Journal bool `protobuf:"varint,25,opt,name=journal" json:"journal,omitempty"` // Sharedv4 is true if this volume can be accessed via sharedv4. - // - // Types that are valid to be assigned to Sharedv4Opt: - // *VolumeSpecUpdate_Sharedv4 - Sharedv4Opt isVolumeSpecUpdate_Sharedv4Opt `protobuf_oneof:"sharedv4_opt"` + Sharedv4 bool `protobuf:"varint,26,opt,name=sharedv4" json:"sharedv4,omitempty"` // QueueDepth defines the desired block device queue depth - // - // Types that are valid to be assigned to QueueDepthOpt: - // *VolumeSpecUpdate_QueueDepth - QueueDepthOpt isVolumeSpecUpdate_QueueDepthOpt `protobuf_oneof:"queue_depth_opt"` - // Ownership volume information to update. If the value of `owner` in the - // `ownership` message is an empty string then the value of `owner` in - // the `VolumeSpec.Ownership.owner` will not be updated. - Ownership *Ownership `protobuf:"bytes,26,opt,name=ownership" json:"ownership,omitempty"` + QueueDepth uint32 `protobuf:"varint,27,opt,name=queue_depth,json=queueDepth" json:"queue_depth,omitempty"` + // Use to force a file system type which is not recommended. + // The driver may still refuse to use the file system type. + ForceUnsupportedFsType bool `protobuf:"varint,28,opt,name=force_unsupported_fs_type,json=forceUnsupportedFsType" json:"force_unsupported_fs_type,omitempty"` // Nodiscard specifies if the volume will be mounted with discard support disabled. // i.e. FS will not release allocated blocks back to the backing storage pool. - // - // Types that are valid to be assigned to NodiscardOpt: - // *VolumeSpecUpdate_Nodiscard - NodiscardOpt isVolumeSpecUpdate_NodiscardOpt `protobuf_oneof:"nodiscard_opt"` + Nodiscard bool `protobuf:"varint,29,opt,name=nodiscard" json:"nodiscard,omitempty"` // IoStrategy preferred strategy for I/O. - IoStrategy *IoStrategy `protobuf:"bytes,28,opt,name=io_strategy,json=ioStrategy" json:"io_strategy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + IoStrategy *IoStrategy `protobuf:"bytes,30,opt,name=io_strategy,json=ioStrategy" json:"io_strategy,omitempty"` + // PlacementStrategy specifies a spec to indicate where to place the volume. + PlacementStrategy *VolumePlacementStrategy `protobuf:"bytes,31,opt,name=placement_strategy,json=placementStrategy" json:"placement_strategy,omitempty"` + // StoragePolicy if applied/specified while creating volume + StoragePolicy string `protobuf:"bytes,32,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` + // Ownership + Ownership *Ownership `protobuf:"bytes,33,opt,name=ownership" json:"ownership,omitempty"` + // ExportSpec defines how the volume should be exported. + ExportSpec *ExportSpec `protobuf:"bytes,34,opt,name=export_spec,json=exportSpec" json:"export_spec,omitempty"` + // fastpath extensions + FpPreference bool `protobuf:"varint,35,opt,name=fp_preference,json=fpPreference" json:"fp_preference,omitempty"` + // Xattr specifies implementation specific volume attributes + Xattr Xattr_Value `protobuf:"varint,36,opt,name=xattr,enum=openstorage.api.Xattr_Value" json:"xattr,omitempty"` + // ScanPolicy specifies the filesystem check policy + ScanPolicy *ScanPolicy `protobuf:"bytes,37,opt,name=scan_policy,json=scanPolicy" json:"scan_policy,omitempty"` + // MountOptions defines the options that will be used while mounting this volume + MountOptions *MountOptions `protobuf:"bytes,38,opt,name=mount_options,json=mountOptions" json:"mount_options,omitempty"` + // Sharedv4MountOptions defines the options that will be used while mounting a sharedv4 volume + // from a node where the volume replica does not exist + Sharedv4MountOptions *MountOptions `protobuf:"bytes,39,opt,name=sharedv4_mount_options,json=sharedv4MountOptions" json:"sharedv4_mount_options,omitempty"` + // Proxy_write if true, per volume proxy write replication enabled + ProxyWrite bool `protobuf:"varint,40,opt,name=proxy_write,json=proxyWrite" json:"proxy_write,omitempty"` + // ProxySpec indicates that this volume is used for proxying an external data source + ProxySpec *ProxySpec `protobuf:"bytes,41,opt,name=proxy_spec,json=proxySpec" json:"proxy_spec,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeSpecUpdate) Reset() { *m = VolumeSpecUpdate{} } -func (m *VolumeSpecUpdate) String() string { return proto.CompactTextString(m) } -func (*VolumeSpecUpdate) ProtoMessage() {} -func (*VolumeSpecUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{9} +func (m *VolumeSpec) Reset() { *m = VolumeSpec{} } +func (m *VolumeSpec) String() string { return proto.CompactTextString(m) } +func (*VolumeSpec) ProtoMessage() {} +func (*VolumeSpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{18} } -func (m *VolumeSpecUpdate) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeSpecUpdate.Unmarshal(m, b) +func (m *VolumeSpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeSpec.Unmarshal(m, b) } -func (m *VolumeSpecUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeSpecUpdate.Marshal(b, m, deterministic) +func (m *VolumeSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeSpec.Marshal(b, m, deterministic) } -func (dst *VolumeSpecUpdate) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeSpecUpdate.Merge(dst, src) +func (dst *VolumeSpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeSpec.Merge(dst, src) } -func (m *VolumeSpecUpdate) XXX_Size() int { - return xxx_messageInfo_VolumeSpecUpdate.Size(m) +func (m *VolumeSpec) XXX_Size() int { + return xxx_messageInfo_VolumeSpec.Size(m) } -func (m *VolumeSpecUpdate) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeSpecUpdate.DiscardUnknown(m) +func (m *VolumeSpec) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeSpec.DiscardUnknown(m) } -var xxx_messageInfo_VolumeSpecUpdate proto.InternalMessageInfo +var xxx_messageInfo_VolumeSpec proto.InternalMessageInfo -type isVolumeSpecUpdate_SizeOpt interface { - isVolumeSpecUpdate_SizeOpt() -} -type isVolumeSpecUpdate_HaLevelOpt interface { - isVolumeSpecUpdate_HaLevelOpt() -} -type isVolumeSpecUpdate_CosOpt interface { - isVolumeSpecUpdate_CosOpt() -} -type isVolumeSpecUpdate_IoProfileOpt interface { - isVolumeSpecUpdate_IoProfileOpt() +func (m *VolumeSpec) GetEphemeral() bool { + if m != nil { + return m.Ephemeral + } + return false } -type isVolumeSpecUpdate_DedupeOpt interface { - isVolumeSpecUpdate_DedupeOpt() + +func (m *VolumeSpec) GetSize() uint64 { + if m != nil { + return m.Size + } + return 0 } -type isVolumeSpecUpdate_SnapshotIntervalOpt interface { - isVolumeSpecUpdate_SnapshotIntervalOpt() + +func (m *VolumeSpec) GetFormat() FSType { + if m != nil { + return m.Format + } + return FSType_FS_TYPE_NONE } -type isVolumeSpecUpdate_SharedOpt interface { - isVolumeSpecUpdate_SharedOpt() + +func (m *VolumeSpec) GetBlockSize() int64 { + if m != nil { + return m.BlockSize + } + return 0 } -type isVolumeSpecUpdate_PassphraseOpt interface { - isVolumeSpecUpdate_PassphraseOpt() + +func (m *VolumeSpec) GetHaLevel() int64 { + if m != nil { + return m.HaLevel + } + return 0 } -type isVolumeSpecUpdate_SnapshotScheduleOpt interface { - isVolumeSpecUpdate_SnapshotScheduleOpt() + +func (m *VolumeSpec) GetCos() CosType { + if m != nil { + return m.Cos + } + return CosType_NONE } -type isVolumeSpecUpdate_ScaleOpt interface { - isVolumeSpecUpdate_ScaleOpt() + +func (m *VolumeSpec) GetIoProfile() IoProfile { + if m != nil { + return m.IoProfile + } + return IoProfile_IO_PROFILE_SEQUENTIAL } -type isVolumeSpecUpdate_StickyOpt interface { - isVolumeSpecUpdate_StickyOpt() + +func (m *VolumeSpec) GetDedupe() bool { + if m != nil { + return m.Dedupe + } + return false } -type isVolumeSpecUpdate_GroupOpt interface { - isVolumeSpecUpdate_GroupOpt() + +func (m *VolumeSpec) GetSnapshotInterval() uint32 { + if m != nil { + return m.SnapshotInterval + } + return 0 } -type isVolumeSpecUpdate_JournalOpt interface { - isVolumeSpecUpdate_JournalOpt() + +func (m *VolumeSpec) GetVolumeLabels() map[string]string { + if m != nil { + return m.VolumeLabels + } + return nil } -type isVolumeSpecUpdate_Sharedv4Opt interface { - isVolumeSpecUpdate_Sharedv4Opt() + +func (m *VolumeSpec) GetShared() bool { + if m != nil { + return m.Shared + } + return false } -type isVolumeSpecUpdate_QueueDepthOpt interface { - isVolumeSpecUpdate_QueueDepthOpt() + +func (m *VolumeSpec) GetReplicaSet() *ReplicaSet { + if m != nil { + return m.ReplicaSet + } + return nil } -type isVolumeSpecUpdate_NodiscardOpt interface { - isVolumeSpecUpdate_NodiscardOpt() + +func (m *VolumeSpec) GetAggregationLevel() uint32 { + if m != nil { + return m.AggregationLevel + } + return 0 } -type VolumeSpecUpdate_Size struct { - Size uint64 `protobuf:"varint,2,opt,name=size,oneof"` +func (m *VolumeSpec) GetEncrypted() bool { + if m != nil { + return m.Encrypted + } + return false } -type VolumeSpecUpdate_HaLevel struct { - HaLevel int64 `protobuf:"varint,5,opt,name=ha_level,json=haLevel,oneof"` -} -type VolumeSpecUpdate_Cos struct { - Cos CosType `protobuf:"varint,6,opt,name=cos,enum=openstorage.api.CosType,oneof"` -} -type VolumeSpecUpdate_IoProfile struct { - IoProfile IoProfile `protobuf:"varint,7,opt,name=io_profile,json=ioProfile,enum=openstorage.api.IoProfile,oneof"` -} -type VolumeSpecUpdate_Dedupe struct { - Dedupe bool `protobuf:"varint,8,opt,name=dedupe,oneof"` -} -type VolumeSpecUpdate_SnapshotInterval struct { - SnapshotInterval uint32 `protobuf:"varint,9,opt,name=snapshot_interval,json=snapshotInterval,oneof"` -} -type VolumeSpecUpdate_Shared struct { - Shared bool `protobuf:"varint,11,opt,name=shared,oneof"` -} -type VolumeSpecUpdate_Passphrase struct { - Passphrase string `protobuf:"bytes,15,opt,name=passphrase,oneof"` -} -type VolumeSpecUpdate_SnapshotSchedule struct { - SnapshotSchedule string `protobuf:"bytes,16,opt,name=snapshot_schedule,json=snapshotSchedule,oneof"` -} -type VolumeSpecUpdate_Scale struct { - Scale uint32 `protobuf:"varint,17,opt,name=scale,oneof"` -} -type VolumeSpecUpdate_Sticky struct { - Sticky bool `protobuf:"varint,18,opt,name=sticky,oneof"` -} -type VolumeSpecUpdate_Group struct { - Group *Group `protobuf:"bytes,19,opt,name=group,oneof"` -} -type VolumeSpecUpdate_Journal struct { - Journal bool `protobuf:"varint,23,opt,name=journal,oneof"` -} -type VolumeSpecUpdate_Sharedv4 struct { - Sharedv4 bool `protobuf:"varint,24,opt,name=sharedv4,oneof"` -} -type VolumeSpecUpdate_QueueDepth struct { - QueueDepth uint32 `protobuf:"varint,25,opt,name=queue_depth,json=queueDepth,oneof"` -} -type VolumeSpecUpdate_Nodiscard struct { - Nodiscard bool `protobuf:"varint,27,opt,name=nodiscard,oneof"` -} - -func (*VolumeSpecUpdate_Size) isVolumeSpecUpdate_SizeOpt() {} -func (*VolumeSpecUpdate_HaLevel) isVolumeSpecUpdate_HaLevelOpt() {} -func (*VolumeSpecUpdate_Cos) isVolumeSpecUpdate_CosOpt() {} -func (*VolumeSpecUpdate_IoProfile) isVolumeSpecUpdate_IoProfileOpt() {} -func (*VolumeSpecUpdate_Dedupe) isVolumeSpecUpdate_DedupeOpt() {} -func (*VolumeSpecUpdate_SnapshotInterval) isVolumeSpecUpdate_SnapshotIntervalOpt() {} -func (*VolumeSpecUpdate_Shared) isVolumeSpecUpdate_SharedOpt() {} -func (*VolumeSpecUpdate_Passphrase) isVolumeSpecUpdate_PassphraseOpt() {} -func (*VolumeSpecUpdate_SnapshotSchedule) isVolumeSpecUpdate_SnapshotScheduleOpt() {} -func (*VolumeSpecUpdate_Scale) isVolumeSpecUpdate_ScaleOpt() {} -func (*VolumeSpecUpdate_Sticky) isVolumeSpecUpdate_StickyOpt() {} -func (*VolumeSpecUpdate_Group) isVolumeSpecUpdate_GroupOpt() {} -func (*VolumeSpecUpdate_Journal) isVolumeSpecUpdate_JournalOpt() {} -func (*VolumeSpecUpdate_Sharedv4) isVolumeSpecUpdate_Sharedv4Opt() {} -func (*VolumeSpecUpdate_QueueDepth) isVolumeSpecUpdate_QueueDepthOpt() {} -func (*VolumeSpecUpdate_Nodiscard) isVolumeSpecUpdate_NodiscardOpt() {} -func (m *VolumeSpecUpdate) GetSizeOpt() isVolumeSpecUpdate_SizeOpt { - if m != nil { - return m.SizeOpt - } - return nil -} -func (m *VolumeSpecUpdate) GetHaLevelOpt() isVolumeSpecUpdate_HaLevelOpt { - if m != nil { - return m.HaLevelOpt - } - return nil -} -func (m *VolumeSpecUpdate) GetCosOpt() isVolumeSpecUpdate_CosOpt { - if m != nil { - return m.CosOpt - } - return nil -} -func (m *VolumeSpecUpdate) GetIoProfileOpt() isVolumeSpecUpdate_IoProfileOpt { - if m != nil { - return m.IoProfileOpt - } - return nil -} -func (m *VolumeSpecUpdate) GetDedupeOpt() isVolumeSpecUpdate_DedupeOpt { - if m != nil { - return m.DedupeOpt - } - return nil -} -func (m *VolumeSpecUpdate) GetSnapshotIntervalOpt() isVolumeSpecUpdate_SnapshotIntervalOpt { - if m != nil { - return m.SnapshotIntervalOpt - } - return nil -} -func (m *VolumeSpecUpdate) GetSharedOpt() isVolumeSpecUpdate_SharedOpt { - if m != nil { - return m.SharedOpt - } - return nil -} -func (m *VolumeSpecUpdate) GetPassphraseOpt() isVolumeSpecUpdate_PassphraseOpt { +func (m *VolumeSpec) GetPassphrase() string { if m != nil { - return m.PassphraseOpt + return m.Passphrase } - return nil + return "" } -func (m *VolumeSpecUpdate) GetSnapshotScheduleOpt() isVolumeSpecUpdate_SnapshotScheduleOpt { + +func (m *VolumeSpec) GetSnapshotSchedule() string { if m != nil { - return m.SnapshotScheduleOpt + return m.SnapshotSchedule } - return nil + return "" } -func (m *VolumeSpecUpdate) GetScaleOpt() isVolumeSpecUpdate_ScaleOpt { + +func (m *VolumeSpec) GetScale() uint32 { if m != nil { - return m.ScaleOpt + return m.Scale } - return nil + return 0 } -func (m *VolumeSpecUpdate) GetStickyOpt() isVolumeSpecUpdate_StickyOpt { + +func (m *VolumeSpec) GetSticky() bool { if m != nil { - return m.StickyOpt + return m.Sticky } - return nil + return false } -func (m *VolumeSpecUpdate) GetGroupOpt() isVolumeSpecUpdate_GroupOpt { + +func (m *VolumeSpec) GetGroup() *Group { if m != nil { - return m.GroupOpt + return m.Group } return nil } -func (m *VolumeSpecUpdate) GetJournalOpt() isVolumeSpecUpdate_JournalOpt { + +func (m *VolumeSpec) GetGroupEnforced() bool { if m != nil { - return m.JournalOpt + return m.GroupEnforced } - return nil + return false } -func (m *VolumeSpecUpdate) GetSharedv4Opt() isVolumeSpecUpdate_Sharedv4Opt { + +func (m *VolumeSpec) GetCompressed() bool { if m != nil { - return m.Sharedv4Opt + return m.Compressed } - return nil + return false } -func (m *VolumeSpecUpdate) GetQueueDepthOpt() isVolumeSpecUpdate_QueueDepthOpt { + +func (m *VolumeSpec) GetCascaded() bool { if m != nil { - return m.QueueDepthOpt + return m.Cascaded } - return nil + return false } -func (m *VolumeSpecUpdate) GetNodiscardOpt() isVolumeSpecUpdate_NodiscardOpt { + +func (m *VolumeSpec) GetJournal() bool { if m != nil { - return m.NodiscardOpt + return m.Journal } - return nil + return false } -func (m *VolumeSpecUpdate) GetSize() uint64 { - if x, ok := m.GetSizeOpt().(*VolumeSpecUpdate_Size); ok { - return x.Size +func (m *VolumeSpec) GetSharedv4() bool { + if m != nil { + return m.Sharedv4 } - return 0 + return false } -func (m *VolumeSpecUpdate) GetHaLevel() int64 { - if x, ok := m.GetHaLevelOpt().(*VolumeSpecUpdate_HaLevel); ok { - return x.HaLevel +func (m *VolumeSpec) GetQueueDepth() uint32 { + if m != nil { + return m.QueueDepth } return 0 } -func (m *VolumeSpecUpdate) GetCos() CosType { - if x, ok := m.GetCosOpt().(*VolumeSpecUpdate_Cos); ok { - return x.Cos - } - return CosType_NONE -} - -func (m *VolumeSpecUpdate) GetIoProfile() IoProfile { - if x, ok := m.GetIoProfileOpt().(*VolumeSpecUpdate_IoProfile); ok { - return x.IoProfile - } - return IoProfile_IO_PROFILE_SEQUENTIAL -} - -func (m *VolumeSpecUpdate) GetDedupe() bool { - if x, ok := m.GetDedupeOpt().(*VolumeSpecUpdate_Dedupe); ok { - return x.Dedupe +func (m *VolumeSpec) GetForceUnsupportedFsType() bool { + if m != nil { + return m.ForceUnsupportedFsType } return false } -func (m *VolumeSpecUpdate) GetSnapshotInterval() uint32 { - if x, ok := m.GetSnapshotIntervalOpt().(*VolumeSpecUpdate_SnapshotInterval); ok { - return x.SnapshotInterval - } - return 0 -} - -func (m *VolumeSpecUpdate) GetShared() bool { - if x, ok := m.GetSharedOpt().(*VolumeSpecUpdate_Shared); ok { - return x.Shared +func (m *VolumeSpec) GetNodiscard() bool { + if m != nil { + return m.Nodiscard } return false } -func (m *VolumeSpecUpdate) GetReplicaSet() *ReplicaSet { +func (m *VolumeSpec) GetIoStrategy() *IoStrategy { if m != nil { - return m.ReplicaSet + return m.IoStrategy } return nil } -func (m *VolumeSpecUpdate) GetPassphrase() string { - if x, ok := m.GetPassphraseOpt().(*VolumeSpecUpdate_Passphrase); ok { - return x.Passphrase +func (m *VolumeSpec) GetPlacementStrategy() *VolumePlacementStrategy { + if m != nil { + return m.PlacementStrategy } - return "" + return nil } -func (m *VolumeSpecUpdate) GetSnapshotSchedule() string { - if x, ok := m.GetSnapshotScheduleOpt().(*VolumeSpecUpdate_SnapshotSchedule); ok { - return x.SnapshotSchedule +func (m *VolumeSpec) GetStoragePolicy() string { + if m != nil { + return m.StoragePolicy } return "" } -func (m *VolumeSpecUpdate) GetScale() uint32 { - if x, ok := m.GetScaleOpt().(*VolumeSpecUpdate_Scale); ok { - return x.Scale +func (m *VolumeSpec) GetOwnership() *Ownership { + if m != nil { + return m.Ownership } - return 0 + return nil } -func (m *VolumeSpecUpdate) GetSticky() bool { - if x, ok := m.GetStickyOpt().(*VolumeSpecUpdate_Sticky); ok { - return x.Sticky +func (m *VolumeSpec) GetExportSpec() *ExportSpec { + if m != nil { + return m.ExportSpec } - return false + return nil } -func (m *VolumeSpecUpdate) GetGroup() *Group { - if x, ok := m.GetGroupOpt().(*VolumeSpecUpdate_Group); ok { - return x.Group +func (m *VolumeSpec) GetFpPreference() bool { + if m != nil { + return m.FpPreference } - return nil + return false } -func (m *VolumeSpecUpdate) GetJournal() bool { - if x, ok := m.GetJournalOpt().(*VolumeSpecUpdate_Journal); ok { - return x.Journal +func (m *VolumeSpec) GetXattr() Xattr_Value { + if m != nil { + return m.Xattr } - return false + return Xattr_UNSPECIFIED } -func (m *VolumeSpecUpdate) GetSharedv4() bool { - if x, ok := m.GetSharedv4Opt().(*VolumeSpecUpdate_Sharedv4); ok { - return x.Sharedv4 +func (m *VolumeSpec) GetScanPolicy() *ScanPolicy { + if m != nil { + return m.ScanPolicy } - return false + return nil } -func (m *VolumeSpecUpdate) GetQueueDepth() uint32 { - if x, ok := m.GetQueueDepthOpt().(*VolumeSpecUpdate_QueueDepth); ok { - return x.QueueDepth +func (m *VolumeSpec) GetMountOptions() *MountOptions { + if m != nil { + return m.MountOptions } - return 0 + return nil } -func (m *VolumeSpecUpdate) GetOwnership() *Ownership { +func (m *VolumeSpec) GetSharedv4MountOptions() *MountOptions { if m != nil { - return m.Ownership + return m.Sharedv4MountOptions } return nil } -func (m *VolumeSpecUpdate) GetNodiscard() bool { - if x, ok := m.GetNodiscardOpt().(*VolumeSpecUpdate_Nodiscard); ok { - return x.Nodiscard +func (m *VolumeSpec) GetProxyWrite() bool { + if m != nil { + return m.ProxyWrite } return false } -func (m *VolumeSpecUpdate) GetIoStrategy() *IoStrategy { +func (m *VolumeSpec) GetProxySpec() *ProxySpec { if m != nil { - return m.IoStrategy + return m.ProxySpec + } + return nil +} + +// VolumeSpecUpdate provides a method to set any of the VolumeSpec of an existing volume +type VolumeSpecUpdate struct { + // Size specifies the thin provisioned volume size in bytes + // + // Types that are valid to be assigned to SizeOpt: + // *VolumeSpecUpdate_Size + SizeOpt isVolumeSpecUpdate_SizeOpt `protobuf_oneof:"size_opt"` + // HaLevel specifies the number of copies of data. + // + // Types that are valid to be assigned to HaLevelOpt: + // *VolumeSpecUpdate_HaLevel + HaLevelOpt isVolumeSpecUpdate_HaLevelOpt `protobuf_oneof:"ha_level_opt"` + // Cos specifies the relative class of service. + // + // Types that are valid to be assigned to CosOpt: + // *VolumeSpecUpdate_Cos + CosOpt isVolumeSpecUpdate_CosOpt `protobuf_oneof:"cos_opt"` + // IoProfile provides a hint about application using this volume. + // + // Types that are valid to be assigned to IoProfileOpt: + // *VolumeSpecUpdate_IoProfile + IoProfileOpt isVolumeSpecUpdate_IoProfileOpt `protobuf_oneof:"io_profile_opt"` + // Dedupe specifies if the volume data is to be de-duplicated. + // + // Types that are valid to be assigned to DedupeOpt: + // *VolumeSpecUpdate_Dedupe + DedupeOpt isVolumeSpecUpdate_DedupeOpt `protobuf_oneof:"dedupe_opt"` + // SnapshotInterval in minutes, set to 0 to disable snapshots + // + // Types that are valid to be assigned to SnapshotIntervalOpt: + // *VolumeSpecUpdate_SnapshotInterval + SnapshotIntervalOpt isVolumeSpecUpdate_SnapshotIntervalOpt `protobuf_oneof:"snapshot_interval_opt"` + // Shared is true if this volume can be remotely accessed. + // + // Types that are valid to be assigned to SharedOpt: + // *VolumeSpecUpdate_Shared + SharedOpt isVolumeSpecUpdate_SharedOpt `protobuf_oneof:"shared_opt"` + // ReplicaSet is the desired set of nodes for the volume data. + ReplicaSet *ReplicaSet `protobuf:"bytes,12,opt,name=replica_set,json=replicaSet" json:"replica_set,omitempty"` + // Passphrase for an encrypted volume + // + // Types that are valid to be assigned to PassphraseOpt: + // *VolumeSpecUpdate_Passphrase + PassphraseOpt isVolumeSpecUpdate_PassphraseOpt `protobuf_oneof:"passphrase_opt"` + // SnapshotSchedule a well known string that specifies when snapshots should be taken. + // + // Types that are valid to be assigned to SnapshotScheduleOpt: + // *VolumeSpecUpdate_SnapshotSchedule + SnapshotScheduleOpt isVolumeSpecUpdate_SnapshotScheduleOpt `protobuf_oneof:"snapshot_schedule_opt"` + // Scale allows autocreation of volumes. + // + // Types that are valid to be assigned to ScaleOpt: + // *VolumeSpecUpdate_Scale + ScaleOpt isVolumeSpecUpdate_ScaleOpt `protobuf_oneof:"scale_opt"` + // Sticky volumes cannot be deleted until the flag is removed. + // + // Types that are valid to be assigned to StickyOpt: + // *VolumeSpecUpdate_Sticky + StickyOpt isVolumeSpecUpdate_StickyOpt `protobuf_oneof:"sticky_opt"` + // Group identifies a consistency group + // + // Types that are valid to be assigned to GroupOpt: + // *VolumeSpecUpdate_Group + GroupOpt isVolumeSpecUpdate_GroupOpt `protobuf_oneof:"group_opt"` + // Journal is true if data for the volume goes into the journal. + // + // Types that are valid to be assigned to JournalOpt: + // *VolumeSpecUpdate_Journal + JournalOpt isVolumeSpecUpdate_JournalOpt `protobuf_oneof:"journal_opt"` + // Sharedv4 is true if this volume can be accessed via sharedv4. + // + // Types that are valid to be assigned to Sharedv4Opt: + // *VolumeSpecUpdate_Sharedv4 + Sharedv4Opt isVolumeSpecUpdate_Sharedv4Opt `protobuf_oneof:"sharedv4_opt"` + // QueueDepth defines the desired block device queue depth + // + // Types that are valid to be assigned to QueueDepthOpt: + // *VolumeSpecUpdate_QueueDepth + QueueDepthOpt isVolumeSpecUpdate_QueueDepthOpt `protobuf_oneof:"queue_depth_opt"` + // Ownership volume information to update. If the value of `owner` in the + // `ownership` message is an empty string then the value of `owner` in + // the `VolumeSpec.Ownership.owner` will not be updated. + Ownership *Ownership `protobuf:"bytes,26,opt,name=ownership" json:"ownership,omitempty"` + // Nodiscard specifies if the volume will be mounted with discard support disabled. + // i.e. FS will not release allocated blocks back to the backing storage pool. + // + // Types that are valid to be assigned to NodiscardOpt: + // *VolumeSpecUpdate_Nodiscard + NodiscardOpt isVolumeSpecUpdate_NodiscardOpt `protobuf_oneof:"nodiscard_opt"` + // IoStrategy preferred strategy for I/O. + IoStrategy *IoStrategy `protobuf:"bytes,28,opt,name=io_strategy,json=ioStrategy" json:"io_strategy,omitempty"` + // ExportSpec volume export spec + // + // Types that are valid to be assigned to ExportSpecOpt: + // *VolumeSpecUpdate_ExportSpec + ExportSpecOpt isVolumeSpecUpdate_ExportSpecOpt `protobuf_oneof:"export_spec_opt"` + // fastpath preference + // + // Types that are valid to be assigned to FastpathOpt: + // *VolumeSpecUpdate_Fastpath + FastpathOpt isVolumeSpecUpdate_FastpathOpt `protobuf_oneof:"fastpath_opt"` + // Xattr specifies implementation specific volume attributes + // + // Types that are valid to be assigned to XattrOpt: + // *VolumeSpecUpdate_Xattr + XattrOpt isVolumeSpecUpdate_XattrOpt `protobuf_oneof:"xattr_opt"` + // scan_policy_opt defines the filesystem check policy for the volume + // + // Types that are valid to be assigned to ScanPolicyOpt: + // *VolumeSpecUpdate_ScanPolicy + ScanPolicyOpt isVolumeSpecUpdate_ScanPolicyOpt `protobuf_oneof:"scan_policy_opt"` + // mount_opt provides the mount time options for a volume + // + // Types that are valid to be assigned to MountOpt: + // *VolumeSpecUpdate_MountOptSpec + MountOpt isVolumeSpecUpdate_MountOpt `protobuf_oneof:"mount_opt"` + // sharedv4_mount_opt provides the client side mount time options for a sharedv4 volume + // + // Types that are valid to be assigned to Sharedv4MountOpt: + // *VolumeSpecUpdate_Sharedv4MountOptSpec + Sharedv4MountOpt isVolumeSpecUpdate_Sharedv4MountOpt `protobuf_oneof:"sharedv4_mount_opt"` + // Proxy_write is true if proxy write replication is enabled for the volume + // + // Types that are valid to be assigned to ProxyWriteOpt: + // *VolumeSpecUpdate_ProxyWrite + ProxyWriteOpt isVolumeSpecUpdate_ProxyWriteOpt `protobuf_oneof:"proxy_write_opt"` + // proxy_spec_opt provides the spec for a proxy volume + // + // Types that are valid to be assigned to ProxySpecOpt: + // *VolumeSpecUpdate_ProxySpec + ProxySpecOpt isVolumeSpecUpdate_ProxySpecOpt `protobuf_oneof:"proxy_spec_opt"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeSpecUpdate) Reset() { *m = VolumeSpecUpdate{} } +func (m *VolumeSpecUpdate) String() string { return proto.CompactTextString(m) } +func (*VolumeSpecUpdate) ProtoMessage() {} +func (*VolumeSpecUpdate) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{19} +} +func (m *VolumeSpecUpdate) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeSpecUpdate.Unmarshal(m, b) +} +func (m *VolumeSpecUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeSpecUpdate.Marshal(b, m, deterministic) +} +func (dst *VolumeSpecUpdate) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeSpecUpdate.Merge(dst, src) +} +func (m *VolumeSpecUpdate) XXX_Size() int { + return xxx_messageInfo_VolumeSpecUpdate.Size(m) +} +func (m *VolumeSpecUpdate) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeSpecUpdate.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeSpecUpdate proto.InternalMessageInfo + +type isVolumeSpecUpdate_SizeOpt interface { + isVolumeSpecUpdate_SizeOpt() +} +type isVolumeSpecUpdate_HaLevelOpt interface { + isVolumeSpecUpdate_HaLevelOpt() +} +type isVolumeSpecUpdate_CosOpt interface { + isVolumeSpecUpdate_CosOpt() +} +type isVolumeSpecUpdate_IoProfileOpt interface { + isVolumeSpecUpdate_IoProfileOpt() +} +type isVolumeSpecUpdate_DedupeOpt interface { + isVolumeSpecUpdate_DedupeOpt() +} +type isVolumeSpecUpdate_SnapshotIntervalOpt interface { + isVolumeSpecUpdate_SnapshotIntervalOpt() +} +type isVolumeSpecUpdate_SharedOpt interface { + isVolumeSpecUpdate_SharedOpt() +} +type isVolumeSpecUpdate_PassphraseOpt interface { + isVolumeSpecUpdate_PassphraseOpt() +} +type isVolumeSpecUpdate_SnapshotScheduleOpt interface { + isVolumeSpecUpdate_SnapshotScheduleOpt() +} +type isVolumeSpecUpdate_ScaleOpt interface { + isVolumeSpecUpdate_ScaleOpt() +} +type isVolumeSpecUpdate_StickyOpt interface { + isVolumeSpecUpdate_StickyOpt() +} +type isVolumeSpecUpdate_GroupOpt interface { + isVolumeSpecUpdate_GroupOpt() +} +type isVolumeSpecUpdate_JournalOpt interface { + isVolumeSpecUpdate_JournalOpt() +} +type isVolumeSpecUpdate_Sharedv4Opt interface { + isVolumeSpecUpdate_Sharedv4Opt() +} +type isVolumeSpecUpdate_QueueDepthOpt interface { + isVolumeSpecUpdate_QueueDepthOpt() +} +type isVolumeSpecUpdate_NodiscardOpt interface { + isVolumeSpecUpdate_NodiscardOpt() +} +type isVolumeSpecUpdate_ExportSpecOpt interface { + isVolumeSpecUpdate_ExportSpecOpt() +} +type isVolumeSpecUpdate_FastpathOpt interface { + isVolumeSpecUpdate_FastpathOpt() +} +type isVolumeSpecUpdate_XattrOpt interface { + isVolumeSpecUpdate_XattrOpt() +} +type isVolumeSpecUpdate_ScanPolicyOpt interface { + isVolumeSpecUpdate_ScanPolicyOpt() +} +type isVolumeSpecUpdate_MountOpt interface { + isVolumeSpecUpdate_MountOpt() +} +type isVolumeSpecUpdate_Sharedv4MountOpt interface { + isVolumeSpecUpdate_Sharedv4MountOpt() +} +type isVolumeSpecUpdate_ProxyWriteOpt interface { + isVolumeSpecUpdate_ProxyWriteOpt() +} +type isVolumeSpecUpdate_ProxySpecOpt interface { + isVolumeSpecUpdate_ProxySpecOpt() +} + +type VolumeSpecUpdate_Size struct { + Size uint64 `protobuf:"varint,2,opt,name=size,oneof"` +} +type VolumeSpecUpdate_HaLevel struct { + HaLevel int64 `protobuf:"varint,5,opt,name=ha_level,json=haLevel,oneof"` +} +type VolumeSpecUpdate_Cos struct { + Cos CosType `protobuf:"varint,6,opt,name=cos,enum=openstorage.api.CosType,oneof"` +} +type VolumeSpecUpdate_IoProfile struct { + IoProfile IoProfile `protobuf:"varint,7,opt,name=io_profile,json=ioProfile,enum=openstorage.api.IoProfile,oneof"` +} +type VolumeSpecUpdate_Dedupe struct { + Dedupe bool `protobuf:"varint,8,opt,name=dedupe,oneof"` +} +type VolumeSpecUpdate_SnapshotInterval struct { + SnapshotInterval uint32 `protobuf:"varint,9,opt,name=snapshot_interval,json=snapshotInterval,oneof"` +} +type VolumeSpecUpdate_Shared struct { + Shared bool `protobuf:"varint,11,opt,name=shared,oneof"` +} +type VolumeSpecUpdate_Passphrase struct { + Passphrase string `protobuf:"bytes,15,opt,name=passphrase,oneof"` +} +type VolumeSpecUpdate_SnapshotSchedule struct { + SnapshotSchedule string `protobuf:"bytes,16,opt,name=snapshot_schedule,json=snapshotSchedule,oneof"` +} +type VolumeSpecUpdate_Scale struct { + Scale uint32 `protobuf:"varint,17,opt,name=scale,oneof"` +} +type VolumeSpecUpdate_Sticky struct { + Sticky bool `protobuf:"varint,18,opt,name=sticky,oneof"` +} +type VolumeSpecUpdate_Group struct { + Group *Group `protobuf:"bytes,19,opt,name=group,oneof"` +} +type VolumeSpecUpdate_Journal struct { + Journal bool `protobuf:"varint,23,opt,name=journal,oneof"` +} +type VolumeSpecUpdate_Sharedv4 struct { + Sharedv4 bool `protobuf:"varint,24,opt,name=sharedv4,oneof"` +} +type VolumeSpecUpdate_QueueDepth struct { + QueueDepth uint32 `protobuf:"varint,25,opt,name=queue_depth,json=queueDepth,oneof"` +} +type VolumeSpecUpdate_Nodiscard struct { + Nodiscard bool `protobuf:"varint,27,opt,name=nodiscard,oneof"` +} +type VolumeSpecUpdate_ExportSpec struct { + ExportSpec *ExportSpec `protobuf:"bytes,29,opt,name=export_spec,json=exportSpec,oneof"` +} +type VolumeSpecUpdate_Fastpath struct { + Fastpath bool `protobuf:"varint,30,opt,name=fastpath,oneof"` +} +type VolumeSpecUpdate_Xattr struct { + Xattr Xattr_Value `protobuf:"varint,31,opt,name=xattr,enum=openstorage.api.Xattr_Value,oneof"` +} +type VolumeSpecUpdate_ScanPolicy struct { + ScanPolicy *ScanPolicy `protobuf:"bytes,32,opt,name=scan_policy,json=scanPolicy,oneof"` +} +type VolumeSpecUpdate_MountOptSpec struct { + MountOptSpec *MountOptions `protobuf:"bytes,33,opt,name=mount_opt_spec,json=mountOptSpec,oneof"` +} +type VolumeSpecUpdate_Sharedv4MountOptSpec struct { + Sharedv4MountOptSpec *MountOptions `protobuf:"bytes,34,opt,name=sharedv4_mount_opt_spec,json=sharedv4MountOptSpec,oneof"` +} +type VolumeSpecUpdate_ProxyWrite struct { + ProxyWrite bool `protobuf:"varint,35,opt,name=proxy_write,json=proxyWrite,oneof"` +} +type VolumeSpecUpdate_ProxySpec struct { + ProxySpec *ProxySpec `protobuf:"bytes,36,opt,name=proxy_spec,json=proxySpec,oneof"` +} + +func (*VolumeSpecUpdate_Size) isVolumeSpecUpdate_SizeOpt() {} +func (*VolumeSpecUpdate_HaLevel) isVolumeSpecUpdate_HaLevelOpt() {} +func (*VolumeSpecUpdate_Cos) isVolumeSpecUpdate_CosOpt() {} +func (*VolumeSpecUpdate_IoProfile) isVolumeSpecUpdate_IoProfileOpt() {} +func (*VolumeSpecUpdate_Dedupe) isVolumeSpecUpdate_DedupeOpt() {} +func (*VolumeSpecUpdate_SnapshotInterval) isVolumeSpecUpdate_SnapshotIntervalOpt() {} +func (*VolumeSpecUpdate_Shared) isVolumeSpecUpdate_SharedOpt() {} +func (*VolumeSpecUpdate_Passphrase) isVolumeSpecUpdate_PassphraseOpt() {} +func (*VolumeSpecUpdate_SnapshotSchedule) isVolumeSpecUpdate_SnapshotScheduleOpt() {} +func (*VolumeSpecUpdate_Scale) isVolumeSpecUpdate_ScaleOpt() {} +func (*VolumeSpecUpdate_Sticky) isVolumeSpecUpdate_StickyOpt() {} +func (*VolumeSpecUpdate_Group) isVolumeSpecUpdate_GroupOpt() {} +func (*VolumeSpecUpdate_Journal) isVolumeSpecUpdate_JournalOpt() {} +func (*VolumeSpecUpdate_Sharedv4) isVolumeSpecUpdate_Sharedv4Opt() {} +func (*VolumeSpecUpdate_QueueDepth) isVolumeSpecUpdate_QueueDepthOpt() {} +func (*VolumeSpecUpdate_Nodiscard) isVolumeSpecUpdate_NodiscardOpt() {} +func (*VolumeSpecUpdate_ExportSpec) isVolumeSpecUpdate_ExportSpecOpt() {} +func (*VolumeSpecUpdate_Fastpath) isVolumeSpecUpdate_FastpathOpt() {} +func (*VolumeSpecUpdate_Xattr) isVolumeSpecUpdate_XattrOpt() {} +func (*VolumeSpecUpdate_ScanPolicy) isVolumeSpecUpdate_ScanPolicyOpt() {} +func (*VolumeSpecUpdate_MountOptSpec) isVolumeSpecUpdate_MountOpt() {} +func (*VolumeSpecUpdate_Sharedv4MountOptSpec) isVolumeSpecUpdate_Sharedv4MountOpt() {} +func (*VolumeSpecUpdate_ProxyWrite) isVolumeSpecUpdate_ProxyWriteOpt() {} +func (*VolumeSpecUpdate_ProxySpec) isVolumeSpecUpdate_ProxySpecOpt() {} + +func (m *VolumeSpecUpdate) GetSizeOpt() isVolumeSpecUpdate_SizeOpt { + if m != nil { + return m.SizeOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetHaLevelOpt() isVolumeSpecUpdate_HaLevelOpt { + if m != nil { + return m.HaLevelOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetCosOpt() isVolumeSpecUpdate_CosOpt { + if m != nil { + return m.CosOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetIoProfileOpt() isVolumeSpecUpdate_IoProfileOpt { + if m != nil { + return m.IoProfileOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetDedupeOpt() isVolumeSpecUpdate_DedupeOpt { + if m != nil { + return m.DedupeOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetSnapshotIntervalOpt() isVolumeSpecUpdate_SnapshotIntervalOpt { + if m != nil { + return m.SnapshotIntervalOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetSharedOpt() isVolumeSpecUpdate_SharedOpt { + if m != nil { + return m.SharedOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetPassphraseOpt() isVolumeSpecUpdate_PassphraseOpt { + if m != nil { + return m.PassphraseOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetSnapshotScheduleOpt() isVolumeSpecUpdate_SnapshotScheduleOpt { + if m != nil { + return m.SnapshotScheduleOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetScaleOpt() isVolumeSpecUpdate_ScaleOpt { + if m != nil { + return m.ScaleOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetStickyOpt() isVolumeSpecUpdate_StickyOpt { + if m != nil { + return m.StickyOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetGroupOpt() isVolumeSpecUpdate_GroupOpt { + if m != nil { + return m.GroupOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetJournalOpt() isVolumeSpecUpdate_JournalOpt { + if m != nil { + return m.JournalOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetSharedv4Opt() isVolumeSpecUpdate_Sharedv4Opt { + if m != nil { + return m.Sharedv4Opt + } + return nil +} +func (m *VolumeSpecUpdate) GetQueueDepthOpt() isVolumeSpecUpdate_QueueDepthOpt { + if m != nil { + return m.QueueDepthOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetNodiscardOpt() isVolumeSpecUpdate_NodiscardOpt { + if m != nil { + return m.NodiscardOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetExportSpecOpt() isVolumeSpecUpdate_ExportSpecOpt { + if m != nil { + return m.ExportSpecOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetFastpathOpt() isVolumeSpecUpdate_FastpathOpt { + if m != nil { + return m.FastpathOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetXattrOpt() isVolumeSpecUpdate_XattrOpt { + if m != nil { + return m.XattrOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetScanPolicyOpt() isVolumeSpecUpdate_ScanPolicyOpt { + if m != nil { + return m.ScanPolicyOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetMountOpt() isVolumeSpecUpdate_MountOpt { + if m != nil { + return m.MountOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetSharedv4MountOpt() isVolumeSpecUpdate_Sharedv4MountOpt { + if m != nil { + return m.Sharedv4MountOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetProxyWriteOpt() isVolumeSpecUpdate_ProxyWriteOpt { + if m != nil { + return m.ProxyWriteOpt + } + return nil +} +func (m *VolumeSpecUpdate) GetProxySpecOpt() isVolumeSpecUpdate_ProxySpecOpt { + if m != nil { + return m.ProxySpecOpt + } + return nil +} + +func (m *VolumeSpecUpdate) GetSize() uint64 { + if x, ok := m.GetSizeOpt().(*VolumeSpecUpdate_Size); ok { + return x.Size + } + return 0 +} + +func (m *VolumeSpecUpdate) GetHaLevel() int64 { + if x, ok := m.GetHaLevelOpt().(*VolumeSpecUpdate_HaLevel); ok { + return x.HaLevel + } + return 0 +} + +func (m *VolumeSpecUpdate) GetCos() CosType { + if x, ok := m.GetCosOpt().(*VolumeSpecUpdate_Cos); ok { + return x.Cos + } + return CosType_NONE +} + +func (m *VolumeSpecUpdate) GetIoProfile() IoProfile { + if x, ok := m.GetIoProfileOpt().(*VolumeSpecUpdate_IoProfile); ok { + return x.IoProfile + } + return IoProfile_IO_PROFILE_SEQUENTIAL +} + +func (m *VolumeSpecUpdate) GetDedupe() bool { + if x, ok := m.GetDedupeOpt().(*VolumeSpecUpdate_Dedupe); ok { + return x.Dedupe + } + return false +} + +func (m *VolumeSpecUpdate) GetSnapshotInterval() uint32 { + if x, ok := m.GetSnapshotIntervalOpt().(*VolumeSpecUpdate_SnapshotInterval); ok { + return x.SnapshotInterval + } + return 0 +} + +func (m *VolumeSpecUpdate) GetShared() bool { + if x, ok := m.GetSharedOpt().(*VolumeSpecUpdate_Shared); ok { + return x.Shared + } + return false +} + +func (m *VolumeSpecUpdate) GetReplicaSet() *ReplicaSet { + if m != nil { + return m.ReplicaSet + } + return nil +} + +func (m *VolumeSpecUpdate) GetPassphrase() string { + if x, ok := m.GetPassphraseOpt().(*VolumeSpecUpdate_Passphrase); ok { + return x.Passphrase + } + return "" +} + +func (m *VolumeSpecUpdate) GetSnapshotSchedule() string { + if x, ok := m.GetSnapshotScheduleOpt().(*VolumeSpecUpdate_SnapshotSchedule); ok { + return x.SnapshotSchedule + } + return "" +} + +func (m *VolumeSpecUpdate) GetScale() uint32 { + if x, ok := m.GetScaleOpt().(*VolumeSpecUpdate_Scale); ok { + return x.Scale + } + return 0 +} + +func (m *VolumeSpecUpdate) GetSticky() bool { + if x, ok := m.GetStickyOpt().(*VolumeSpecUpdate_Sticky); ok { + return x.Sticky + } + return false +} + +func (m *VolumeSpecUpdate) GetGroup() *Group { + if x, ok := m.GetGroupOpt().(*VolumeSpecUpdate_Group); ok { + return x.Group + } + return nil +} + +func (m *VolumeSpecUpdate) GetJournal() bool { + if x, ok := m.GetJournalOpt().(*VolumeSpecUpdate_Journal); ok { + return x.Journal + } + return false +} + +func (m *VolumeSpecUpdate) GetSharedv4() bool { + if x, ok := m.GetSharedv4Opt().(*VolumeSpecUpdate_Sharedv4); ok { + return x.Sharedv4 + } + return false +} + +func (m *VolumeSpecUpdate) GetQueueDepth() uint32 { + if x, ok := m.GetQueueDepthOpt().(*VolumeSpecUpdate_QueueDepth); ok { + return x.QueueDepth + } + return 0 +} + +func (m *VolumeSpecUpdate) GetOwnership() *Ownership { + if m != nil { + return m.Ownership + } + return nil +} + +func (m *VolumeSpecUpdate) GetNodiscard() bool { + if x, ok := m.GetNodiscardOpt().(*VolumeSpecUpdate_Nodiscard); ok { + return x.Nodiscard + } + return false +} + +func (m *VolumeSpecUpdate) GetIoStrategy() *IoStrategy { + if m != nil { + return m.IoStrategy + } + return nil +} + +func (m *VolumeSpecUpdate) GetExportSpec() *ExportSpec { + if x, ok := m.GetExportSpecOpt().(*VolumeSpecUpdate_ExportSpec); ok { + return x.ExportSpec + } + return nil +} + +func (m *VolumeSpecUpdate) GetFastpath() bool { + if x, ok := m.GetFastpathOpt().(*VolumeSpecUpdate_Fastpath); ok { + return x.Fastpath + } + return false +} + +func (m *VolumeSpecUpdate) GetXattr() Xattr_Value { + if x, ok := m.GetXattrOpt().(*VolumeSpecUpdate_Xattr); ok { + return x.Xattr + } + return Xattr_UNSPECIFIED +} + +func (m *VolumeSpecUpdate) GetScanPolicy() *ScanPolicy { + if x, ok := m.GetScanPolicyOpt().(*VolumeSpecUpdate_ScanPolicy); ok { + return x.ScanPolicy + } + return nil +} + +func (m *VolumeSpecUpdate) GetMountOptSpec() *MountOptions { + if x, ok := m.GetMountOpt().(*VolumeSpecUpdate_MountOptSpec); ok { + return x.MountOptSpec + } + return nil +} + +func (m *VolumeSpecUpdate) GetSharedv4MountOptSpec() *MountOptions { + if x, ok := m.GetSharedv4MountOpt().(*VolumeSpecUpdate_Sharedv4MountOptSpec); ok { + return x.Sharedv4MountOptSpec + } + return nil +} + +func (m *VolumeSpecUpdate) GetProxyWrite() bool { + if x, ok := m.GetProxyWriteOpt().(*VolumeSpecUpdate_ProxyWrite); ok { + return x.ProxyWrite + } + return false +} + +func (m *VolumeSpecUpdate) GetProxySpec() *ProxySpec { + if x, ok := m.GetProxySpecOpt().(*VolumeSpecUpdate_ProxySpec); ok { + return x.ProxySpec + } + return nil +} + +// XXX_OneofFuncs is for the internal use of the proto package. +func (*VolumeSpecUpdate) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _VolumeSpecUpdate_OneofMarshaler, _VolumeSpecUpdate_OneofUnmarshaler, _VolumeSpecUpdate_OneofSizer, []interface{}{ + (*VolumeSpecUpdate_Size)(nil), + (*VolumeSpecUpdate_HaLevel)(nil), + (*VolumeSpecUpdate_Cos)(nil), + (*VolumeSpecUpdate_IoProfile)(nil), + (*VolumeSpecUpdate_Dedupe)(nil), + (*VolumeSpecUpdate_SnapshotInterval)(nil), + (*VolumeSpecUpdate_Shared)(nil), + (*VolumeSpecUpdate_Passphrase)(nil), + (*VolumeSpecUpdate_SnapshotSchedule)(nil), + (*VolumeSpecUpdate_Scale)(nil), + (*VolumeSpecUpdate_Sticky)(nil), + (*VolumeSpecUpdate_Group)(nil), + (*VolumeSpecUpdate_Journal)(nil), + (*VolumeSpecUpdate_Sharedv4)(nil), + (*VolumeSpecUpdate_QueueDepth)(nil), + (*VolumeSpecUpdate_Nodiscard)(nil), + (*VolumeSpecUpdate_ExportSpec)(nil), + (*VolumeSpecUpdate_Fastpath)(nil), + (*VolumeSpecUpdate_Xattr)(nil), + (*VolumeSpecUpdate_ScanPolicy)(nil), + (*VolumeSpecUpdate_MountOptSpec)(nil), + (*VolumeSpecUpdate_Sharedv4MountOptSpec)(nil), + (*VolumeSpecUpdate_ProxyWrite)(nil), + (*VolumeSpecUpdate_ProxySpec)(nil), + } +} + +func _VolumeSpecUpdate_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*VolumeSpecUpdate) + // size_opt + switch x := m.SizeOpt.(type) { + case *VolumeSpecUpdate_Size: + b.EncodeVarint(2<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Size)) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.SizeOpt has unexpected type %T", x) + } + // ha_level_opt + switch x := m.HaLevelOpt.(type) { + case *VolumeSpecUpdate_HaLevel: + b.EncodeVarint(5<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.HaLevel)) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.HaLevelOpt has unexpected type %T", x) + } + // cos_opt + switch x := m.CosOpt.(type) { + case *VolumeSpecUpdate_Cos: + b.EncodeVarint(6<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Cos)) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.CosOpt has unexpected type %T", x) + } + // io_profile_opt + switch x := m.IoProfileOpt.(type) { + case *VolumeSpecUpdate_IoProfile: + b.EncodeVarint(7<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.IoProfile)) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.IoProfileOpt has unexpected type %T", x) + } + // dedupe_opt + switch x := m.DedupeOpt.(type) { + case *VolumeSpecUpdate_Dedupe: + t := uint64(0) + if x.Dedupe { + t = 1 + } + b.EncodeVarint(8<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.DedupeOpt has unexpected type %T", x) + } + // snapshot_interval_opt + switch x := m.SnapshotIntervalOpt.(type) { + case *VolumeSpecUpdate_SnapshotInterval: + b.EncodeVarint(9<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.SnapshotInterval)) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.SnapshotIntervalOpt has unexpected type %T", x) + } + // shared_opt + switch x := m.SharedOpt.(type) { + case *VolumeSpecUpdate_Shared: + t := uint64(0) + if x.Shared { + t = 1 + } + b.EncodeVarint(11<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.SharedOpt has unexpected type %T", x) + } + // passphrase_opt + switch x := m.PassphraseOpt.(type) { + case *VolumeSpecUpdate_Passphrase: + b.EncodeVarint(15<<3 | proto.WireBytes) + b.EncodeStringBytes(x.Passphrase) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.PassphraseOpt has unexpected type %T", x) + } + // snapshot_schedule_opt + switch x := m.SnapshotScheduleOpt.(type) { + case *VolumeSpecUpdate_SnapshotSchedule: + b.EncodeVarint(16<<3 | proto.WireBytes) + b.EncodeStringBytes(x.SnapshotSchedule) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.SnapshotScheduleOpt has unexpected type %T", x) + } + // scale_opt + switch x := m.ScaleOpt.(type) { + case *VolumeSpecUpdate_Scale: + b.EncodeVarint(17<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Scale)) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.ScaleOpt has unexpected type %T", x) + } + // sticky_opt + switch x := m.StickyOpt.(type) { + case *VolumeSpecUpdate_Sticky: + t := uint64(0) + if x.Sticky { + t = 1 + } + b.EncodeVarint(18<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.StickyOpt has unexpected type %T", x) + } + // group_opt + switch x := m.GroupOpt.(type) { + case *VolumeSpecUpdate_Group: + b.EncodeVarint(19<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Group); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.GroupOpt has unexpected type %T", x) + } + // journal_opt + switch x := m.JournalOpt.(type) { + case *VolumeSpecUpdate_Journal: + t := uint64(0) + if x.Journal { + t = 1 + } + b.EncodeVarint(23<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.JournalOpt has unexpected type %T", x) + } + // sharedv4_opt + switch x := m.Sharedv4Opt.(type) { + case *VolumeSpecUpdate_Sharedv4: + t := uint64(0) + if x.Sharedv4 { + t = 1 + } + b.EncodeVarint(24<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.Sharedv4Opt has unexpected type %T", x) + } + // queue_depth_opt + switch x := m.QueueDepthOpt.(type) { + case *VolumeSpecUpdate_QueueDepth: + b.EncodeVarint(25<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.QueueDepth)) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.QueueDepthOpt has unexpected type %T", x) + } + // nodiscard_opt + switch x := m.NodiscardOpt.(type) { + case *VolumeSpecUpdate_Nodiscard: + t := uint64(0) + if x.Nodiscard { + t = 1 + } + b.EncodeVarint(27<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.NodiscardOpt has unexpected type %T", x) + } + // export_spec_opt + switch x := m.ExportSpecOpt.(type) { + case *VolumeSpecUpdate_ExportSpec: + b.EncodeVarint(29<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ExportSpec); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.ExportSpecOpt has unexpected type %T", x) + } + // fastpath_opt + switch x := m.FastpathOpt.(type) { + case *VolumeSpecUpdate_Fastpath: + t := uint64(0) + if x.Fastpath { + t = 1 + } + b.EncodeVarint(30<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.FastpathOpt has unexpected type %T", x) + } + // xattr_opt + switch x := m.XattrOpt.(type) { + case *VolumeSpecUpdate_Xattr: + b.EncodeVarint(31<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Xattr)) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.XattrOpt has unexpected type %T", x) + } + // scan_policy_opt + switch x := m.ScanPolicyOpt.(type) { + case *VolumeSpecUpdate_ScanPolicy: + b.EncodeVarint(32<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ScanPolicy); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.ScanPolicyOpt has unexpected type %T", x) + } + // mount_opt + switch x := m.MountOpt.(type) { + case *VolumeSpecUpdate_MountOptSpec: + b.EncodeVarint(33<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.MountOptSpec); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.MountOpt has unexpected type %T", x) + } + // sharedv4_mount_opt + switch x := m.Sharedv4MountOpt.(type) { + case *VolumeSpecUpdate_Sharedv4MountOptSpec: + b.EncodeVarint(34<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Sharedv4MountOptSpec); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.Sharedv4MountOpt has unexpected type %T", x) + } + // proxy_write_opt + switch x := m.ProxyWriteOpt.(type) { + case *VolumeSpecUpdate_ProxyWrite: + t := uint64(0) + if x.ProxyWrite { + t = 1 + } + b.EncodeVarint(35<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.ProxyWriteOpt has unexpected type %T", x) + } + // proxy_spec_opt + switch x := m.ProxySpecOpt.(type) { + case *VolumeSpecUpdate_ProxySpec: + b.EncodeVarint(36<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ProxySpec); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecUpdate.ProxySpecOpt has unexpected type %T", x) + } + return nil +} + +func _VolumeSpecUpdate_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*VolumeSpecUpdate) + switch tag { + case 2: // size_opt.size + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.SizeOpt = &VolumeSpecUpdate_Size{x} + return true, err + case 5: // ha_level_opt.ha_level + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.HaLevelOpt = &VolumeSpecUpdate_HaLevel{int64(x)} + return true, err + case 6: // cos_opt.cos + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.CosOpt = &VolumeSpecUpdate_Cos{CosType(x)} + return true, err + case 7: // io_profile_opt.io_profile + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.IoProfileOpt = &VolumeSpecUpdate_IoProfile{IoProfile(x)} + return true, err + case 8: // dedupe_opt.dedupe + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.DedupeOpt = &VolumeSpecUpdate_Dedupe{x != 0} + return true, err + case 9: // snapshot_interval_opt.snapshot_interval + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.SnapshotIntervalOpt = &VolumeSpecUpdate_SnapshotInterval{uint32(x)} + return true, err + case 11: // shared_opt.shared + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.SharedOpt = &VolumeSpecUpdate_Shared{x != 0} + return true, err + case 15: // passphrase_opt.passphrase + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeStringBytes() + m.PassphraseOpt = &VolumeSpecUpdate_Passphrase{x} + return true, err + case 16: // snapshot_schedule_opt.snapshot_schedule + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeStringBytes() + m.SnapshotScheduleOpt = &VolumeSpecUpdate_SnapshotSchedule{x} + return true, err + case 17: // scale_opt.scale + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.ScaleOpt = &VolumeSpecUpdate_Scale{uint32(x)} + return true, err + case 18: // sticky_opt.sticky + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.StickyOpt = &VolumeSpecUpdate_Sticky{x != 0} + return true, err + case 19: // group_opt.group + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(Group) + err := b.DecodeMessage(msg) + m.GroupOpt = &VolumeSpecUpdate_Group{msg} + return true, err + case 23: // journal_opt.journal + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.JournalOpt = &VolumeSpecUpdate_Journal{x != 0} + return true, err + case 24: // sharedv4_opt.sharedv4 + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.Sharedv4Opt = &VolumeSpecUpdate_Sharedv4{x != 0} + return true, err + case 25: // queue_depth_opt.queue_depth + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.QueueDepthOpt = &VolumeSpecUpdate_QueueDepth{uint32(x)} + return true, err + case 27: // nodiscard_opt.nodiscard + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.NodiscardOpt = &VolumeSpecUpdate_Nodiscard{x != 0} + return true, err + case 29: // export_spec_opt.export_spec + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ExportSpec) + err := b.DecodeMessage(msg) + m.ExportSpecOpt = &VolumeSpecUpdate_ExportSpec{msg} + return true, err + case 30: // fastpath_opt.fastpath + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.FastpathOpt = &VolumeSpecUpdate_Fastpath{x != 0} + return true, err + case 31: // xattr_opt.xattr + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.XattrOpt = &VolumeSpecUpdate_Xattr{Xattr_Value(x)} + return true, err + case 32: // scan_policy_opt.scan_policy + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ScanPolicy) + err := b.DecodeMessage(msg) + m.ScanPolicyOpt = &VolumeSpecUpdate_ScanPolicy{msg} + return true, err + case 33: // mount_opt.mount_opt_spec + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(MountOptions) + err := b.DecodeMessage(msg) + m.MountOpt = &VolumeSpecUpdate_MountOptSpec{msg} + return true, err + case 34: // sharedv4_mount_opt.sharedv4_mount_opt_spec + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(MountOptions) + err := b.DecodeMessage(msg) + m.Sharedv4MountOpt = &VolumeSpecUpdate_Sharedv4MountOptSpec{msg} + return true, err + case 35: // proxy_write_opt.proxy_write + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.ProxyWriteOpt = &VolumeSpecUpdate_ProxyWrite{x != 0} + return true, err + case 36: // proxy_spec_opt.proxy_spec + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ProxySpec) + err := b.DecodeMessage(msg) + m.ProxySpecOpt = &VolumeSpecUpdate_ProxySpec{msg} + return true, err + default: + return false, nil + } +} + +func _VolumeSpecUpdate_OneofSizer(msg proto.Message) (n int) { + m := msg.(*VolumeSpecUpdate) + // size_opt + switch x := m.SizeOpt.(type) { + case *VolumeSpecUpdate_Size: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.Size)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // ha_level_opt + switch x := m.HaLevelOpt.(type) { + case *VolumeSpecUpdate_HaLevel: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.HaLevel)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // cos_opt + switch x := m.CosOpt.(type) { + case *VolumeSpecUpdate_Cos: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.Cos)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // io_profile_opt + switch x := m.IoProfileOpt.(type) { + case *VolumeSpecUpdate_IoProfile: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.IoProfile)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // dedupe_opt + switch x := m.DedupeOpt.(type) { + case *VolumeSpecUpdate_Dedupe: + n += 1 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // snapshot_interval_opt + switch x := m.SnapshotIntervalOpt.(type) { + case *VolumeSpecUpdate_SnapshotInterval: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.SnapshotInterval)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // shared_opt + switch x := m.SharedOpt.(type) { + case *VolumeSpecUpdate_Shared: + n += 1 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // passphrase_opt + switch x := m.PassphraseOpt.(type) { + case *VolumeSpecUpdate_Passphrase: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(len(x.Passphrase))) + n += len(x.Passphrase) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // snapshot_schedule_opt + switch x := m.SnapshotScheduleOpt.(type) { + case *VolumeSpecUpdate_SnapshotSchedule: + n += 2 // tag and wire + n += proto.SizeVarint(uint64(len(x.SnapshotSchedule))) + n += len(x.SnapshotSchedule) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // scale_opt + switch x := m.ScaleOpt.(type) { + case *VolumeSpecUpdate_Scale: + n += 2 // tag and wire + n += proto.SizeVarint(uint64(x.Scale)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // sticky_opt + switch x := m.StickyOpt.(type) { + case *VolumeSpecUpdate_Sticky: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // group_opt + switch x := m.GroupOpt.(type) { + case *VolumeSpecUpdate_Group: + s := proto.Size(x.Group) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // journal_opt + switch x := m.JournalOpt.(type) { + case *VolumeSpecUpdate_Journal: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // sharedv4_opt + switch x := m.Sharedv4Opt.(type) { + case *VolumeSpecUpdate_Sharedv4: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // queue_depth_opt + switch x := m.QueueDepthOpt.(type) { + case *VolumeSpecUpdate_QueueDepth: + n += 2 // tag and wire + n += proto.SizeVarint(uint64(x.QueueDepth)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // nodiscard_opt + switch x := m.NodiscardOpt.(type) { + case *VolumeSpecUpdate_Nodiscard: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // export_spec_opt + switch x := m.ExportSpecOpt.(type) { + case *VolumeSpecUpdate_ExportSpec: + s := proto.Size(x.ExportSpec) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // fastpath_opt + switch x := m.FastpathOpt.(type) { + case *VolumeSpecUpdate_Fastpath: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // xattr_opt + switch x := m.XattrOpt.(type) { + case *VolumeSpecUpdate_Xattr: + n += 2 // tag and wire + n += proto.SizeVarint(uint64(x.Xattr)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // scan_policy_opt + switch x := m.ScanPolicyOpt.(type) { + case *VolumeSpecUpdate_ScanPolicy: + s := proto.Size(x.ScanPolicy) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // mount_opt + switch x := m.MountOpt.(type) { + case *VolumeSpecUpdate_MountOptSpec: + s := proto.Size(x.MountOptSpec) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // sharedv4_mount_opt + switch x := m.Sharedv4MountOpt.(type) { + case *VolumeSpecUpdate_Sharedv4MountOptSpec: + s := proto.Size(x.Sharedv4MountOptSpec) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // proxy_write_opt + switch x := m.ProxyWriteOpt.(type) { + case *VolumeSpecUpdate_ProxyWrite: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // proxy_spec_opt + switch x := m.ProxySpecOpt.(type) { + case *VolumeSpecUpdate_ProxySpec: + s := proto.Size(x.ProxySpec) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n +} + +// VolumeSpecPolicy provides a method to set volume storage policy +type VolumeSpecPolicy struct { + // Size specifies the thin provisioned volume size in bytes. + // Use `size_operator` to show if this value is the min, max, or set. + // + // Types that are valid to be assigned to SizeOpt: + // *VolumeSpecPolicy_Size + SizeOpt isVolumeSpecPolicy_SizeOpt `protobuf_oneof:"size_opt"` + // HaLevel specifies the number of copies of data. + // Use `ha_level_operator` to show if this value is the min, max, or set. + // + // Types that are valid to be assigned to HaLevelOpt: + // *VolumeSpecPolicy_HaLevel + HaLevelOpt isVolumeSpecPolicy_HaLevelOpt `protobuf_oneof:"ha_level_opt"` + // Cos specifies the relative class of service. + // + // Types that are valid to be assigned to CosOpt: + // *VolumeSpecPolicy_Cos + CosOpt isVolumeSpecPolicy_CosOpt `protobuf_oneof:"cos_opt"` + // IoProfile provides a hint about application using this volume. + // + // Types that are valid to be assigned to IoProfileOpt: + // *VolumeSpecPolicy_IoProfile + IoProfileOpt isVolumeSpecPolicy_IoProfileOpt `protobuf_oneof:"io_profile_opt"` + // Dedupe specifies if the volume data is to be de-duplicated. + // + // Types that are valid to be assigned to DedupeOpt: + // *VolumeSpecPolicy_Dedupe + DedupeOpt isVolumeSpecPolicy_DedupeOpt `protobuf_oneof:"dedupe_opt"` + // SnapshotInterval in minutes, set to 0 to disable snapshots + // + // Types that are valid to be assigned to SnapshotIntervalOpt: + // *VolumeSpecPolicy_SnapshotInterval + SnapshotIntervalOpt isVolumeSpecPolicy_SnapshotIntervalOpt `protobuf_oneof:"snapshot_interval_opt"` + // VolumeLabels configuration labels + VolumeLabels map[string]string `protobuf:"bytes,7,rep,name=volume_labels,json=volumeLabels" json:"volume_labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // Shared is true if this volume can be remotely accessed. + // + // Types that are valid to be assigned to SharedOpt: + // *VolumeSpecPolicy_Shared + SharedOpt isVolumeSpecPolicy_SharedOpt `protobuf_oneof:"shared_opt"` + // ReplicaSet is the desired set of nodes for the volume data. + ReplicaSet *ReplicaSet `protobuf:"bytes,9,opt,name=replica_set,json=replicaSet" json:"replica_set,omitempty"` + // Passphrase for an encrypted volume + // + // Types that are valid to be assigned to PassphraseOpt: + // *VolumeSpecPolicy_Passphrase + PassphraseOpt isVolumeSpecPolicy_PassphraseOpt `protobuf_oneof:"passphrase_opt"` + // SnapshotSchedule a well known string that specifies when snapshots should be taken. + // + // Types that are valid to be assigned to SnapshotScheduleOpt: + // *VolumeSpecPolicy_SnapshotSchedule + SnapshotScheduleOpt isVolumeSpecPolicy_SnapshotScheduleOpt `protobuf_oneof:"snapshot_schedule_opt"` + // Scale allows autocreation of volumes. + // + // Types that are valid to be assigned to ScaleOpt: + // *VolumeSpecPolicy_Scale + ScaleOpt isVolumeSpecPolicy_ScaleOpt `protobuf_oneof:"scale_opt"` + // Sticky volumes cannot be deleted until the flag is removed. + // + // Types that are valid to be assigned to StickyOpt: + // *VolumeSpecPolicy_Sticky + StickyOpt isVolumeSpecPolicy_StickyOpt `protobuf_oneof:"sticky_opt"` + // Group identifies a consistency group + // + // Types that are valid to be assigned to GroupOpt: + // *VolumeSpecPolicy_Group + GroupOpt isVolumeSpecPolicy_GroupOpt `protobuf_oneof:"group_opt"` + // Journal is true if data for the volume goes into the journal. + // + // Types that are valid to be assigned to JournalOpt: + // *VolumeSpecPolicy_Journal + JournalOpt isVolumeSpecPolicy_JournalOpt `protobuf_oneof:"journal_opt"` + // Sharedv4 is true if this volume can be accessed via sharedv4. + // + // Types that are valid to be assigned to Sharedv4Opt: + // *VolumeSpecPolicy_Sharedv4 + Sharedv4Opt isVolumeSpecPolicy_Sharedv4Opt `protobuf_oneof:"sharedv4_opt"` + // QueueDepth defines the desired block device queue depth + // + // Types that are valid to be assigned to QueueDepthOpt: + // *VolumeSpecPolicy_QueueDepth + QueueDepthOpt isVolumeSpecPolicy_QueueDepthOpt `protobuf_oneof:"queue_depth_opt"` + // Encrypted is true if this volume will be cryptographically secured. + // + // Types that are valid to be assigned to EncryptedOpt: + // *VolumeSpecPolicy_Encrypted + EncryptedOpt isVolumeSpecPolicy_EncryptedOpt `protobuf_oneof:"encrypted_opt"` + // Aggregation level Specifies the number of parts the volume can be aggregated from. + // + // Types that are valid to be assigned to AggregationLevelOpt: + // *VolumeSpecPolicy_AggregationLevel + AggregationLevelOpt isVolumeSpecPolicy_AggregationLevelOpt `protobuf_oneof:"aggregation_level_opt"` + // Operator to check size + SizeOperator VolumeSpecPolicy_PolicyOp `protobuf:"varint,50,opt,name=size_operator,json=sizeOperator,enum=openstorage.api.VolumeSpecPolicy_PolicyOp" json:"size_operator,omitempty"` + // Operator to check ha_level + HaLevelOperator VolumeSpecPolicy_PolicyOp `protobuf:"varint,51,opt,name=ha_level_operator,json=haLevelOperator,enum=openstorage.api.VolumeSpecPolicy_PolicyOp" json:"ha_level_operator,omitempty"` + // Operator to check scale + ScaleOperator VolumeSpecPolicy_PolicyOp `protobuf:"varint,52,opt,name=scale_operator,json=scaleOperator,enum=openstorage.api.VolumeSpecPolicy_PolicyOp" json:"scale_operator,omitempty"` + // Operator to check snapshot_interval + SnapshotIntervalOperator VolumeSpecPolicy_PolicyOp `protobuf:"varint,53,opt,name=snapshot_interval_operator,json=snapshotIntervalOperator,enum=openstorage.api.VolumeSpecPolicy_PolicyOp" json:"snapshot_interval_operator,omitempty"` + // Nodiscard specifies if the volume will be mounted with discard support disabled. + // i.e. FS will not release allocated blocks back to the backing storage pool. + // + // Types that are valid to be assigned to NodiscardOpt: + // *VolumeSpecPolicy_Nodiscard + NodiscardOpt isVolumeSpecPolicy_NodiscardOpt `protobuf_oneof:"nodiscard_opt"` + // IoStrategy preferred strategy for I/O. + IoStrategy *IoStrategy `protobuf:"bytes,55,opt,name=io_strategy,json=ioStrategy" json:"io_strategy,omitempty"` + // ExportSpec preferred volume export options. + // + // Types that are valid to be assigned to ExportSpecOpt: + // *VolumeSpecPolicy_ExportSpec + ExportSpecOpt isVolumeSpecPolicy_ExportSpecOpt `protobuf_oneof:"export_spec_opt"` + // scan_policy_opt defines the filesystem check policy for the volume + // + // Types that are valid to be assigned to ScanPolicyOpt: + // *VolumeSpecPolicy_ScanPolicy + ScanPolicyOpt isVolumeSpecPolicy_ScanPolicyOpt `protobuf_oneof:"scan_policy_opt"` + // mount_opt provides the mount time options for a volume + // + // Types that are valid to be assigned to MountOpt: + // *VolumeSpecPolicy_MountOptSpec + MountOpt isVolumeSpecPolicy_MountOpt `protobuf_oneof:"mount_opt"` + // sharedv4_mount_opt provides the client side mount time options for a sharedv4 volume + // + // Types that are valid to be assigned to Sharedv4MountOpt: + // *VolumeSpecPolicy_Sharedv4MountOptSpec + Sharedv4MountOpt isVolumeSpecPolicy_Sharedv4MountOpt `protobuf_oneof:"sharedv4_mount_opt"` + // Proxy_write is true if proxy write replication is enabled for the volume + // + // Types that are valid to be assigned to ProxyWriteOpt: + // *VolumeSpecPolicy_ProxyWrite + ProxyWriteOpt isVolumeSpecPolicy_ProxyWriteOpt `protobuf_oneof:"proxy_write_opt"` + // proxy_spec_opt provides the spec for a proxy volume. + // + // Types that are valid to be assigned to ProxySpecOpt: + // *VolumeSpecPolicy_ProxySpec + ProxySpecOpt isVolumeSpecPolicy_ProxySpecOpt `protobuf_oneof:"proxy_spec_opt"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeSpecPolicy) Reset() { *m = VolumeSpecPolicy{} } +func (m *VolumeSpecPolicy) String() string { return proto.CompactTextString(m) } +func (*VolumeSpecPolicy) ProtoMessage() {} +func (*VolumeSpecPolicy) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{20} +} +func (m *VolumeSpecPolicy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeSpecPolicy.Unmarshal(m, b) +} +func (m *VolumeSpecPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeSpecPolicy.Marshal(b, m, deterministic) +} +func (dst *VolumeSpecPolicy) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeSpecPolicy.Merge(dst, src) +} +func (m *VolumeSpecPolicy) XXX_Size() int { + return xxx_messageInfo_VolumeSpecPolicy.Size(m) +} +func (m *VolumeSpecPolicy) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeSpecPolicy.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeSpecPolicy proto.InternalMessageInfo + +type isVolumeSpecPolicy_SizeOpt interface { + isVolumeSpecPolicy_SizeOpt() +} +type isVolumeSpecPolicy_HaLevelOpt interface { + isVolumeSpecPolicy_HaLevelOpt() +} +type isVolumeSpecPolicy_CosOpt interface { + isVolumeSpecPolicy_CosOpt() +} +type isVolumeSpecPolicy_IoProfileOpt interface { + isVolumeSpecPolicy_IoProfileOpt() +} +type isVolumeSpecPolicy_DedupeOpt interface { + isVolumeSpecPolicy_DedupeOpt() +} +type isVolumeSpecPolicy_SnapshotIntervalOpt interface { + isVolumeSpecPolicy_SnapshotIntervalOpt() +} +type isVolumeSpecPolicy_SharedOpt interface { + isVolumeSpecPolicy_SharedOpt() +} +type isVolumeSpecPolicy_PassphraseOpt interface { + isVolumeSpecPolicy_PassphraseOpt() +} +type isVolumeSpecPolicy_SnapshotScheduleOpt interface { + isVolumeSpecPolicy_SnapshotScheduleOpt() +} +type isVolumeSpecPolicy_ScaleOpt interface { + isVolumeSpecPolicy_ScaleOpt() +} +type isVolumeSpecPolicy_StickyOpt interface { + isVolumeSpecPolicy_StickyOpt() +} +type isVolumeSpecPolicy_GroupOpt interface { + isVolumeSpecPolicy_GroupOpt() +} +type isVolumeSpecPolicy_JournalOpt interface { + isVolumeSpecPolicy_JournalOpt() +} +type isVolumeSpecPolicy_Sharedv4Opt interface { + isVolumeSpecPolicy_Sharedv4Opt() +} +type isVolumeSpecPolicy_QueueDepthOpt interface { + isVolumeSpecPolicy_QueueDepthOpt() +} +type isVolumeSpecPolicy_EncryptedOpt interface { + isVolumeSpecPolicy_EncryptedOpt() +} +type isVolumeSpecPolicy_AggregationLevelOpt interface { + isVolumeSpecPolicy_AggregationLevelOpt() +} +type isVolumeSpecPolicy_NodiscardOpt interface { + isVolumeSpecPolicy_NodiscardOpt() +} +type isVolumeSpecPolicy_ExportSpecOpt interface { + isVolumeSpecPolicy_ExportSpecOpt() +} +type isVolumeSpecPolicy_ScanPolicyOpt interface { + isVolumeSpecPolicy_ScanPolicyOpt() +} +type isVolumeSpecPolicy_MountOpt interface { + isVolumeSpecPolicy_MountOpt() +} +type isVolumeSpecPolicy_Sharedv4MountOpt interface { + isVolumeSpecPolicy_Sharedv4MountOpt() +} +type isVolumeSpecPolicy_ProxyWriteOpt interface { + isVolumeSpecPolicy_ProxyWriteOpt() +} +type isVolumeSpecPolicy_ProxySpecOpt interface { + isVolumeSpecPolicy_ProxySpecOpt() +} + +type VolumeSpecPolicy_Size struct { + Size uint64 `protobuf:"varint,1,opt,name=size,oneof"` +} +type VolumeSpecPolicy_HaLevel struct { + HaLevel int64 `protobuf:"varint,2,opt,name=ha_level,json=haLevel,oneof"` +} +type VolumeSpecPolicy_Cos struct { + Cos CosType `protobuf:"varint,3,opt,name=cos,enum=openstorage.api.CosType,oneof"` +} +type VolumeSpecPolicy_IoProfile struct { + IoProfile IoProfile `protobuf:"varint,4,opt,name=io_profile,json=ioProfile,enum=openstorage.api.IoProfile,oneof"` +} +type VolumeSpecPolicy_Dedupe struct { + Dedupe bool `protobuf:"varint,5,opt,name=dedupe,oneof"` +} +type VolumeSpecPolicy_SnapshotInterval struct { + SnapshotInterval uint32 `protobuf:"varint,6,opt,name=snapshot_interval,json=snapshotInterval,oneof"` +} +type VolumeSpecPolicy_Shared struct { + Shared bool `protobuf:"varint,8,opt,name=shared,oneof"` +} +type VolumeSpecPolicy_Passphrase struct { + Passphrase string `protobuf:"bytes,10,opt,name=passphrase,oneof"` +} +type VolumeSpecPolicy_SnapshotSchedule struct { + SnapshotSchedule string `protobuf:"bytes,11,opt,name=snapshot_schedule,json=snapshotSchedule,oneof"` +} +type VolumeSpecPolicy_Scale struct { + Scale uint32 `protobuf:"varint,12,opt,name=scale,oneof"` +} +type VolumeSpecPolicy_Sticky struct { + Sticky bool `protobuf:"varint,13,opt,name=sticky,oneof"` +} +type VolumeSpecPolicy_Group struct { + Group *Group `protobuf:"bytes,14,opt,name=group,oneof"` +} +type VolumeSpecPolicy_Journal struct { + Journal bool `protobuf:"varint,15,opt,name=journal,oneof"` +} +type VolumeSpecPolicy_Sharedv4 struct { + Sharedv4 bool `protobuf:"varint,16,opt,name=sharedv4,oneof"` +} +type VolumeSpecPolicy_QueueDepth struct { + QueueDepth uint32 `protobuf:"varint,17,opt,name=queue_depth,json=queueDepth,oneof"` +} +type VolumeSpecPolicy_Encrypted struct { + Encrypted bool `protobuf:"varint,18,opt,name=encrypted,oneof"` +} +type VolumeSpecPolicy_AggregationLevel struct { + AggregationLevel uint32 `protobuf:"varint,19,opt,name=aggregation_level,json=aggregationLevel,oneof"` +} +type VolumeSpecPolicy_Nodiscard struct { + Nodiscard bool `protobuf:"varint,54,opt,name=nodiscard,oneof"` +} +type VolumeSpecPolicy_ExportSpec struct { + ExportSpec *ExportSpec `protobuf:"bytes,56,opt,name=export_spec,json=exportSpec,oneof"` +} +type VolumeSpecPolicy_ScanPolicy struct { + ScanPolicy *ScanPolicy `protobuf:"bytes,57,opt,name=scan_policy,json=scanPolicy,oneof"` +} +type VolumeSpecPolicy_MountOptSpec struct { + MountOptSpec *MountOptions `protobuf:"bytes,58,opt,name=mount_opt_spec,json=mountOptSpec,oneof"` +} +type VolumeSpecPolicy_Sharedv4MountOptSpec struct { + Sharedv4MountOptSpec *MountOptions `protobuf:"bytes,59,opt,name=sharedv4_mount_opt_spec,json=sharedv4MountOptSpec,oneof"` +} +type VolumeSpecPolicy_ProxyWrite struct { + ProxyWrite bool `protobuf:"varint,60,opt,name=proxy_write,json=proxyWrite,oneof"` +} +type VolumeSpecPolicy_ProxySpec struct { + ProxySpec *ProxySpec `protobuf:"bytes,61,opt,name=proxy_spec,json=proxySpec,oneof"` +} + +func (*VolumeSpecPolicy_Size) isVolumeSpecPolicy_SizeOpt() {} +func (*VolumeSpecPolicy_HaLevel) isVolumeSpecPolicy_HaLevelOpt() {} +func (*VolumeSpecPolicy_Cos) isVolumeSpecPolicy_CosOpt() {} +func (*VolumeSpecPolicy_IoProfile) isVolumeSpecPolicy_IoProfileOpt() {} +func (*VolumeSpecPolicy_Dedupe) isVolumeSpecPolicy_DedupeOpt() {} +func (*VolumeSpecPolicy_SnapshotInterval) isVolumeSpecPolicy_SnapshotIntervalOpt() {} +func (*VolumeSpecPolicy_Shared) isVolumeSpecPolicy_SharedOpt() {} +func (*VolumeSpecPolicy_Passphrase) isVolumeSpecPolicy_PassphraseOpt() {} +func (*VolumeSpecPolicy_SnapshotSchedule) isVolumeSpecPolicy_SnapshotScheduleOpt() {} +func (*VolumeSpecPolicy_Scale) isVolumeSpecPolicy_ScaleOpt() {} +func (*VolumeSpecPolicy_Sticky) isVolumeSpecPolicy_StickyOpt() {} +func (*VolumeSpecPolicy_Group) isVolumeSpecPolicy_GroupOpt() {} +func (*VolumeSpecPolicy_Journal) isVolumeSpecPolicy_JournalOpt() {} +func (*VolumeSpecPolicy_Sharedv4) isVolumeSpecPolicy_Sharedv4Opt() {} +func (*VolumeSpecPolicy_QueueDepth) isVolumeSpecPolicy_QueueDepthOpt() {} +func (*VolumeSpecPolicy_Encrypted) isVolumeSpecPolicy_EncryptedOpt() {} +func (*VolumeSpecPolicy_AggregationLevel) isVolumeSpecPolicy_AggregationLevelOpt() {} +func (*VolumeSpecPolicy_Nodiscard) isVolumeSpecPolicy_NodiscardOpt() {} +func (*VolumeSpecPolicy_ExportSpec) isVolumeSpecPolicy_ExportSpecOpt() {} +func (*VolumeSpecPolicy_ScanPolicy) isVolumeSpecPolicy_ScanPolicyOpt() {} +func (*VolumeSpecPolicy_MountOptSpec) isVolumeSpecPolicy_MountOpt() {} +func (*VolumeSpecPolicy_Sharedv4MountOptSpec) isVolumeSpecPolicy_Sharedv4MountOpt() {} +func (*VolumeSpecPolicy_ProxyWrite) isVolumeSpecPolicy_ProxyWriteOpt() {} +func (*VolumeSpecPolicy_ProxySpec) isVolumeSpecPolicy_ProxySpecOpt() {} + +func (m *VolumeSpecPolicy) GetSizeOpt() isVolumeSpecPolicy_SizeOpt { + if m != nil { + return m.SizeOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetHaLevelOpt() isVolumeSpecPolicy_HaLevelOpt { + if m != nil { + return m.HaLevelOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetCosOpt() isVolumeSpecPolicy_CosOpt { + if m != nil { + return m.CosOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetIoProfileOpt() isVolumeSpecPolicy_IoProfileOpt { + if m != nil { + return m.IoProfileOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetDedupeOpt() isVolumeSpecPolicy_DedupeOpt { + if m != nil { + return m.DedupeOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetSnapshotIntervalOpt() isVolumeSpecPolicy_SnapshotIntervalOpt { + if m != nil { + return m.SnapshotIntervalOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetSharedOpt() isVolumeSpecPolicy_SharedOpt { + if m != nil { + return m.SharedOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetPassphraseOpt() isVolumeSpecPolicy_PassphraseOpt { + if m != nil { + return m.PassphraseOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetSnapshotScheduleOpt() isVolumeSpecPolicy_SnapshotScheduleOpt { + if m != nil { + return m.SnapshotScheduleOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetScaleOpt() isVolumeSpecPolicy_ScaleOpt { + if m != nil { + return m.ScaleOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetStickyOpt() isVolumeSpecPolicy_StickyOpt { + if m != nil { + return m.StickyOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetGroupOpt() isVolumeSpecPolicy_GroupOpt { + if m != nil { + return m.GroupOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetJournalOpt() isVolumeSpecPolicy_JournalOpt { + if m != nil { + return m.JournalOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetSharedv4Opt() isVolumeSpecPolicy_Sharedv4Opt { + if m != nil { + return m.Sharedv4Opt + } + return nil +} +func (m *VolumeSpecPolicy) GetQueueDepthOpt() isVolumeSpecPolicy_QueueDepthOpt { + if m != nil { + return m.QueueDepthOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetEncryptedOpt() isVolumeSpecPolicy_EncryptedOpt { + if m != nil { + return m.EncryptedOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetAggregationLevelOpt() isVolumeSpecPolicy_AggregationLevelOpt { + if m != nil { + return m.AggregationLevelOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetNodiscardOpt() isVolumeSpecPolicy_NodiscardOpt { + if m != nil { + return m.NodiscardOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetExportSpecOpt() isVolumeSpecPolicy_ExportSpecOpt { + if m != nil { + return m.ExportSpecOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetScanPolicyOpt() isVolumeSpecPolicy_ScanPolicyOpt { + if m != nil { + return m.ScanPolicyOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetMountOpt() isVolumeSpecPolicy_MountOpt { + if m != nil { + return m.MountOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetSharedv4MountOpt() isVolumeSpecPolicy_Sharedv4MountOpt { + if m != nil { + return m.Sharedv4MountOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetProxyWriteOpt() isVolumeSpecPolicy_ProxyWriteOpt { + if m != nil { + return m.ProxyWriteOpt + } + return nil +} +func (m *VolumeSpecPolicy) GetProxySpecOpt() isVolumeSpecPolicy_ProxySpecOpt { + if m != nil { + return m.ProxySpecOpt + } + return nil +} + +func (m *VolumeSpecPolicy) GetSize() uint64 { + if x, ok := m.GetSizeOpt().(*VolumeSpecPolicy_Size); ok { + return x.Size + } + return 0 +} + +func (m *VolumeSpecPolicy) GetHaLevel() int64 { + if x, ok := m.GetHaLevelOpt().(*VolumeSpecPolicy_HaLevel); ok { + return x.HaLevel + } + return 0 +} + +func (m *VolumeSpecPolicy) GetCos() CosType { + if x, ok := m.GetCosOpt().(*VolumeSpecPolicy_Cos); ok { + return x.Cos + } + return CosType_NONE +} + +func (m *VolumeSpecPolicy) GetIoProfile() IoProfile { + if x, ok := m.GetIoProfileOpt().(*VolumeSpecPolicy_IoProfile); ok { + return x.IoProfile + } + return IoProfile_IO_PROFILE_SEQUENTIAL +} + +func (m *VolumeSpecPolicy) GetDedupe() bool { + if x, ok := m.GetDedupeOpt().(*VolumeSpecPolicy_Dedupe); ok { + return x.Dedupe + } + return false +} + +func (m *VolumeSpecPolicy) GetSnapshotInterval() uint32 { + if x, ok := m.GetSnapshotIntervalOpt().(*VolumeSpecPolicy_SnapshotInterval); ok { + return x.SnapshotInterval + } + return 0 +} + +func (m *VolumeSpecPolicy) GetVolumeLabels() map[string]string { + if m != nil { + return m.VolumeLabels + } + return nil +} + +func (m *VolumeSpecPolicy) GetShared() bool { + if x, ok := m.GetSharedOpt().(*VolumeSpecPolicy_Shared); ok { + return x.Shared + } + return false +} + +func (m *VolumeSpecPolicy) GetReplicaSet() *ReplicaSet { + if m != nil { + return m.ReplicaSet + } + return nil +} + +func (m *VolumeSpecPolicy) GetPassphrase() string { + if x, ok := m.GetPassphraseOpt().(*VolumeSpecPolicy_Passphrase); ok { + return x.Passphrase + } + return "" +} + +func (m *VolumeSpecPolicy) GetSnapshotSchedule() string { + if x, ok := m.GetSnapshotScheduleOpt().(*VolumeSpecPolicy_SnapshotSchedule); ok { + return x.SnapshotSchedule + } + return "" +} + +func (m *VolumeSpecPolicy) GetScale() uint32 { + if x, ok := m.GetScaleOpt().(*VolumeSpecPolicy_Scale); ok { + return x.Scale + } + return 0 +} + +func (m *VolumeSpecPolicy) GetSticky() bool { + if x, ok := m.GetStickyOpt().(*VolumeSpecPolicy_Sticky); ok { + return x.Sticky + } + return false +} + +func (m *VolumeSpecPolicy) GetGroup() *Group { + if x, ok := m.GetGroupOpt().(*VolumeSpecPolicy_Group); ok { + return x.Group + } + return nil +} + +func (m *VolumeSpecPolicy) GetJournal() bool { + if x, ok := m.GetJournalOpt().(*VolumeSpecPolicy_Journal); ok { + return x.Journal + } + return false +} + +func (m *VolumeSpecPolicy) GetSharedv4() bool { + if x, ok := m.GetSharedv4Opt().(*VolumeSpecPolicy_Sharedv4); ok { + return x.Sharedv4 + } + return false +} + +func (m *VolumeSpecPolicy) GetQueueDepth() uint32 { + if x, ok := m.GetQueueDepthOpt().(*VolumeSpecPolicy_QueueDepth); ok { + return x.QueueDepth + } + return 0 +} + +func (m *VolumeSpecPolicy) GetEncrypted() bool { + if x, ok := m.GetEncryptedOpt().(*VolumeSpecPolicy_Encrypted); ok { + return x.Encrypted + } + return false +} + +func (m *VolumeSpecPolicy) GetAggregationLevel() uint32 { + if x, ok := m.GetAggregationLevelOpt().(*VolumeSpecPolicy_AggregationLevel); ok { + return x.AggregationLevel + } + return 0 +} + +func (m *VolumeSpecPolicy) GetSizeOperator() VolumeSpecPolicy_PolicyOp { + if m != nil { + return m.SizeOperator + } + return VolumeSpecPolicy_Equal +} + +func (m *VolumeSpecPolicy) GetHaLevelOperator() VolumeSpecPolicy_PolicyOp { + if m != nil { + return m.HaLevelOperator + } + return VolumeSpecPolicy_Equal +} + +func (m *VolumeSpecPolicy) GetScaleOperator() VolumeSpecPolicy_PolicyOp { + if m != nil { + return m.ScaleOperator + } + return VolumeSpecPolicy_Equal +} + +func (m *VolumeSpecPolicy) GetSnapshotIntervalOperator() VolumeSpecPolicy_PolicyOp { + if m != nil { + return m.SnapshotIntervalOperator + } + return VolumeSpecPolicy_Equal +} + +func (m *VolumeSpecPolicy) GetNodiscard() bool { + if x, ok := m.GetNodiscardOpt().(*VolumeSpecPolicy_Nodiscard); ok { + return x.Nodiscard + } + return false +} + +func (m *VolumeSpecPolicy) GetIoStrategy() *IoStrategy { + if m != nil { + return m.IoStrategy + } + return nil +} + +func (m *VolumeSpecPolicy) GetExportSpec() *ExportSpec { + if x, ok := m.GetExportSpecOpt().(*VolumeSpecPolicy_ExportSpec); ok { + return x.ExportSpec + } + return nil +} + +func (m *VolumeSpecPolicy) GetScanPolicy() *ScanPolicy { + if x, ok := m.GetScanPolicyOpt().(*VolumeSpecPolicy_ScanPolicy); ok { + return x.ScanPolicy + } + return nil +} + +func (m *VolumeSpecPolicy) GetMountOptSpec() *MountOptions { + if x, ok := m.GetMountOpt().(*VolumeSpecPolicy_MountOptSpec); ok { + return x.MountOptSpec + } + return nil +} + +func (m *VolumeSpecPolicy) GetSharedv4MountOptSpec() *MountOptions { + if x, ok := m.GetSharedv4MountOpt().(*VolumeSpecPolicy_Sharedv4MountOptSpec); ok { + return x.Sharedv4MountOptSpec + } + return nil +} + +func (m *VolumeSpecPolicy) GetProxyWrite() bool { + if x, ok := m.GetProxyWriteOpt().(*VolumeSpecPolicy_ProxyWrite); ok { + return x.ProxyWrite + } + return false +} + +func (m *VolumeSpecPolicy) GetProxySpec() *ProxySpec { + if x, ok := m.GetProxySpecOpt().(*VolumeSpecPolicy_ProxySpec); ok { + return x.ProxySpec } return nil } // XXX_OneofFuncs is for the internal use of the proto package. -func (*VolumeSpecUpdate) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _VolumeSpecUpdate_OneofMarshaler, _VolumeSpecUpdate_OneofUnmarshaler, _VolumeSpecUpdate_OneofSizer, []interface{}{ - (*VolumeSpecUpdate_Size)(nil), - (*VolumeSpecUpdate_HaLevel)(nil), - (*VolumeSpecUpdate_Cos)(nil), - (*VolumeSpecUpdate_IoProfile)(nil), - (*VolumeSpecUpdate_Dedupe)(nil), - (*VolumeSpecUpdate_SnapshotInterval)(nil), - (*VolumeSpecUpdate_Shared)(nil), - (*VolumeSpecUpdate_Passphrase)(nil), - (*VolumeSpecUpdate_SnapshotSchedule)(nil), - (*VolumeSpecUpdate_Scale)(nil), - (*VolumeSpecUpdate_Sticky)(nil), - (*VolumeSpecUpdate_Group)(nil), - (*VolumeSpecUpdate_Journal)(nil), - (*VolumeSpecUpdate_Sharedv4)(nil), - (*VolumeSpecUpdate_QueueDepth)(nil), - (*VolumeSpecUpdate_Nodiscard)(nil), +func (*VolumeSpecPolicy) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _VolumeSpecPolicy_OneofMarshaler, _VolumeSpecPolicy_OneofUnmarshaler, _VolumeSpecPolicy_OneofSizer, []interface{}{ + (*VolumeSpecPolicy_Size)(nil), + (*VolumeSpecPolicy_HaLevel)(nil), + (*VolumeSpecPolicy_Cos)(nil), + (*VolumeSpecPolicy_IoProfile)(nil), + (*VolumeSpecPolicy_Dedupe)(nil), + (*VolumeSpecPolicy_SnapshotInterval)(nil), + (*VolumeSpecPolicy_Shared)(nil), + (*VolumeSpecPolicy_Passphrase)(nil), + (*VolumeSpecPolicy_SnapshotSchedule)(nil), + (*VolumeSpecPolicy_Scale)(nil), + (*VolumeSpecPolicy_Sticky)(nil), + (*VolumeSpecPolicy_Group)(nil), + (*VolumeSpecPolicy_Journal)(nil), + (*VolumeSpecPolicy_Sharedv4)(nil), + (*VolumeSpecPolicy_QueueDepth)(nil), + (*VolumeSpecPolicy_Encrypted)(nil), + (*VolumeSpecPolicy_AggregationLevel)(nil), + (*VolumeSpecPolicy_Nodiscard)(nil), + (*VolumeSpecPolicy_ExportSpec)(nil), + (*VolumeSpecPolicy_ScanPolicy)(nil), + (*VolumeSpecPolicy_MountOptSpec)(nil), + (*VolumeSpecPolicy_Sharedv4MountOptSpec)(nil), + (*VolumeSpecPolicy_ProxyWrite)(nil), + (*VolumeSpecPolicy_ProxySpec)(nil), + } +} + +func _VolumeSpecPolicy_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*VolumeSpecPolicy) + // size_opt + switch x := m.SizeOpt.(type) { + case *VolumeSpecPolicy_Size: + b.EncodeVarint(1<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Size)) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.SizeOpt has unexpected type %T", x) + } + // ha_level_opt + switch x := m.HaLevelOpt.(type) { + case *VolumeSpecPolicy_HaLevel: + b.EncodeVarint(2<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.HaLevel)) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.HaLevelOpt has unexpected type %T", x) + } + // cos_opt + switch x := m.CosOpt.(type) { + case *VolumeSpecPolicy_Cos: + b.EncodeVarint(3<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Cos)) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.CosOpt has unexpected type %T", x) + } + // io_profile_opt + switch x := m.IoProfileOpt.(type) { + case *VolumeSpecPolicy_IoProfile: + b.EncodeVarint(4<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.IoProfile)) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.IoProfileOpt has unexpected type %T", x) + } + // dedupe_opt + switch x := m.DedupeOpt.(type) { + case *VolumeSpecPolicy_Dedupe: + t := uint64(0) + if x.Dedupe { + t = 1 + } + b.EncodeVarint(5<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.DedupeOpt has unexpected type %T", x) + } + // snapshot_interval_opt + switch x := m.SnapshotIntervalOpt.(type) { + case *VolumeSpecPolicy_SnapshotInterval: + b.EncodeVarint(6<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.SnapshotInterval)) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.SnapshotIntervalOpt has unexpected type %T", x) + } + // shared_opt + switch x := m.SharedOpt.(type) { + case *VolumeSpecPolicy_Shared: + t := uint64(0) + if x.Shared { + t = 1 + } + b.EncodeVarint(8<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.SharedOpt has unexpected type %T", x) + } + // passphrase_opt + switch x := m.PassphraseOpt.(type) { + case *VolumeSpecPolicy_Passphrase: + b.EncodeVarint(10<<3 | proto.WireBytes) + b.EncodeStringBytes(x.Passphrase) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.PassphraseOpt has unexpected type %T", x) + } + // snapshot_schedule_opt + switch x := m.SnapshotScheduleOpt.(type) { + case *VolumeSpecPolicy_SnapshotSchedule: + b.EncodeVarint(11<<3 | proto.WireBytes) + b.EncodeStringBytes(x.SnapshotSchedule) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.SnapshotScheduleOpt has unexpected type %T", x) + } + // scale_opt + switch x := m.ScaleOpt.(type) { + case *VolumeSpecPolicy_Scale: + b.EncodeVarint(12<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Scale)) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.ScaleOpt has unexpected type %T", x) + } + // sticky_opt + switch x := m.StickyOpt.(type) { + case *VolumeSpecPolicy_Sticky: + t := uint64(0) + if x.Sticky { + t = 1 + } + b.EncodeVarint(13<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.StickyOpt has unexpected type %T", x) + } + // group_opt + switch x := m.GroupOpt.(type) { + case *VolumeSpecPolicy_Group: + b.EncodeVarint(14<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Group); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.GroupOpt has unexpected type %T", x) + } + // journal_opt + switch x := m.JournalOpt.(type) { + case *VolumeSpecPolicy_Journal: + t := uint64(0) + if x.Journal { + t = 1 + } + b.EncodeVarint(15<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.JournalOpt has unexpected type %T", x) + } + // sharedv4_opt + switch x := m.Sharedv4Opt.(type) { + case *VolumeSpecPolicy_Sharedv4: + t := uint64(0) + if x.Sharedv4 { + t = 1 + } + b.EncodeVarint(16<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.Sharedv4Opt has unexpected type %T", x) + } + // queue_depth_opt + switch x := m.QueueDepthOpt.(type) { + case *VolumeSpecPolicy_QueueDepth: + b.EncodeVarint(17<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.QueueDepth)) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.QueueDepthOpt has unexpected type %T", x) + } + // encrypted_opt + switch x := m.EncryptedOpt.(type) { + case *VolumeSpecPolicy_Encrypted: + t := uint64(0) + if x.Encrypted { + t = 1 + } + b.EncodeVarint(18<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.EncryptedOpt has unexpected type %T", x) + } + // aggregation_level_opt + switch x := m.AggregationLevelOpt.(type) { + case *VolumeSpecPolicy_AggregationLevel: + b.EncodeVarint(19<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.AggregationLevel)) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.AggregationLevelOpt has unexpected type %T", x) + } + // nodiscard_opt + switch x := m.NodiscardOpt.(type) { + case *VolumeSpecPolicy_Nodiscard: + t := uint64(0) + if x.Nodiscard { + t = 1 + } + b.EncodeVarint(54<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.NodiscardOpt has unexpected type %T", x) + } + // export_spec_opt + switch x := m.ExportSpecOpt.(type) { + case *VolumeSpecPolicy_ExportSpec: + b.EncodeVarint(56<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ExportSpec); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.ExportSpecOpt has unexpected type %T", x) + } + // scan_policy_opt + switch x := m.ScanPolicyOpt.(type) { + case *VolumeSpecPolicy_ScanPolicy: + b.EncodeVarint(57<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ScanPolicy); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.ScanPolicyOpt has unexpected type %T", x) + } + // mount_opt + switch x := m.MountOpt.(type) { + case *VolumeSpecPolicy_MountOptSpec: + b.EncodeVarint(58<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.MountOptSpec); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.MountOpt has unexpected type %T", x) + } + // sharedv4_mount_opt + switch x := m.Sharedv4MountOpt.(type) { + case *VolumeSpecPolicy_Sharedv4MountOptSpec: + b.EncodeVarint(59<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Sharedv4MountOptSpec); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.Sharedv4MountOpt has unexpected type %T", x) + } + // proxy_write_opt + switch x := m.ProxyWriteOpt.(type) { + case *VolumeSpecPolicy_ProxyWrite: + t := uint64(0) + if x.ProxyWrite { + t = 1 + } + b.EncodeVarint(60<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.ProxyWriteOpt has unexpected type %T", x) + } + // proxy_spec_opt + switch x := m.ProxySpecOpt.(type) { + case *VolumeSpecPolicy_ProxySpec: + b.EncodeVarint(61<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ProxySpec); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("VolumeSpecPolicy.ProxySpecOpt has unexpected type %T", x) + } + return nil +} + +func _VolumeSpecPolicy_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*VolumeSpecPolicy) + switch tag { + case 1: // size_opt.size + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.SizeOpt = &VolumeSpecPolicy_Size{x} + return true, err + case 2: // ha_level_opt.ha_level + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.HaLevelOpt = &VolumeSpecPolicy_HaLevel{int64(x)} + return true, err + case 3: // cos_opt.cos + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.CosOpt = &VolumeSpecPolicy_Cos{CosType(x)} + return true, err + case 4: // io_profile_opt.io_profile + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.IoProfileOpt = &VolumeSpecPolicy_IoProfile{IoProfile(x)} + return true, err + case 5: // dedupe_opt.dedupe + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.DedupeOpt = &VolumeSpecPolicy_Dedupe{x != 0} + return true, err + case 6: // snapshot_interval_opt.snapshot_interval + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.SnapshotIntervalOpt = &VolumeSpecPolicy_SnapshotInterval{uint32(x)} + return true, err + case 8: // shared_opt.shared + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.SharedOpt = &VolumeSpecPolicy_Shared{x != 0} + return true, err + case 10: // passphrase_opt.passphrase + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeStringBytes() + m.PassphraseOpt = &VolumeSpecPolicy_Passphrase{x} + return true, err + case 11: // snapshot_schedule_opt.snapshot_schedule + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeStringBytes() + m.SnapshotScheduleOpt = &VolumeSpecPolicy_SnapshotSchedule{x} + return true, err + case 12: // scale_opt.scale + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.ScaleOpt = &VolumeSpecPolicy_Scale{uint32(x)} + return true, err + case 13: // sticky_opt.sticky + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.StickyOpt = &VolumeSpecPolicy_Sticky{x != 0} + return true, err + case 14: // group_opt.group + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(Group) + err := b.DecodeMessage(msg) + m.GroupOpt = &VolumeSpecPolicy_Group{msg} + return true, err + case 15: // journal_opt.journal + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.JournalOpt = &VolumeSpecPolicy_Journal{x != 0} + return true, err + case 16: // sharedv4_opt.sharedv4 + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.Sharedv4Opt = &VolumeSpecPolicy_Sharedv4{x != 0} + return true, err + case 17: // queue_depth_opt.queue_depth + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.QueueDepthOpt = &VolumeSpecPolicy_QueueDepth{uint32(x)} + return true, err + case 18: // encrypted_opt.encrypted + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.EncryptedOpt = &VolumeSpecPolicy_Encrypted{x != 0} + return true, err + case 19: // aggregation_level_opt.aggregation_level + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.AggregationLevelOpt = &VolumeSpecPolicy_AggregationLevel{uint32(x)} + return true, err + case 54: // nodiscard_opt.nodiscard + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.NodiscardOpt = &VolumeSpecPolicy_Nodiscard{x != 0} + return true, err + case 56: // export_spec_opt.export_spec + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ExportSpec) + err := b.DecodeMessage(msg) + m.ExportSpecOpt = &VolumeSpecPolicy_ExportSpec{msg} + return true, err + case 57: // scan_policy_opt.scan_policy + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ScanPolicy) + err := b.DecodeMessage(msg) + m.ScanPolicyOpt = &VolumeSpecPolicy_ScanPolicy{msg} + return true, err + case 58: // mount_opt.mount_opt_spec + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(MountOptions) + err := b.DecodeMessage(msg) + m.MountOpt = &VolumeSpecPolicy_MountOptSpec{msg} + return true, err + case 59: // sharedv4_mount_opt.sharedv4_mount_opt_spec + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(MountOptions) + err := b.DecodeMessage(msg) + m.Sharedv4MountOpt = &VolumeSpecPolicy_Sharedv4MountOptSpec{msg} + return true, err + case 60: // proxy_write_opt.proxy_write + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.ProxyWriteOpt = &VolumeSpecPolicy_ProxyWrite{x != 0} + return true, err + case 61: // proxy_spec_opt.proxy_spec + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ProxySpec) + err := b.DecodeMessage(msg) + m.ProxySpecOpt = &VolumeSpecPolicy_ProxySpec{msg} + return true, err + default: + return false, nil + } +} + +func _VolumeSpecPolicy_OneofSizer(msg proto.Message) (n int) { + m := msg.(*VolumeSpecPolicy) + // size_opt + switch x := m.SizeOpt.(type) { + case *VolumeSpecPolicy_Size: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.Size)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // ha_level_opt + switch x := m.HaLevelOpt.(type) { + case *VolumeSpecPolicy_HaLevel: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.HaLevel)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // cos_opt + switch x := m.CosOpt.(type) { + case *VolumeSpecPolicy_Cos: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.Cos)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // io_profile_opt + switch x := m.IoProfileOpt.(type) { + case *VolumeSpecPolicy_IoProfile: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.IoProfile)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // dedupe_opt + switch x := m.DedupeOpt.(type) { + case *VolumeSpecPolicy_Dedupe: + n += 1 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // snapshot_interval_opt + switch x := m.SnapshotIntervalOpt.(type) { + case *VolumeSpecPolicy_SnapshotInterval: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.SnapshotInterval)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // shared_opt + switch x := m.SharedOpt.(type) { + case *VolumeSpecPolicy_Shared: + n += 1 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // passphrase_opt + switch x := m.PassphraseOpt.(type) { + case *VolumeSpecPolicy_Passphrase: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(len(x.Passphrase))) + n += len(x.Passphrase) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // snapshot_schedule_opt + switch x := m.SnapshotScheduleOpt.(type) { + case *VolumeSpecPolicy_SnapshotSchedule: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(len(x.SnapshotSchedule))) + n += len(x.SnapshotSchedule) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // scale_opt + switch x := m.ScaleOpt.(type) { + case *VolumeSpecPolicy_Scale: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.Scale)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // sticky_opt + switch x := m.StickyOpt.(type) { + case *VolumeSpecPolicy_Sticky: + n += 1 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // group_opt + switch x := m.GroupOpt.(type) { + case *VolumeSpecPolicy_Group: + s := proto.Size(x.Group) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // journal_opt + switch x := m.JournalOpt.(type) { + case *VolumeSpecPolicy_Journal: + n += 1 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // sharedv4_opt + switch x := m.Sharedv4Opt.(type) { + case *VolumeSpecPolicy_Sharedv4: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // queue_depth_opt + switch x := m.QueueDepthOpt.(type) { + case *VolumeSpecPolicy_QueueDepth: + n += 2 // tag and wire + n += proto.SizeVarint(uint64(x.QueueDepth)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // encrypted_opt + switch x := m.EncryptedOpt.(type) { + case *VolumeSpecPolicy_Encrypted: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // aggregation_level_opt + switch x := m.AggregationLevelOpt.(type) { + case *VolumeSpecPolicy_AggregationLevel: + n += 2 // tag and wire + n += proto.SizeVarint(uint64(x.AggregationLevel)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // nodiscard_opt + switch x := m.NodiscardOpt.(type) { + case *VolumeSpecPolicy_Nodiscard: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // export_spec_opt + switch x := m.ExportSpecOpt.(type) { + case *VolumeSpecPolicy_ExportSpec: + s := proto.Size(x.ExportSpec) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // scan_policy_opt + switch x := m.ScanPolicyOpt.(type) { + case *VolumeSpecPolicy_ScanPolicy: + s := proto.Size(x.ScanPolicy) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // mount_opt + switch x := m.MountOpt.(type) { + case *VolumeSpecPolicy_MountOptSpec: + s := proto.Size(x.MountOptSpec) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // sharedv4_mount_opt + switch x := m.Sharedv4MountOpt.(type) { + case *VolumeSpecPolicy_Sharedv4MountOptSpec: + s := proto.Size(x.Sharedv4MountOptSpec) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // proxy_write_opt + switch x := m.ProxyWriteOpt.(type) { + case *VolumeSpecPolicy_ProxyWrite: + n += 2 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + // proxy_spec_opt + switch x := m.ProxySpecOpt.(type) { + case *VolumeSpecPolicy_ProxySpec: + s := proto.Size(x.ProxySpec) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n +} + +// ReplicaSet set of machine IDs (nodes) to which part of this volume is erasure +// coded - for clustered storage arrays +type ReplicaSet struct { + Nodes []string `protobuf:"bytes,1,rep,name=nodes" json:"nodes,omitempty"` + // Unique IDs of the storage pools for this replica set + PoolUuids []string `protobuf:"bytes,2,rep,name=pool_uuids,json=poolUuids" json:"pool_uuids,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ReplicaSet) Reset() { *m = ReplicaSet{} } +func (m *ReplicaSet) String() string { return proto.CompactTextString(m) } +func (*ReplicaSet) ProtoMessage() {} +func (*ReplicaSet) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{21} +} +func (m *ReplicaSet) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ReplicaSet.Unmarshal(m, b) +} +func (m *ReplicaSet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ReplicaSet.Marshal(b, m, deterministic) +} +func (dst *ReplicaSet) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplicaSet.Merge(dst, src) +} +func (m *ReplicaSet) XXX_Size() int { + return xxx_messageInfo_ReplicaSet.Size(m) +} +func (m *ReplicaSet) XXX_DiscardUnknown() { + xxx_messageInfo_ReplicaSet.DiscardUnknown(m) +} + +var xxx_messageInfo_ReplicaSet proto.InternalMessageInfo + +func (m *ReplicaSet) GetNodes() []string { + if m != nil { + return m.Nodes + } + return nil +} + +func (m *ReplicaSet) GetPoolUuids() []string { + if m != nil { + return m.PoolUuids + } + return nil +} + +// RuntimeStateMap is a list of name value mapping of driver specific runtime +// information. +type RuntimeStateMap struct { + RuntimeState map[string]string `protobuf:"bytes,1,rep,name=runtime_state,json=runtimeState" json:"runtime_state,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *RuntimeStateMap) Reset() { *m = RuntimeStateMap{} } +func (m *RuntimeStateMap) String() string { return proto.CompactTextString(m) } +func (*RuntimeStateMap) ProtoMessage() {} +func (*RuntimeStateMap) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{22} +} +func (m *RuntimeStateMap) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RuntimeStateMap.Unmarshal(m, b) +} +func (m *RuntimeStateMap) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RuntimeStateMap.Marshal(b, m, deterministic) +} +func (dst *RuntimeStateMap) XXX_Merge(src proto.Message) { + xxx_messageInfo_RuntimeStateMap.Merge(dst, src) +} +func (m *RuntimeStateMap) XXX_Size() int { + return xxx_messageInfo_RuntimeStateMap.Size(m) +} +func (m *RuntimeStateMap) XXX_DiscardUnknown() { + xxx_messageInfo_RuntimeStateMap.DiscardUnknown(m) +} + +var xxx_messageInfo_RuntimeStateMap proto.InternalMessageInfo + +func (m *RuntimeStateMap) GetRuntimeState() map[string]string { + if m != nil { + return m.RuntimeState + } + return nil +} + +// Ownership information for resource. +// Administrators are users who belong to the group `*`, meaning, every group. +type Ownership struct { + // Username of owner. + // + // The storage system uses the username taken from the security authorization + // token and is saved on this field. Only users with system administration + // can edit this value. + Owner string `protobuf:"bytes,1,opt,name=owner" json:"owner,omitempty"` + // Permissions to share resource which can be set by the owner. + // + // NOTE: To create an "admin" user which has access to any resource set the group value + // in the token of the user to `*`. + Acls *Ownership_AccessControl `protobuf:"bytes,2,opt,name=acls" json:"acls,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Ownership) Reset() { *m = Ownership{} } +func (m *Ownership) String() string { return proto.CompactTextString(m) } +func (*Ownership) ProtoMessage() {} +func (*Ownership) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{23} +} +func (m *Ownership) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Ownership.Unmarshal(m, b) +} +func (m *Ownership) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Ownership.Marshal(b, m, deterministic) +} +func (dst *Ownership) XXX_Merge(src proto.Message) { + xxx_messageInfo_Ownership.Merge(dst, src) +} +func (m *Ownership) XXX_Size() int { + return xxx_messageInfo_Ownership.Size(m) +} +func (m *Ownership) XXX_DiscardUnknown() { + xxx_messageInfo_Ownership.DiscardUnknown(m) +} + +var xxx_messageInfo_Ownership proto.InternalMessageInfo + +func (m *Ownership) GetOwner() string { + if m != nil { + return m.Owner + } + return "" +} + +func (m *Ownership) GetAcls() *Ownership_AccessControl { + if m != nil { + return m.Acls + } + return nil +} + +// PublicAccessControl allows assigning public ownership +type Ownership_PublicAccessControl struct { + // AccessType declares which level of public access is allowed + Type Ownership_AccessType `protobuf:"varint,1,opt,name=type,enum=openstorage.api.Ownership_AccessType" json:"type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Ownership_PublicAccessControl) Reset() { *m = Ownership_PublicAccessControl{} } +func (m *Ownership_PublicAccessControl) String() string { return proto.CompactTextString(m) } +func (*Ownership_PublicAccessControl) ProtoMessage() {} +func (*Ownership_PublicAccessControl) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{23, 0} +} +func (m *Ownership_PublicAccessControl) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Ownership_PublicAccessControl.Unmarshal(m, b) +} +func (m *Ownership_PublicAccessControl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Ownership_PublicAccessControl.Marshal(b, m, deterministic) +} +func (dst *Ownership_PublicAccessControl) XXX_Merge(src proto.Message) { + xxx_messageInfo_Ownership_PublicAccessControl.Merge(dst, src) +} +func (m *Ownership_PublicAccessControl) XXX_Size() int { + return xxx_messageInfo_Ownership_PublicAccessControl.Size(m) +} +func (m *Ownership_PublicAccessControl) XXX_DiscardUnknown() { + xxx_messageInfo_Ownership_PublicAccessControl.DiscardUnknown(m) +} + +var xxx_messageInfo_Ownership_PublicAccessControl proto.InternalMessageInfo + +func (m *Ownership_PublicAccessControl) GetType() Ownership_AccessType { + if m != nil { + return m.Type + } + return Ownership_Read +} + +type Ownership_AccessControl struct { + // Group access to resource which must match the group set in the + // authorization token. + // Can be set by the owner or the system administrator only. + // Possible values are: + // 1. no groups: Means no groups are given access. + // 2. `["*"]`: All groups are allowed. + // 3. `["group1", "group2"]`: Only certain groups are allowed. In this example only + // _group1_ and _group2_ are allowed. + Groups map[string]Ownership_AccessType `protobuf:"bytes,1,rep,name=groups" json:"groups,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value,enum=openstorage.api.Ownership_AccessType"` + // Collaborator access to resource gives access to other user. + // Must be the username (unique id) set in the authorization token. + // The owner or the administrator can set this value. Possible values are: + // 1. no collaborators: Means no users are given access. + // 2. `["*"]`: All users are allowed. + // 3. `["username1", "username2"]`: Only certain usernames are allowed. In this example only + // _username1_ and _username2_ are allowed. + Collaborators map[string]Ownership_AccessType `protobuf:"bytes,2,rep,name=collaborators" json:"collaborators,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value,enum=openstorage.api.Ownership_AccessType"` + // Public access to resource may be assigned for access by the public userd + Public *Ownership_PublicAccessControl `protobuf:"bytes,3,opt,name=public" json:"public,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Ownership_AccessControl) Reset() { *m = Ownership_AccessControl{} } +func (m *Ownership_AccessControl) String() string { return proto.CompactTextString(m) } +func (*Ownership_AccessControl) ProtoMessage() {} +func (*Ownership_AccessControl) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{23, 1} +} +func (m *Ownership_AccessControl) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Ownership_AccessControl.Unmarshal(m, b) +} +func (m *Ownership_AccessControl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Ownership_AccessControl.Marshal(b, m, deterministic) +} +func (dst *Ownership_AccessControl) XXX_Merge(src proto.Message) { + xxx_messageInfo_Ownership_AccessControl.Merge(dst, src) +} +func (m *Ownership_AccessControl) XXX_Size() int { + return xxx_messageInfo_Ownership_AccessControl.Size(m) +} +func (m *Ownership_AccessControl) XXX_DiscardUnknown() { + xxx_messageInfo_Ownership_AccessControl.DiscardUnknown(m) +} + +var xxx_messageInfo_Ownership_AccessControl proto.InternalMessageInfo + +func (m *Ownership_AccessControl) GetGroups() map[string]Ownership_AccessType { + if m != nil { + return m.Groups + } + return nil +} + +func (m *Ownership_AccessControl) GetCollaborators() map[string]Ownership_AccessType { + if m != nil { + return m.Collaborators + } + return nil +} + +func (m *Ownership_AccessControl) GetPublic() *Ownership_PublicAccessControl { + if m != nil { + return m.Public + } + return nil +} + +// Volume represents an abstract storage volume. +type Volume struct { + // Self referential volume ID. + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Source specified seed data for the volume. + Source *Source `protobuf:"bytes,2,opt,name=source" json:"source,omitempty"` + // Group volumes in the same group have the same group id. + Group *Group `protobuf:"bytes,3,opt,name=group" json:"group,omitempty"` + // Readonly is true if this volume is to be mounted with readonly access. + Readonly bool `protobuf:"varint,4,opt,name=readonly" json:"readonly,omitempty"` + // User specified locator + Locator *VolumeLocator `protobuf:"bytes,5,opt,name=locator" json:"locator,omitempty"` + // Volume creation time + Ctime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=ctime" json:"ctime,omitempty"` + // User specified VolumeSpec + Spec *VolumeSpec `protobuf:"bytes,7,opt,name=spec" json:"spec,omitempty"` + // Usage is bytes consumed by this volume. + Usage uint64 `protobuf:"varint,8,opt,name=usage" json:"usage,omitempty"` + // LastScan is the time when an integrity check was run. + LastScan *timestamp.Timestamp `protobuf:"bytes,9,opt,name=last_scan,json=lastScan" json:"last_scan,omitempty"` + // Format specifies the filesytem for this volume. + Format FSType `protobuf:"varint,10,opt,name=format,enum=openstorage.api.FSType" json:"format,omitempty"` + // VolumeStatus is the availability status of this volume. + Status VolumeStatus `protobuf:"varint,11,opt,name=status,enum=openstorage.api.VolumeStatus" json:"status,omitempty"` + // VolumeState is the current runtime state of this volume. + State VolumeState `protobuf:"varint,12,opt,name=state,enum=openstorage.api.VolumeState" json:"state,omitempty"` + // AttachedOn is the node instance identifier for clustered systems. + AttachedOn string `protobuf:"bytes,13,opt,name=attached_on,json=attachedOn" json:"attached_on,omitempty"` + // AttachState shows whether the device is attached for internal or external use. + AttachedState AttachState `protobuf:"varint,14,opt,name=attached_state,json=attachedState,enum=openstorage.api.AttachState" json:"attached_state,omitempty"` + // DevicePath is the device exported by block device implementations. + DevicePath string `protobuf:"bytes,15,opt,name=device_path,json=devicePath" json:"device_path,omitempty"` + // SecureDevicePath is the device path for an encrypted volume. + SecureDevicePath string `protobuf:"bytes,16,opt,name=secure_device_path,json=secureDevicePath" json:"secure_device_path,omitempty"` + // AttachPath is the mounted path in the host namespace. + AttachPath []string `protobuf:"bytes,17,rep,name=attach_path,json=attachPath" json:"attach_path,omitempty"` + // AttachInfo is a list of name value mappings that provides attach information. + AttachInfo map[string]string `protobuf:"bytes,18,rep,name=attach_info,json=attachInfo" json:"attach_info,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // ReplicatSets storage for this volumefor clustered storage arrays. + ReplicaSets []*ReplicaSet `protobuf:"bytes,19,rep,name=replica_sets,json=replicaSets" json:"replica_sets,omitempty"` + // RuntimeState is a lst of name value mapping of driver specific runtime + // information. + RuntimeState []*RuntimeStateMap `protobuf:"bytes,20,rep,name=runtime_state,json=runtimeState" json:"runtime_state,omitempty"` + // Error is the Last recorded error. + Error string `protobuf:"bytes,21,opt,name=error" json:"error,omitempty"` + // VolumeConsumers are entities that consume this volume + VolumeConsumers []*VolumeConsumer `protobuf:"bytes,22,rep,name=volume_consumers,json=volumeConsumers" json:"volume_consumers,omitempty"` + // FsResizeRequired if an FS resize is required on the volume. + FsResizeRequired bool `protobuf:"varint,23,opt,name=fs_resize_required,json=fsResizeRequired" json:"fs_resize_required,omitempty"` + // AttachTime time this device was last attached externally. + AttachTime *timestamp.Timestamp `protobuf:"bytes,24,opt,name=attach_time,json=attachTime" json:"attach_time,omitempty"` + // DetachTime time this device was detached. + DetachTime *timestamp.Timestamp `protobuf:"bytes,25,opt,name=detach_time,json=detachTime" json:"detach_time,omitempty"` + // Fastpath extensions + FpConfig *FastpathConfig `protobuf:"bytes,26,opt,name=fpConfig" json:"fpConfig,omitempty"` + // LastScanFix is the time when an integrity check fixed errors in filesystem + LastScanFix *timestamp.Timestamp `protobuf:"bytes,27,opt,name=last_scan_fix,json=lastScanFix" json:"last_scan_fix,omitempty"` + // LastScanStatus is the time when an integrity check fixed errors in filesystem + LastScanStatus FilesystemHealthStatus `protobuf:"varint,28,opt,name=last_scan_status,json=lastScanStatus,enum=openstorage.api.FilesystemHealthStatus" json:"last_scan_status,omitempty"` + // MountOptions are the runtime mount options that will be used while mounting this volume + MountOptions *MountOptions `protobuf:"bytes,29,opt,name=mount_options,json=mountOptions" json:"mount_options,omitempty"` + // Sharedv4MountOptions are the runtime mount options that will be used while mounting a sharedv4 volume + // from a node where the volume replica does not exist + Sharedv4MountOptions *MountOptions `protobuf:"bytes,30,opt,name=sharedv4_mount_options,json=sharedv4MountOptions" json:"sharedv4_mount_options,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Volume) Reset() { *m = Volume{} } +func (m *Volume) String() string { return proto.CompactTextString(m) } +func (*Volume) ProtoMessage() {} +func (*Volume) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{24} +} +func (m *Volume) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Volume.Unmarshal(m, b) +} +func (m *Volume) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Volume.Marshal(b, m, deterministic) +} +func (dst *Volume) XXX_Merge(src proto.Message) { + xxx_messageInfo_Volume.Merge(dst, src) +} +func (m *Volume) XXX_Size() int { + return xxx_messageInfo_Volume.Size(m) +} +func (m *Volume) XXX_DiscardUnknown() { + xxx_messageInfo_Volume.DiscardUnknown(m) +} + +var xxx_messageInfo_Volume proto.InternalMessageInfo + +func (m *Volume) GetId() string { + if m != nil { + return m.Id + } + return "" +} + +func (m *Volume) GetSource() *Source { + if m != nil { + return m.Source + } + return nil +} + +func (m *Volume) GetGroup() *Group { + if m != nil { + return m.Group + } + return nil +} + +func (m *Volume) GetReadonly() bool { + if m != nil { + return m.Readonly + } + return false +} + +func (m *Volume) GetLocator() *VolumeLocator { + if m != nil { + return m.Locator + } + return nil +} + +func (m *Volume) GetCtime() *timestamp.Timestamp { + if m != nil { + return m.Ctime + } + return nil +} + +func (m *Volume) GetSpec() *VolumeSpec { + if m != nil { + return m.Spec + } + return nil +} + +func (m *Volume) GetUsage() uint64 { + if m != nil { + return m.Usage + } + return 0 +} + +func (m *Volume) GetLastScan() *timestamp.Timestamp { + if m != nil { + return m.LastScan + } + return nil +} + +func (m *Volume) GetFormat() FSType { + if m != nil { + return m.Format + } + return FSType_FS_TYPE_NONE +} + +func (m *Volume) GetStatus() VolumeStatus { + if m != nil { + return m.Status + } + return VolumeStatus_VOLUME_STATUS_NONE +} + +func (m *Volume) GetState() VolumeState { + if m != nil { + return m.State + } + return VolumeState_VOLUME_STATE_NONE +} + +func (m *Volume) GetAttachedOn() string { + if m != nil { + return m.AttachedOn + } + return "" +} + +func (m *Volume) GetAttachedState() AttachState { + if m != nil { + return m.AttachedState + } + return AttachState_ATTACH_STATE_EXTERNAL +} + +func (m *Volume) GetDevicePath() string { + if m != nil { + return m.DevicePath + } + return "" +} + +func (m *Volume) GetSecureDevicePath() string { + if m != nil { + return m.SecureDevicePath + } + return "" +} + +func (m *Volume) GetAttachPath() []string { + if m != nil { + return m.AttachPath + } + return nil +} + +func (m *Volume) GetAttachInfo() map[string]string { + if m != nil { + return m.AttachInfo + } + return nil +} + +func (m *Volume) GetReplicaSets() []*ReplicaSet { + if m != nil { + return m.ReplicaSets + } + return nil +} + +func (m *Volume) GetRuntimeState() []*RuntimeStateMap { + if m != nil { + return m.RuntimeState + } + return nil +} + +func (m *Volume) GetError() string { + if m != nil { + return m.Error + } + return "" +} + +func (m *Volume) GetVolumeConsumers() []*VolumeConsumer { + if m != nil { + return m.VolumeConsumers + } + return nil +} + +func (m *Volume) GetFsResizeRequired() bool { + if m != nil { + return m.FsResizeRequired + } + return false +} + +func (m *Volume) GetAttachTime() *timestamp.Timestamp { + if m != nil { + return m.AttachTime + } + return nil +} + +func (m *Volume) GetDetachTime() *timestamp.Timestamp { + if m != nil { + return m.DetachTime + } + return nil +} + +func (m *Volume) GetFpConfig() *FastpathConfig { + if m != nil { + return m.FpConfig + } + return nil +} + +func (m *Volume) GetLastScanFix() *timestamp.Timestamp { + if m != nil { + return m.LastScanFix + } + return nil +} + +func (m *Volume) GetLastScanStatus() FilesystemHealthStatus { + if m != nil { + return m.LastScanStatus + } + return FilesystemHealthStatus_FS_HEALTH_STATUS_UNKNOWN +} + +func (m *Volume) GetMountOptions() *MountOptions { + if m != nil { + return m.MountOptions + } + return nil +} + +func (m *Volume) GetSharedv4MountOptions() *MountOptions { + if m != nil { + return m.Sharedv4MountOptions + } + return nil +} + +// Stats is a structure that represents last collected stats for a volume +type Stats struct { + // Reads completed successfully + Reads uint64 `protobuf:"varint,1,opt,name=reads" json:"reads,omitempty"` + // Time spent in reads in ms + ReadMs uint64 `protobuf:"varint,2,opt,name=read_ms,json=readMs" json:"read_ms,omitempty"` + // Number of bytes read + ReadBytes uint64 `protobuf:"varint,3,opt,name=read_bytes,json=readBytes" json:"read_bytes,omitempty"` + // Writes completed successfully + Writes uint64 `protobuf:"varint,4,opt,name=writes" json:"writes,omitempty"` + // Time spent in writes in ms + WriteMs uint64 `protobuf:"varint,5,opt,name=write_ms,json=writeMs" json:"write_ms,omitempty"` + // Number of bytes written + WriteBytes uint64 `protobuf:"varint,6,opt,name=write_bytes,json=writeBytes" json:"write_bytes,omitempty"` + // IOs curently in progress + IoProgress uint64 `protobuf:"varint,7,opt,name=io_progress,json=ioProgress" json:"io_progress,omitempty"` + // Time spent doing IOs ms + IoMs uint64 `protobuf:"varint,8,opt,name=io_ms,json=ioMs" json:"io_ms,omitempty"` + // BytesUsed + BytesUsed uint64 `protobuf:"varint,9,opt,name=bytes_used,json=bytesUsed" json:"bytes_used,omitempty"` + // Interval in ms during which stats were collected + IntervalMs uint64 `protobuf:"varint,10,opt,name=interval_ms,json=intervalMs" json:"interval_ms,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Stats) Reset() { *m = Stats{} } +func (m *Stats) String() string { return proto.CompactTextString(m) } +func (*Stats) ProtoMessage() {} +func (*Stats) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{25} +} +func (m *Stats) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Stats.Unmarshal(m, b) +} +func (m *Stats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Stats.Marshal(b, m, deterministic) +} +func (dst *Stats) XXX_Merge(src proto.Message) { + xxx_messageInfo_Stats.Merge(dst, src) +} +func (m *Stats) XXX_Size() int { + return xxx_messageInfo_Stats.Size(m) +} +func (m *Stats) XXX_DiscardUnknown() { + xxx_messageInfo_Stats.DiscardUnknown(m) +} + +var xxx_messageInfo_Stats proto.InternalMessageInfo + +func (m *Stats) GetReads() uint64 { + if m != nil { + return m.Reads + } + return 0 +} + +func (m *Stats) GetReadMs() uint64 { + if m != nil { + return m.ReadMs + } + return 0 +} + +func (m *Stats) GetReadBytes() uint64 { + if m != nil { + return m.ReadBytes + } + return 0 +} + +func (m *Stats) GetWrites() uint64 { + if m != nil { + return m.Writes + } + return 0 +} + +func (m *Stats) GetWriteMs() uint64 { + if m != nil { + return m.WriteMs + } + return 0 +} + +func (m *Stats) GetWriteBytes() uint64 { + if m != nil { + return m.WriteBytes + } + return 0 +} + +func (m *Stats) GetIoProgress() uint64 { + if m != nil { + return m.IoProgress + } + return 0 +} + +func (m *Stats) GetIoMs() uint64 { + if m != nil { + return m.IoMs + } + return 0 +} + +func (m *Stats) GetBytesUsed() uint64 { + if m != nil { + return m.BytesUsed + } + return 0 +} + +func (m *Stats) GetIntervalMs() uint64 { + if m != nil { + return m.IntervalMs } + return 0 +} + +// Provides details on exclusive and shared storage used by +// snapshot/volume specifically for copy-on-write(COW) snapshots. Deletion +// of snapshots and overwirte of volume will affect the exclusive storage +// used by the other dependent snaps and parent volume. +type CapacityUsageInfo struct { + // Storage consumed exclusively by this single snapshot. Deletion of this + // snapshot may increase the free storage available by this amount. + ExclusiveBytes int64 `protobuf:"varint,1,opt,name=exclusive_bytes,json=exclusiveBytes" json:"exclusive_bytes,omitempty"` + // Storage consumed by this snapshot that is shared with parent and children + SharedBytes int64 `protobuf:"varint,2,opt,name=shared_bytes,json=sharedBytes" json:"shared_bytes,omitempty"` + // TotalBytes used by this volume + TotalBytes int64 `protobuf:"varint,3,opt,name=total_bytes,json=totalBytes" json:"total_bytes,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func _VolumeSpecUpdate_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*VolumeSpecUpdate) - // size_opt - switch x := m.SizeOpt.(type) { - case *VolumeSpecUpdate_Size: - b.EncodeVarint(2<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.Size)) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.SizeOpt has unexpected type %T", x) - } - // ha_level_opt - switch x := m.HaLevelOpt.(type) { - case *VolumeSpecUpdate_HaLevel: - b.EncodeVarint(5<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.HaLevel)) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.HaLevelOpt has unexpected type %T", x) +func (m *CapacityUsageInfo) Reset() { *m = CapacityUsageInfo{} } +func (m *CapacityUsageInfo) String() string { return proto.CompactTextString(m) } +func (*CapacityUsageInfo) ProtoMessage() {} +func (*CapacityUsageInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{26} +} +func (m *CapacityUsageInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CapacityUsageInfo.Unmarshal(m, b) +} +func (m *CapacityUsageInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CapacityUsageInfo.Marshal(b, m, deterministic) +} +func (dst *CapacityUsageInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_CapacityUsageInfo.Merge(dst, src) +} +func (m *CapacityUsageInfo) XXX_Size() int { + return xxx_messageInfo_CapacityUsageInfo.Size(m) +} +func (m *CapacityUsageInfo) XXX_DiscardUnknown() { + xxx_messageInfo_CapacityUsageInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_CapacityUsageInfo proto.InternalMessageInfo + +func (m *CapacityUsageInfo) GetExclusiveBytes() int64 { + if m != nil { + return m.ExclusiveBytes } - // cos_opt - switch x := m.CosOpt.(type) { - case *VolumeSpecUpdate_Cos: - b.EncodeVarint(6<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.Cos)) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.CosOpt has unexpected type %T", x) + return 0 +} + +func (m *CapacityUsageInfo) GetSharedBytes() int64 { + if m != nil { + return m.SharedBytes } - // io_profile_opt - switch x := m.IoProfileOpt.(type) { - case *VolumeSpecUpdate_IoProfile: - b.EncodeVarint(7<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.IoProfile)) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.IoProfileOpt has unexpected type %T", x) + return 0 +} + +func (m *CapacityUsageInfo) GetTotalBytes() int64 { + if m != nil { + return m.TotalBytes } - // dedupe_opt - switch x := m.DedupeOpt.(type) { - case *VolumeSpecUpdate_Dedupe: - t := uint64(0) - if x.Dedupe { - t = 1 - } - b.EncodeVarint(8<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.DedupeOpt has unexpected type %T", x) + return 0 +} + +// Provides volume's exclusive bytes and its total usage. This cannot be +// retrieved individually and is obtained as part node's usage for a given +// node. +type VolumeUsage struct { + // id for the volume/snapshot + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // name of the volume/snapshot + VolumeName string `protobuf:"bytes,2,opt,name=volume_name,json=volumeName" json:"volume_name,omitempty"` + // uuid of the pool that this volume belongs to + PoolUuid string `protobuf:"bytes,3,opt,name=pool_uuid,json=poolUuid" json:"pool_uuid,omitempty"` + // size in bytes exclusively used by the volume/snapshot + ExclusiveBytes uint64 `protobuf:"varint,4,opt,name=exclusive_bytes,json=exclusiveBytes" json:"exclusive_bytes,omitempty"` + // size in bytes by the volume/snapshot + TotalBytes uint64 `protobuf:"varint,5,opt,name=total_bytes,json=totalBytes" json:"total_bytes,omitempty"` + // set to true if this volume is snapshot created by cloudbackups + LocalCloudSnapshot bool `protobuf:"varint,6,opt,name=local_cloud_snapshot,json=localCloudSnapshot" json:"local_cloud_snapshot,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeUsage) Reset() { *m = VolumeUsage{} } +func (m *VolumeUsage) String() string { return proto.CompactTextString(m) } +func (*VolumeUsage) ProtoMessage() {} +func (*VolumeUsage) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{27} +} +func (m *VolumeUsage) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeUsage.Unmarshal(m, b) +} +func (m *VolumeUsage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeUsage.Marshal(b, m, deterministic) +} +func (dst *VolumeUsage) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeUsage.Merge(dst, src) +} +func (m *VolumeUsage) XXX_Size() int { + return xxx_messageInfo_VolumeUsage.Size(m) +} +func (m *VolumeUsage) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeUsage.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeUsage proto.InternalMessageInfo + +func (m *VolumeUsage) GetVolumeId() string { + if m != nil { + return m.VolumeId } - // snapshot_interval_opt - switch x := m.SnapshotIntervalOpt.(type) { - case *VolumeSpecUpdate_SnapshotInterval: - b.EncodeVarint(9<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.SnapshotInterval)) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.SnapshotIntervalOpt has unexpected type %T", x) + return "" +} + +func (m *VolumeUsage) GetVolumeName() string { + if m != nil { + return m.VolumeName } - // shared_opt - switch x := m.SharedOpt.(type) { - case *VolumeSpecUpdate_Shared: - t := uint64(0) - if x.Shared { - t = 1 - } - b.EncodeVarint(11<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.SharedOpt has unexpected type %T", x) + return "" +} + +func (m *VolumeUsage) GetPoolUuid() string { + if m != nil { + return m.PoolUuid } - // passphrase_opt - switch x := m.PassphraseOpt.(type) { - case *VolumeSpecUpdate_Passphrase: - b.EncodeVarint(15<<3 | proto.WireBytes) - b.EncodeStringBytes(x.Passphrase) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.PassphraseOpt has unexpected type %T", x) + return "" +} + +func (m *VolumeUsage) GetExclusiveBytes() uint64 { + if m != nil { + return m.ExclusiveBytes } - // snapshot_schedule_opt - switch x := m.SnapshotScheduleOpt.(type) { - case *VolumeSpecUpdate_SnapshotSchedule: - b.EncodeVarint(16<<3 | proto.WireBytes) - b.EncodeStringBytes(x.SnapshotSchedule) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.SnapshotScheduleOpt has unexpected type %T", x) + return 0 +} + +func (m *VolumeUsage) GetTotalBytes() uint64 { + if m != nil { + return m.TotalBytes } - // scale_opt - switch x := m.ScaleOpt.(type) { - case *VolumeSpecUpdate_Scale: - b.EncodeVarint(17<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.Scale)) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.ScaleOpt has unexpected type %T", x) + return 0 +} + +func (m *VolumeUsage) GetLocalCloudSnapshot() bool { + if m != nil { + return m.LocalCloudSnapshot } - // sticky_opt - switch x := m.StickyOpt.(type) { - case *VolumeSpecUpdate_Sticky: - t := uint64(0) - if x.Sticky { - t = 1 - } - b.EncodeVarint(18<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.StickyOpt has unexpected type %T", x) + return false +} + +// Provides capacity usage of a node in terms of volumes. Returns VolumeUsage for +// all the volume/snapshot(s) in the node. +type VolumeUsageByNode struct { + // VolumeUsage returns list of VolumeUsage for given node + VolumeUsage []*VolumeUsage `protobuf:"bytes,1,rep,name=volume_usage,json=volumeUsage" json:"volume_usage,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeUsageByNode) Reset() { *m = VolumeUsageByNode{} } +func (m *VolumeUsageByNode) String() string { return proto.CompactTextString(m) } +func (*VolumeUsageByNode) ProtoMessage() {} +func (*VolumeUsageByNode) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{28} +} +func (m *VolumeUsageByNode) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeUsageByNode.Unmarshal(m, b) +} +func (m *VolumeUsageByNode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeUsageByNode.Marshal(b, m, deterministic) +} +func (dst *VolumeUsageByNode) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeUsageByNode.Merge(dst, src) +} +func (m *VolumeUsageByNode) XXX_Size() int { + return xxx_messageInfo_VolumeUsageByNode.Size(m) +} +func (m *VolumeUsageByNode) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeUsageByNode.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeUsageByNode proto.InternalMessageInfo + +func (m *VolumeUsageByNode) GetVolumeUsage() []*VolumeUsage { + if m != nil { + return m.VolumeUsage } - // group_opt - switch x := m.GroupOpt.(type) { - case *VolumeSpecUpdate_Group: - b.EncodeVarint(19<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.Group); err != nil { - return err - } - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.GroupOpt has unexpected type %T", x) + return nil +} + +// A SdkStoragePolicy represents minimum set of volume specs to be +// follow while creating volumes. +// If storage policy is set default in OpenStoragePolicy service, VolumeSpecPolicy will be +// used before creating volume to validate volume specs or ensure minimum volume creation +// rules followed +type SdkStoragePolicy struct { + // Name of storage policy. + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + // VolumeSpecs to apply while creating volume. + Policy *VolumeSpecPolicy `protobuf:"bytes,2,opt,name=policy" json:"policy,omitempty"` + // Force if set to true volume specs will be overwritten, otherwise + // volume creation will fail if the volume specifications are not inline with storage policy + Force bool `protobuf:"varint,3,opt,name=force" json:"force,omitempty"` + // If set a volume can be updated without storage Policy + // restriction, otherwise volume update will be followed as per storage policy + // specification + AllowUpdate bool `protobuf:"varint,4,opt,name=allow_update,json=allowUpdate" json:"allow_update,omitempty"` + // Owner info of storage policy + Ownership *Ownership `protobuf:"bytes,5,opt,name=ownership" json:"ownership,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkStoragePolicy) Reset() { *m = SdkStoragePolicy{} } +func (m *SdkStoragePolicy) String() string { return proto.CompactTextString(m) } +func (*SdkStoragePolicy) ProtoMessage() {} +func (*SdkStoragePolicy) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{29} +} +func (m *SdkStoragePolicy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkStoragePolicy.Unmarshal(m, b) +} +func (m *SdkStoragePolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkStoragePolicy.Marshal(b, m, deterministic) +} +func (dst *SdkStoragePolicy) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkStoragePolicy.Merge(dst, src) +} +func (m *SdkStoragePolicy) XXX_Size() int { + return xxx_messageInfo_SdkStoragePolicy.Size(m) +} +func (m *SdkStoragePolicy) XXX_DiscardUnknown() { + xxx_messageInfo_SdkStoragePolicy.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkStoragePolicy proto.InternalMessageInfo + +func (m *SdkStoragePolicy) GetName() string { + if m != nil { + return m.Name } - // journal_opt - switch x := m.JournalOpt.(type) { - case *VolumeSpecUpdate_Journal: - t := uint64(0) - if x.Journal { - t = 1 - } - b.EncodeVarint(23<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.JournalOpt has unexpected type %T", x) + return "" +} + +func (m *SdkStoragePolicy) GetPolicy() *VolumeSpecPolicy { + if m != nil { + return m.Policy } - // sharedv4_opt - switch x := m.Sharedv4Opt.(type) { - case *VolumeSpecUpdate_Sharedv4: - t := uint64(0) - if x.Sharedv4 { - t = 1 - } - b.EncodeVarint(24<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.Sharedv4Opt has unexpected type %T", x) + return nil +} + +func (m *SdkStoragePolicy) GetForce() bool { + if m != nil { + return m.Force } - // queue_depth_opt - switch x := m.QueueDepthOpt.(type) { - case *VolumeSpecUpdate_QueueDepth: - b.EncodeVarint(25<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.QueueDepth)) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.QueueDepthOpt has unexpected type %T", x) + return false +} + +func (m *SdkStoragePolicy) GetAllowUpdate() bool { + if m != nil { + return m.AllowUpdate } - // nodiscard_opt - switch x := m.NodiscardOpt.(type) { - case *VolumeSpecUpdate_Nodiscard: - t := uint64(0) - if x.Nodiscard { - t = 1 - } - b.EncodeVarint(27<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecUpdate.NodiscardOpt has unexpected type %T", x) + return false +} + +func (m *SdkStoragePolicy) GetOwnership() *Ownership { + if m != nil { + return m.Ownership } return nil } -func _VolumeSpecUpdate_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*VolumeSpecUpdate) - switch tag { - case 2: // size_opt.size - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.SizeOpt = &VolumeSpecUpdate_Size{x} - return true, err - case 5: // ha_level_opt.ha_level - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.HaLevelOpt = &VolumeSpecUpdate_HaLevel{int64(x)} - return true, err - case 6: // cos_opt.cos - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.CosOpt = &VolumeSpecUpdate_Cos{CosType(x)} - return true, err - case 7: // io_profile_opt.io_profile - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.IoProfileOpt = &VolumeSpecUpdate_IoProfile{IoProfile(x)} - return true, err - case 8: // dedupe_opt.dedupe - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.DedupeOpt = &VolumeSpecUpdate_Dedupe{x != 0} - return true, err - case 9: // snapshot_interval_opt.snapshot_interval - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.SnapshotIntervalOpt = &VolumeSpecUpdate_SnapshotInterval{uint32(x)} - return true, err - case 11: // shared_opt.shared - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.SharedOpt = &VolumeSpecUpdate_Shared{x != 0} - return true, err - case 15: // passphrase_opt.passphrase - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeStringBytes() - m.PassphraseOpt = &VolumeSpecUpdate_Passphrase{x} - return true, err - case 16: // snapshot_schedule_opt.snapshot_schedule - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeStringBytes() - m.SnapshotScheduleOpt = &VolumeSpecUpdate_SnapshotSchedule{x} - return true, err - case 17: // scale_opt.scale - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.ScaleOpt = &VolumeSpecUpdate_Scale{uint32(x)} - return true, err - case 18: // sticky_opt.sticky - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.StickyOpt = &VolumeSpecUpdate_Sticky{x != 0} - return true, err - case 19: // group_opt.group - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(Group) - err := b.DecodeMessage(msg) - m.GroupOpt = &VolumeSpecUpdate_Group{msg} - return true, err - case 23: // journal_opt.journal - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.JournalOpt = &VolumeSpecUpdate_Journal{x != 0} - return true, err - case 24: // sharedv4_opt.sharedv4 - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.Sharedv4Opt = &VolumeSpecUpdate_Sharedv4{x != 0} - return true, err - case 25: // queue_depth_opt.queue_depth - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.QueueDepthOpt = &VolumeSpecUpdate_QueueDepth{uint32(x)} - return true, err - case 27: // nodiscard_opt.nodiscard - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.NodiscardOpt = &VolumeSpecUpdate_Nodiscard{x != 0} - return true, err - default: - return false, nil +// Alert is a structure that represents an alert object +type Alert struct { + // Id for Alert + Id int64 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` + // Severity of the Alert + Severity SeverityType `protobuf:"varint,2,opt,name=severity,enum=openstorage.api.SeverityType" json:"severity,omitempty"` + // AlertType user defined alert type + AlertType int64 `protobuf:"varint,3,opt,name=alert_type,json=alertType" json:"alert_type,omitempty"` + // Message describing the Alert + Message string `protobuf:"bytes,4,opt,name=message" json:"message,omitempty"` + // Timestamp when Alert occured + Timestamp *timestamp.Timestamp `protobuf:"bytes,5,opt,name=timestamp" json:"timestamp,omitempty"` + // ResourceId where Alert occured + ResourceId string `protobuf:"bytes,6,opt,name=resource_id,json=resourceId" json:"resource_id,omitempty"` + // Resource where Alert occured + Resource ResourceType `protobuf:"varint,7,opt,name=resource,enum=openstorage.api.ResourceType" json:"resource,omitempty"` + // Cleared Flag + Cleared bool `protobuf:"varint,8,opt,name=cleared" json:"cleared,omitempty"` + // Time-to-live in seconds for this Alert + Ttl uint64 `protobuf:"varint,9,opt,name=ttl" json:"ttl,omitempty"` + // UniqueTag helps identify a unique alert for a given resouce + UniqueTag string `protobuf:"bytes,10,opt,name=unique_tag,json=uniqueTag" json:"unique_tag,omitempty"` + // Count of such alerts raised so far. + Count int64 `protobuf:"varint,11,opt,name=count" json:"count,omitempty"` + // Timestamp when such alert was raised the very first time. + FirstSeen *timestamp.Timestamp `protobuf:"bytes,12,opt,name=first_seen,json=firstSeen" json:"first_seen,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Alert) Reset() { *m = Alert{} } +func (m *Alert) String() string { return proto.CompactTextString(m) } +func (*Alert) ProtoMessage() {} +func (*Alert) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{30} +} +func (m *Alert) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Alert.Unmarshal(m, b) +} +func (m *Alert) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Alert.Marshal(b, m, deterministic) +} +func (dst *Alert) XXX_Merge(src proto.Message) { + xxx_messageInfo_Alert.Merge(dst, src) +} +func (m *Alert) XXX_Size() int { + return xxx_messageInfo_Alert.Size(m) +} +func (m *Alert) XXX_DiscardUnknown() { + xxx_messageInfo_Alert.DiscardUnknown(m) +} + +var xxx_messageInfo_Alert proto.InternalMessageInfo + +func (m *Alert) GetId() int64 { + if m != nil { + return m.Id } + return 0 } -func _VolumeSpecUpdate_OneofSizer(msg proto.Message) (n int) { - m := msg.(*VolumeSpecUpdate) - // size_opt - switch x := m.SizeOpt.(type) { - case *VolumeSpecUpdate_Size: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.Size)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) +func (m *Alert) GetSeverity() SeverityType { + if m != nil { + return m.Severity } - // ha_level_opt - switch x := m.HaLevelOpt.(type) { - case *VolumeSpecUpdate_HaLevel: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.HaLevel)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return SeverityType_SEVERITY_TYPE_NONE +} + +func (m *Alert) GetAlertType() int64 { + if m != nil { + return m.AlertType } - // cos_opt - switch x := m.CosOpt.(type) { - case *VolumeSpecUpdate_Cos: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.Cos)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return 0 +} + +func (m *Alert) GetMessage() string { + if m != nil { + return m.Message } - // io_profile_opt - switch x := m.IoProfileOpt.(type) { - case *VolumeSpecUpdate_IoProfile: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.IoProfile)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return "" +} + +func (m *Alert) GetTimestamp() *timestamp.Timestamp { + if m != nil { + return m.Timestamp } - // dedupe_opt - switch x := m.DedupeOpt.(type) { - case *VolumeSpecUpdate_Dedupe: - n += 1 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +func (m *Alert) GetResourceId() string { + if m != nil { + return m.ResourceId } - // snapshot_interval_opt - switch x := m.SnapshotIntervalOpt.(type) { - case *VolumeSpecUpdate_SnapshotInterval: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.SnapshotInterval)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return "" +} + +func (m *Alert) GetResource() ResourceType { + if m != nil { + return m.Resource } - // shared_opt - switch x := m.SharedOpt.(type) { - case *VolumeSpecUpdate_Shared: - n += 1 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return ResourceType_RESOURCE_TYPE_NONE +} + +func (m *Alert) GetCleared() bool { + if m != nil { + return m.Cleared } - // passphrase_opt - switch x := m.PassphraseOpt.(type) { - case *VolumeSpecUpdate_Passphrase: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(len(x.Passphrase))) - n += len(x.Passphrase) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return false +} + +func (m *Alert) GetTtl() uint64 { + if m != nil { + return m.Ttl } - // snapshot_schedule_opt - switch x := m.SnapshotScheduleOpt.(type) { - case *VolumeSpecUpdate_SnapshotSchedule: - n += 2 // tag and wire - n += proto.SizeVarint(uint64(len(x.SnapshotSchedule))) - n += len(x.SnapshotSchedule) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return 0 +} + +func (m *Alert) GetUniqueTag() string { + if m != nil { + return m.UniqueTag } - // scale_opt - switch x := m.ScaleOpt.(type) { - case *VolumeSpecUpdate_Scale: - n += 2 // tag and wire - n += proto.SizeVarint(uint64(x.Scale)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return "" +} + +func (m *Alert) GetCount() int64 { + if m != nil { + return m.Count } - // sticky_opt - switch x := m.StickyOpt.(type) { - case *VolumeSpecUpdate_Sticky: - n += 2 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return 0 +} + +func (m *Alert) GetFirstSeen() *timestamp.Timestamp { + if m != nil { + return m.FirstSeen } - // group_opt - switch x := m.GroupOpt.(type) { - case *VolumeSpecUpdate_Group: - s := proto.Size(x.Group) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +// SdkAlertsTimeSpan to store time window information. +type SdkAlertsTimeSpan struct { + // Start timestamp when Alert occured + StartTime *timestamp.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime" json:"start_time,omitempty"` + // End timestamp when Alert occured + EndTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime" json:"end_time,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkAlertsTimeSpan) Reset() { *m = SdkAlertsTimeSpan{} } +func (m *SdkAlertsTimeSpan) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsTimeSpan) ProtoMessage() {} +func (*SdkAlertsTimeSpan) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{31} +} +func (m *SdkAlertsTimeSpan) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsTimeSpan.Unmarshal(m, b) +} +func (m *SdkAlertsTimeSpan) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsTimeSpan.Marshal(b, m, deterministic) +} +func (dst *SdkAlertsTimeSpan) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsTimeSpan.Merge(dst, src) +} +func (m *SdkAlertsTimeSpan) XXX_Size() int { + return xxx_messageInfo_SdkAlertsTimeSpan.Size(m) +} +func (m *SdkAlertsTimeSpan) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsTimeSpan.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkAlertsTimeSpan proto.InternalMessageInfo + +func (m *SdkAlertsTimeSpan) GetStartTime() *timestamp.Timestamp { + if m != nil { + return m.StartTime } - // journal_opt - switch x := m.JournalOpt.(type) { - case *VolumeSpecUpdate_Journal: - n += 2 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +func (m *SdkAlertsTimeSpan) GetEndTime() *timestamp.Timestamp { + if m != nil { + return m.EndTime } - // sharedv4_opt - switch x := m.Sharedv4Opt.(type) { - case *VolumeSpecUpdate_Sharedv4: - n += 2 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +// SdkAlertsCountSpan to store count range information. +type SdkAlertsCountSpan struct { + // Min count of such alerts raised so far. + MinCount int64 `protobuf:"varint,1,opt,name=min_count,json=minCount" json:"min_count,omitempty"` + // Max count of such alerts raised so far. + MaxCount int64 `protobuf:"varint,2,opt,name=max_count,json=maxCount" json:"max_count,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkAlertsCountSpan) Reset() { *m = SdkAlertsCountSpan{} } +func (m *SdkAlertsCountSpan) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsCountSpan) ProtoMessage() {} +func (*SdkAlertsCountSpan) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{32} +} +func (m *SdkAlertsCountSpan) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsCountSpan.Unmarshal(m, b) +} +func (m *SdkAlertsCountSpan) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsCountSpan.Marshal(b, m, deterministic) +} +func (dst *SdkAlertsCountSpan) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsCountSpan.Merge(dst, src) +} +func (m *SdkAlertsCountSpan) XXX_Size() int { + return xxx_messageInfo_SdkAlertsCountSpan.Size(m) +} +func (m *SdkAlertsCountSpan) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsCountSpan.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkAlertsCountSpan proto.InternalMessageInfo + +func (m *SdkAlertsCountSpan) GetMinCount() int64 { + if m != nil { + return m.MinCount } - // queue_depth_opt - switch x := m.QueueDepthOpt.(type) { - case *VolumeSpecUpdate_QueueDepth: - n += 2 // tag and wire - n += proto.SizeVarint(uint64(x.QueueDepth)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return 0 +} + +func (m *SdkAlertsCountSpan) GetMaxCount() int64 { + if m != nil { + return m.MaxCount } - // nodiscard_opt - switch x := m.NodiscardOpt.(type) { - case *VolumeSpecUpdate_Nodiscard: - n += 2 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return 0 +} + +// SdkAlertsOption contains options for filtering alerts. +type SdkAlertsOption struct { + // Types that are valid to be assigned to Opt: + // *SdkAlertsOption_MinSeverityType + // *SdkAlertsOption_IsCleared + // *SdkAlertsOption_TimeSpan + // *SdkAlertsOption_CountSpan + Opt isSdkAlertsOption_Opt `protobuf_oneof:"opt"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkAlertsOption) Reset() { *m = SdkAlertsOption{} } +func (m *SdkAlertsOption) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsOption) ProtoMessage() {} +func (*SdkAlertsOption) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{33} +} +func (m *SdkAlertsOption) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsOption.Unmarshal(m, b) +} +func (m *SdkAlertsOption) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsOption.Marshal(b, m, deterministic) +} +func (dst *SdkAlertsOption) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsOption.Merge(dst, src) +} +func (m *SdkAlertsOption) XXX_Size() int { + return xxx_messageInfo_SdkAlertsOption.Size(m) +} +func (m *SdkAlertsOption) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsOption.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkAlertsOption proto.InternalMessageInfo + +type isSdkAlertsOption_Opt interface { + isSdkAlertsOption_Opt() +} + +type SdkAlertsOption_MinSeverityType struct { + MinSeverityType SeverityType `protobuf:"varint,1,opt,name=min_severity_type,json=minSeverityType,enum=openstorage.api.SeverityType,oneof"` +} +type SdkAlertsOption_IsCleared struct { + IsCleared bool `protobuf:"varint,2,opt,name=is_cleared,json=isCleared,oneof"` +} +type SdkAlertsOption_TimeSpan struct { + TimeSpan *SdkAlertsTimeSpan `protobuf:"bytes,3,opt,name=time_span,json=timeSpan,oneof"` +} +type SdkAlertsOption_CountSpan struct { + CountSpan *SdkAlertsCountSpan `protobuf:"bytes,4,opt,name=count_span,json=countSpan,oneof"` +} + +func (*SdkAlertsOption_MinSeverityType) isSdkAlertsOption_Opt() {} +func (*SdkAlertsOption_IsCleared) isSdkAlertsOption_Opt() {} +func (*SdkAlertsOption_TimeSpan) isSdkAlertsOption_Opt() {} +func (*SdkAlertsOption_CountSpan) isSdkAlertsOption_Opt() {} + +func (m *SdkAlertsOption) GetOpt() isSdkAlertsOption_Opt { + if m != nil { + return m.Opt } - return n + return nil } -// VolumeSpecPolicy provides a method to set volume storage policy -type VolumeSpecPolicy struct { - // Size specifies the thin provisioned volume size in bytes. - // Use `size_operator` to show if this value is the min, max, or set. - // - // Types that are valid to be assigned to SizeOpt: - // *VolumeSpecPolicy_Size - SizeOpt isVolumeSpecPolicy_SizeOpt `protobuf_oneof:"size_opt"` - // HaLevel specifies the number of copies of data. - // Use `ha_level_operator` to show if this value is the min, max, or set. - // - // Types that are valid to be assigned to HaLevelOpt: - // *VolumeSpecPolicy_HaLevel - HaLevelOpt isVolumeSpecPolicy_HaLevelOpt `protobuf_oneof:"ha_level_opt"` - // Cos specifies the relative class of service. - // - // Types that are valid to be assigned to CosOpt: - // *VolumeSpecPolicy_Cos - CosOpt isVolumeSpecPolicy_CosOpt `protobuf_oneof:"cos_opt"` - // IoProfile provides a hint about application using this volume. - // - // Types that are valid to be assigned to IoProfileOpt: - // *VolumeSpecPolicy_IoProfile - IoProfileOpt isVolumeSpecPolicy_IoProfileOpt `protobuf_oneof:"io_profile_opt"` - // Dedupe specifies if the volume data is to be de-duplicated. - // - // Types that are valid to be assigned to DedupeOpt: - // *VolumeSpecPolicy_Dedupe - DedupeOpt isVolumeSpecPolicy_DedupeOpt `protobuf_oneof:"dedupe_opt"` - // SnapshotInterval in minutes, set to 0 to disable snapshots - // - // Types that are valid to be assigned to SnapshotIntervalOpt: - // *VolumeSpecPolicy_SnapshotInterval - SnapshotIntervalOpt isVolumeSpecPolicy_SnapshotIntervalOpt `protobuf_oneof:"snapshot_interval_opt"` - // VolumeLabels configuration labels - VolumeLabels map[string]string `protobuf:"bytes,7,rep,name=volume_labels,json=volumeLabels" json:"volume_labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // Shared is true if this volume can be remotely accessed. - // - // Types that are valid to be assigned to SharedOpt: - // *VolumeSpecPolicy_Shared - SharedOpt isVolumeSpecPolicy_SharedOpt `protobuf_oneof:"shared_opt"` - // ReplicaSet is the desired set of nodes for the volume data. - ReplicaSet *ReplicaSet `protobuf:"bytes,9,opt,name=replica_set,json=replicaSet" json:"replica_set,omitempty"` - // Passphrase for an encrypted volume - // - // Types that are valid to be assigned to PassphraseOpt: - // *VolumeSpecPolicy_Passphrase - PassphraseOpt isVolumeSpecPolicy_PassphraseOpt `protobuf_oneof:"passphrase_opt"` - // SnapshotSchedule a well known string that specifies when snapshots should be taken. - // - // Types that are valid to be assigned to SnapshotScheduleOpt: - // *VolumeSpecPolicy_SnapshotSchedule - SnapshotScheduleOpt isVolumeSpecPolicy_SnapshotScheduleOpt `protobuf_oneof:"snapshot_schedule_opt"` - // Scale allows autocreation of volumes. - // - // Types that are valid to be assigned to ScaleOpt: - // *VolumeSpecPolicy_Scale - ScaleOpt isVolumeSpecPolicy_ScaleOpt `protobuf_oneof:"scale_opt"` - // Sticky volumes cannot be deleted until the flag is removed. - // - // Types that are valid to be assigned to StickyOpt: - // *VolumeSpecPolicy_Sticky - StickyOpt isVolumeSpecPolicy_StickyOpt `protobuf_oneof:"sticky_opt"` - // Group identifies a consistency group - // - // Types that are valid to be assigned to GroupOpt: - // *VolumeSpecPolicy_Group - GroupOpt isVolumeSpecPolicy_GroupOpt `protobuf_oneof:"group_opt"` - // Journal is true if data for the volume goes into the journal. - // - // Types that are valid to be assigned to JournalOpt: - // *VolumeSpecPolicy_Journal - JournalOpt isVolumeSpecPolicy_JournalOpt `protobuf_oneof:"journal_opt"` - // Sharedv4 is true if this volume can be accessed via sharedv4. - // - // Types that are valid to be assigned to Sharedv4Opt: - // *VolumeSpecPolicy_Sharedv4 - Sharedv4Opt isVolumeSpecPolicy_Sharedv4Opt `protobuf_oneof:"sharedv4_opt"` - // QueueDepth defines the desired block device queue depth - // - // Types that are valid to be assigned to QueueDepthOpt: - // *VolumeSpecPolicy_QueueDepth - QueueDepthOpt isVolumeSpecPolicy_QueueDepthOpt `protobuf_oneof:"queue_depth_opt"` - // Encrypted is true if this volume will be cryptographically secured. - // - // Types that are valid to be assigned to EncryptedOpt: - // *VolumeSpecPolicy_Encrypted - EncryptedOpt isVolumeSpecPolicy_EncryptedOpt `protobuf_oneof:"encrypted_opt"` - // Aggregation level Specifies the number of parts the volume can be aggregated from. - // - // Types that are valid to be assigned to AggregationLevelOpt: - // *VolumeSpecPolicy_AggregationLevel - AggregationLevelOpt isVolumeSpecPolicy_AggregationLevelOpt `protobuf_oneof:"aggregation_level_opt"` - // Operator to check size - SizeOperator VolumeSpecPolicy_PolicyOp `protobuf:"varint,50,opt,name=size_operator,json=sizeOperator,enum=openstorage.api.VolumeSpecPolicy_PolicyOp" json:"size_operator,omitempty"` - // Operator to check ha_level - HaLevelOperator VolumeSpecPolicy_PolicyOp `protobuf:"varint,51,opt,name=ha_level_operator,json=haLevelOperator,enum=openstorage.api.VolumeSpecPolicy_PolicyOp" json:"ha_level_operator,omitempty"` - // Operator to check scale - ScaleOperator VolumeSpecPolicy_PolicyOp `protobuf:"varint,52,opt,name=scale_operator,json=scaleOperator,enum=openstorage.api.VolumeSpecPolicy_PolicyOp" json:"scale_operator,omitempty"` - // Operator to check snapshot_interval - SnapshotIntervalOperator VolumeSpecPolicy_PolicyOp `protobuf:"varint,53,opt,name=snapshot_interval_operator,json=snapshotIntervalOperator,enum=openstorage.api.VolumeSpecPolicy_PolicyOp" json:"snapshot_interval_operator,omitempty"` - // Nodiscard specifies if the volume will be mounted with discard support disabled. - // i.e. FS will not release allocated blocks back to the backing storage pool. - // - // Types that are valid to be assigned to NodiscardOpt: - // *VolumeSpecPolicy_Nodiscard - NodiscardOpt isVolumeSpecPolicy_NodiscardOpt `protobuf_oneof:"nodiscard_opt"` - // IoStrategy preferred strategy for I/O. - IoStrategy *IoStrategy `protobuf:"bytes,55,opt,name=io_strategy,json=ioStrategy" json:"io_strategy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkAlertsOption) GetMinSeverityType() SeverityType { + if x, ok := m.GetOpt().(*SdkAlertsOption_MinSeverityType); ok { + return x.MinSeverityType + } + return SeverityType_SEVERITY_TYPE_NONE } -func (m *VolumeSpecPolicy) Reset() { *m = VolumeSpecPolicy{} } -func (m *VolumeSpecPolicy) String() string { return proto.CompactTextString(m) } -func (*VolumeSpecPolicy) ProtoMessage() {} -func (*VolumeSpecPolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{10} +func (m *SdkAlertsOption) GetIsCleared() bool { + if x, ok := m.GetOpt().(*SdkAlertsOption_IsCleared); ok { + return x.IsCleared + } + return false } -func (m *VolumeSpecPolicy) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeSpecPolicy.Unmarshal(m, b) + +func (m *SdkAlertsOption) GetTimeSpan() *SdkAlertsTimeSpan { + if x, ok := m.GetOpt().(*SdkAlertsOption_TimeSpan); ok { + return x.TimeSpan + } + return nil } -func (m *VolumeSpecPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeSpecPolicy.Marshal(b, m, deterministic) + +func (m *SdkAlertsOption) GetCountSpan() *SdkAlertsCountSpan { + if x, ok := m.GetOpt().(*SdkAlertsOption_CountSpan); ok { + return x.CountSpan + } + return nil } -func (dst *VolumeSpecPolicy) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeSpecPolicy.Merge(dst, src) + +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SdkAlertsOption) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SdkAlertsOption_OneofMarshaler, _SdkAlertsOption_OneofUnmarshaler, _SdkAlertsOption_OneofSizer, []interface{}{ + (*SdkAlertsOption_MinSeverityType)(nil), + (*SdkAlertsOption_IsCleared)(nil), + (*SdkAlertsOption_TimeSpan)(nil), + (*SdkAlertsOption_CountSpan)(nil), + } } -func (m *VolumeSpecPolicy) XXX_Size() int { - return xxx_messageInfo_VolumeSpecPolicy.Size(m) + +func _SdkAlertsOption_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SdkAlertsOption) + // opt + switch x := m.Opt.(type) { + case *SdkAlertsOption_MinSeverityType: + b.EncodeVarint(1<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.MinSeverityType)) + case *SdkAlertsOption_IsCleared: + t := uint64(0) + if x.IsCleared { + t = 1 + } + b.EncodeVarint(2<<3 | proto.WireVarint) + b.EncodeVarint(t) + case *SdkAlertsOption_TimeSpan: + b.EncodeVarint(3<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.TimeSpan); err != nil { + return err + } + case *SdkAlertsOption_CountSpan: + b.EncodeVarint(4<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.CountSpan); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("SdkAlertsOption.Opt has unexpected type %T", x) + } + return nil } -func (m *VolumeSpecPolicy) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeSpecPolicy.DiscardUnknown(m) + +func _SdkAlertsOption_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SdkAlertsOption) + switch tag { + case 1: // opt.min_severity_type + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.Opt = &SdkAlertsOption_MinSeverityType{SeverityType(x)} + return true, err + case 2: // opt.is_cleared + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.Opt = &SdkAlertsOption_IsCleared{x != 0} + return true, err + case 3: // opt.time_span + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAlertsTimeSpan) + err := b.DecodeMessage(msg) + m.Opt = &SdkAlertsOption_TimeSpan{msg} + return true, err + case 4: // opt.count_span + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAlertsCountSpan) + err := b.DecodeMessage(msg) + m.Opt = &SdkAlertsOption_CountSpan{msg} + return true, err + default: + return false, nil + } } -var xxx_messageInfo_VolumeSpecPolicy proto.InternalMessageInfo +func _SdkAlertsOption_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SdkAlertsOption) + // opt + switch x := m.Opt.(type) { + case *SdkAlertsOption_MinSeverityType: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(x.MinSeverityType)) + case *SdkAlertsOption_IsCleared: + n += 1 // tag and wire + n += 1 + case *SdkAlertsOption_TimeSpan: + s := proto.Size(x.TimeSpan) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkAlertsOption_CountSpan: + s := proto.Size(x.CountSpan) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n +} -type isVolumeSpecPolicy_SizeOpt interface { - isVolumeSpecPolicy_SizeOpt() +// SdkAlertsResourceTypeQuery queries for alerts using only resource id. +type SdkAlertsResourceTypeQuery struct { + // Resource type used to build query. + ResourceType ResourceType `protobuf:"varint,1,opt,name=resource_type,json=resourceType,enum=openstorage.api.ResourceType" json:"resource_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -type isVolumeSpecPolicy_HaLevelOpt interface { - isVolumeSpecPolicy_HaLevelOpt() + +func (m *SdkAlertsResourceTypeQuery) Reset() { *m = SdkAlertsResourceTypeQuery{} } +func (m *SdkAlertsResourceTypeQuery) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsResourceTypeQuery) ProtoMessage() {} +func (*SdkAlertsResourceTypeQuery) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{34} } -type isVolumeSpecPolicy_CosOpt interface { - isVolumeSpecPolicy_CosOpt() +func (m *SdkAlertsResourceTypeQuery) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsResourceTypeQuery.Unmarshal(m, b) } -type isVolumeSpecPolicy_IoProfileOpt interface { - isVolumeSpecPolicy_IoProfileOpt() +func (m *SdkAlertsResourceTypeQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsResourceTypeQuery.Marshal(b, m, deterministic) } -type isVolumeSpecPolicy_DedupeOpt interface { - isVolumeSpecPolicy_DedupeOpt() +func (dst *SdkAlertsResourceTypeQuery) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsResourceTypeQuery.Merge(dst, src) } -type isVolumeSpecPolicy_SnapshotIntervalOpt interface { - isVolumeSpecPolicy_SnapshotIntervalOpt() +func (m *SdkAlertsResourceTypeQuery) XXX_Size() int { + return xxx_messageInfo_SdkAlertsResourceTypeQuery.Size(m) } -type isVolumeSpecPolicy_SharedOpt interface { - isVolumeSpecPolicy_SharedOpt() +func (m *SdkAlertsResourceTypeQuery) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsResourceTypeQuery.DiscardUnknown(m) } -type isVolumeSpecPolicy_PassphraseOpt interface { - isVolumeSpecPolicy_PassphraseOpt() + +var xxx_messageInfo_SdkAlertsResourceTypeQuery proto.InternalMessageInfo + +func (m *SdkAlertsResourceTypeQuery) GetResourceType() ResourceType { + if m != nil { + return m.ResourceType + } + return ResourceType_RESOURCE_TYPE_NONE } -type isVolumeSpecPolicy_SnapshotScheduleOpt interface { - isVolumeSpecPolicy_SnapshotScheduleOpt() + +// SdkAlertsAlertTypeQuery queries for alerts using alert type +// and it requires that resource type be provided as well. +type SdkAlertsAlertTypeQuery struct { + // Resource type used to build query. + ResourceType ResourceType `protobuf:"varint,1,opt,name=resource_type,json=resourceType,enum=openstorage.api.ResourceType" json:"resource_type,omitempty"` + // Alert type used to build query. + AlertType int64 `protobuf:"varint,2,opt,name=alert_type,json=alertType" json:"alert_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -type isVolumeSpecPolicy_ScaleOpt interface { - isVolumeSpecPolicy_ScaleOpt() + +func (m *SdkAlertsAlertTypeQuery) Reset() { *m = SdkAlertsAlertTypeQuery{} } +func (m *SdkAlertsAlertTypeQuery) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsAlertTypeQuery) ProtoMessage() {} +func (*SdkAlertsAlertTypeQuery) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{35} } -type isVolumeSpecPolicy_StickyOpt interface { - isVolumeSpecPolicy_StickyOpt() +func (m *SdkAlertsAlertTypeQuery) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsAlertTypeQuery.Unmarshal(m, b) } -type isVolumeSpecPolicy_GroupOpt interface { - isVolumeSpecPolicy_GroupOpt() +func (m *SdkAlertsAlertTypeQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsAlertTypeQuery.Marshal(b, m, deterministic) } -type isVolumeSpecPolicy_JournalOpt interface { - isVolumeSpecPolicy_JournalOpt() +func (dst *SdkAlertsAlertTypeQuery) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsAlertTypeQuery.Merge(dst, src) } -type isVolumeSpecPolicy_Sharedv4Opt interface { - isVolumeSpecPolicy_Sharedv4Opt() +func (m *SdkAlertsAlertTypeQuery) XXX_Size() int { + return xxx_messageInfo_SdkAlertsAlertTypeQuery.Size(m) } -type isVolumeSpecPolicy_QueueDepthOpt interface { - isVolumeSpecPolicy_QueueDepthOpt() +func (m *SdkAlertsAlertTypeQuery) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsAlertTypeQuery.DiscardUnknown(m) } -type isVolumeSpecPolicy_EncryptedOpt interface { - isVolumeSpecPolicy_EncryptedOpt() + +var xxx_messageInfo_SdkAlertsAlertTypeQuery proto.InternalMessageInfo + +func (m *SdkAlertsAlertTypeQuery) GetResourceType() ResourceType { + if m != nil { + return m.ResourceType + } + return ResourceType_RESOURCE_TYPE_NONE } -type isVolumeSpecPolicy_AggregationLevelOpt interface { - isVolumeSpecPolicy_AggregationLevelOpt() + +func (m *SdkAlertsAlertTypeQuery) GetAlertType() int64 { + if m != nil { + return m.AlertType + } + return 0 } -type isVolumeSpecPolicy_NodiscardOpt interface { - isVolumeSpecPolicy_NodiscardOpt() + +// SdkAlertsResourceIdQuery queries for alerts using resource id +// and it requires that both alert type and resource type be provided +// as well. +type SdkAlertsResourceIdQuery struct { + // Resource type used to build query. + ResourceType ResourceType `protobuf:"varint,1,opt,name=resource_type,json=resourceType,enum=openstorage.api.ResourceType" json:"resource_type,omitempty"` + // Alert type used to build query. + AlertType int64 `protobuf:"varint,2,opt,name=alert_type,json=alertType" json:"alert_type,omitempty"` + // Resource ID used to build query. + ResourceId string `protobuf:"bytes,3,opt,name=resource_id,json=resourceId" json:"resource_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -type VolumeSpecPolicy_Size struct { - Size uint64 `protobuf:"varint,1,opt,name=size,oneof"` +func (m *SdkAlertsResourceIdQuery) Reset() { *m = SdkAlertsResourceIdQuery{} } +func (m *SdkAlertsResourceIdQuery) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsResourceIdQuery) ProtoMessage() {} +func (*SdkAlertsResourceIdQuery) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{36} } -type VolumeSpecPolicy_HaLevel struct { - HaLevel int64 `protobuf:"varint,2,opt,name=ha_level,json=haLevel,oneof"` +func (m *SdkAlertsResourceIdQuery) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsResourceIdQuery.Unmarshal(m, b) } -type VolumeSpecPolicy_Cos struct { - Cos CosType `protobuf:"varint,3,opt,name=cos,enum=openstorage.api.CosType,oneof"` +func (m *SdkAlertsResourceIdQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsResourceIdQuery.Marshal(b, m, deterministic) } -type VolumeSpecPolicy_IoProfile struct { - IoProfile IoProfile `protobuf:"varint,4,opt,name=io_profile,json=ioProfile,enum=openstorage.api.IoProfile,oneof"` +func (dst *SdkAlertsResourceIdQuery) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsResourceIdQuery.Merge(dst, src) } -type VolumeSpecPolicy_Dedupe struct { - Dedupe bool `protobuf:"varint,5,opt,name=dedupe,oneof"` +func (m *SdkAlertsResourceIdQuery) XXX_Size() int { + return xxx_messageInfo_SdkAlertsResourceIdQuery.Size(m) } -type VolumeSpecPolicy_SnapshotInterval struct { - SnapshotInterval uint32 `protobuf:"varint,6,opt,name=snapshot_interval,json=snapshotInterval,oneof"` +func (m *SdkAlertsResourceIdQuery) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsResourceIdQuery.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkAlertsResourceIdQuery proto.InternalMessageInfo + +func (m *SdkAlertsResourceIdQuery) GetResourceType() ResourceType { + if m != nil { + return m.ResourceType + } + return ResourceType_RESOURCE_TYPE_NONE +} + +func (m *SdkAlertsResourceIdQuery) GetAlertType() int64 { + if m != nil { + return m.AlertType + } + return 0 } -type VolumeSpecPolicy_Shared struct { - Shared bool `protobuf:"varint,8,opt,name=shared,oneof"` + +func (m *SdkAlertsResourceIdQuery) GetResourceId() string { + if m != nil { + return m.ResourceId + } + return "" } -type VolumeSpecPolicy_Passphrase struct { - Passphrase string `protobuf:"bytes,10,opt,name=passphrase,oneof"` + +// SdkAlertsQuery is one of the query types and a list of options. +// Each query object is one of the three query types and a list of +// options. +type SdkAlertsQuery struct { + // One of the query types can be used to build SdkAlertsQuery. + // + // Types that are valid to be assigned to Query: + // *SdkAlertsQuery_ResourceTypeQuery + // *SdkAlertsQuery_AlertTypeQuery + // *SdkAlertsQuery_ResourceIdQuery + Query isSdkAlertsQuery_Query `protobuf_oneof:"query"` + // Opts is a list of options associated with one of the queries. + Opts []*SdkAlertsOption `protobuf:"bytes,4,rep,name=opts" json:"opts,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -type VolumeSpecPolicy_SnapshotSchedule struct { - SnapshotSchedule string `protobuf:"bytes,11,opt,name=snapshot_schedule,json=snapshotSchedule,oneof"` + +func (m *SdkAlertsQuery) Reset() { *m = SdkAlertsQuery{} } +func (m *SdkAlertsQuery) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsQuery) ProtoMessage() {} +func (*SdkAlertsQuery) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{37} } -type VolumeSpecPolicy_Scale struct { - Scale uint32 `protobuf:"varint,12,opt,name=scale,oneof"` +func (m *SdkAlertsQuery) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsQuery.Unmarshal(m, b) } -type VolumeSpecPolicy_Sticky struct { - Sticky bool `protobuf:"varint,13,opt,name=sticky,oneof"` +func (m *SdkAlertsQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsQuery.Marshal(b, m, deterministic) } -type VolumeSpecPolicy_Group struct { - Group *Group `protobuf:"bytes,14,opt,name=group,oneof"` +func (dst *SdkAlertsQuery) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsQuery.Merge(dst, src) } -type VolumeSpecPolicy_Journal struct { - Journal bool `protobuf:"varint,15,opt,name=journal,oneof"` +func (m *SdkAlertsQuery) XXX_Size() int { + return xxx_messageInfo_SdkAlertsQuery.Size(m) } -type VolumeSpecPolicy_Sharedv4 struct { - Sharedv4 bool `protobuf:"varint,16,opt,name=sharedv4,oneof"` +func (m *SdkAlertsQuery) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsQuery.DiscardUnknown(m) } -type VolumeSpecPolicy_QueueDepth struct { - QueueDepth uint32 `protobuf:"varint,17,opt,name=queue_depth,json=queueDepth,oneof"` + +var xxx_messageInfo_SdkAlertsQuery proto.InternalMessageInfo + +type isSdkAlertsQuery_Query interface { + isSdkAlertsQuery_Query() } -type VolumeSpecPolicy_Encrypted struct { - Encrypted bool `protobuf:"varint,18,opt,name=encrypted,oneof"` + +type SdkAlertsQuery_ResourceTypeQuery struct { + ResourceTypeQuery *SdkAlertsResourceTypeQuery `protobuf:"bytes,1,opt,name=resource_type_query,json=resourceTypeQuery,oneof"` } -type VolumeSpecPolicy_AggregationLevel struct { - AggregationLevel uint32 `protobuf:"varint,19,opt,name=aggregation_level,json=aggregationLevel,oneof"` +type SdkAlertsQuery_AlertTypeQuery struct { + AlertTypeQuery *SdkAlertsAlertTypeQuery `protobuf:"bytes,2,opt,name=alert_type_query,json=alertTypeQuery,oneof"` } -type VolumeSpecPolicy_Nodiscard struct { - Nodiscard bool `protobuf:"varint,54,opt,name=nodiscard,oneof"` +type SdkAlertsQuery_ResourceIdQuery struct { + ResourceIdQuery *SdkAlertsResourceIdQuery `protobuf:"bytes,3,opt,name=resource_id_query,json=resourceIdQuery,oneof"` } -func (*VolumeSpecPolicy_Size) isVolumeSpecPolicy_SizeOpt() {} -func (*VolumeSpecPolicy_HaLevel) isVolumeSpecPolicy_HaLevelOpt() {} -func (*VolumeSpecPolicy_Cos) isVolumeSpecPolicy_CosOpt() {} -func (*VolumeSpecPolicy_IoProfile) isVolumeSpecPolicy_IoProfileOpt() {} -func (*VolumeSpecPolicy_Dedupe) isVolumeSpecPolicy_DedupeOpt() {} -func (*VolumeSpecPolicy_SnapshotInterval) isVolumeSpecPolicy_SnapshotIntervalOpt() {} -func (*VolumeSpecPolicy_Shared) isVolumeSpecPolicy_SharedOpt() {} -func (*VolumeSpecPolicy_Passphrase) isVolumeSpecPolicy_PassphraseOpt() {} -func (*VolumeSpecPolicy_SnapshotSchedule) isVolumeSpecPolicy_SnapshotScheduleOpt() {} -func (*VolumeSpecPolicy_Scale) isVolumeSpecPolicy_ScaleOpt() {} -func (*VolumeSpecPolicy_Sticky) isVolumeSpecPolicy_StickyOpt() {} -func (*VolumeSpecPolicy_Group) isVolumeSpecPolicy_GroupOpt() {} -func (*VolumeSpecPolicy_Journal) isVolumeSpecPolicy_JournalOpt() {} -func (*VolumeSpecPolicy_Sharedv4) isVolumeSpecPolicy_Sharedv4Opt() {} -func (*VolumeSpecPolicy_QueueDepth) isVolumeSpecPolicy_QueueDepthOpt() {} -func (*VolumeSpecPolicy_Encrypted) isVolumeSpecPolicy_EncryptedOpt() {} -func (*VolumeSpecPolicy_AggregationLevel) isVolumeSpecPolicy_AggregationLevelOpt() {} -func (*VolumeSpecPolicy_Nodiscard) isVolumeSpecPolicy_NodiscardOpt() {} +func (*SdkAlertsQuery_ResourceTypeQuery) isSdkAlertsQuery_Query() {} +func (*SdkAlertsQuery_AlertTypeQuery) isSdkAlertsQuery_Query() {} +func (*SdkAlertsQuery_ResourceIdQuery) isSdkAlertsQuery_Query() {} -func (m *VolumeSpecPolicy) GetSizeOpt() isVolumeSpecPolicy_SizeOpt { - if m != nil { - return m.SizeOpt - } - return nil -} -func (m *VolumeSpecPolicy) GetHaLevelOpt() isVolumeSpecPolicy_HaLevelOpt { +func (m *SdkAlertsQuery) GetQuery() isSdkAlertsQuery_Query { if m != nil { - return m.HaLevelOpt + return m.Query } return nil } -func (m *VolumeSpecPolicy) GetCosOpt() isVolumeSpecPolicy_CosOpt { - if m != nil { - return m.CosOpt + +func (m *SdkAlertsQuery) GetResourceTypeQuery() *SdkAlertsResourceTypeQuery { + if x, ok := m.GetQuery().(*SdkAlertsQuery_ResourceTypeQuery); ok { + return x.ResourceTypeQuery } return nil } -func (m *VolumeSpecPolicy) GetIoProfileOpt() isVolumeSpecPolicy_IoProfileOpt { - if m != nil { - return m.IoProfileOpt + +func (m *SdkAlertsQuery) GetAlertTypeQuery() *SdkAlertsAlertTypeQuery { + if x, ok := m.GetQuery().(*SdkAlertsQuery_AlertTypeQuery); ok { + return x.AlertTypeQuery } return nil } -func (m *VolumeSpecPolicy) GetDedupeOpt() isVolumeSpecPolicy_DedupeOpt { - if m != nil { - return m.DedupeOpt + +func (m *SdkAlertsQuery) GetResourceIdQuery() *SdkAlertsResourceIdQuery { + if x, ok := m.GetQuery().(*SdkAlertsQuery_ResourceIdQuery); ok { + return x.ResourceIdQuery } return nil } -func (m *VolumeSpecPolicy) GetSnapshotIntervalOpt() isVolumeSpecPolicy_SnapshotIntervalOpt { + +func (m *SdkAlertsQuery) GetOpts() []*SdkAlertsOption { if m != nil { - return m.SnapshotIntervalOpt + return m.Opts } return nil } -func (m *VolumeSpecPolicy) GetSharedOpt() isVolumeSpecPolicy_SharedOpt { - if m != nil { - return m.SharedOpt + +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SdkAlertsQuery) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SdkAlertsQuery_OneofMarshaler, _SdkAlertsQuery_OneofUnmarshaler, _SdkAlertsQuery_OneofSizer, []interface{}{ + (*SdkAlertsQuery_ResourceTypeQuery)(nil), + (*SdkAlertsQuery_AlertTypeQuery)(nil), + (*SdkAlertsQuery_ResourceIdQuery)(nil), } - return nil } -func (m *VolumeSpecPolicy) GetPassphraseOpt() isVolumeSpecPolicy_PassphraseOpt { - if m != nil { - return m.PassphraseOpt + +func _SdkAlertsQuery_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SdkAlertsQuery) + // query + switch x := m.Query.(type) { + case *SdkAlertsQuery_ResourceTypeQuery: + b.EncodeVarint(1<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ResourceTypeQuery); err != nil { + return err + } + case *SdkAlertsQuery_AlertTypeQuery: + b.EncodeVarint(2<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AlertTypeQuery); err != nil { + return err + } + case *SdkAlertsQuery_ResourceIdQuery: + b.EncodeVarint(3<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ResourceIdQuery); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("SdkAlertsQuery.Query has unexpected type %T", x) } return nil } -func (m *VolumeSpecPolicy) GetSnapshotScheduleOpt() isVolumeSpecPolicy_SnapshotScheduleOpt { - if m != nil { - return m.SnapshotScheduleOpt + +func _SdkAlertsQuery_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SdkAlertsQuery) + switch tag { + case 1: // query.resource_type_query + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAlertsResourceTypeQuery) + err := b.DecodeMessage(msg) + m.Query = &SdkAlertsQuery_ResourceTypeQuery{msg} + return true, err + case 2: // query.alert_type_query + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAlertsAlertTypeQuery) + err := b.DecodeMessage(msg) + m.Query = &SdkAlertsQuery_AlertTypeQuery{msg} + return true, err + case 3: // query.resource_id_query + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAlertsResourceIdQuery) + err := b.DecodeMessage(msg) + m.Query = &SdkAlertsQuery_ResourceIdQuery{msg} + return true, err + default: + return false, nil } - return nil } -func (m *VolumeSpecPolicy) GetScaleOpt() isVolumeSpecPolicy_ScaleOpt { - if m != nil { - return m.ScaleOpt + +func _SdkAlertsQuery_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SdkAlertsQuery) + // query + switch x := m.Query.(type) { + case *SdkAlertsQuery_ResourceTypeQuery: + s := proto.Size(x.ResourceTypeQuery) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkAlertsQuery_AlertTypeQuery: + s := proto.Size(x.AlertTypeQuery) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkAlertsQuery_ResourceIdQuery: + s := proto.Size(x.ResourceIdQuery) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) } - return nil + return n } -func (m *VolumeSpecPolicy) GetStickyOpt() isVolumeSpecPolicy_StickyOpt { - if m != nil { - return m.StickyOpt - } - return nil + +// SdkAlertsEnumerateRequest is a request message to enumerate alerts. +type SdkAlertsEnumerateWithFiltersRequest struct { + // It is a list of queries to find matching alerts. + // Output of each of these queries is added to a global pool + // and returned as output of an RPC call. + // In that sense alerts are fetched if they match any of the + // queries. + Queries []*SdkAlertsQuery `protobuf:"bytes,1,rep,name=queries" json:"queries,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeSpecPolicy) GetGroupOpt() isVolumeSpecPolicy_GroupOpt { - if m != nil { - return m.GroupOpt - } - return nil + +func (m *SdkAlertsEnumerateWithFiltersRequest) Reset() { *m = SdkAlertsEnumerateWithFiltersRequest{} } +func (m *SdkAlertsEnumerateWithFiltersRequest) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsEnumerateWithFiltersRequest) ProtoMessage() {} +func (*SdkAlertsEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{38} } -func (m *VolumeSpecPolicy) GetJournalOpt() isVolumeSpecPolicy_JournalOpt { - if m != nil { - return m.JournalOpt - } - return nil +func (m *SdkAlertsEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.Unmarshal(m, b) } -func (m *VolumeSpecPolicy) GetSharedv4Opt() isVolumeSpecPolicy_Sharedv4Opt { - if m != nil { - return m.Sharedv4Opt - } - return nil +func (m *SdkAlertsEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.Marshal(b, m, deterministic) } -func (m *VolumeSpecPolicy) GetQueueDepthOpt() isVolumeSpecPolicy_QueueDepthOpt { - if m != nil { - return m.QueueDepthOpt - } - return nil +func (dst *SdkAlertsEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.Merge(dst, src) } -func (m *VolumeSpecPolicy) GetEncryptedOpt() isVolumeSpecPolicy_EncryptedOpt { - if m != nil { - return m.EncryptedOpt - } - return nil +func (m *SdkAlertsEnumerateWithFiltersRequest) XXX_Size() int { + return xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.Size(m) } -func (m *VolumeSpecPolicy) GetAggregationLevelOpt() isVolumeSpecPolicy_AggregationLevelOpt { - if m != nil { - return m.AggregationLevelOpt - } - return nil +func (m *SdkAlertsEnumerateWithFiltersRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.DiscardUnknown(m) } -func (m *VolumeSpecPolicy) GetNodiscardOpt() isVolumeSpecPolicy_NodiscardOpt { + +var xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest proto.InternalMessageInfo + +func (m *SdkAlertsEnumerateWithFiltersRequest) GetQueries() []*SdkAlertsQuery { if m != nil { - return m.NodiscardOpt + return m.Queries } return nil } -func (m *VolumeSpecPolicy) GetSize() uint64 { - if x, ok := m.GetSizeOpt().(*VolumeSpecPolicy_Size); ok { - return x.Size - } - return 0 +// SdkAlertsEnumerateResponse is a list of alerts. +type SdkAlertsEnumerateWithFiltersResponse struct { + // Response contains a list of alerts. + Alerts []*Alert `protobuf:"bytes,1,rep,name=alerts" json:"alerts,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeSpecPolicy) GetHaLevel() int64 { - if x, ok := m.GetHaLevelOpt().(*VolumeSpecPolicy_HaLevel); ok { - return x.HaLevel - } - return 0 +func (m *SdkAlertsEnumerateWithFiltersResponse) Reset() { *m = SdkAlertsEnumerateWithFiltersResponse{} } +func (m *SdkAlertsEnumerateWithFiltersResponse) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsEnumerateWithFiltersResponse) ProtoMessage() {} +func (*SdkAlertsEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{39} } - -func (m *VolumeSpecPolicy) GetCos() CosType { - if x, ok := m.GetCosOpt().(*VolumeSpecPolicy_Cos); ok { - return x.Cos - } - return CosType_NONE +func (m *SdkAlertsEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.Unmarshal(m, b) } - -func (m *VolumeSpecPolicy) GetIoProfile() IoProfile { - if x, ok := m.GetIoProfileOpt().(*VolumeSpecPolicy_IoProfile); ok { - return x.IoProfile - } - return IoProfile_IO_PROFILE_SEQUENTIAL +func (m *SdkAlertsEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.Marshal(b, m, deterministic) } - -func (m *VolumeSpecPolicy) GetDedupe() bool { - if x, ok := m.GetDedupeOpt().(*VolumeSpecPolicy_Dedupe); ok { - return x.Dedupe - } - return false +func (dst *SdkAlertsEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.Merge(dst, src) } - -func (m *VolumeSpecPolicy) GetSnapshotInterval() uint32 { - if x, ok := m.GetSnapshotIntervalOpt().(*VolumeSpecPolicy_SnapshotInterval); ok { - return x.SnapshotInterval - } - return 0 +func (m *SdkAlertsEnumerateWithFiltersResponse) XXX_Size() int { + return xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.Size(m) +} +func (m *SdkAlertsEnumerateWithFiltersResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.DiscardUnknown(m) } -func (m *VolumeSpecPolicy) GetVolumeLabels() map[string]string { +var xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse proto.InternalMessageInfo + +func (m *SdkAlertsEnumerateWithFiltersResponse) GetAlerts() []*Alert { if m != nil { - return m.VolumeLabels + return m.Alerts } return nil } -func (m *VolumeSpecPolicy) GetShared() bool { - if x, ok := m.GetSharedOpt().(*VolumeSpecPolicy_Shared); ok { - return x.Shared - } - return false +// SdkAlertsDeleteRequest is a request message to delete alerts. +type SdkAlertsDeleteRequest struct { + // It takes a list of queries to find matching alerts. + // Matching alerts are deleted. + Queries []*SdkAlertsQuery `protobuf:"bytes,1,rep,name=queries" json:"queries,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeSpecPolicy) GetReplicaSet() *ReplicaSet { +func (m *SdkAlertsDeleteRequest) Reset() { *m = SdkAlertsDeleteRequest{} } +func (m *SdkAlertsDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsDeleteRequest) ProtoMessage() {} +func (*SdkAlertsDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{40} +} +func (m *SdkAlertsDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsDeleteRequest.Unmarshal(m, b) +} +func (m *SdkAlertsDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsDeleteRequest.Marshal(b, m, deterministic) +} +func (dst *SdkAlertsDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsDeleteRequest.Merge(dst, src) +} +func (m *SdkAlertsDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkAlertsDeleteRequest.Size(m) +} +func (m *SdkAlertsDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsDeleteRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkAlertsDeleteRequest proto.InternalMessageInfo + +func (m *SdkAlertsDeleteRequest) GetQueries() []*SdkAlertsQuery { if m != nil { - return m.ReplicaSet + return m.Queries } return nil } -func (m *VolumeSpecPolicy) GetPassphrase() string { - if x, ok := m.GetPassphraseOpt().(*VolumeSpecPolicy_Passphrase); ok { - return x.Passphrase - } - return "" +// SdkAlertsDeleteResponse is empty. +type SdkAlertsDeleteResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeSpecPolicy) GetSnapshotSchedule() string { - if x, ok := m.GetSnapshotScheduleOpt().(*VolumeSpecPolicy_SnapshotSchedule); ok { - return x.SnapshotSchedule - } - return "" +func (m *SdkAlertsDeleteResponse) Reset() { *m = SdkAlertsDeleteResponse{} } +func (m *SdkAlertsDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkAlertsDeleteResponse) ProtoMessage() {} +func (*SdkAlertsDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{41} +} +func (m *SdkAlertsDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAlertsDeleteResponse.Unmarshal(m, b) +} +func (m *SdkAlertsDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAlertsDeleteResponse.Marshal(b, m, deterministic) +} +func (dst *SdkAlertsDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAlertsDeleteResponse.Merge(dst, src) +} +func (m *SdkAlertsDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkAlertsDeleteResponse.Size(m) +} +func (m *SdkAlertsDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAlertsDeleteResponse.DiscardUnknown(m) } -func (m *VolumeSpecPolicy) GetScale() uint32 { - if x, ok := m.GetScaleOpt().(*VolumeSpecPolicy_Scale); ok { - return x.Scale - } - return 0 +var xxx_messageInfo_SdkAlertsDeleteResponse proto.InternalMessageInfo + +// Alerts is an array of Alert objects +type Alerts struct { + Alert []*Alert `protobuf:"bytes,1,rep,name=alert" json:"alert,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeSpecPolicy) GetSticky() bool { - if x, ok := m.GetStickyOpt().(*VolumeSpecPolicy_Sticky); ok { - return x.Sticky - } - return false +func (m *Alerts) Reset() { *m = Alerts{} } +func (m *Alerts) String() string { return proto.CompactTextString(m) } +func (*Alerts) ProtoMessage() {} +func (*Alerts) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{42} +} +func (m *Alerts) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Alerts.Unmarshal(m, b) +} +func (m *Alerts) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Alerts.Marshal(b, m, deterministic) +} +func (dst *Alerts) XXX_Merge(src proto.Message) { + xxx_messageInfo_Alerts.Merge(dst, src) +} +func (m *Alerts) XXX_Size() int { + return xxx_messageInfo_Alerts.Size(m) +} +func (m *Alerts) XXX_DiscardUnknown() { + xxx_messageInfo_Alerts.DiscardUnknown(m) } -func (m *VolumeSpecPolicy) GetGroup() *Group { - if x, ok := m.GetGroupOpt().(*VolumeSpecPolicy_Group); ok { - return x.Group +var xxx_messageInfo_Alerts proto.InternalMessageInfo + +func (m *Alerts) GetAlert() []*Alert { + if m != nil { + return m.Alert } return nil } -func (m *VolumeSpecPolicy) GetJournal() bool { - if x, ok := m.GetJournalOpt().(*VolumeSpecPolicy_Journal); ok { - return x.Journal - } - return false +// ObjectstoreInfo is a structure that has current objectstore info +type ObjectstoreInfo struct { + // UUID of objectstore + Uuid string `protobuf:"bytes,1,opt,name=uuid" json:"uuid,omitempty"` + // VolumeID of volume used by object store + VolumeId string `protobuf:"bytes,2,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Enable/Disable created objectstore + Enabled bool `protobuf:"varint,3,opt,name=enabled" json:"enabled,omitempty"` + // Status of objectstore running/failed + Status string `protobuf:"bytes,4,opt,name=status" json:"status,omitempty"` + // Action being taken on this objectstore + Action int64 `protobuf:"varint,5,opt,name=action" json:"action,omitempty"` + // AccessKey for login into objectstore + AccessKey string `protobuf:"bytes,6,opt,name=access_key,json=accessKey" json:"access_key,omitempty"` + // SecretKey for login into objectstore + SecretKey string `protobuf:"bytes,7,opt,name=secret_key,json=secretKey" json:"secret_key,omitempty"` + // Endpoints for accessing objectstore + Endpoints []string `protobuf:"bytes,8,rep,name=endpoints" json:"endpoints,omitempty"` + // CurrentEndpoint on which objectstore server is accessible + CurrentEndpoint string `protobuf:"bytes,9,opt,name=current_endpoint,json=currentEndpoint" json:"current_endpoint,omitempty"` + // AccessPort is objectstore server port + AccessPort int64 `protobuf:"varint,10,opt,name=access_port,json=accessPort" json:"access_port,omitempty"` + // Region for this objectstore + Region string `protobuf:"bytes,11,opt,name=region" json:"region,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ObjectstoreInfo) Reset() { *m = ObjectstoreInfo{} } +func (m *ObjectstoreInfo) String() string { return proto.CompactTextString(m) } +func (*ObjectstoreInfo) ProtoMessage() {} +func (*ObjectstoreInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{43} +} +func (m *ObjectstoreInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ObjectstoreInfo.Unmarshal(m, b) +} +func (m *ObjectstoreInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ObjectstoreInfo.Marshal(b, m, deterministic) +} +func (dst *ObjectstoreInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectstoreInfo.Merge(dst, src) } - -func (m *VolumeSpecPolicy) GetSharedv4() bool { - if x, ok := m.GetSharedv4Opt().(*VolumeSpecPolicy_Sharedv4); ok { - return x.Sharedv4 - } - return false +func (m *ObjectstoreInfo) XXX_Size() int { + return xxx_messageInfo_ObjectstoreInfo.Size(m) } - -func (m *VolumeSpecPolicy) GetQueueDepth() uint32 { - if x, ok := m.GetQueueDepthOpt().(*VolumeSpecPolicy_QueueDepth); ok { - return x.QueueDepth - } - return 0 +func (m *ObjectstoreInfo) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectstoreInfo.DiscardUnknown(m) } -func (m *VolumeSpecPolicy) GetEncrypted() bool { - if x, ok := m.GetEncryptedOpt().(*VolumeSpecPolicy_Encrypted); ok { - return x.Encrypted - } - return false -} +var xxx_messageInfo_ObjectstoreInfo proto.InternalMessageInfo -func (m *VolumeSpecPolicy) GetAggregationLevel() uint32 { - if x, ok := m.GetAggregationLevelOpt().(*VolumeSpecPolicy_AggregationLevel); ok { - return x.AggregationLevel +func (m *ObjectstoreInfo) GetUuid() string { + if m != nil { + return m.Uuid } - return 0 + return "" } -func (m *VolumeSpecPolicy) GetSizeOperator() VolumeSpecPolicy_PolicyOp { +func (m *ObjectstoreInfo) GetVolumeId() string { if m != nil { - return m.SizeOperator + return m.VolumeId } - return VolumeSpecPolicy_Equal + return "" } -func (m *VolumeSpecPolicy) GetHaLevelOperator() VolumeSpecPolicy_PolicyOp { +func (m *ObjectstoreInfo) GetEnabled() bool { if m != nil { - return m.HaLevelOperator + return m.Enabled } - return VolumeSpecPolicy_Equal + return false } -func (m *VolumeSpecPolicy) GetScaleOperator() VolumeSpecPolicy_PolicyOp { +func (m *ObjectstoreInfo) GetStatus() string { if m != nil { - return m.ScaleOperator + return m.Status } - return VolumeSpecPolicy_Equal + return "" } -func (m *VolumeSpecPolicy) GetSnapshotIntervalOperator() VolumeSpecPolicy_PolicyOp { +func (m *ObjectstoreInfo) GetAction() int64 { if m != nil { - return m.SnapshotIntervalOperator + return m.Action } - return VolumeSpecPolicy_Equal + return 0 } -func (m *VolumeSpecPolicy) GetNodiscard() bool { - if x, ok := m.GetNodiscardOpt().(*VolumeSpecPolicy_Nodiscard); ok { - return x.Nodiscard +func (m *ObjectstoreInfo) GetAccessKey() string { + if m != nil { + return m.AccessKey } - return false + return "" } -func (m *VolumeSpecPolicy) GetIoStrategy() *IoStrategy { +func (m *ObjectstoreInfo) GetSecretKey() string { if m != nil { - return m.IoStrategy + return m.SecretKey } - return nil + return "" } -// XXX_OneofFuncs is for the internal use of the proto package. -func (*VolumeSpecPolicy) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _VolumeSpecPolicy_OneofMarshaler, _VolumeSpecPolicy_OneofUnmarshaler, _VolumeSpecPolicy_OneofSizer, []interface{}{ - (*VolumeSpecPolicy_Size)(nil), - (*VolumeSpecPolicy_HaLevel)(nil), - (*VolumeSpecPolicy_Cos)(nil), - (*VolumeSpecPolicy_IoProfile)(nil), - (*VolumeSpecPolicy_Dedupe)(nil), - (*VolumeSpecPolicy_SnapshotInterval)(nil), - (*VolumeSpecPolicy_Shared)(nil), - (*VolumeSpecPolicy_Passphrase)(nil), - (*VolumeSpecPolicy_SnapshotSchedule)(nil), - (*VolumeSpecPolicy_Scale)(nil), - (*VolumeSpecPolicy_Sticky)(nil), - (*VolumeSpecPolicy_Group)(nil), - (*VolumeSpecPolicy_Journal)(nil), - (*VolumeSpecPolicy_Sharedv4)(nil), - (*VolumeSpecPolicy_QueueDepth)(nil), - (*VolumeSpecPolicy_Encrypted)(nil), - (*VolumeSpecPolicy_AggregationLevel)(nil), - (*VolumeSpecPolicy_Nodiscard)(nil), +func (m *ObjectstoreInfo) GetEndpoints() []string { + if m != nil { + return m.Endpoints } + return nil } -func _VolumeSpecPolicy_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*VolumeSpecPolicy) - // size_opt - switch x := m.SizeOpt.(type) { - case *VolumeSpecPolicy_Size: - b.EncodeVarint(1<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.Size)) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.SizeOpt has unexpected type %T", x) - } - // ha_level_opt - switch x := m.HaLevelOpt.(type) { - case *VolumeSpecPolicy_HaLevel: - b.EncodeVarint(2<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.HaLevel)) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.HaLevelOpt has unexpected type %T", x) - } - // cos_opt - switch x := m.CosOpt.(type) { - case *VolumeSpecPolicy_Cos: - b.EncodeVarint(3<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.Cos)) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.CosOpt has unexpected type %T", x) - } - // io_profile_opt - switch x := m.IoProfileOpt.(type) { - case *VolumeSpecPolicy_IoProfile: - b.EncodeVarint(4<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.IoProfile)) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.IoProfileOpt has unexpected type %T", x) - } - // dedupe_opt - switch x := m.DedupeOpt.(type) { - case *VolumeSpecPolicy_Dedupe: - t := uint64(0) - if x.Dedupe { - t = 1 - } - b.EncodeVarint(5<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.DedupeOpt has unexpected type %T", x) - } - // snapshot_interval_opt - switch x := m.SnapshotIntervalOpt.(type) { - case *VolumeSpecPolicy_SnapshotInterval: - b.EncodeVarint(6<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.SnapshotInterval)) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.SnapshotIntervalOpt has unexpected type %T", x) - } - // shared_opt - switch x := m.SharedOpt.(type) { - case *VolumeSpecPolicy_Shared: - t := uint64(0) - if x.Shared { - t = 1 - } - b.EncodeVarint(8<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.SharedOpt has unexpected type %T", x) - } - // passphrase_opt - switch x := m.PassphraseOpt.(type) { - case *VolumeSpecPolicy_Passphrase: - b.EncodeVarint(10<<3 | proto.WireBytes) - b.EncodeStringBytes(x.Passphrase) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.PassphraseOpt has unexpected type %T", x) - } - // snapshot_schedule_opt - switch x := m.SnapshotScheduleOpt.(type) { - case *VolumeSpecPolicy_SnapshotSchedule: - b.EncodeVarint(11<<3 | proto.WireBytes) - b.EncodeStringBytes(x.SnapshotSchedule) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.SnapshotScheduleOpt has unexpected type %T", x) - } - // scale_opt - switch x := m.ScaleOpt.(type) { - case *VolumeSpecPolicy_Scale: - b.EncodeVarint(12<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.Scale)) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.ScaleOpt has unexpected type %T", x) - } - // sticky_opt - switch x := m.StickyOpt.(type) { - case *VolumeSpecPolicy_Sticky: - t := uint64(0) - if x.Sticky { - t = 1 - } - b.EncodeVarint(13<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.StickyOpt has unexpected type %T", x) - } - // group_opt - switch x := m.GroupOpt.(type) { - case *VolumeSpecPolicy_Group: - b.EncodeVarint(14<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.Group); err != nil { - return err - } - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.GroupOpt has unexpected type %T", x) - } - // journal_opt - switch x := m.JournalOpt.(type) { - case *VolumeSpecPolicy_Journal: - t := uint64(0) - if x.Journal { - t = 1 - } - b.EncodeVarint(15<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.JournalOpt has unexpected type %T", x) - } - // sharedv4_opt - switch x := m.Sharedv4Opt.(type) { - case *VolumeSpecPolicy_Sharedv4: - t := uint64(0) - if x.Sharedv4 { - t = 1 - } - b.EncodeVarint(16<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.Sharedv4Opt has unexpected type %T", x) +func (m *ObjectstoreInfo) GetCurrentEndpoint() string { + if m != nil { + return m.CurrentEndpoint } - // queue_depth_opt - switch x := m.QueueDepthOpt.(type) { - case *VolumeSpecPolicy_QueueDepth: - b.EncodeVarint(17<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.QueueDepth)) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.QueueDepthOpt has unexpected type %T", x) + return "" +} + +func (m *ObjectstoreInfo) GetAccessPort() int64 { + if m != nil { + return m.AccessPort } - // encrypted_opt - switch x := m.EncryptedOpt.(type) { - case *VolumeSpecPolicy_Encrypted: - t := uint64(0) - if x.Encrypted { - t = 1 - } - b.EncodeVarint(18<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.EncryptedOpt has unexpected type %T", x) + return 0 +} + +func (m *ObjectstoreInfo) GetRegion() string { + if m != nil { + return m.Region } - // aggregation_level_opt - switch x := m.AggregationLevelOpt.(type) { - case *VolumeSpecPolicy_AggregationLevel: - b.EncodeVarint(19<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.AggregationLevel)) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.AggregationLevelOpt has unexpected type %T", x) + return "" +} + +// VolumeCreateRequest is a structure that has the locator, source and spec +// to create a volume +type VolumeCreateRequest struct { + // User specified volume name and labels + Locator *VolumeLocator `protobuf:"bytes,1,opt,name=locator" json:"locator,omitempty"` + // Source to create volume + Source *Source `protobuf:"bytes,2,opt,name=source" json:"source,omitempty"` + // The storage spec for the volume + Spec *VolumeSpec `protobuf:"bytes,3,opt,name=spec" json:"spec,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeCreateRequest) Reset() { *m = VolumeCreateRequest{} } +func (m *VolumeCreateRequest) String() string { return proto.CompactTextString(m) } +func (*VolumeCreateRequest) ProtoMessage() {} +func (*VolumeCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{44} +} +func (m *VolumeCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeCreateRequest.Unmarshal(m, b) +} +func (m *VolumeCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeCreateRequest.Marshal(b, m, deterministic) +} +func (dst *VolumeCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeCreateRequest.Merge(dst, src) +} +func (m *VolumeCreateRequest) XXX_Size() int { + return xxx_messageInfo_VolumeCreateRequest.Size(m) +} +func (m *VolumeCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeCreateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeCreateRequest proto.InternalMessageInfo + +func (m *VolumeCreateRequest) GetLocator() *VolumeLocator { + if m != nil { + return m.Locator } - // nodiscard_opt - switch x := m.NodiscardOpt.(type) { - case *VolumeSpecPolicy_Nodiscard: - t := uint64(0) - if x.Nodiscard { - t = 1 - } - b.EncodeVarint(54<<3 | proto.WireVarint) - b.EncodeVarint(t) - case nil: - default: - return fmt.Errorf("VolumeSpecPolicy.NodiscardOpt has unexpected type %T", x) + return nil +} + +func (m *VolumeCreateRequest) GetSource() *Source { + if m != nil { + return m.Source } return nil } -func _VolumeSpecPolicy_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*VolumeSpecPolicy) - switch tag { - case 1: // size_opt.size - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.SizeOpt = &VolumeSpecPolicy_Size{x} - return true, err - case 2: // ha_level_opt.ha_level - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.HaLevelOpt = &VolumeSpecPolicy_HaLevel{int64(x)} - return true, err - case 3: // cos_opt.cos - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.CosOpt = &VolumeSpecPolicy_Cos{CosType(x)} - return true, err - case 4: // io_profile_opt.io_profile - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.IoProfileOpt = &VolumeSpecPolicy_IoProfile{IoProfile(x)} - return true, err - case 5: // dedupe_opt.dedupe - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.DedupeOpt = &VolumeSpecPolicy_Dedupe{x != 0} - return true, err - case 6: // snapshot_interval_opt.snapshot_interval - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.SnapshotIntervalOpt = &VolumeSpecPolicy_SnapshotInterval{uint32(x)} - return true, err - case 8: // shared_opt.shared - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.SharedOpt = &VolumeSpecPolicy_Shared{x != 0} - return true, err - case 10: // passphrase_opt.passphrase - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeStringBytes() - m.PassphraseOpt = &VolumeSpecPolicy_Passphrase{x} - return true, err - case 11: // snapshot_schedule_opt.snapshot_schedule - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeStringBytes() - m.SnapshotScheduleOpt = &VolumeSpecPolicy_SnapshotSchedule{x} - return true, err - case 12: // scale_opt.scale - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.ScaleOpt = &VolumeSpecPolicy_Scale{uint32(x)} - return true, err - case 13: // sticky_opt.sticky - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.StickyOpt = &VolumeSpecPolicy_Sticky{x != 0} - return true, err - case 14: // group_opt.group - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(Group) - err := b.DecodeMessage(msg) - m.GroupOpt = &VolumeSpecPolicy_Group{msg} - return true, err - case 15: // journal_opt.journal - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.JournalOpt = &VolumeSpecPolicy_Journal{x != 0} - return true, err - case 16: // sharedv4_opt.sharedv4 - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.Sharedv4Opt = &VolumeSpecPolicy_Sharedv4{x != 0} - return true, err - case 17: // queue_depth_opt.queue_depth - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.QueueDepthOpt = &VolumeSpecPolicy_QueueDepth{uint32(x)} - return true, err - case 18: // encrypted_opt.encrypted - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.EncryptedOpt = &VolumeSpecPolicy_Encrypted{x != 0} - return true, err - case 19: // aggregation_level_opt.aggregation_level - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.AggregationLevelOpt = &VolumeSpecPolicy_AggregationLevel{uint32(x)} - return true, err - case 54: // nodiscard_opt.nodiscard - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.NodiscardOpt = &VolumeSpecPolicy_Nodiscard{x != 0} - return true, err - default: - return false, nil +func (m *VolumeCreateRequest) GetSpec() *VolumeSpec { + if m != nil { + return m.Spec + } + return nil +} + +// VolumeResponse is a structure that wraps an error. +type VolumeResponse struct { + // Error message + // + // in: body + // Required: true + Error string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeResponse) Reset() { *m = VolumeResponse{} } +func (m *VolumeResponse) String() string { return proto.CompactTextString(m) } +func (*VolumeResponse) ProtoMessage() {} +func (*VolumeResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{45} +} +func (m *VolumeResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeResponse.Unmarshal(m, b) +} +func (m *VolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeResponse.Marshal(b, m, deterministic) +} +func (dst *VolumeResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeResponse.Merge(dst, src) +} +func (m *VolumeResponse) XXX_Size() int { + return xxx_messageInfo_VolumeResponse.Size(m) +} +func (m *VolumeResponse) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeResponse proto.InternalMessageInfo + +func (m *VolumeResponse) GetError() string { + if m != nil { + return m.Error } + return "" } -func _VolumeSpecPolicy_OneofSizer(msg proto.Message) (n int) { - m := msg.(*VolumeSpecPolicy) - // size_opt - switch x := m.SizeOpt.(type) { - case *VolumeSpecPolicy_Size: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.Size)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) +// VolumeCreateResponse +type VolumeCreateResponse struct { + // ID of the newly created volume + // + // in: body + // Required: true + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Volume Response + // + // in: body + // Required: true + VolumeResponse *VolumeResponse `protobuf:"bytes,2,opt,name=volume_response,json=volumeResponse" json:"volume_response,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeCreateResponse) Reset() { *m = VolumeCreateResponse{} } +func (m *VolumeCreateResponse) String() string { return proto.CompactTextString(m) } +func (*VolumeCreateResponse) ProtoMessage() {} +func (*VolumeCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{46} +} +func (m *VolumeCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeCreateResponse.Unmarshal(m, b) +} +func (m *VolumeCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeCreateResponse.Marshal(b, m, deterministic) +} +func (dst *VolumeCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeCreateResponse.Merge(dst, src) +} +func (m *VolumeCreateResponse) XXX_Size() int { + return xxx_messageInfo_VolumeCreateResponse.Size(m) +} +func (m *VolumeCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeCreateResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeCreateResponse proto.InternalMessageInfo + +func (m *VolumeCreateResponse) GetId() string { + if m != nil { + return m.Id } - // ha_level_opt - switch x := m.HaLevelOpt.(type) { - case *VolumeSpecPolicy_HaLevel: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.HaLevel)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return "" +} + +func (m *VolumeCreateResponse) GetVolumeResponse() *VolumeResponse { + if m != nil { + return m.VolumeResponse } - // cos_opt - switch x := m.CosOpt.(type) { - case *VolumeSpecPolicy_Cos: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.Cos)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +// VolumeStateAction specifies desired actions. +type VolumeStateAction struct { + // Attach or Detach volume + Attach VolumeActionParam `protobuf:"varint,1,opt,name=attach,enum=openstorage.api.VolumeActionParam" json:"attach,omitempty"` + // Mount or unmount volume + Mount VolumeActionParam `protobuf:"varint,2,opt,name=mount,enum=openstorage.api.VolumeActionParam" json:"mount,omitempty"` + // MountPath Path where the device is mounted + MountPath string `protobuf:"bytes,3,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` + // DevicePath Path returned in attach + DevicePath string `protobuf:"bytes,4,opt,name=device_path,json=devicePath" json:"device_path,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeStateAction) Reset() { *m = VolumeStateAction{} } +func (m *VolumeStateAction) String() string { return proto.CompactTextString(m) } +func (*VolumeStateAction) ProtoMessage() {} +func (*VolumeStateAction) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{47} +} +func (m *VolumeStateAction) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeStateAction.Unmarshal(m, b) +} +func (m *VolumeStateAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeStateAction.Marshal(b, m, deterministic) +} +func (dst *VolumeStateAction) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeStateAction.Merge(dst, src) +} +func (m *VolumeStateAction) XXX_Size() int { + return xxx_messageInfo_VolumeStateAction.Size(m) +} +func (m *VolumeStateAction) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeStateAction.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeStateAction proto.InternalMessageInfo + +func (m *VolumeStateAction) GetAttach() VolumeActionParam { + if m != nil { + return m.Attach } - // io_profile_opt - switch x := m.IoProfileOpt.(type) { - case *VolumeSpecPolicy_IoProfile: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.IoProfile)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return VolumeActionParam_VOLUME_ACTION_PARAM_NONE +} + +func (m *VolumeStateAction) GetMount() VolumeActionParam { + if m != nil { + return m.Mount } - // dedupe_opt - switch x := m.DedupeOpt.(type) { - case *VolumeSpecPolicy_Dedupe: - n += 1 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return VolumeActionParam_VOLUME_ACTION_PARAM_NONE +} + +func (m *VolumeStateAction) GetMountPath() string { + if m != nil { + return m.MountPath } - // snapshot_interval_opt - switch x := m.SnapshotIntervalOpt.(type) { - case *VolumeSpecPolicy_SnapshotInterval: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.SnapshotInterval)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return "" +} + +func (m *VolumeStateAction) GetDevicePath() string { + if m != nil { + return m.DevicePath } - // shared_opt - switch x := m.SharedOpt.(type) { - case *VolumeSpecPolicy_Shared: - n += 1 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return "" +} + +// VolumeSet specifies a request to update a volume. +type VolumeSetRequest struct { + // User specified volume name and labels + Locator *VolumeLocator `protobuf:"bytes,1,opt,name=locator" json:"locator,omitempty"` + // The storage spec for the volume + Spec *VolumeSpec `protobuf:"bytes,2,opt,name=spec" json:"spec,omitempty"` + // State modification on this volume. + Action *VolumeStateAction `protobuf:"bytes,3,opt,name=action" json:"action,omitempty"` + // additional options + // required for the Set operation. + Options map[string]string `protobuf:"bytes,4,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeSetRequest) Reset() { *m = VolumeSetRequest{} } +func (m *VolumeSetRequest) String() string { return proto.CompactTextString(m) } +func (*VolumeSetRequest) ProtoMessage() {} +func (*VolumeSetRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{48} +} +func (m *VolumeSetRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeSetRequest.Unmarshal(m, b) +} +func (m *VolumeSetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeSetRequest.Marshal(b, m, deterministic) +} +func (dst *VolumeSetRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeSetRequest.Merge(dst, src) +} +func (m *VolumeSetRequest) XXX_Size() int { + return xxx_messageInfo_VolumeSetRequest.Size(m) +} +func (m *VolumeSetRequest) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeSetRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeSetRequest proto.InternalMessageInfo + +func (m *VolumeSetRequest) GetLocator() *VolumeLocator { + if m != nil { + return m.Locator } - // passphrase_opt - switch x := m.PassphraseOpt.(type) { - case *VolumeSpecPolicy_Passphrase: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(len(x.Passphrase))) - n += len(x.Passphrase) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +func (m *VolumeSetRequest) GetSpec() *VolumeSpec { + if m != nil { + return m.Spec } - // snapshot_schedule_opt - switch x := m.SnapshotScheduleOpt.(type) { - case *VolumeSpecPolicy_SnapshotSchedule: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(len(x.SnapshotSchedule))) - n += len(x.SnapshotSchedule) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +func (m *VolumeSetRequest) GetAction() *VolumeStateAction { + if m != nil { + return m.Action } - // scale_opt - switch x := m.ScaleOpt.(type) { - case *VolumeSpecPolicy_Scale: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.Scale)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +func (m *VolumeSetRequest) GetOptions() map[string]string { + if m != nil { + return m.Options } - // sticky_opt - switch x := m.StickyOpt.(type) { - case *VolumeSpecPolicy_Sticky: - n += 1 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +// VolumeSetResponse +type VolumeSetResponse struct { + // Volume + Volume *Volume `protobuf:"bytes,1,opt,name=volume" json:"volume,omitempty"` + // VolumeResponse + VolumeResponse *VolumeResponse `protobuf:"bytes,2,opt,name=volume_response,json=volumeResponse" json:"volume_response,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeSetResponse) Reset() { *m = VolumeSetResponse{} } +func (m *VolumeSetResponse) String() string { return proto.CompactTextString(m) } +func (*VolumeSetResponse) ProtoMessage() {} +func (*VolumeSetResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{49} +} +func (m *VolumeSetResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeSetResponse.Unmarshal(m, b) +} +func (m *VolumeSetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeSetResponse.Marshal(b, m, deterministic) +} +func (dst *VolumeSetResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeSetResponse.Merge(dst, src) +} +func (m *VolumeSetResponse) XXX_Size() int { + return xxx_messageInfo_VolumeSetResponse.Size(m) +} +func (m *VolumeSetResponse) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeSetResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeSetResponse proto.InternalMessageInfo + +func (m *VolumeSetResponse) GetVolume() *Volume { + if m != nil { + return m.Volume } - // group_opt - switch x := m.GroupOpt.(type) { - case *VolumeSpecPolicy_Group: - s := proto.Size(x.Group) - n += 1 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +func (m *VolumeSetResponse) GetVolumeResponse() *VolumeResponse { + if m != nil { + return m.VolumeResponse } - // journal_opt - switch x := m.JournalOpt.(type) { - case *VolumeSpecPolicy_Journal: - n += 1 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +// SnapCreateRequest specifies a request to create a snapshot of given volume. +type SnapCreateRequest struct { + // volume id + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + Locator *VolumeLocator `protobuf:"bytes,2,opt,name=locator" json:"locator,omitempty"` + Readonly bool `protobuf:"varint,3,opt,name=readonly" json:"readonly,omitempty"` + // NoRetry indicates not to retry snapshot creation in the background. + NoRetry bool `protobuf:"varint,4,opt,name=no_retry,json=noRetry" json:"no_retry,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SnapCreateRequest) Reset() { *m = SnapCreateRequest{} } +func (m *SnapCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SnapCreateRequest) ProtoMessage() {} +func (*SnapCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{50} +} +func (m *SnapCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SnapCreateRequest.Unmarshal(m, b) +} +func (m *SnapCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SnapCreateRequest.Marshal(b, m, deterministic) +} +func (dst *SnapCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SnapCreateRequest.Merge(dst, src) +} +func (m *SnapCreateRequest) XXX_Size() int { + return xxx_messageInfo_SnapCreateRequest.Size(m) +} +func (m *SnapCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SnapCreateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SnapCreateRequest proto.InternalMessageInfo + +func (m *SnapCreateRequest) GetId() string { + if m != nil { + return m.Id } - // sharedv4_opt - switch x := m.Sharedv4Opt.(type) { - case *VolumeSpecPolicy_Sharedv4: - n += 2 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return "" +} + +func (m *SnapCreateRequest) GetLocator() *VolumeLocator { + if m != nil { + return m.Locator } - // queue_depth_opt - switch x := m.QueueDepthOpt.(type) { - case *VolumeSpecPolicy_QueueDepth: - n += 2 // tag and wire - n += proto.SizeVarint(uint64(x.QueueDepth)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return nil +} + +func (m *SnapCreateRequest) GetReadonly() bool { + if m != nil { + return m.Readonly } - // encrypted_opt - switch x := m.EncryptedOpt.(type) { - case *VolumeSpecPolicy_Encrypted: - n += 2 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return false +} + +func (m *SnapCreateRequest) GetNoRetry() bool { + if m != nil { + return m.NoRetry } - // aggregation_level_opt - switch x := m.AggregationLevelOpt.(type) { - case *VolumeSpecPolicy_AggregationLevel: - n += 2 // tag and wire - n += proto.SizeVarint(uint64(x.AggregationLevel)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return false +} + +// SnapCreateRequest specifies a response that get's returned when creating a snapshot. +type SnapCreateResponse struct { + // VolumeCreateResponse + // + // in: body + // Required: true + VolumeCreateResponse *VolumeCreateResponse `protobuf:"bytes,1,opt,name=volume_create_response,json=volumeCreateResponse" json:"volume_create_response,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SnapCreateResponse) Reset() { *m = SnapCreateResponse{} } +func (m *SnapCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SnapCreateResponse) ProtoMessage() {} +func (*SnapCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{51} +} +func (m *SnapCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SnapCreateResponse.Unmarshal(m, b) +} +func (m *SnapCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SnapCreateResponse.Marshal(b, m, deterministic) +} +func (dst *SnapCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SnapCreateResponse.Merge(dst, src) +} +func (m *SnapCreateResponse) XXX_Size() int { + return xxx_messageInfo_SnapCreateResponse.Size(m) +} +func (m *SnapCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SnapCreateResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SnapCreateResponse proto.InternalMessageInfo + +func (m *SnapCreateResponse) GetVolumeCreateResponse() *VolumeCreateResponse { + if m != nil { + return m.VolumeCreateResponse + } + return nil +} + +// VolumeInfo +type VolumeInfo struct { + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + Path string `protobuf:"bytes,2,opt,name=path" json:"path,omitempty"` + Storage *VolumeSpec `protobuf:"bytes,3,opt,name=storage" json:"storage,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VolumeInfo) Reset() { *m = VolumeInfo{} } +func (m *VolumeInfo) String() string { return proto.CompactTextString(m) } +func (*VolumeInfo) ProtoMessage() {} +func (*VolumeInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{52} +} +func (m *VolumeInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeInfo.Unmarshal(m, b) +} +func (m *VolumeInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeInfo.Marshal(b, m, deterministic) +} +func (dst *VolumeInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeInfo.Merge(dst, src) +} +func (m *VolumeInfo) XXX_Size() int { + return xxx_messageInfo_VolumeInfo.Size(m) +} +func (m *VolumeInfo) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeInfo proto.InternalMessageInfo + +func (m *VolumeInfo) GetVolumeId() string { + if m != nil { + return m.VolumeId } - // nodiscard_opt - switch x := m.NodiscardOpt.(type) { - case *VolumeSpecPolicy_Nodiscard: - n += 2 // tag and wire - n += 1 - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + return "" +} + +func (m *VolumeInfo) GetPath() string { + if m != nil { + return m.Path } - return n + return "" } -// ReplicaSet set of machine IDs (nodes) to which part of this volume is erasure -// coded - for clustered storage arrays -type ReplicaSet struct { - Nodes []string `protobuf:"bytes,1,rep,name=nodes" json:"nodes,omitempty"` - // Unique IDs of the storage pools for this replica set - PoolUuids []string `protobuf:"bytes,2,rep,name=pool_uuids,json=poolUuids" json:"pool_uuids,omitempty"` +func (m *VolumeInfo) GetStorage() *VolumeSpec { + if m != nil { + return m.Storage + } + return nil +} + +// VolumeConsumer identifies a consumer for a Volume. An example of a VolumeConsumer +// would be a Pod in Kubernetes who has mounted the PersistentVolumeClaim for the +// Volume +type VolumeConsumer struct { + // Name is the name of the volume consumer + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + // Namespace is the namespace of the volume consumer + Namespace string `protobuf:"bytes,2,opt,name=namespace" json:"namespace,omitempty"` + // Type is the type of the consumer. E.g a Kubernetes pod + Type string `protobuf:"bytes,3,opt,name=type" json:"type,omitempty"` + // NodeID is the identifier of the node on which the consumer is running. This + // identifier would be from the perspective of the container runtime or + // orchestrator under which the volume consumer resides. For example, NodeID + // can be name of a minion in Kubernetes. + NodeId string `protobuf:"bytes,4,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` + // OwnerName is the name of the entity who owns this volume consumer + OwnerName string `protobuf:"bytes,5,opt,name=owner_name,json=ownerName" json:"owner_name,omitempty"` + // OwnerType is the type of the entity who owns this volume consumer. The type would + // be from the perspective of the container runtime or the orchestrator under which + // the volume consumer resides. For e.g OwnerType can be a Deployment in Kubernetes. + OwnerType string `protobuf:"bytes,6,opt,name=owner_type,json=ownerType" json:"owner_type,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *ReplicaSet) Reset() { *m = ReplicaSet{} } -func (m *ReplicaSet) String() string { return proto.CompactTextString(m) } -func (*ReplicaSet) ProtoMessage() {} -func (*ReplicaSet) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{11} +func (m *VolumeConsumer) Reset() { *m = VolumeConsumer{} } +func (m *VolumeConsumer) String() string { return proto.CompactTextString(m) } +func (*VolumeConsumer) ProtoMessage() {} +func (*VolumeConsumer) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{53} } -func (m *ReplicaSet) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaSet.Unmarshal(m, b) +func (m *VolumeConsumer) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeConsumer.Unmarshal(m, b) } -func (m *ReplicaSet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaSet.Marshal(b, m, deterministic) +func (m *VolumeConsumer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeConsumer.Marshal(b, m, deterministic) } -func (dst *ReplicaSet) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaSet.Merge(dst, src) +func (dst *VolumeConsumer) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeConsumer.Merge(dst, src) } -func (m *ReplicaSet) XXX_Size() int { - return xxx_messageInfo_ReplicaSet.Size(m) +func (m *VolumeConsumer) XXX_Size() int { + return xxx_messageInfo_VolumeConsumer.Size(m) } -func (m *ReplicaSet) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaSet.DiscardUnknown(m) +func (m *VolumeConsumer) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeConsumer.DiscardUnknown(m) } -var xxx_messageInfo_ReplicaSet proto.InternalMessageInfo +var xxx_messageInfo_VolumeConsumer proto.InternalMessageInfo -func (m *ReplicaSet) GetNodes() []string { +func (m *VolumeConsumer) GetName() string { if m != nil { - return m.Nodes + return m.Name } - return nil + return "" } -func (m *ReplicaSet) GetPoolUuids() []string { +func (m *VolumeConsumer) GetNamespace() string { if m != nil { - return m.PoolUuids + return m.Namespace } - return nil + return "" } -// RuntimeStateMap is a list of name value mapping of driver specific runtime -// information. -type RuntimeStateMap struct { - RuntimeState map[string]string `protobuf:"bytes,1,rep,name=runtime_state,json=runtimeState" json:"runtime_state,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` +func (m *VolumeConsumer) GetType() string { + if m != nil { + return m.Type + } + return "" +} + +func (m *VolumeConsumer) GetNodeId() string { + if m != nil { + return m.NodeId + } + return "" +} + +func (m *VolumeConsumer) GetOwnerName() string { + if m != nil { + return m.OwnerName + } + return "" +} + +func (m *VolumeConsumer) GetOwnerType() string { + if m != nil { + return m.OwnerType + } + return "" +} + +// VolumeServiceRequest provides details on what volume service command to +// perform in background on the volume +type VolumeServiceRequest struct { + // User specified volume service command + SrvCmd string `protobuf:"bytes,1,opt,name=srv_cmd,json=srvCmd" json:"srv_cmd,omitempty"` + // User specified volume service command's params + SrvCmdParams map[string]string `protobuf:"bytes,2,rep,name=srv_cmd_params,json=srvCmdParams" json:"srv_cmd_params,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *RuntimeStateMap) Reset() { *m = RuntimeStateMap{} } -func (m *RuntimeStateMap) String() string { return proto.CompactTextString(m) } -func (*RuntimeStateMap) ProtoMessage() {} -func (*RuntimeStateMap) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{12} +func (m *VolumeServiceRequest) Reset() { *m = VolumeServiceRequest{} } +func (m *VolumeServiceRequest) String() string { return proto.CompactTextString(m) } +func (*VolumeServiceRequest) ProtoMessage() {} +func (*VolumeServiceRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{54} } -func (m *RuntimeStateMap) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_RuntimeStateMap.Unmarshal(m, b) +func (m *VolumeServiceRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeServiceRequest.Unmarshal(m, b) } -func (m *RuntimeStateMap) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_RuntimeStateMap.Marshal(b, m, deterministic) +func (m *VolumeServiceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeServiceRequest.Marshal(b, m, deterministic) } -func (dst *RuntimeStateMap) XXX_Merge(src proto.Message) { - xxx_messageInfo_RuntimeStateMap.Merge(dst, src) +func (dst *VolumeServiceRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeServiceRequest.Merge(dst, src) } -func (m *RuntimeStateMap) XXX_Size() int { - return xxx_messageInfo_RuntimeStateMap.Size(m) +func (m *VolumeServiceRequest) XXX_Size() int { + return xxx_messageInfo_VolumeServiceRequest.Size(m) } -func (m *RuntimeStateMap) XXX_DiscardUnknown() { - xxx_messageInfo_RuntimeStateMap.DiscardUnknown(m) +func (m *VolumeServiceRequest) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeServiceRequest.DiscardUnknown(m) } -var xxx_messageInfo_RuntimeStateMap proto.InternalMessageInfo +var xxx_messageInfo_VolumeServiceRequest proto.InternalMessageInfo -func (m *RuntimeStateMap) GetRuntimeState() map[string]string { +func (m *VolumeServiceRequest) GetSrvCmd() string { if m != nil { - return m.RuntimeState + return m.SrvCmd + } + return "" +} + +func (m *VolumeServiceRequest) GetSrvCmdParams() map[string]string { + if m != nil { + return m.SrvCmdParams } return nil } -// Ownership information for resource. -// Administrators are users who belong to the group `*`, meaning, every group. -type Ownership struct { - // Username of owner. - // - // The storage system uses the username taken from the security authorization - // token and is saved on this field. Only users with system administration - // can edit this value. - Owner string `protobuf:"bytes,1,opt,name=owner" json:"owner,omitempty"` - // Permissions to share resource which can be set by the owner. - // - // NOTE: To create an "admin" user which has access to any resource set the group value - // in the token of the user to `*`. - Acls *Ownership_AccessControl `protobuf:"bytes,2,opt,name=acls" json:"acls,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type VolumeServiceInstanceResponse struct { + // Error code + Error string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"` + // Status information exposed a map + Status map[string]string `protobuf:"bytes,2,rep,name=status" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Ownership) Reset() { *m = Ownership{} } -func (m *Ownership) String() string { return proto.CompactTextString(m) } -func (*Ownership) ProtoMessage() {} -func (*Ownership) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{13} +func (m *VolumeServiceInstanceResponse) Reset() { *m = VolumeServiceInstanceResponse{} } +func (m *VolumeServiceInstanceResponse) String() string { return proto.CompactTextString(m) } +func (*VolumeServiceInstanceResponse) ProtoMessage() {} +func (*VolumeServiceInstanceResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{55} } -func (m *Ownership) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Ownership.Unmarshal(m, b) +func (m *VolumeServiceInstanceResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeServiceInstanceResponse.Unmarshal(m, b) } -func (m *Ownership) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Ownership.Marshal(b, m, deterministic) +func (m *VolumeServiceInstanceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeServiceInstanceResponse.Marshal(b, m, deterministic) } -func (dst *Ownership) XXX_Merge(src proto.Message) { - xxx_messageInfo_Ownership.Merge(dst, src) +func (dst *VolumeServiceInstanceResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeServiceInstanceResponse.Merge(dst, src) } -func (m *Ownership) XXX_Size() int { - return xxx_messageInfo_Ownership.Size(m) +func (m *VolumeServiceInstanceResponse) XXX_Size() int { + return xxx_messageInfo_VolumeServiceInstanceResponse.Size(m) } -func (m *Ownership) XXX_DiscardUnknown() { - xxx_messageInfo_Ownership.DiscardUnknown(m) +func (m *VolumeServiceInstanceResponse) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeServiceInstanceResponse.DiscardUnknown(m) } -var xxx_messageInfo_Ownership proto.InternalMessageInfo +var xxx_messageInfo_VolumeServiceInstanceResponse proto.InternalMessageInfo -func (m *Ownership) GetOwner() string { +func (m *VolumeServiceInstanceResponse) GetError() string { if m != nil { - return m.Owner + return m.Error } return "" } -func (m *Ownership) GetAcls() *Ownership_AccessControl { +func (m *VolumeServiceInstanceResponse) GetStatus() map[string]string { if m != nil { - return m.Acls + return m.Status } return nil } -type Ownership_AccessControl struct { - // Group access to resource which must match the group set in the - // authorization token. - // Can be set by the owner or the system administrator only. - // Possible values are: - // 1. no groups: Means no groups are given access. - // 2. `["*"]`: All groups are allowed. - // 3. `["group1", "group2"]`: Only certain groups are allowed. In this example only - // _group1_ and _group2_ are allowed. - Groups map[string]Ownership_AccessType `protobuf:"bytes,1,rep,name=groups" json:"groups,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value,enum=openstorage.api.Ownership_AccessType"` - // Collaborator access to resource gives access to other user. - // Must be the username (unique id) set in the authorization token. - // The owner or the administrator can set this value. Possible values are: - // 1. no collaborators: Means no users are given access. - // 2. `["*"]`: All users are allowed. - // 3. `["username1", "username2"]`: Only certain usernames are allowed. In this example only - // _username1_ and _username2_ are allowed. - Collaborators map[string]Ownership_AccessType `protobuf:"bytes,2,rep,name=collaborators" json:"collaborators,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value,enum=openstorage.api.Ownership_AccessType"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// VolumeServiceResponse specifies the response to a Volume Service command +// performed on a volumen +type VolumeServiceResponse struct { + // Number of VolumeServiceInstanceResponse returned as part of this response + // structure + VolSrvRspObjCnt int32 `protobuf:"varint,1,opt,name=vol_srv_rsp_obj_cnt,json=volSrvRspObjCnt" json:"vol_srv_rsp_obj_cnt,omitempty"` + VolSrvRsp []*VolumeServiceInstanceResponse `protobuf:"bytes,2,rep,name=vol_srv_rsp,json=volSrvRsp" json:"vol_srv_rsp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Ownership_AccessControl) Reset() { *m = Ownership_AccessControl{} } -func (m *Ownership_AccessControl) String() string { return proto.CompactTextString(m) } -func (*Ownership_AccessControl) ProtoMessage() {} -func (*Ownership_AccessControl) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{13, 0} +func (m *VolumeServiceResponse) Reset() { *m = VolumeServiceResponse{} } +func (m *VolumeServiceResponse) String() string { return proto.CompactTextString(m) } +func (*VolumeServiceResponse) ProtoMessage() {} +func (*VolumeServiceResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{56} } -func (m *Ownership_AccessControl) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Ownership_AccessControl.Unmarshal(m, b) +func (m *VolumeServiceResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumeServiceResponse.Unmarshal(m, b) +} +func (m *VolumeServiceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumeServiceResponse.Marshal(b, m, deterministic) +} +func (dst *VolumeServiceResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumeServiceResponse.Merge(dst, src) +} +func (m *VolumeServiceResponse) XXX_Size() int { + return xxx_messageInfo_VolumeServiceResponse.Size(m) +} +func (m *VolumeServiceResponse) XXX_DiscardUnknown() { + xxx_messageInfo_VolumeServiceResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_VolumeServiceResponse proto.InternalMessageInfo + +func (m *VolumeServiceResponse) GetVolSrvRspObjCnt() int32 { + if m != nil { + return m.VolSrvRspObjCnt + } + return 0 +} + +func (m *VolumeServiceResponse) GetVolSrvRsp() []*VolumeServiceInstanceResponse { + if m != nil { + return m.VolSrvRsp + } + return nil +} + +// GraphDriverChanges represent a list of changes between the filesystem layers +// specified by the ID and Parent. // Parent may be an empty string, in which +// case there is no parent. +// Where the Path is the filesystem path within the layered filesystem +type GraphDriverChanges struct { + Path string `protobuf:"bytes,1,opt,name=path" json:"path,omitempty"` + Kind GraphDriverChangeType `protobuf:"varint,2,opt,name=kind,enum=openstorage.api.GraphDriverChangeType" json:"kind,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GraphDriverChanges) Reset() { *m = GraphDriverChanges{} } +func (m *GraphDriverChanges) String() string { return proto.CompactTextString(m) } +func (*GraphDriverChanges) ProtoMessage() {} +func (*GraphDriverChanges) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{57} } -func (m *Ownership_AccessControl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Ownership_AccessControl.Marshal(b, m, deterministic) +func (m *GraphDriverChanges) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GraphDriverChanges.Unmarshal(m, b) } -func (dst *Ownership_AccessControl) XXX_Merge(src proto.Message) { - xxx_messageInfo_Ownership_AccessControl.Merge(dst, src) +func (m *GraphDriverChanges) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GraphDriverChanges.Marshal(b, m, deterministic) } -func (m *Ownership_AccessControl) XXX_Size() int { - return xxx_messageInfo_Ownership_AccessControl.Size(m) +func (dst *GraphDriverChanges) XXX_Merge(src proto.Message) { + xxx_messageInfo_GraphDriverChanges.Merge(dst, src) } -func (m *Ownership_AccessControl) XXX_DiscardUnknown() { - xxx_messageInfo_Ownership_AccessControl.DiscardUnknown(m) +func (m *GraphDriverChanges) XXX_Size() int { + return xxx_messageInfo_GraphDriverChanges.Size(m) +} +func (m *GraphDriverChanges) XXX_DiscardUnknown() { + xxx_messageInfo_GraphDriverChanges.DiscardUnknown(m) } -var xxx_messageInfo_Ownership_AccessControl proto.InternalMessageInfo +var xxx_messageInfo_GraphDriverChanges proto.InternalMessageInfo -func (m *Ownership_AccessControl) GetGroups() map[string]Ownership_AccessType { +func (m *GraphDriverChanges) GetPath() string { if m != nil { - return m.Groups + return m.Path } - return nil + return "" } -func (m *Ownership_AccessControl) GetCollaborators() map[string]Ownership_AccessType { +func (m *GraphDriverChanges) GetKind() GraphDriverChangeType { if m != nil { - return m.Collaborators + return m.Kind } - return nil + return GraphDriverChangeType_GRAPH_DRIVER_CHANGE_TYPE_NONE } -// Volume represents an abstract storage volume. -type Volume struct { - // Self referential volume ID. - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - // Source specified seed data for the volume. - Source *Source `protobuf:"bytes,2,opt,name=source" json:"source,omitempty"` - // Group volumes in the same group have the same group id. - Group *Group `protobuf:"bytes,3,opt,name=group" json:"group,omitempty"` - // Readonly is true if this volume is to be mounted with readonly access. - Readonly bool `protobuf:"varint,4,opt,name=readonly" json:"readonly,omitempty"` - // User specified locator - Locator *VolumeLocator `protobuf:"bytes,5,opt,name=locator" json:"locator,omitempty"` - // Volume creation time - Ctime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=ctime" json:"ctime,omitempty"` - // User specified VolumeSpec - Spec *VolumeSpec `protobuf:"bytes,7,opt,name=spec" json:"spec,omitempty"` - // Usage is bytes consumed by this volume. - Usage uint64 `protobuf:"varint,8,opt,name=usage" json:"usage,omitempty"` - // LastScan is the time when an integrity check was run. - LastScan *timestamp.Timestamp `protobuf:"bytes,9,opt,name=last_scan,json=lastScan" json:"last_scan,omitempty"` - // Format specifies the filesytem for this volume. - Format FSType `protobuf:"varint,10,opt,name=format,enum=openstorage.api.FSType" json:"format,omitempty"` - // VolumeStatus is the availability status of this volume. - Status VolumeStatus `protobuf:"varint,11,opt,name=status,enum=openstorage.api.VolumeStatus" json:"status,omitempty"` - // VolumeState is the current runtime state of this volume. - State VolumeState `protobuf:"varint,12,opt,name=state,enum=openstorage.api.VolumeState" json:"state,omitempty"` - // AttachedOn is the node instance identifier for clustered systems. - AttachedOn string `protobuf:"bytes,13,opt,name=attached_on,json=attachedOn" json:"attached_on,omitempty"` - // AttachState shows whether the device is attached for internal or external use. - AttachedState AttachState `protobuf:"varint,14,opt,name=attached_state,json=attachedState,enum=openstorage.api.AttachState" json:"attached_state,omitempty"` - // DevicePath is the device exported by block device implementations. - DevicePath string `protobuf:"bytes,15,opt,name=device_path,json=devicePath" json:"device_path,omitempty"` - // SecureDevicePath is the device path for an encrypted volume. - SecureDevicePath string `protobuf:"bytes,16,opt,name=secure_device_path,json=secureDevicePath" json:"secure_device_path,omitempty"` - // AttachPath is the mounted path in the host namespace. - AttachPath []string `protobuf:"bytes,17,rep,name=attach_path,json=attachPath" json:"attach_path,omitempty"` - // AttachInfo is a list of name value mappings that provides attach information. - AttachInfo map[string]string `protobuf:"bytes,18,rep,name=attach_info,json=attachInfo" json:"attach_info,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // ReplicatSets storage for this volumefor clustered storage arrays. - ReplicaSets []*ReplicaSet `protobuf:"bytes,19,rep,name=replica_sets,json=replicaSets" json:"replica_sets,omitempty"` - // RuntimeState is a lst of name value mapping of driver specific runtime - // information. - RuntimeState []*RuntimeStateMap `protobuf:"bytes,20,rep,name=runtime_state,json=runtimeState" json:"runtime_state,omitempty"` - // Error is the Last recorded error. - Error string `protobuf:"bytes,21,opt,name=error" json:"error,omitempty"` - // VolumeConsumers are entities that consume this volume - VolumeConsumers []*VolumeConsumer `protobuf:"bytes,22,rep,name=volume_consumers,json=volumeConsumers" json:"volume_consumers,omitempty"` - // FsResizeRequired if an FS resize is required on the volume. - FsResizeRequired bool `protobuf:"varint,23,opt,name=fs_resize_required,json=fsResizeRequired" json:"fs_resize_required,omitempty"` - // AttachTime time this device was last attached externally. - AttachTime *timestamp.Timestamp `protobuf:"bytes,24,opt,name=attach_time,json=attachTime" json:"attach_time,omitempty"` - // DetachTime time this device was detached. - DetachTime *timestamp.Timestamp `protobuf:"bytes,25,opt,name=detach_time,json=detachTime" json:"detach_time,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// ClusterResponse specifies a response that gets returned when requesting the cluster +type ClusterResponse struct { + // Error code + // + // in: body + Error string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Volume) Reset() { *m = Volume{} } -func (m *Volume) String() string { return proto.CompactTextString(m) } -func (*Volume) ProtoMessage() {} -func (*Volume) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{14} +func (m *ClusterResponse) Reset() { *m = ClusterResponse{} } +func (m *ClusterResponse) String() string { return proto.CompactTextString(m) } +func (*ClusterResponse) ProtoMessage() {} +func (*ClusterResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{58} } -func (m *Volume) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Volume.Unmarshal(m, b) +func (m *ClusterResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterResponse.Unmarshal(m, b) } -func (m *Volume) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Volume.Marshal(b, m, deterministic) +func (m *ClusterResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterResponse.Marshal(b, m, deterministic) } -func (dst *Volume) XXX_Merge(src proto.Message) { - xxx_messageInfo_Volume.Merge(dst, src) +func (dst *ClusterResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterResponse.Merge(dst, src) } -func (m *Volume) XXX_Size() int { - return xxx_messageInfo_Volume.Size(m) +func (m *ClusterResponse) XXX_Size() int { + return xxx_messageInfo_ClusterResponse.Size(m) } -func (m *Volume) XXX_DiscardUnknown() { - xxx_messageInfo_Volume.DiscardUnknown(m) +func (m *ClusterResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterResponse.DiscardUnknown(m) } -var xxx_messageInfo_Volume proto.InternalMessageInfo +var xxx_messageInfo_ClusterResponse proto.InternalMessageInfo -func (m *Volume) GetId() string { +func (m *ClusterResponse) GetError() string { if m != nil { - return m.Id + return m.Error } return "" } -func (m *Volume) GetSource() *Source { - if m != nil { - return m.Source - } - return nil +// Active Request +type ActiveRequest struct { + ReqestKV map[int64]string `protobuf:"bytes,1,rep,name=ReqestKV" json:"ReqestKV,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Volume) GetGroup() *Group { - if m != nil { - return m.Group - } - return nil +func (m *ActiveRequest) Reset() { *m = ActiveRequest{} } +func (m *ActiveRequest) String() string { return proto.CompactTextString(m) } +func (*ActiveRequest) ProtoMessage() {} +func (*ActiveRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{59} } - -func (m *Volume) GetReadonly() bool { - if m != nil { - return m.Readonly - } - return false +func (m *ActiveRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ActiveRequest.Unmarshal(m, b) +} +func (m *ActiveRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ActiveRequest.Marshal(b, m, deterministic) +} +func (dst *ActiveRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ActiveRequest.Merge(dst, src) +} +func (m *ActiveRequest) XXX_Size() int { + return xxx_messageInfo_ActiveRequest.Size(m) +} +func (m *ActiveRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ActiveRequest.DiscardUnknown(m) } -func (m *Volume) GetLocator() *VolumeLocator { +var xxx_messageInfo_ActiveRequest proto.InternalMessageInfo + +func (m *ActiveRequest) GetReqestKV() map[int64]string { if m != nil { - return m.Locator + return m.ReqestKV } return nil } -func (m *Volume) GetCtime() *timestamp.Timestamp { - if m != nil { - return m.Ctime - } - return nil +// Active Requests +type ActiveRequests struct { + RequestCount int64 `protobuf:"varint,1,opt,name=RequestCount" json:"RequestCount,omitempty"` + ActiveRequest []*ActiveRequest `protobuf:"bytes,2,rep,name=ActiveRequest" json:"ActiveRequest,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Volume) GetSpec() *VolumeSpec { - if m != nil { - return m.Spec - } - return nil +func (m *ActiveRequests) Reset() { *m = ActiveRequests{} } +func (m *ActiveRequests) String() string { return proto.CompactTextString(m) } +func (*ActiveRequests) ProtoMessage() {} +func (*ActiveRequests) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{60} +} +func (m *ActiveRequests) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ActiveRequests.Unmarshal(m, b) +} +func (m *ActiveRequests) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ActiveRequests.Marshal(b, m, deterministic) +} +func (dst *ActiveRequests) XXX_Merge(src proto.Message) { + xxx_messageInfo_ActiveRequests.Merge(dst, src) +} +func (m *ActiveRequests) XXX_Size() int { + return xxx_messageInfo_ActiveRequests.Size(m) +} +func (m *ActiveRequests) XXX_DiscardUnknown() { + xxx_messageInfo_ActiveRequests.DiscardUnknown(m) } -func (m *Volume) GetUsage() uint64 { +var xxx_messageInfo_ActiveRequests proto.InternalMessageInfo + +func (m *ActiveRequests) GetRequestCount() int64 { if m != nil { - return m.Usage + return m.RequestCount } return 0 } -func (m *Volume) GetLastScan() *timestamp.Timestamp { +func (m *ActiveRequests) GetActiveRequest() []*ActiveRequest { if m != nil { - return m.LastScan + return m.ActiveRequest } return nil } -func (m *Volume) GetFormat() FSType { - if m != nil { - return m.Format - } - return FSType_FS_TYPE_NONE +// GroupSnapCreateRequest specifies a request to create a snapshot of given group. +type GroupSnapCreateRequest struct { + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + Labels map[string]string `protobuf:"bytes,2,rep,name=Labels" json:"Labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + VolumeIds []string `protobuf:"bytes,3,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"` + DeleteOnFailure bool `protobuf:"varint,4,opt,name=delete_on_failure,json=deleteOnFailure" json:"delete_on_failure,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GroupSnapCreateRequest) Reset() { *m = GroupSnapCreateRequest{} } +func (m *GroupSnapCreateRequest) String() string { return proto.CompactTextString(m) } +func (*GroupSnapCreateRequest) ProtoMessage() {} +func (*GroupSnapCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{61} +} +func (m *GroupSnapCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupSnapCreateRequest.Unmarshal(m, b) +} +func (m *GroupSnapCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupSnapCreateRequest.Marshal(b, m, deterministic) +} +func (dst *GroupSnapCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupSnapCreateRequest.Merge(dst, src) +} +func (m *GroupSnapCreateRequest) XXX_Size() int { + return xxx_messageInfo_GroupSnapCreateRequest.Size(m) +} +func (m *GroupSnapCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GroupSnapCreateRequest.DiscardUnknown(m) } -func (m *Volume) GetStatus() VolumeStatus { +var xxx_messageInfo_GroupSnapCreateRequest proto.InternalMessageInfo + +func (m *GroupSnapCreateRequest) GetId() string { if m != nil { - return m.Status + return m.Id } - return VolumeStatus_VOLUME_STATUS_NONE + return "" } -func (m *Volume) GetState() VolumeState { +func (m *GroupSnapCreateRequest) GetLabels() map[string]string { if m != nil { - return m.State + return m.Labels } - return VolumeState_VOLUME_STATE_NONE + return nil } -func (m *Volume) GetAttachedOn() string { +func (m *GroupSnapCreateRequest) GetVolumeIds() []string { if m != nil { - return m.AttachedOn + return m.VolumeIds } - return "" + return nil } -func (m *Volume) GetAttachedState() AttachState { +func (m *GroupSnapCreateRequest) GetDeleteOnFailure() bool { if m != nil { - return m.AttachedState + return m.DeleteOnFailure } - return AttachState_ATTACH_STATE_EXTERNAL + return false } -func (m *Volume) GetDevicePath() string { - if m != nil { - return m.DevicePath - } - return "" +// GroupSnapCreateRequest specifies a response that get's returned when creating a group snapshot. +type GroupSnapCreateResponse struct { + // Created snapshots + // + // in: body + // Required: true + Snapshots map[string]*SnapCreateResponse `protobuf:"bytes,1,rep,name=snapshots" json:"snapshots,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // Error message + // + // in: body + // Required: true + Error string `protobuf:"bytes,2,opt,name=error" json:"error,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Volume) GetSecureDevicePath() string { - if m != nil { - return m.SecureDevicePath - } - return "" +func (m *GroupSnapCreateResponse) Reset() { *m = GroupSnapCreateResponse{} } +func (m *GroupSnapCreateResponse) String() string { return proto.CompactTextString(m) } +func (*GroupSnapCreateResponse) ProtoMessage() {} +func (*GroupSnapCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{62} +} +func (m *GroupSnapCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupSnapCreateResponse.Unmarshal(m, b) +} +func (m *GroupSnapCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupSnapCreateResponse.Marshal(b, m, deterministic) +} +func (dst *GroupSnapCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupSnapCreateResponse.Merge(dst, src) +} +func (m *GroupSnapCreateResponse) XXX_Size() int { + return xxx_messageInfo_GroupSnapCreateResponse.Size(m) +} +func (m *GroupSnapCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_GroupSnapCreateResponse.DiscardUnknown(m) } -func (m *Volume) GetAttachPath() []string { +var xxx_messageInfo_GroupSnapCreateResponse proto.InternalMessageInfo + +func (m *GroupSnapCreateResponse) GetSnapshots() map[string]*SnapCreateResponse { if m != nil { - return m.AttachPath + return m.Snapshots } return nil } -func (m *Volume) GetAttachInfo() map[string]string { +func (m *GroupSnapCreateResponse) GetError() string { if m != nil { - return m.AttachInfo + return m.Error } - return nil + return "" } -func (m *Volume) GetReplicaSets() []*ReplicaSet { - if m != nil { - return m.ReplicaSets - } - return nil +// StorageNode describes the state of the node +type StorageNode struct { + // Id of the node + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Cpu usage of the node + Cpu float64 `protobuf:"fixed64,2,opt,name=cpu" json:"cpu,omitempty"` + // Total memory of the node + MemTotal uint64 `protobuf:"varint,3,opt,name=mem_total,json=memTotal" json:"mem_total,omitempty"` + // Used memory of the node + MemUsed uint64 `protobuf:"varint,4,opt,name=mem_used,json=memUsed" json:"mem_used,omitempty"` + // Free memory of the node + MemFree uint64 `protobuf:"varint,5,opt,name=mem_free,json=memFree" json:"mem_free,omitempty"` + // Average load (percentage) + AvgLoad int64 `protobuf:"varint,6,opt,name=avg_load,json=avgLoad" json:"avg_load,omitempty"` + // Node status + Status Status `protobuf:"varint,7,opt,name=status,enum=openstorage.api.Status" json:"status,omitempty"` + // List of disks on the node + Disks map[string]*StorageResource `protobuf:"bytes,9,rep,name=disks" json:"disks,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // List of storage pools this node supports + Pools []*StoragePool `protobuf:"bytes,10,rep,name=pools" json:"pools,omitempty"` + // Management IP + MgmtIp string `protobuf:"bytes,11,opt,name=mgmt_ip,json=mgmtIp" json:"mgmt_ip,omitempty"` + // Data IP + DataIp string `protobuf:"bytes,12,opt,name=data_ip,json=dataIp" json:"data_ip,omitempty"` + // Hostname of the node + Hostname string `protobuf:"bytes,15,opt,name=hostname" json:"hostname,omitempty"` + // User defined labels for the node + NodeLabels map[string]string `protobuf:"bytes,16,rep,name=node_labels,json=nodeLabels" json:"node_labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // SchedulerNodeName is name of the node in scheduler context. It can be + // empty if unable to get the name from the scheduler. + SchedulerNodeName string `protobuf:"bytes,17,opt,name=scheduler_node_name,json=schedulerNodeName" json:"scheduler_node_name,omitempty"` + // HardwareType is the type of the hardware the node has + HWType HardwareType `protobuf:"varint,18,opt,name=HWType,enum=openstorage.api.HardwareType" json:"HWType,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Volume) GetRuntimeState() []*RuntimeStateMap { - if m != nil { - return m.RuntimeState - } - return nil +func (m *StorageNode) Reset() { *m = StorageNode{} } +func (m *StorageNode) String() string { return proto.CompactTextString(m) } +func (*StorageNode) ProtoMessage() {} +func (*StorageNode) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{63} +} +func (m *StorageNode) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_StorageNode.Unmarshal(m, b) +} +func (m *StorageNode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_StorageNode.Marshal(b, m, deterministic) +} +func (dst *StorageNode) XXX_Merge(src proto.Message) { + xxx_messageInfo_StorageNode.Merge(dst, src) +} +func (m *StorageNode) XXX_Size() int { + return xxx_messageInfo_StorageNode.Size(m) +} +func (m *StorageNode) XXX_DiscardUnknown() { + xxx_messageInfo_StorageNode.DiscardUnknown(m) } -func (m *Volume) GetError() string { +var xxx_messageInfo_StorageNode proto.InternalMessageInfo + +func (m *StorageNode) GetId() string { if m != nil { - return m.Error + return m.Id } return "" } -func (m *Volume) GetVolumeConsumers() []*VolumeConsumer { +func (m *StorageNode) GetCpu() float64 { if m != nil { - return m.VolumeConsumers + return m.Cpu } - return nil + return 0 } -func (m *Volume) GetFsResizeRequired() bool { +func (m *StorageNode) GetMemTotal() uint64 { if m != nil { - return m.FsResizeRequired + return m.MemTotal } - return false + return 0 } -func (m *Volume) GetAttachTime() *timestamp.Timestamp { +func (m *StorageNode) GetMemUsed() uint64 { if m != nil { - return m.AttachTime + return m.MemUsed } - return nil + return 0 } -func (m *Volume) GetDetachTime() *timestamp.Timestamp { +func (m *StorageNode) GetMemFree() uint64 { if m != nil { - return m.DetachTime + return m.MemFree } - return nil -} - -// Stats is a structure that represents last collected stats for a volume -type Stats struct { - // Reads completed successfully - Reads uint64 `protobuf:"varint,1,opt,name=reads" json:"reads,omitempty"` - // Time spent in reads in ms - ReadMs uint64 `protobuf:"varint,2,opt,name=read_ms,json=readMs" json:"read_ms,omitempty"` - // Number of bytes read - ReadBytes uint64 `protobuf:"varint,3,opt,name=read_bytes,json=readBytes" json:"read_bytes,omitempty"` - // Writes completed successfully - Writes uint64 `protobuf:"varint,4,opt,name=writes" json:"writes,omitempty"` - // Time spent in writes in ms - WriteMs uint64 `protobuf:"varint,5,opt,name=write_ms,json=writeMs" json:"write_ms,omitempty"` - // Number of bytes written - WriteBytes uint64 `protobuf:"varint,6,opt,name=write_bytes,json=writeBytes" json:"write_bytes,omitempty"` - // IOs curently in progress - IoProgress uint64 `protobuf:"varint,7,opt,name=io_progress,json=ioProgress" json:"io_progress,omitempty"` - // Time spent doing IOs ms - IoMs uint64 `protobuf:"varint,8,opt,name=io_ms,json=ioMs" json:"io_ms,omitempty"` - // BytesUsed - BytesUsed uint64 `protobuf:"varint,9,opt,name=bytes_used,json=bytesUsed" json:"bytes_used,omitempty"` - // Interval in ms during which stats were collected - IntervalMs uint64 `protobuf:"varint,10,opt,name=interval_ms,json=intervalMs" json:"interval_ms,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *Stats) Reset() { *m = Stats{} } -func (m *Stats) String() string { return proto.CompactTextString(m) } -func (*Stats) ProtoMessage() {} -func (*Stats) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{15} -} -func (m *Stats) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Stats.Unmarshal(m, b) -} -func (m *Stats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Stats.Marshal(b, m, deterministic) -} -func (dst *Stats) XXX_Merge(src proto.Message) { - xxx_messageInfo_Stats.Merge(dst, src) -} -func (m *Stats) XXX_Size() int { - return xxx_messageInfo_Stats.Size(m) -} -func (m *Stats) XXX_DiscardUnknown() { - xxx_messageInfo_Stats.DiscardUnknown(m) + return 0 } -var xxx_messageInfo_Stats proto.InternalMessageInfo - -func (m *Stats) GetReads() uint64 { +func (m *StorageNode) GetAvgLoad() int64 { if m != nil { - return m.Reads + return m.AvgLoad } return 0 } -func (m *Stats) GetReadMs() uint64 { +func (m *StorageNode) GetStatus() Status { if m != nil { - return m.ReadMs + return m.Status } - return 0 + return Status_STATUS_NONE } -func (m *Stats) GetReadBytes() uint64 { +func (m *StorageNode) GetDisks() map[string]*StorageResource { if m != nil { - return m.ReadBytes + return m.Disks } - return 0 + return nil } -func (m *Stats) GetWrites() uint64 { +func (m *StorageNode) GetPools() []*StoragePool { if m != nil { - return m.Writes + return m.Pools } - return 0 + return nil } -func (m *Stats) GetWriteMs() uint64 { +func (m *StorageNode) GetMgmtIp() string { if m != nil { - return m.WriteMs + return m.MgmtIp } - return 0 + return "" } -func (m *Stats) GetWriteBytes() uint64 { +func (m *StorageNode) GetDataIp() string { if m != nil { - return m.WriteBytes + return m.DataIp } - return 0 + return "" } -func (m *Stats) GetIoProgress() uint64 { +func (m *StorageNode) GetHostname() string { if m != nil { - return m.IoProgress + return m.Hostname } - return 0 + return "" } -func (m *Stats) GetIoMs() uint64 { +func (m *StorageNode) GetNodeLabels() map[string]string { if m != nil { - return m.IoMs + return m.NodeLabels } - return 0 + return nil } -func (m *Stats) GetBytesUsed() uint64 { +func (m *StorageNode) GetSchedulerNodeName() string { if m != nil { - return m.BytesUsed + return m.SchedulerNodeName } - return 0 + return "" } -func (m *Stats) GetIntervalMs() uint64 { +func (m *StorageNode) GetHWType() HardwareType { if m != nil { - return m.IntervalMs + return m.HWType } - return 0 + return HardwareType_UnknownMachine } -// Provides details on exclusive and shared storage used by -// snapshot/volume specifically for copy-on-write(COW) snapshots. Deletion -// of snapshots and overwirte of volume will affect the exclusive storage -// used by the other dependent snaps and parent volume. -type CapacityUsageInfo struct { - // Storage consumed exclusively by this single snapshot. Deletion of this - // snapshot may increase the free storage available by this amount. - ExclusiveBytes int64 `protobuf:"varint,1,opt,name=exclusive_bytes,json=exclusiveBytes" json:"exclusive_bytes,omitempty"` - // Storage consumed by this snapshot that is shared with parent and children - SharedBytes int64 `protobuf:"varint,2,opt,name=shared_bytes,json=sharedBytes" json:"shared_bytes,omitempty"` - // TotalBytes used by this volume - TotalBytes int64 `protobuf:"varint,3,opt,name=total_bytes,json=totalBytes" json:"total_bytes,omitempty"` +// StorageCluster represents the state and information about the cluster +type StorageCluster struct { + // Status of the cluster + Status Status `protobuf:"varint,1,opt,name=status,enum=openstorage.api.Status" json:"status,omitempty"` + // Id of the cluster + Id string `protobuf:"bytes,2,opt,name=id" json:"id,omitempty"` + // Name of the cluster + Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *CapacityUsageInfo) Reset() { *m = CapacityUsageInfo{} } -func (m *CapacityUsageInfo) String() string { return proto.CompactTextString(m) } -func (*CapacityUsageInfo) ProtoMessage() {} -func (*CapacityUsageInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{16} +func (m *StorageCluster) Reset() { *m = StorageCluster{} } +func (m *StorageCluster) String() string { return proto.CompactTextString(m) } +func (*StorageCluster) ProtoMessage() {} +func (*StorageCluster) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{64} } -func (m *CapacityUsageInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CapacityUsageInfo.Unmarshal(m, b) +func (m *StorageCluster) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_StorageCluster.Unmarshal(m, b) } -func (m *CapacityUsageInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CapacityUsageInfo.Marshal(b, m, deterministic) +func (m *StorageCluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_StorageCluster.Marshal(b, m, deterministic) } -func (dst *CapacityUsageInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_CapacityUsageInfo.Merge(dst, src) +func (dst *StorageCluster) XXX_Merge(src proto.Message) { + xxx_messageInfo_StorageCluster.Merge(dst, src) } -func (m *CapacityUsageInfo) XXX_Size() int { - return xxx_messageInfo_CapacityUsageInfo.Size(m) +func (m *StorageCluster) XXX_Size() int { + return xxx_messageInfo_StorageCluster.Size(m) } -func (m *CapacityUsageInfo) XXX_DiscardUnknown() { - xxx_messageInfo_CapacityUsageInfo.DiscardUnknown(m) +func (m *StorageCluster) XXX_DiscardUnknown() { + xxx_messageInfo_StorageCluster.DiscardUnknown(m) } -var xxx_messageInfo_CapacityUsageInfo proto.InternalMessageInfo +var xxx_messageInfo_StorageCluster proto.InternalMessageInfo -func (m *CapacityUsageInfo) GetExclusiveBytes() int64 { +func (m *StorageCluster) GetStatus() Status { if m != nil { - return m.ExclusiveBytes + return m.Status } - return 0 + return Status_STATUS_NONE } -func (m *CapacityUsageInfo) GetSharedBytes() int64 { +func (m *StorageCluster) GetId() string { if m != nil { - return m.SharedBytes + return m.Id } - return 0 + return "" } -func (m *CapacityUsageInfo) GetTotalBytes() int64 { +func (m *StorageCluster) GetName() string { if m != nil { - return m.TotalBytes + return m.Name } - return 0 + return "" } -// A SdkStoragePolicy represents minimum set of volume specs to be -// follow while creating volumes. -// If storage policy is set default in OpenStoragePolicy service, VolumeSpecPolicy will be -// used before creating volume to validate volume specs or ensure minimum volume creation -// rules followed -type SdkStoragePolicy struct { - // Name of storage policy. - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - // VolumeSpecs to apply while creating volume. - Policy *VolumeSpecPolicy `protobuf:"bytes,2,opt,name=policy" json:"policy,omitempty"` - // Force if set to true volume specs will be overwritten, otherwise - // volume creation will fail if the volume specifications are not inline with storage policy - Force bool `protobuf:"varint,3,opt,name=force" json:"force,omitempty"` - // If set a volume can be updated without storage Policy - // restriction, otherwise volume update will be followed as per storage policy - // specification - AllowUpdate bool `protobuf:"varint,4,opt,name=allow_update,json=allowUpdate" json:"allow_update,omitempty"` - // Owner info of storage policy - Ownership *Ownership `protobuf:"bytes,5,opt,name=ownership" json:"ownership,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Define a request to create storage policy +type SdkOpenStoragePolicyCreateRequest struct { + // storage policy to create + StoragePolicy *SdkStoragePolicy `protobuf:"bytes,1,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkStoragePolicy) Reset() { *m = SdkStoragePolicy{} } -func (m *SdkStoragePolicy) String() string { return proto.CompactTextString(m) } -func (*SdkStoragePolicy) ProtoMessage() {} -func (*SdkStoragePolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{17} +func (m *SdkOpenStoragePolicyCreateRequest) Reset() { *m = SdkOpenStoragePolicyCreateRequest{} } +func (m *SdkOpenStoragePolicyCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyCreateRequest) ProtoMessage() {} +func (*SdkOpenStoragePolicyCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{65} } -func (m *SdkStoragePolicy) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkStoragePolicy.Unmarshal(m, b) +func (m *SdkOpenStoragePolicyCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.Unmarshal(m, b) } -func (m *SdkStoragePolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkStoragePolicy.Marshal(b, m, deterministic) +func (m *SdkOpenStoragePolicyCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.Marshal(b, m, deterministic) } -func (dst *SdkStoragePolicy) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkStoragePolicy.Merge(dst, src) +func (dst *SdkOpenStoragePolicyCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.Merge(dst, src) } -func (m *SdkStoragePolicy) XXX_Size() int { - return xxx_messageInfo_SdkStoragePolicy.Size(m) +func (m *SdkOpenStoragePolicyCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.Size(m) } -func (m *SdkStoragePolicy) XXX_DiscardUnknown() { - xxx_messageInfo_SdkStoragePolicy.DiscardUnknown(m) +func (m *SdkOpenStoragePolicyCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkStoragePolicy proto.InternalMessageInfo - -func (m *SdkStoragePolicy) GetName() string { - if m != nil { - return m.Name - } - return "" -} +var xxx_messageInfo_SdkOpenStoragePolicyCreateRequest proto.InternalMessageInfo -func (m *SdkStoragePolicy) GetPolicy() *VolumeSpecPolicy { +func (m *SdkOpenStoragePolicyCreateRequest) GetStoragePolicy() *SdkStoragePolicy { if m != nil { - return m.Policy + return m.StoragePolicy } return nil } -func (m *SdkStoragePolicy) GetForce() bool { - if m != nil { - return m.Force - } - return false +// Empty response +type SdkOpenStoragePolicyCreateResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkStoragePolicy) GetAllowUpdate() bool { - if m != nil { - return m.AllowUpdate - } - return false +func (m *SdkOpenStoragePolicyCreateResponse) Reset() { *m = SdkOpenStoragePolicyCreateResponse{} } +func (m *SdkOpenStoragePolicyCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyCreateResponse) ProtoMessage() {} +func (*SdkOpenStoragePolicyCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{66} } - -func (m *SdkStoragePolicy) GetOwnership() *Ownership { - if m != nil { - return m.Ownership - } - return nil +func (m *SdkOpenStoragePolicyCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.Unmarshal(m, b) } - -// Alert is a structure that represents an alert object -type Alert struct { - // Id for Alert - Id int64 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` - // Severity of the Alert - Severity SeverityType `protobuf:"varint,2,opt,name=severity,enum=openstorage.api.SeverityType" json:"severity,omitempty"` - // AlertType user defined alert type - AlertType int64 `protobuf:"varint,3,opt,name=alert_type,json=alertType" json:"alert_type,omitempty"` - // Message describing the Alert - Message string `protobuf:"bytes,4,opt,name=message" json:"message,omitempty"` - // Timestamp when Alert occured - Timestamp *timestamp.Timestamp `protobuf:"bytes,5,opt,name=timestamp" json:"timestamp,omitempty"` - // ResourceId where Alert occured - ResourceId string `protobuf:"bytes,6,opt,name=resource_id,json=resourceId" json:"resource_id,omitempty"` - // Resource where Alert occured - Resource ResourceType `protobuf:"varint,7,opt,name=resource,enum=openstorage.api.ResourceType" json:"resource,omitempty"` - // Cleared Flag - Cleared bool `protobuf:"varint,8,opt,name=cleared" json:"cleared,omitempty"` - // Time-to-live in seconds for this Alert - Ttl uint64 `protobuf:"varint,9,opt,name=ttl" json:"ttl,omitempty"` - // UniqueTag helps identify a unique alert for a given resouce - UniqueTag string `protobuf:"bytes,10,opt,name=unique_tag,json=uniqueTag" json:"unique_tag,omitempty"` - // Count of such alerts raised so far. - Count int64 `protobuf:"varint,11,opt,name=count" json:"count,omitempty"` - // Timestamp when such alert was raised the very first time. - FirstSeen *timestamp.Timestamp `protobuf:"bytes,12,opt,name=first_seen,json=firstSeen" json:"first_seen,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkOpenStoragePolicyCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.Marshal(b, m, deterministic) +} +func (dst *SdkOpenStoragePolicyCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.Merge(dst, src) +} +func (m *SdkOpenStoragePolicyCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.Size(m) +} +func (m *SdkOpenStoragePolicyCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.DiscardUnknown(m) } -func (m *Alert) Reset() { *m = Alert{} } -func (m *Alert) String() string { return proto.CompactTextString(m) } -func (*Alert) ProtoMessage() {} -func (*Alert) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{18} +var xxx_messageInfo_SdkOpenStoragePolicyCreateResponse proto.InternalMessageInfo + +// Empty request +type SdkOpenStoragePolicyEnumerateRequest struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Alert) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Alert.Unmarshal(m, b) + +func (m *SdkOpenStoragePolicyEnumerateRequest) Reset() { *m = SdkOpenStoragePolicyEnumerateRequest{} } +func (m *SdkOpenStoragePolicyEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyEnumerateRequest) ProtoMessage() {} +func (*SdkOpenStoragePolicyEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{67} } -func (m *Alert) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Alert.Marshal(b, m, deterministic) +func (m *SdkOpenStoragePolicyEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.Unmarshal(m, b) } -func (dst *Alert) XXX_Merge(src proto.Message) { - xxx_messageInfo_Alert.Merge(dst, src) +func (m *SdkOpenStoragePolicyEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.Marshal(b, m, deterministic) } -func (m *Alert) XXX_Size() int { - return xxx_messageInfo_Alert.Size(m) +func (dst *SdkOpenStoragePolicyEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.Merge(dst, src) } -func (m *Alert) XXX_DiscardUnknown() { - xxx_messageInfo_Alert.DiscardUnknown(m) +func (m *SdkOpenStoragePolicyEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.Size(m) +} +func (m *SdkOpenStoragePolicyEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.DiscardUnknown(m) } -var xxx_messageInfo_Alert proto.InternalMessageInfo +var xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest proto.InternalMessageInfo -func (m *Alert) GetId() int64 { - if m != nil { - return m.Id - } - return 0 +// Define a storage policy enumerate response +type SdkOpenStoragePolicyEnumerateResponse struct { + // List of storage policies + StoragePolicies []*SdkStoragePolicy `protobuf:"bytes,1,rep,name=storage_policies,json=storagePolicies" json:"storage_policies,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Alert) GetSeverity() SeverityType { - if m != nil { - return m.Severity - } - return SeverityType_SEVERITY_TYPE_NONE +func (m *SdkOpenStoragePolicyEnumerateResponse) Reset() { *m = SdkOpenStoragePolicyEnumerateResponse{} } +func (m *SdkOpenStoragePolicyEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyEnumerateResponse) ProtoMessage() {} +func (*SdkOpenStoragePolicyEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{68} } - -func (m *Alert) GetAlertType() int64 { - if m != nil { - return m.AlertType - } - return 0 +func (m *SdkOpenStoragePolicyEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.Unmarshal(m, b) } - -func (m *Alert) GetMessage() string { - if m != nil { - return m.Message - } - return "" +func (m *SdkOpenStoragePolicyEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.Marshal(b, m, deterministic) +} +func (dst *SdkOpenStoragePolicyEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.Merge(dst, src) +} +func (m *SdkOpenStoragePolicyEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.Size(m) +} +func (m *SdkOpenStoragePolicyEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.DiscardUnknown(m) } -func (m *Alert) GetTimestamp() *timestamp.Timestamp { +var xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse proto.InternalMessageInfo + +func (m *SdkOpenStoragePolicyEnumerateResponse) GetStoragePolicies() []*SdkStoragePolicy { if m != nil { - return m.Timestamp + return m.StoragePolicies } return nil } -func (m *Alert) GetResourceId() string { - if m != nil { - return m.ResourceId - } - return "" +// Define a request to inspect storage policy +type SdkOpenStoragePolicyInspectRequest struct { + // name of storage policy to retrive + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Alert) GetResource() ResourceType { - if m != nil { - return m.Resource - } - return ResourceType_RESOURCE_TYPE_NONE +func (m *SdkOpenStoragePolicyInspectRequest) Reset() { *m = SdkOpenStoragePolicyInspectRequest{} } +func (m *SdkOpenStoragePolicyInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyInspectRequest) ProtoMessage() {} +func (*SdkOpenStoragePolicyInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{69} } - -func (m *Alert) GetCleared() bool { - if m != nil { - return m.Cleared - } - return false +func (m *SdkOpenStoragePolicyInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.Unmarshal(m, b) } - -func (m *Alert) GetTtl() uint64 { - if m != nil { - return m.Ttl - } - return 0 +func (m *SdkOpenStoragePolicyInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.Marshal(b, m, deterministic) } - -func (m *Alert) GetUniqueTag() string { - if m != nil { - return m.UniqueTag - } - return "" +func (dst *SdkOpenStoragePolicyInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.Merge(dst, src) } - -func (m *Alert) GetCount() int64 { - if m != nil { - return m.Count - } - return 0 +func (m *SdkOpenStoragePolicyInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.Size(m) +} +func (m *SdkOpenStoragePolicyInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.DiscardUnknown(m) } -func (m *Alert) GetFirstSeen() *timestamp.Timestamp { +var xxx_messageInfo_SdkOpenStoragePolicyInspectRequest proto.InternalMessageInfo + +func (m *SdkOpenStoragePolicyInspectRequest) GetName() string { if m != nil { - return m.FirstSeen + return m.Name } - return nil + return "" } -// SdkAlertsTimeSpan to store time window information. -type SdkAlertsTimeSpan struct { - // Start timestamp when Alert occured - StartTime *timestamp.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime" json:"start_time,omitempty"` - // End timestamp when Alert occured - EndTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime" json:"end_time,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Define a storage policy inspect response +type SdkOpenStoragePolicyInspectResponse struct { + // storage policy information requested by name + StoragePolicy *SdkStoragePolicy `protobuf:"bytes,1,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsTimeSpan) Reset() { *m = SdkAlertsTimeSpan{} } -func (m *SdkAlertsTimeSpan) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsTimeSpan) ProtoMessage() {} -func (*SdkAlertsTimeSpan) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{19} +func (m *SdkOpenStoragePolicyInspectResponse) Reset() { *m = SdkOpenStoragePolicyInspectResponse{} } +func (m *SdkOpenStoragePolicyInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyInspectResponse) ProtoMessage() {} +func (*SdkOpenStoragePolicyInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{70} } -func (m *SdkAlertsTimeSpan) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsTimeSpan.Unmarshal(m, b) +func (m *SdkOpenStoragePolicyInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.Unmarshal(m, b) } -func (m *SdkAlertsTimeSpan) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsTimeSpan.Marshal(b, m, deterministic) +func (m *SdkOpenStoragePolicyInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.Marshal(b, m, deterministic) } -func (dst *SdkAlertsTimeSpan) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsTimeSpan.Merge(dst, src) +func (dst *SdkOpenStoragePolicyInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.Merge(dst, src) } -func (m *SdkAlertsTimeSpan) XXX_Size() int { - return xxx_messageInfo_SdkAlertsTimeSpan.Size(m) +func (m *SdkOpenStoragePolicyInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.Size(m) } -func (m *SdkAlertsTimeSpan) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsTimeSpan.DiscardUnknown(m) +func (m *SdkOpenStoragePolicyInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsTimeSpan proto.InternalMessageInfo - -func (m *SdkAlertsTimeSpan) GetStartTime() *timestamp.Timestamp { - if m != nil { - return m.StartTime - } - return nil -} +var xxx_messageInfo_SdkOpenStoragePolicyInspectResponse proto.InternalMessageInfo -func (m *SdkAlertsTimeSpan) GetEndTime() *timestamp.Timestamp { +func (m *SdkOpenStoragePolicyInspectResponse) GetStoragePolicy() *SdkStoragePolicy { if m != nil { - return m.EndTime + return m.StoragePolicy } return nil } -// SdkAlertsCountSpan to store count range information. -type SdkAlertsCountSpan struct { - // Min count of such alerts raised so far. - MinCount int64 `protobuf:"varint,1,opt,name=min_count,json=minCount" json:"min_count,omitempty"` - // Max count of such alerts raised so far. - MaxCount int64 `protobuf:"varint,2,opt,name=max_count,json=maxCount" json:"max_count,omitempty"` +// Define a request to delete storage policy +type SdkOpenStoragePolicyDeleteRequest struct { + // name of storage policy to delete + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsCountSpan) Reset() { *m = SdkAlertsCountSpan{} } -func (m *SdkAlertsCountSpan) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsCountSpan) ProtoMessage() {} -func (*SdkAlertsCountSpan) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{20} -} -func (m *SdkAlertsCountSpan) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsCountSpan.Unmarshal(m, b) +func (m *SdkOpenStoragePolicyDeleteRequest) Reset() { *m = SdkOpenStoragePolicyDeleteRequest{} } +func (m *SdkOpenStoragePolicyDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyDeleteRequest) ProtoMessage() {} +func (*SdkOpenStoragePolicyDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{71} } -func (m *SdkAlertsCountSpan) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsCountSpan.Marshal(b, m, deterministic) +func (m *SdkOpenStoragePolicyDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.Unmarshal(m, b) } -func (dst *SdkAlertsCountSpan) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsCountSpan.Merge(dst, src) +func (m *SdkOpenStoragePolicyDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.Marshal(b, m, deterministic) } -func (m *SdkAlertsCountSpan) XXX_Size() int { - return xxx_messageInfo_SdkAlertsCountSpan.Size(m) +func (dst *SdkOpenStoragePolicyDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.Merge(dst, src) } -func (m *SdkAlertsCountSpan) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsCountSpan.DiscardUnknown(m) +func (m *SdkOpenStoragePolicyDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.Size(m) } - -var xxx_messageInfo_SdkAlertsCountSpan proto.InternalMessageInfo - -func (m *SdkAlertsCountSpan) GetMinCount() int64 { - if m != nil { - return m.MinCount - } - return 0 +func (m *SdkOpenStoragePolicyDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.DiscardUnknown(m) } -func (m *SdkAlertsCountSpan) GetMaxCount() int64 { - if m != nil { - return m.MaxCount - } - return 0 -} +var xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest proto.InternalMessageInfo -// SdkAlertsOption contains options for filtering alerts. -type SdkAlertsOption struct { - // Types that are valid to be assigned to Opt: - // *SdkAlertsOption_MinSeverityType - // *SdkAlertsOption_IsCleared - // *SdkAlertsOption_TimeSpan - // *SdkAlertsOption_CountSpan - Opt isSdkAlertsOption_Opt `protobuf_oneof:"opt"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkOpenStoragePolicyDeleteRequest) GetName() string { + if m != nil { + return m.Name + } + return "" } -func (m *SdkAlertsOption) Reset() { *m = SdkAlertsOption{} } -func (m *SdkAlertsOption) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsOption) ProtoMessage() {} -func (*SdkAlertsOption) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{21} +// Empty Response +type SdkOpenStoragePolicyDeleteResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsOption) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsOption.Unmarshal(m, b) + +func (m *SdkOpenStoragePolicyDeleteResponse) Reset() { *m = SdkOpenStoragePolicyDeleteResponse{} } +func (m *SdkOpenStoragePolicyDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyDeleteResponse) ProtoMessage() {} +func (*SdkOpenStoragePolicyDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{72} } -func (m *SdkAlertsOption) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsOption.Marshal(b, m, deterministic) +func (m *SdkOpenStoragePolicyDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.Unmarshal(m, b) } -func (dst *SdkAlertsOption) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsOption.Merge(dst, src) +func (m *SdkOpenStoragePolicyDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.Marshal(b, m, deterministic) } -func (m *SdkAlertsOption) XXX_Size() int { - return xxx_messageInfo_SdkAlertsOption.Size(m) +func (dst *SdkOpenStoragePolicyDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.Merge(dst, src) } -func (m *SdkAlertsOption) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsOption.DiscardUnknown(m) +func (m *SdkOpenStoragePolicyDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.Size(m) +} +func (m *SdkOpenStoragePolicyDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsOption proto.InternalMessageInfo +var xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse proto.InternalMessageInfo -type isSdkAlertsOption_Opt interface { - isSdkAlertsOption_Opt() +// Define a request to update storage policy +type SdkOpenStoragePolicyUpdateRequest struct { + // storage policy to update + StoragePolicy *SdkStoragePolicy `protobuf:"bytes,1,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -type SdkAlertsOption_MinSeverityType struct { - MinSeverityType SeverityType `protobuf:"varint,1,opt,name=min_severity_type,json=minSeverityType,enum=openstorage.api.SeverityType,oneof"` +func (m *SdkOpenStoragePolicyUpdateRequest) Reset() { *m = SdkOpenStoragePolicyUpdateRequest{} } +func (m *SdkOpenStoragePolicyUpdateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyUpdateRequest) ProtoMessage() {} +func (*SdkOpenStoragePolicyUpdateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{73} } -type SdkAlertsOption_IsCleared struct { - IsCleared bool `protobuf:"varint,2,opt,name=is_cleared,json=isCleared,oneof"` +func (m *SdkOpenStoragePolicyUpdateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.Unmarshal(m, b) } -type SdkAlertsOption_TimeSpan struct { - TimeSpan *SdkAlertsTimeSpan `protobuf:"bytes,3,opt,name=time_span,json=timeSpan,oneof"` +func (m *SdkOpenStoragePolicyUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.Marshal(b, m, deterministic) } -type SdkAlertsOption_CountSpan struct { - CountSpan *SdkAlertsCountSpan `protobuf:"bytes,4,opt,name=count_span,json=countSpan,oneof"` +func (dst *SdkOpenStoragePolicyUpdateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.Merge(dst, src) +} +func (m *SdkOpenStoragePolicyUpdateRequest) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.Size(m) +} +func (m *SdkOpenStoragePolicyUpdateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.DiscardUnknown(m) } -func (*SdkAlertsOption_MinSeverityType) isSdkAlertsOption_Opt() {} -func (*SdkAlertsOption_IsCleared) isSdkAlertsOption_Opt() {} -func (*SdkAlertsOption_TimeSpan) isSdkAlertsOption_Opt() {} -func (*SdkAlertsOption_CountSpan) isSdkAlertsOption_Opt() {} +var xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest proto.InternalMessageInfo -func (m *SdkAlertsOption) GetOpt() isSdkAlertsOption_Opt { +func (m *SdkOpenStoragePolicyUpdateRequest) GetStoragePolicy() *SdkStoragePolicy { if m != nil { - return m.Opt + return m.StoragePolicy } return nil } -func (m *SdkAlertsOption) GetMinSeverityType() SeverityType { - if x, ok := m.GetOpt().(*SdkAlertsOption_MinSeverityType); ok { - return x.MinSeverityType - } - return SeverityType_SEVERITY_TYPE_NONE +// Empty Response +type SdkOpenStoragePolicyUpdateResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsOption) GetIsCleared() bool { - if x, ok := m.GetOpt().(*SdkAlertsOption_IsCleared); ok { - return x.IsCleared - } - return false +func (m *SdkOpenStoragePolicyUpdateResponse) Reset() { *m = SdkOpenStoragePolicyUpdateResponse{} } +func (m *SdkOpenStoragePolicyUpdateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyUpdateResponse) ProtoMessage() {} +func (*SdkOpenStoragePolicyUpdateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{74} } - -func (m *SdkAlertsOption) GetTimeSpan() *SdkAlertsTimeSpan { - if x, ok := m.GetOpt().(*SdkAlertsOption_TimeSpan); ok { - return x.TimeSpan - } - return nil +func (m *SdkOpenStoragePolicyUpdateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.Unmarshal(m, b) } - -func (m *SdkAlertsOption) GetCountSpan() *SdkAlertsCountSpan { - if x, ok := m.GetOpt().(*SdkAlertsOption_CountSpan); ok { - return x.CountSpan - } - return nil +func (m *SdkOpenStoragePolicyUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.Marshal(b, m, deterministic) } - -// XXX_OneofFuncs is for the internal use of the proto package. -func (*SdkAlertsOption) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _SdkAlertsOption_OneofMarshaler, _SdkAlertsOption_OneofUnmarshaler, _SdkAlertsOption_OneofSizer, []interface{}{ - (*SdkAlertsOption_MinSeverityType)(nil), - (*SdkAlertsOption_IsCleared)(nil), - (*SdkAlertsOption_TimeSpan)(nil), - (*SdkAlertsOption_CountSpan)(nil), - } +func (dst *SdkOpenStoragePolicyUpdateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.Merge(dst, src) +} +func (m *SdkOpenStoragePolicyUpdateResponse) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.Size(m) +} +func (m *SdkOpenStoragePolicyUpdateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.DiscardUnknown(m) } -func _SdkAlertsOption_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*SdkAlertsOption) - // opt - switch x := m.Opt.(type) { - case *SdkAlertsOption_MinSeverityType: - b.EncodeVarint(1<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.MinSeverityType)) - case *SdkAlertsOption_IsCleared: - t := uint64(0) - if x.IsCleared { - t = 1 - } - b.EncodeVarint(2<<3 | proto.WireVarint) - b.EncodeVarint(t) - case *SdkAlertsOption_TimeSpan: - b.EncodeVarint(3<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.TimeSpan); err != nil { - return err - } - case *SdkAlertsOption_CountSpan: - b.EncodeVarint(4<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.CountSpan); err != nil { - return err - } - case nil: - default: - return fmt.Errorf("SdkAlertsOption.Opt has unexpected type %T", x) - } - return nil +var xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse proto.InternalMessageInfo + +// Define a request to set default storage policy +type SdkOpenStoragePolicySetDefaultRequest struct { + // name of policy to set as default storage policy + // for volume creation + // This policy will be used to validate/update volume configuration + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func _SdkAlertsOption_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*SdkAlertsOption) - switch tag { - case 1: // opt.min_severity_type - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.Opt = &SdkAlertsOption_MinSeverityType{SeverityType(x)} - return true, err - case 2: // opt.is_cleared - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.Opt = &SdkAlertsOption_IsCleared{x != 0} - return true, err - case 3: // opt.time_span - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkAlertsTimeSpan) - err := b.DecodeMessage(msg) - m.Opt = &SdkAlertsOption_TimeSpan{msg} - return true, err - case 4: // opt.count_span - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkAlertsCountSpan) - err := b.DecodeMessage(msg) - m.Opt = &SdkAlertsOption_CountSpan{msg} - return true, err - default: - return false, nil - } +func (m *SdkOpenStoragePolicySetDefaultRequest) Reset() { *m = SdkOpenStoragePolicySetDefaultRequest{} } +func (m *SdkOpenStoragePolicySetDefaultRequest) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicySetDefaultRequest) ProtoMessage() {} +func (*SdkOpenStoragePolicySetDefaultRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{75} +} +func (m *SdkOpenStoragePolicySetDefaultRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.Unmarshal(m, b) +} +func (m *SdkOpenStoragePolicySetDefaultRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.Marshal(b, m, deterministic) +} +func (dst *SdkOpenStoragePolicySetDefaultRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.Merge(dst, src) +} +func (m *SdkOpenStoragePolicySetDefaultRequest) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.Size(m) +} +func (m *SdkOpenStoragePolicySetDefaultRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.DiscardUnknown(m) } -func _SdkAlertsOption_OneofSizer(msg proto.Message) (n int) { - m := msg.(*SdkAlertsOption) - // opt - switch x := m.Opt.(type) { - case *SdkAlertsOption_MinSeverityType: - n += 1 // tag and wire - n += proto.SizeVarint(uint64(x.MinSeverityType)) - case *SdkAlertsOption_IsCleared: - n += 1 // tag and wire - n += 1 - case *SdkAlertsOption_TimeSpan: - s := proto.Size(x.TimeSpan) - n += 1 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkAlertsOption_CountSpan: - s := proto.Size(x.CountSpan) - n += 1 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) +var xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest proto.InternalMessageInfo + +func (m *SdkOpenStoragePolicySetDefaultRequest) GetName() string { + if m != nil { + return m.Name } - return n + return "" } -// SdkAlertsResourceTypeQuery queries for alerts using only resource id. -type SdkAlertsResourceTypeQuery struct { - // Resource type used to build query. - ResourceType ResourceType `protobuf:"varint,1,opt,name=resource_type,json=resourceType,enum=openstorage.api.ResourceType" json:"resource_type,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Empty Response +type SdkOpenStoragePolicySetDefaultResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsResourceTypeQuery) Reset() { *m = SdkAlertsResourceTypeQuery{} } -func (m *SdkAlertsResourceTypeQuery) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsResourceTypeQuery) ProtoMessage() {} -func (*SdkAlertsResourceTypeQuery) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{22} +func (m *SdkOpenStoragePolicySetDefaultResponse) Reset() { + *m = SdkOpenStoragePolicySetDefaultResponse{} } -func (m *SdkAlertsResourceTypeQuery) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsResourceTypeQuery.Unmarshal(m, b) +func (m *SdkOpenStoragePolicySetDefaultResponse) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicySetDefaultResponse) ProtoMessage() {} +func (*SdkOpenStoragePolicySetDefaultResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{76} } -func (m *SdkAlertsResourceTypeQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsResourceTypeQuery.Marshal(b, m, deterministic) +func (m *SdkOpenStoragePolicySetDefaultResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.Unmarshal(m, b) } -func (dst *SdkAlertsResourceTypeQuery) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsResourceTypeQuery.Merge(dst, src) +func (m *SdkOpenStoragePolicySetDefaultResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.Marshal(b, m, deterministic) } -func (m *SdkAlertsResourceTypeQuery) XXX_Size() int { - return xxx_messageInfo_SdkAlertsResourceTypeQuery.Size(m) +func (dst *SdkOpenStoragePolicySetDefaultResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.Merge(dst, src) } -func (m *SdkAlertsResourceTypeQuery) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsResourceTypeQuery.DiscardUnknown(m) +func (m *SdkOpenStoragePolicySetDefaultResponse) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.Size(m) } - -var xxx_messageInfo_SdkAlertsResourceTypeQuery proto.InternalMessageInfo - -func (m *SdkAlertsResourceTypeQuery) GetResourceType() ResourceType { - if m != nil { - return m.ResourceType - } - return ResourceType_RESOURCE_TYPE_NONE +func (m *SdkOpenStoragePolicySetDefaultResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.DiscardUnknown(m) } -// SdkAlertsAlertTypeQuery queries for alerts using alert type -// and it requires that resource type be provided as well. -type SdkAlertsAlertTypeQuery struct { - // Resource type used to build query. - ResourceType ResourceType `protobuf:"varint,1,opt,name=resource_type,json=resourceType,enum=openstorage.api.ResourceType" json:"resource_type,omitempty"` - // Alert type used to build query. - AlertType int64 `protobuf:"varint,2,opt,name=alert_type,json=alertType" json:"alert_type,omitempty"` +var xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse proto.InternalMessageInfo + +// Empty Request +type SdkOpenStoragePolicyReleaseRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsAlertTypeQuery) Reset() { *m = SdkAlertsAlertTypeQuery{} } -func (m *SdkAlertsAlertTypeQuery) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsAlertTypeQuery) ProtoMessage() {} -func (*SdkAlertsAlertTypeQuery) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{23} +func (m *SdkOpenStoragePolicyReleaseRequest) Reset() { *m = SdkOpenStoragePolicyReleaseRequest{} } +func (m *SdkOpenStoragePolicyReleaseRequest) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyReleaseRequest) ProtoMessage() {} +func (*SdkOpenStoragePolicyReleaseRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{77} } -func (m *SdkAlertsAlertTypeQuery) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsAlertTypeQuery.Unmarshal(m, b) +func (m *SdkOpenStoragePolicyReleaseRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.Unmarshal(m, b) } -func (m *SdkAlertsAlertTypeQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsAlertTypeQuery.Marshal(b, m, deterministic) +func (m *SdkOpenStoragePolicyReleaseRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.Marshal(b, m, deterministic) } -func (dst *SdkAlertsAlertTypeQuery) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsAlertTypeQuery.Merge(dst, src) +func (dst *SdkOpenStoragePolicyReleaseRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.Merge(dst, src) } -func (m *SdkAlertsAlertTypeQuery) XXX_Size() int { - return xxx_messageInfo_SdkAlertsAlertTypeQuery.Size(m) +func (m *SdkOpenStoragePolicyReleaseRequest) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.Size(m) } -func (m *SdkAlertsAlertTypeQuery) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsAlertTypeQuery.DiscardUnknown(m) +func (m *SdkOpenStoragePolicyReleaseRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsAlertTypeQuery proto.InternalMessageInfo +var xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest proto.InternalMessageInfo -func (m *SdkAlertsAlertTypeQuery) GetResourceType() ResourceType { - if m != nil { - return m.ResourceType - } - return ResourceType_RESOURCE_TYPE_NONE +// Empty Response +type SdkOpenStoragePolicyReleaseResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsAlertTypeQuery) GetAlertType() int64 { - if m != nil { - return m.AlertType - } - return 0 +func (m *SdkOpenStoragePolicyReleaseResponse) Reset() { *m = SdkOpenStoragePolicyReleaseResponse{} } +func (m *SdkOpenStoragePolicyReleaseResponse) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyReleaseResponse) ProtoMessage() {} +func (*SdkOpenStoragePolicyReleaseResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{78} +} +func (m *SdkOpenStoragePolicyReleaseResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.Unmarshal(m, b) +} +func (m *SdkOpenStoragePolicyReleaseResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.Marshal(b, m, deterministic) +} +func (dst *SdkOpenStoragePolicyReleaseResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.Merge(dst, src) +} +func (m *SdkOpenStoragePolicyReleaseResponse) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.Size(m) +} +func (m *SdkOpenStoragePolicyReleaseResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.DiscardUnknown(m) } -// SdkAlertsResourceIdQuery queries for alerts using resource id -// and it requires that both alert type and resource type be provided -// as well. -type SdkAlertsResourceIdQuery struct { - // Resource type used to build query. - ResourceType ResourceType `protobuf:"varint,1,opt,name=resource_type,json=resourceType,enum=openstorage.api.ResourceType" json:"resource_type,omitempty"` - // Alert type used to build query. - AlertType int64 `protobuf:"varint,2,opt,name=alert_type,json=alertType" json:"alert_type,omitempty"` - // Resource ID used to build query. - ResourceId string `protobuf:"bytes,3,opt,name=resource_id,json=resourceId" json:"resource_id,omitempty"` +var xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse proto.InternalMessageInfo + +// Empty Request +type SdkOpenStoragePolicyDefaultInspectRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsResourceIdQuery) Reset() { *m = SdkAlertsResourceIdQuery{} } -func (m *SdkAlertsResourceIdQuery) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsResourceIdQuery) ProtoMessage() {} -func (*SdkAlertsResourceIdQuery) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{24} +func (m *SdkOpenStoragePolicyDefaultInspectRequest) Reset() { + *m = SdkOpenStoragePolicyDefaultInspectRequest{} } -func (m *SdkAlertsResourceIdQuery) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsResourceIdQuery.Unmarshal(m, b) +func (m *SdkOpenStoragePolicyDefaultInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkOpenStoragePolicyDefaultInspectRequest) ProtoMessage() {} +func (*SdkOpenStoragePolicyDefaultInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{79} } -func (m *SdkAlertsResourceIdQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsResourceIdQuery.Marshal(b, m, deterministic) +func (m *SdkOpenStoragePolicyDefaultInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.Unmarshal(m, b) } -func (dst *SdkAlertsResourceIdQuery) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsResourceIdQuery.Merge(dst, src) +func (m *SdkOpenStoragePolicyDefaultInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.Marshal(b, m, deterministic) } -func (m *SdkAlertsResourceIdQuery) XXX_Size() int { - return xxx_messageInfo_SdkAlertsResourceIdQuery.Size(m) +func (dst *SdkOpenStoragePolicyDefaultInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.Merge(dst, src) } -func (m *SdkAlertsResourceIdQuery) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsResourceIdQuery.DiscardUnknown(m) +func (m *SdkOpenStoragePolicyDefaultInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.Size(m) +} +func (m *SdkOpenStoragePolicyDefaultInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsResourceIdQuery proto.InternalMessageInfo +var xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest proto.InternalMessageInfo -func (m *SdkAlertsResourceIdQuery) GetResourceType() ResourceType { - if m != nil { - return m.ResourceType - } - return ResourceType_RESOURCE_TYPE_NONE +// Define default storage policy response +type SdkOpenStoragePolicyDefaultInspectResponse struct { + // storage policy information which is set as default + StoragePolicy *SdkStoragePolicy `protobuf:"bytes,1,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsResourceIdQuery) GetAlertType() int64 { - if m != nil { - return m.AlertType - } - return 0 +func (m *SdkOpenStoragePolicyDefaultInspectResponse) Reset() { + *m = SdkOpenStoragePolicyDefaultInspectResponse{} +} +func (m *SdkOpenStoragePolicyDefaultInspectResponse) String() string { + return proto.CompactTextString(m) +} +func (*SdkOpenStoragePolicyDefaultInspectResponse) ProtoMessage() {} +func (*SdkOpenStoragePolicyDefaultInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{80} +} +func (m *SdkOpenStoragePolicyDefaultInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.Unmarshal(m, b) +} +func (m *SdkOpenStoragePolicyDefaultInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.Marshal(b, m, deterministic) +} +func (dst *SdkOpenStoragePolicyDefaultInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.Merge(dst, src) +} +func (m *SdkOpenStoragePolicyDefaultInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.Size(m) +} +func (m *SdkOpenStoragePolicyDefaultInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.DiscardUnknown(m) } -func (m *SdkAlertsResourceIdQuery) GetResourceId() string { +var xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse proto.InternalMessageInfo + +func (m *SdkOpenStoragePolicyDefaultInspectResponse) GetStoragePolicy() *SdkStoragePolicy { if m != nil { - return m.ResourceId + return m.StoragePolicy } - return "" + return nil } -// SdkAlertsQuery is one of the query types and a list of options. -// Each query object is one of the three query types and a list of -// options. -type SdkAlertsQuery struct { - // One of the query types can be used to build SdkAlertsQuery. - // - // Types that are valid to be assigned to Query: - // *SdkAlertsQuery_ResourceTypeQuery - // *SdkAlertsQuery_AlertTypeQuery - // *SdkAlertsQuery_ResourceIdQuery - Query isSdkAlertsQuery_Query `protobuf_oneof:"query"` - // Opts is a list of options associated with one of the queries. - Opts []*SdkAlertsOption `protobuf:"bytes,4,rep,name=opts" json:"opts,omitempty"` +// Define a schedule policy request +type SdkSchedulePolicyCreateRequest struct { + // Schedule Policy + SchedulePolicy *SdkSchedulePolicy `protobuf:"bytes,1,opt,name=schedule_policy,json=schedulePolicy" json:"schedule_policy,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsQuery) Reset() { *m = SdkAlertsQuery{} } -func (m *SdkAlertsQuery) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsQuery) ProtoMessage() {} -func (*SdkAlertsQuery) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{25} +func (m *SdkSchedulePolicyCreateRequest) Reset() { *m = SdkSchedulePolicyCreateRequest{} } +func (m *SdkSchedulePolicyCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyCreateRequest) ProtoMessage() {} +func (*SdkSchedulePolicyCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{81} +} +func (m *SdkSchedulePolicyCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyCreateRequest.Unmarshal(m, b) +} +func (m *SdkSchedulePolicyCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyCreateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkSchedulePolicyCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyCreateRequest.Merge(dst, src) +} +func (m *SdkSchedulePolicyCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyCreateRequest.Size(m) +} +func (m *SdkSchedulePolicyCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyCreateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkSchedulePolicyCreateRequest proto.InternalMessageInfo + +func (m *SdkSchedulePolicyCreateRequest) GetSchedulePolicy() *SdkSchedulePolicy { + if m != nil { + return m.SchedulePolicy + } + return nil } -func (m *SdkAlertsQuery) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsQuery.Unmarshal(m, b) + +// Empty response +type SdkSchedulePolicyCreateResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsQuery.Marshal(b, m, deterministic) + +func (m *SdkSchedulePolicyCreateResponse) Reset() { *m = SdkSchedulePolicyCreateResponse{} } +func (m *SdkSchedulePolicyCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyCreateResponse) ProtoMessage() {} +func (*SdkSchedulePolicyCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{82} } -func (dst *SdkAlertsQuery) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsQuery.Merge(dst, src) +func (m *SdkSchedulePolicyCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyCreateResponse.Unmarshal(m, b) } -func (m *SdkAlertsQuery) XXX_Size() int { - return xxx_messageInfo_SdkAlertsQuery.Size(m) +func (m *SdkSchedulePolicyCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyCreateResponse.Marshal(b, m, deterministic) } -func (m *SdkAlertsQuery) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsQuery.DiscardUnknown(m) +func (dst *SdkSchedulePolicyCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyCreateResponse.Merge(dst, src) +} +func (m *SdkSchedulePolicyCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyCreateResponse.Size(m) +} +func (m *SdkSchedulePolicyCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsQuery proto.InternalMessageInfo +var xxx_messageInfo_SdkSchedulePolicyCreateResponse proto.InternalMessageInfo -type isSdkAlertsQuery_Query interface { - isSdkAlertsQuery_Query() +// Define a request to update a schedule policy +type SdkSchedulePolicyUpdateRequest struct { + // Schedule Policy + SchedulePolicy *SdkSchedulePolicy `protobuf:"bytes,1,opt,name=schedule_policy,json=schedulePolicy" json:"schedule_policy,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -type SdkAlertsQuery_ResourceTypeQuery struct { - ResourceTypeQuery *SdkAlertsResourceTypeQuery `protobuf:"bytes,1,opt,name=resource_type_query,json=resourceTypeQuery,oneof"` +func (m *SdkSchedulePolicyUpdateRequest) Reset() { *m = SdkSchedulePolicyUpdateRequest{} } +func (m *SdkSchedulePolicyUpdateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyUpdateRequest) ProtoMessage() {} +func (*SdkSchedulePolicyUpdateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{83} } -type SdkAlertsQuery_AlertTypeQuery struct { - AlertTypeQuery *SdkAlertsAlertTypeQuery `protobuf:"bytes,2,opt,name=alert_type_query,json=alertTypeQuery,oneof"` +func (m *SdkSchedulePolicyUpdateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyUpdateRequest.Unmarshal(m, b) } -type SdkAlertsQuery_ResourceIdQuery struct { - ResourceIdQuery *SdkAlertsResourceIdQuery `protobuf:"bytes,3,opt,name=resource_id_query,json=resourceIdQuery,oneof"` +func (m *SdkSchedulePolicyUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyUpdateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkSchedulePolicyUpdateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyUpdateRequest.Merge(dst, src) +} +func (m *SdkSchedulePolicyUpdateRequest) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyUpdateRequest.Size(m) +} +func (m *SdkSchedulePolicyUpdateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyUpdateRequest.DiscardUnknown(m) } -func (*SdkAlertsQuery_ResourceTypeQuery) isSdkAlertsQuery_Query() {} -func (*SdkAlertsQuery_AlertTypeQuery) isSdkAlertsQuery_Query() {} -func (*SdkAlertsQuery_ResourceIdQuery) isSdkAlertsQuery_Query() {} +var xxx_messageInfo_SdkSchedulePolicyUpdateRequest proto.InternalMessageInfo -func (m *SdkAlertsQuery) GetQuery() isSdkAlertsQuery_Query { +func (m *SdkSchedulePolicyUpdateRequest) GetSchedulePolicy() *SdkSchedulePolicy { if m != nil { - return m.Query + return m.SchedulePolicy } return nil } -func (m *SdkAlertsQuery) GetResourceTypeQuery() *SdkAlertsResourceTypeQuery { - if x, ok := m.GetQuery().(*SdkAlertsQuery_ResourceTypeQuery); ok { - return x.ResourceTypeQuery - } - return nil +// Empty response +type SdkSchedulePolicyUpdateResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsQuery) GetAlertTypeQuery() *SdkAlertsAlertTypeQuery { - if x, ok := m.GetQuery().(*SdkAlertsQuery_AlertTypeQuery); ok { - return x.AlertTypeQuery - } - return nil +func (m *SdkSchedulePolicyUpdateResponse) Reset() { *m = SdkSchedulePolicyUpdateResponse{} } +func (m *SdkSchedulePolicyUpdateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyUpdateResponse) ProtoMessage() {} +func (*SdkSchedulePolicyUpdateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{84} } - -func (m *SdkAlertsQuery) GetResourceIdQuery() *SdkAlertsResourceIdQuery { - if x, ok := m.GetQuery().(*SdkAlertsQuery_ResourceIdQuery); ok { - return x.ResourceIdQuery - } - return nil +func (m *SdkSchedulePolicyUpdateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyUpdateResponse.Unmarshal(m, b) } - -func (m *SdkAlertsQuery) GetOpts() []*SdkAlertsOption { - if m != nil { - return m.Opts - } - return nil +func (m *SdkSchedulePolicyUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyUpdateResponse.Marshal(b, m, deterministic) } - -// XXX_OneofFuncs is for the internal use of the proto package. -func (*SdkAlertsQuery) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _SdkAlertsQuery_OneofMarshaler, _SdkAlertsQuery_OneofUnmarshaler, _SdkAlertsQuery_OneofSizer, []interface{}{ - (*SdkAlertsQuery_ResourceTypeQuery)(nil), - (*SdkAlertsQuery_AlertTypeQuery)(nil), - (*SdkAlertsQuery_ResourceIdQuery)(nil), - } +func (dst *SdkSchedulePolicyUpdateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyUpdateResponse.Merge(dst, src) } - -func _SdkAlertsQuery_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*SdkAlertsQuery) - // query - switch x := m.Query.(type) { - case *SdkAlertsQuery_ResourceTypeQuery: - b.EncodeVarint(1<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.ResourceTypeQuery); err != nil { - return err - } - case *SdkAlertsQuery_AlertTypeQuery: - b.EncodeVarint(2<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.AlertTypeQuery); err != nil { - return err - } - case *SdkAlertsQuery_ResourceIdQuery: - b.EncodeVarint(3<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.ResourceIdQuery); err != nil { - return err - } - case nil: - default: - return fmt.Errorf("SdkAlertsQuery.Query has unexpected type %T", x) - } - return nil +func (m *SdkSchedulePolicyUpdateResponse) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyUpdateResponse.Size(m) +} +func (m *SdkSchedulePolicyUpdateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyUpdateResponse.DiscardUnknown(m) } -func _SdkAlertsQuery_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*SdkAlertsQuery) - switch tag { - case 1: // query.resource_type_query - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkAlertsResourceTypeQuery) - err := b.DecodeMessage(msg) - m.Query = &SdkAlertsQuery_ResourceTypeQuery{msg} - return true, err - case 2: // query.alert_type_query - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkAlertsAlertTypeQuery) - err := b.DecodeMessage(msg) - m.Query = &SdkAlertsQuery_AlertTypeQuery{msg} - return true, err - case 3: // query.resource_id_query - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkAlertsResourceIdQuery) - err := b.DecodeMessage(msg) - m.Query = &SdkAlertsQuery_ResourceIdQuery{msg} - return true, err - default: - return false, nil - } +var xxx_messageInfo_SdkSchedulePolicyUpdateResponse proto.InternalMessageInfo + +// Empty request +type SdkSchedulePolicyEnumerateRequest struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func _SdkAlertsQuery_OneofSizer(msg proto.Message) (n int) { - m := msg.(*SdkAlertsQuery) - // query - switch x := m.Query.(type) { - case *SdkAlertsQuery_ResourceTypeQuery: - s := proto.Size(x.ResourceTypeQuery) - n += 1 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkAlertsQuery_AlertTypeQuery: - s := proto.Size(x.AlertTypeQuery) - n += 1 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkAlertsQuery_ResourceIdQuery: - s := proto.Size(x.ResourceIdQuery) - n += 1 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) - } - return n +func (m *SdkSchedulePolicyEnumerateRequest) Reset() { *m = SdkSchedulePolicyEnumerateRequest{} } +func (m *SdkSchedulePolicyEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyEnumerateRequest) ProtoMessage() {} +func (*SdkSchedulePolicyEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{85} +} +func (m *SdkSchedulePolicyEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.Unmarshal(m, b) +} +func (m *SdkSchedulePolicyEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkSchedulePolicyEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.Merge(dst, src) +} +func (m *SdkSchedulePolicyEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.Size(m) +} +func (m *SdkSchedulePolicyEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.DiscardUnknown(m) } -// SdkAlertsEnumerateRequest is a request message to enumerate alerts. -type SdkAlertsEnumerateWithFiltersRequest struct { - // It is a list of queries to find matching alerts. - // Output of each of these queries is added to a global pool - // and returned as output of an RPC call. - // In that sense alerts are fetched if they match any of the - // queries. - Queries []*SdkAlertsQuery `protobuf:"bytes,1,rep,name=queries" json:"queries,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +var xxx_messageInfo_SdkSchedulePolicyEnumerateRequest proto.InternalMessageInfo + +// Defines a schedule policy enumerate response +type SdkSchedulePolicyEnumerateResponse struct { + // List of Schedule Policy + Policies []*SdkSchedulePolicy `protobuf:"bytes,1,rep,name=policies" json:"policies,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsEnumerateWithFiltersRequest) Reset() { *m = SdkAlertsEnumerateWithFiltersRequest{} } -func (m *SdkAlertsEnumerateWithFiltersRequest) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsEnumerateWithFiltersRequest) ProtoMessage() {} -func (*SdkAlertsEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{26} +func (m *SdkSchedulePolicyEnumerateResponse) Reset() { *m = SdkSchedulePolicyEnumerateResponse{} } +func (m *SdkSchedulePolicyEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyEnumerateResponse) ProtoMessage() {} +func (*SdkSchedulePolicyEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{86} } -func (m *SdkAlertsEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.Unmarshal(m, b) +func (m *SdkSchedulePolicyEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.Unmarshal(m, b) } -func (m *SdkAlertsEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.Marshal(b, m, deterministic) +func (m *SdkSchedulePolicyEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.Marshal(b, m, deterministic) } -func (dst *SdkAlertsEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.Merge(dst, src) +func (dst *SdkSchedulePolicyEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.Merge(dst, src) } -func (m *SdkAlertsEnumerateWithFiltersRequest) XXX_Size() int { - return xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.Size(m) +func (m *SdkSchedulePolicyEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.Size(m) } -func (m *SdkAlertsEnumerateWithFiltersRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest.DiscardUnknown(m) +func (m *SdkSchedulePolicyEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsEnumerateWithFiltersRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkSchedulePolicyEnumerateResponse proto.InternalMessageInfo -func (m *SdkAlertsEnumerateWithFiltersRequest) GetQueries() []*SdkAlertsQuery { +func (m *SdkSchedulePolicyEnumerateResponse) GetPolicies() []*SdkSchedulePolicy { if m != nil { - return m.Queries + return m.Policies } return nil } -// SdkAlertsEnumerateResponse is a list of alerts. -type SdkAlertsEnumerateWithFiltersResponse struct { - // Response contains a list of alerts. - Alerts []*Alert `protobuf:"bytes,1,rep,name=alerts" json:"alerts,omitempty"` +// Define a schedule policy inspection request +type SdkSchedulePolicyInspectRequest struct { + // Name of the schedule Policy + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsEnumerateWithFiltersResponse) Reset() { *m = SdkAlertsEnumerateWithFiltersResponse{} } -func (m *SdkAlertsEnumerateWithFiltersResponse) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsEnumerateWithFiltersResponse) ProtoMessage() {} -func (*SdkAlertsEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{27} +func (m *SdkSchedulePolicyInspectRequest) Reset() { *m = SdkSchedulePolicyInspectRequest{} } +func (m *SdkSchedulePolicyInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyInspectRequest) ProtoMessage() {} +func (*SdkSchedulePolicyInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{87} } -func (m *SdkAlertsEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.Unmarshal(m, b) +func (m *SdkSchedulePolicyInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyInspectRequest.Unmarshal(m, b) } -func (m *SdkAlertsEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.Marshal(b, m, deterministic) +func (m *SdkSchedulePolicyInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyInspectRequest.Marshal(b, m, deterministic) } -func (dst *SdkAlertsEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.Merge(dst, src) +func (dst *SdkSchedulePolicyInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyInspectRequest.Merge(dst, src) } -func (m *SdkAlertsEnumerateWithFiltersResponse) XXX_Size() int { - return xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.Size(m) +func (m *SdkSchedulePolicyInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyInspectRequest.Size(m) } -func (m *SdkAlertsEnumerateWithFiltersResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse.DiscardUnknown(m) +func (m *SdkSchedulePolicyInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsEnumerateWithFiltersResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkSchedulePolicyInspectRequest proto.InternalMessageInfo -func (m *SdkAlertsEnumerateWithFiltersResponse) GetAlerts() []*Alert { +func (m *SdkSchedulePolicyInspectRequest) GetName() string { if m != nil { - return m.Alerts + return m.Name } - return nil + return "" } -// SdkAlertsDeleteRequest is a request message to delete alerts. -type SdkAlertsDeleteRequest struct { - // It takes a list of queries to find matching alerts. - // Matching alerts are deleted. - Queries []*SdkAlertsQuery `protobuf:"bytes,1,rep,name=queries" json:"queries,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a schedule policy inspection response +type SdkSchedulePolicyInspectResponse struct { + // List of Schedule Policy + Policy *SdkSchedulePolicy `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsDeleteRequest) Reset() { *m = SdkAlertsDeleteRequest{} } -func (m *SdkAlertsDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsDeleteRequest) ProtoMessage() {} -func (*SdkAlertsDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{28} +func (m *SdkSchedulePolicyInspectResponse) Reset() { *m = SdkSchedulePolicyInspectResponse{} } +func (m *SdkSchedulePolicyInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyInspectResponse) ProtoMessage() {} +func (*SdkSchedulePolicyInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{88} } -func (m *SdkAlertsDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsDeleteRequest.Unmarshal(m, b) +func (m *SdkSchedulePolicyInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyInspectResponse.Unmarshal(m, b) } -func (m *SdkAlertsDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsDeleteRequest.Marshal(b, m, deterministic) +func (m *SdkSchedulePolicyInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyInspectResponse.Marshal(b, m, deterministic) } -func (dst *SdkAlertsDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsDeleteRequest.Merge(dst, src) +func (dst *SdkSchedulePolicyInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyInspectResponse.Merge(dst, src) } -func (m *SdkAlertsDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkAlertsDeleteRequest.Size(m) +func (m *SdkSchedulePolicyInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyInspectResponse.Size(m) } -func (m *SdkAlertsDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsDeleteRequest.DiscardUnknown(m) +func (m *SdkSchedulePolicyInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyInspectResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsDeleteRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkSchedulePolicyInspectResponse proto.InternalMessageInfo -func (m *SdkAlertsDeleteRequest) GetQueries() []*SdkAlertsQuery { +func (m *SdkSchedulePolicyInspectResponse) GetPolicy() *SdkSchedulePolicy { if m != nil { - return m.Queries + return m.Policy } return nil } -// SdkAlertsDeleteResponse is empty. -type SdkAlertsDeleteResponse struct { +// Define schedule policy deletion request +type SdkSchedulePolicyDeleteRequest struct { + // Name of the schedule policy + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAlertsDeleteResponse) Reset() { *m = SdkAlertsDeleteResponse{} } -func (m *SdkAlertsDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkAlertsDeleteResponse) ProtoMessage() {} -func (*SdkAlertsDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{29} +func (m *SdkSchedulePolicyDeleteRequest) Reset() { *m = SdkSchedulePolicyDeleteRequest{} } +func (m *SdkSchedulePolicyDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyDeleteRequest) ProtoMessage() {} +func (*SdkSchedulePolicyDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{89} } -func (m *SdkAlertsDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAlertsDeleteResponse.Unmarshal(m, b) +func (m *SdkSchedulePolicyDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyDeleteRequest.Unmarshal(m, b) } -func (m *SdkAlertsDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAlertsDeleteResponse.Marshal(b, m, deterministic) +func (m *SdkSchedulePolicyDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyDeleteRequest.Marshal(b, m, deterministic) } -func (dst *SdkAlertsDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAlertsDeleteResponse.Merge(dst, src) +func (dst *SdkSchedulePolicyDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyDeleteRequest.Merge(dst, src) } -func (m *SdkAlertsDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkAlertsDeleteResponse.Size(m) +func (m *SdkSchedulePolicyDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyDeleteRequest.Size(m) } -func (m *SdkAlertsDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAlertsDeleteResponse.DiscardUnknown(m) +func (m *SdkSchedulePolicyDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyDeleteRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkAlertsDeleteResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkSchedulePolicyDeleteRequest proto.InternalMessageInfo -// Alerts is an array of Alert objects -type Alerts struct { - Alert []*Alert `protobuf:"bytes,1,rep,name=alert" json:"alert,omitempty"` +func (m *SdkSchedulePolicyDeleteRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +// Empty response +type SdkSchedulePolicyDeleteResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *Alerts) Reset() { *m = Alerts{} } -func (m *Alerts) String() string { return proto.CompactTextString(m) } -func (*Alerts) ProtoMessage() {} -func (*Alerts) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{30} +func (m *SdkSchedulePolicyDeleteResponse) Reset() { *m = SdkSchedulePolicyDeleteResponse{} } +func (m *SdkSchedulePolicyDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyDeleteResponse) ProtoMessage() {} +func (*SdkSchedulePolicyDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{90} } -func (m *Alerts) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Alerts.Unmarshal(m, b) +func (m *SdkSchedulePolicyDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyDeleteResponse.Unmarshal(m, b) } -func (m *Alerts) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Alerts.Marshal(b, m, deterministic) +func (m *SdkSchedulePolicyDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyDeleteResponse.Marshal(b, m, deterministic) } -func (dst *Alerts) XXX_Merge(src proto.Message) { - xxx_messageInfo_Alerts.Merge(dst, src) +func (dst *SdkSchedulePolicyDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyDeleteResponse.Merge(dst, src) } -func (m *Alerts) XXX_Size() int { - return xxx_messageInfo_Alerts.Size(m) +func (m *SdkSchedulePolicyDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyDeleteResponse.Size(m) } -func (m *Alerts) XXX_DiscardUnknown() { - xxx_messageInfo_Alerts.DiscardUnknown(m) +func (m *SdkSchedulePolicyDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyDeleteResponse.DiscardUnknown(m) } -var xxx_messageInfo_Alerts proto.InternalMessageInfo +var xxx_messageInfo_SdkSchedulePolicyDeleteResponse proto.InternalMessageInfo -func (m *Alerts) GetAlert() []*Alert { +// Defines a daily schedule +type SdkSchedulePolicyIntervalDaily struct { + // Range: 0-23 + Hour int32 `protobuf:"varint,1,opt,name=hour" json:"hour,omitempty"` + // Range: 0-59 + Minute int32 `protobuf:"varint,2,opt,name=minute" json:"minute,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkSchedulePolicyIntervalDaily) Reset() { *m = SdkSchedulePolicyIntervalDaily{} } +func (m *SdkSchedulePolicyIntervalDaily) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyIntervalDaily) ProtoMessage() {} +func (*SdkSchedulePolicyIntervalDaily) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{91} +} +func (m *SdkSchedulePolicyIntervalDaily) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyIntervalDaily.Unmarshal(m, b) +} +func (m *SdkSchedulePolicyIntervalDaily) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyIntervalDaily.Marshal(b, m, deterministic) +} +func (dst *SdkSchedulePolicyIntervalDaily) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyIntervalDaily.Merge(dst, src) +} +func (m *SdkSchedulePolicyIntervalDaily) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyIntervalDaily.Size(m) +} +func (m *SdkSchedulePolicyIntervalDaily) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyIntervalDaily.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkSchedulePolicyIntervalDaily proto.InternalMessageInfo + +func (m *SdkSchedulePolicyIntervalDaily) GetHour() int32 { + if m != nil { + return m.Hour + } + return 0 +} + +func (m *SdkSchedulePolicyIntervalDaily) GetMinute() int32 { if m != nil { - return m.Alert + return m.Minute } - return nil + return 0 } -// ObjectstoreInfo is a structure that has current objectstore info -type ObjectstoreInfo struct { - // UUID of objectstore - Uuid string `protobuf:"bytes,1,opt,name=uuid" json:"uuid,omitempty"` - // VolumeID of volume used by object store - VolumeId string `protobuf:"bytes,2,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Enable/Disable created objectstore - Enabled bool `protobuf:"varint,3,opt,name=enabled" json:"enabled,omitempty"` - // Status of objectstore running/failed - Status string `protobuf:"bytes,4,opt,name=status" json:"status,omitempty"` - // Action being taken on this objectstore - Action int64 `protobuf:"varint,5,opt,name=action" json:"action,omitempty"` - // AccessKey for login into objectstore - AccessKey string `protobuf:"bytes,6,opt,name=access_key,json=accessKey" json:"access_key,omitempty"` - // SecretKey for login into objectstore - SecretKey string `protobuf:"bytes,7,opt,name=secret_key,json=secretKey" json:"secret_key,omitempty"` - // Endpoints for accessing objectstore - Endpoints []string `protobuf:"bytes,8,rep,name=endpoints" json:"endpoints,omitempty"` - // CurrentEndpoint on which objectstore server is accessible - CurrentEndpoint string `protobuf:"bytes,9,opt,name=current_endpoint,json=currentEndpoint" json:"current_endpoint,omitempty"` - // AccessPort is objectstore server port - AccessPort int64 `protobuf:"varint,10,opt,name=access_port,json=accessPort" json:"access_port,omitempty"` - // Region for this objectstore - Region string `protobuf:"bytes,11,opt,name=region" json:"region,omitempty"` +// Defines a weekly schedule +type SdkSchedulePolicyIntervalWeekly struct { + Day SdkTimeWeekday `protobuf:"varint,1,opt,name=day,enum=openstorage.api.SdkTimeWeekday" json:"day,omitempty"` + // Range: 0-23 + Hour int32 `protobuf:"varint,2,opt,name=hour" json:"hour,omitempty"` + // Range: 0-59 + Minute int32 `protobuf:"varint,3,opt,name=minute" json:"minute,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *ObjectstoreInfo) Reset() { *m = ObjectstoreInfo{} } -func (m *ObjectstoreInfo) String() string { return proto.CompactTextString(m) } -func (*ObjectstoreInfo) ProtoMessage() {} -func (*ObjectstoreInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{31} +func (m *SdkSchedulePolicyIntervalWeekly) Reset() { *m = SdkSchedulePolicyIntervalWeekly{} } +func (m *SdkSchedulePolicyIntervalWeekly) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyIntervalWeekly) ProtoMessage() {} +func (*SdkSchedulePolicyIntervalWeekly) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{92} } -func (m *ObjectstoreInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ObjectstoreInfo.Unmarshal(m, b) +func (m *SdkSchedulePolicyIntervalWeekly) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.Unmarshal(m, b) } -func (m *ObjectstoreInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ObjectstoreInfo.Marshal(b, m, deterministic) +func (m *SdkSchedulePolicyIntervalWeekly) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.Marshal(b, m, deterministic) } -func (dst *ObjectstoreInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_ObjectstoreInfo.Merge(dst, src) +func (dst *SdkSchedulePolicyIntervalWeekly) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.Merge(dst, src) } -func (m *ObjectstoreInfo) XXX_Size() int { - return xxx_messageInfo_ObjectstoreInfo.Size(m) +func (m *SdkSchedulePolicyIntervalWeekly) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.Size(m) } -func (m *ObjectstoreInfo) XXX_DiscardUnknown() { - xxx_messageInfo_ObjectstoreInfo.DiscardUnknown(m) +func (m *SdkSchedulePolicyIntervalWeekly) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.DiscardUnknown(m) } -var xxx_messageInfo_ObjectstoreInfo proto.InternalMessageInfo +var xxx_messageInfo_SdkSchedulePolicyIntervalWeekly proto.InternalMessageInfo -func (m *ObjectstoreInfo) GetUuid() string { +func (m *SdkSchedulePolicyIntervalWeekly) GetDay() SdkTimeWeekday { if m != nil { - return m.Uuid + return m.Day } - return "" + return SdkTimeWeekday_SdkTimeWeekdaySunday } -func (m *ObjectstoreInfo) GetVolumeId() string { +func (m *SdkSchedulePolicyIntervalWeekly) GetHour() int32 { if m != nil { - return m.VolumeId + return m.Hour } - return "" + return 0 } -func (m *ObjectstoreInfo) GetEnabled() bool { +func (m *SdkSchedulePolicyIntervalWeekly) GetMinute() int32 { if m != nil { - return m.Enabled + return m.Minute } - return false + return 0 } -func (m *ObjectstoreInfo) GetStatus() string { - if m != nil { - return m.Status - } - return "" +// Defines a monthly schedule +type SdkSchedulePolicyIntervalMonthly struct { + // Range: 1-28 + Day int32 `protobuf:"varint,1,opt,name=day" json:"day,omitempty"` + // Range: 0-59 + Hour int32 `protobuf:"varint,2,opt,name=hour" json:"hour,omitempty"` + // Range: 0-59 + Minute int32 `protobuf:"varint,3,opt,name=minute" json:"minute,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ObjectstoreInfo) GetAction() int64 { +func (m *SdkSchedulePolicyIntervalMonthly) Reset() { *m = SdkSchedulePolicyIntervalMonthly{} } +func (m *SdkSchedulePolicyIntervalMonthly) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyIntervalMonthly) ProtoMessage() {} +func (*SdkSchedulePolicyIntervalMonthly) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{93} +} +func (m *SdkSchedulePolicyIntervalMonthly) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.Unmarshal(m, b) +} +func (m *SdkSchedulePolicyIntervalMonthly) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.Marshal(b, m, deterministic) +} +func (dst *SdkSchedulePolicyIntervalMonthly) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.Merge(dst, src) +} +func (m *SdkSchedulePolicyIntervalMonthly) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.Size(m) +} +func (m *SdkSchedulePolicyIntervalMonthly) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkSchedulePolicyIntervalMonthly proto.InternalMessageInfo + +func (m *SdkSchedulePolicyIntervalMonthly) GetDay() int32 { if m != nil { - return m.Action + return m.Day } return 0 } -func (m *ObjectstoreInfo) GetAccessKey() string { +func (m *SdkSchedulePolicyIntervalMonthly) GetHour() int32 { if m != nil { - return m.AccessKey + return m.Hour } - return "" + return 0 } -func (m *ObjectstoreInfo) GetSecretKey() string { +func (m *SdkSchedulePolicyIntervalMonthly) GetMinute() int32 { if m != nil { - return m.SecretKey + return m.Minute } - return "" + return 0 } -func (m *ObjectstoreInfo) GetEndpoints() []string { - if m != nil { - return m.Endpoints - } - return nil +// Defines a periodic schedule +type SdkSchedulePolicyIntervalPeriodic struct { + // Specify the number of seconds between intervals + Seconds int64 `protobuf:"varint,1,opt,name=seconds" json:"seconds,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ObjectstoreInfo) GetCurrentEndpoint() string { - if m != nil { - return m.CurrentEndpoint - } - return "" +func (m *SdkSchedulePolicyIntervalPeriodic) Reset() { *m = SdkSchedulePolicyIntervalPeriodic{} } +func (m *SdkSchedulePolicyIntervalPeriodic) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyIntervalPeriodic) ProtoMessage() {} +func (*SdkSchedulePolicyIntervalPeriodic) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{94} +} +func (m *SdkSchedulePolicyIntervalPeriodic) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.Unmarshal(m, b) +} +func (m *SdkSchedulePolicyIntervalPeriodic) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.Marshal(b, m, deterministic) +} +func (dst *SdkSchedulePolicyIntervalPeriodic) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.Merge(dst, src) +} +func (m *SdkSchedulePolicyIntervalPeriodic) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.Size(m) +} +func (m *SdkSchedulePolicyIntervalPeriodic) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.DiscardUnknown(m) } -func (m *ObjectstoreInfo) GetAccessPort() int64 { +var xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic proto.InternalMessageInfo + +func (m *SdkSchedulePolicyIntervalPeriodic) GetSeconds() int64 { if m != nil { - return m.AccessPort + return m.Seconds } return 0 } -func (m *ObjectstoreInfo) GetRegion() string { - if m != nil { - return m.Region - } - return "" +// Defines a schedule policy interval +type SdkSchedulePolicyInterval struct { + // Number of instances to retain + Retain int64 `protobuf:"varint,1,opt,name=retain" json:"retain,omitempty"` + // Start oneof at field number 200 to allow for expansion + // + // Types that are valid to be assigned to PeriodType: + // *SdkSchedulePolicyInterval_Daily + // *SdkSchedulePolicyInterval_Weekly + // *SdkSchedulePolicyInterval_Monthly + // *SdkSchedulePolicyInterval_Periodic + PeriodType isSdkSchedulePolicyInterval_PeriodType `protobuf_oneof:"period_type"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -// VolumeCreateRequest is a structure that has the locator, source and spec -// to create a volume -type VolumeCreateRequest struct { - // User specified volume name and labels - Locator *VolumeLocator `protobuf:"bytes,1,opt,name=locator" json:"locator,omitempty"` - // Source to create volume - Source *Source `protobuf:"bytes,2,opt,name=source" json:"source,omitempty"` - // The storage spec for the volume - Spec *VolumeSpec `protobuf:"bytes,3,opt,name=spec" json:"spec,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkSchedulePolicyInterval) Reset() { *m = SdkSchedulePolicyInterval{} } +func (m *SdkSchedulePolicyInterval) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicyInterval) ProtoMessage() {} +func (*SdkSchedulePolicyInterval) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{95} } - -func (m *VolumeCreateRequest) Reset() { *m = VolumeCreateRequest{} } -func (m *VolumeCreateRequest) String() string { return proto.CompactTextString(m) } -func (*VolumeCreateRequest) ProtoMessage() {} -func (*VolumeCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{32} +func (m *SdkSchedulePolicyInterval) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicyInterval.Unmarshal(m, b) } -func (m *VolumeCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeCreateRequest.Unmarshal(m, b) +func (m *SdkSchedulePolicyInterval) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicyInterval.Marshal(b, m, deterministic) } -func (m *VolumeCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeCreateRequest.Marshal(b, m, deterministic) +func (dst *SdkSchedulePolicyInterval) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicyInterval.Merge(dst, src) } -func (dst *VolumeCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeCreateRequest.Merge(dst, src) +func (m *SdkSchedulePolicyInterval) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicyInterval.Size(m) } -func (m *VolumeCreateRequest) XXX_Size() int { - return xxx_messageInfo_VolumeCreateRequest.Size(m) +func (m *SdkSchedulePolicyInterval) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicyInterval.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkSchedulePolicyInterval proto.InternalMessageInfo + +type isSdkSchedulePolicyInterval_PeriodType interface { + isSdkSchedulePolicyInterval_PeriodType() +} + +type SdkSchedulePolicyInterval_Daily struct { + Daily *SdkSchedulePolicyIntervalDaily `protobuf:"bytes,200,opt,name=daily,oneof"` +} +type SdkSchedulePolicyInterval_Weekly struct { + Weekly *SdkSchedulePolicyIntervalWeekly `protobuf:"bytes,201,opt,name=weekly,oneof"` +} +type SdkSchedulePolicyInterval_Monthly struct { + Monthly *SdkSchedulePolicyIntervalMonthly `protobuf:"bytes,202,opt,name=monthly,oneof"` } -func (m *VolumeCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeCreateRequest.DiscardUnknown(m) +type SdkSchedulePolicyInterval_Periodic struct { + Periodic *SdkSchedulePolicyIntervalPeriodic `protobuf:"bytes,203,opt,name=periodic,oneof"` } -var xxx_messageInfo_VolumeCreateRequest proto.InternalMessageInfo +func (*SdkSchedulePolicyInterval_Daily) isSdkSchedulePolicyInterval_PeriodType() {} +func (*SdkSchedulePolicyInterval_Weekly) isSdkSchedulePolicyInterval_PeriodType() {} +func (*SdkSchedulePolicyInterval_Monthly) isSdkSchedulePolicyInterval_PeriodType() {} +func (*SdkSchedulePolicyInterval_Periodic) isSdkSchedulePolicyInterval_PeriodType() {} -func (m *VolumeCreateRequest) GetLocator() *VolumeLocator { +func (m *SdkSchedulePolicyInterval) GetPeriodType() isSdkSchedulePolicyInterval_PeriodType { if m != nil { - return m.Locator + return m.PeriodType } return nil } -func (m *VolumeCreateRequest) GetSource() *Source { +func (m *SdkSchedulePolicyInterval) GetRetain() int64 { if m != nil { - return m.Source + return m.Retain + } + return 0 +} + +func (m *SdkSchedulePolicyInterval) GetDaily() *SdkSchedulePolicyIntervalDaily { + if x, ok := m.GetPeriodType().(*SdkSchedulePolicyInterval_Daily); ok { + return x.Daily } return nil } -func (m *VolumeCreateRequest) GetSpec() *VolumeSpec { - if m != nil { - return m.Spec +func (m *SdkSchedulePolicyInterval) GetWeekly() *SdkSchedulePolicyIntervalWeekly { + if x, ok := m.GetPeriodType().(*SdkSchedulePolicyInterval_Weekly); ok { + return x.Weekly } return nil } -// VolumeResponse is a structure that wraps an error. -type VolumeResponse struct { - // Error message - // - // in: body - // Required: true - Error string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkSchedulePolicyInterval) GetMonthly() *SdkSchedulePolicyIntervalMonthly { + if x, ok := m.GetPeriodType().(*SdkSchedulePolicyInterval_Monthly); ok { + return x.Monthly + } + return nil } -func (m *VolumeResponse) Reset() { *m = VolumeResponse{} } -func (m *VolumeResponse) String() string { return proto.CompactTextString(m) } -func (*VolumeResponse) ProtoMessage() {} -func (*VolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{33} +func (m *SdkSchedulePolicyInterval) GetPeriodic() *SdkSchedulePolicyIntervalPeriodic { + if x, ok := m.GetPeriodType().(*SdkSchedulePolicyInterval_Periodic); ok { + return x.Periodic + } + return nil } -func (m *VolumeResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeResponse.Unmarshal(m, b) + +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SdkSchedulePolicyInterval) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SdkSchedulePolicyInterval_OneofMarshaler, _SdkSchedulePolicyInterval_OneofUnmarshaler, _SdkSchedulePolicyInterval_OneofSizer, []interface{}{ + (*SdkSchedulePolicyInterval_Daily)(nil), + (*SdkSchedulePolicyInterval_Weekly)(nil), + (*SdkSchedulePolicyInterval_Monthly)(nil), + (*SdkSchedulePolicyInterval_Periodic)(nil), + } } -func (m *VolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeResponse.Marshal(b, m, deterministic) + +func _SdkSchedulePolicyInterval_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SdkSchedulePolicyInterval) + // period_type + switch x := m.PeriodType.(type) { + case *SdkSchedulePolicyInterval_Daily: + b.EncodeVarint(200<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Daily); err != nil { + return err + } + case *SdkSchedulePolicyInterval_Weekly: + b.EncodeVarint(201<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Weekly); err != nil { + return err + } + case *SdkSchedulePolicyInterval_Monthly: + b.EncodeVarint(202<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Monthly); err != nil { + return err + } + case *SdkSchedulePolicyInterval_Periodic: + b.EncodeVarint(203<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Periodic); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("SdkSchedulePolicyInterval.PeriodType has unexpected type %T", x) + } + return nil } -func (dst *VolumeResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeResponse.Merge(dst, src) + +func _SdkSchedulePolicyInterval_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SdkSchedulePolicyInterval) + switch tag { + case 200: // period_type.daily + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkSchedulePolicyIntervalDaily) + err := b.DecodeMessage(msg) + m.PeriodType = &SdkSchedulePolicyInterval_Daily{msg} + return true, err + case 201: // period_type.weekly + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkSchedulePolicyIntervalWeekly) + err := b.DecodeMessage(msg) + m.PeriodType = &SdkSchedulePolicyInterval_Weekly{msg} + return true, err + case 202: // period_type.monthly + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkSchedulePolicyIntervalMonthly) + err := b.DecodeMessage(msg) + m.PeriodType = &SdkSchedulePolicyInterval_Monthly{msg} + return true, err + case 203: // period_type.periodic + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkSchedulePolicyIntervalPeriodic) + err := b.DecodeMessage(msg) + m.PeriodType = &SdkSchedulePolicyInterval_Periodic{msg} + return true, err + default: + return false, nil + } } -func (m *VolumeResponse) XXX_Size() int { - return xxx_messageInfo_VolumeResponse.Size(m) + +func _SdkSchedulePolicyInterval_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SdkSchedulePolicyInterval) + // period_type + switch x := m.PeriodType.(type) { + case *SdkSchedulePolicyInterval_Daily: + s := proto.Size(x.Daily) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkSchedulePolicyInterval_Weekly: + s := proto.Size(x.Weekly) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkSchedulePolicyInterval_Monthly: + s := proto.Size(x.Monthly) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkSchedulePolicyInterval_Periodic: + s := proto.Size(x.Periodic) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n } -func (m *VolumeResponse) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeResponse.DiscardUnknown(m) + +// Defines a schedule policy +type SdkSchedulePolicy struct { + // Name of the schedule policy + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + // Schedule policies + Schedules []*SdkSchedulePolicyInterval `protobuf:"bytes,2,rep,name=schedules" json:"schedules,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -var xxx_messageInfo_VolumeResponse proto.InternalMessageInfo +func (m *SdkSchedulePolicy) Reset() { *m = SdkSchedulePolicy{} } +func (m *SdkSchedulePolicy) String() string { return proto.CompactTextString(m) } +func (*SdkSchedulePolicy) ProtoMessage() {} +func (*SdkSchedulePolicy) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{96} +} +func (m *SdkSchedulePolicy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkSchedulePolicy.Unmarshal(m, b) +} +func (m *SdkSchedulePolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkSchedulePolicy.Marshal(b, m, deterministic) +} +func (dst *SdkSchedulePolicy) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkSchedulePolicy.Merge(dst, src) +} +func (m *SdkSchedulePolicy) XXX_Size() int { + return xxx_messageInfo_SdkSchedulePolicy.Size(m) +} +func (m *SdkSchedulePolicy) XXX_DiscardUnknown() { + xxx_messageInfo_SdkSchedulePolicy.DiscardUnknown(m) +} -func (m *VolumeResponse) GetError() string { +var xxx_messageInfo_SdkSchedulePolicy proto.InternalMessageInfo + +func (m *SdkSchedulePolicy) GetName() string { if m != nil { - return m.Error + return m.Name } return "" } -// VolumeCreateResponse -type VolumeCreateResponse struct { - // ID of the newly created volume - // - // in: body - // Required: true - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - // Volume Response - // - // in: body - // Required: true - VolumeResponse *VolumeResponse `protobuf:"bytes,2,opt,name=volume_response,json=volumeResponse" json:"volume_response,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkSchedulePolicy) GetSchedules() []*SdkSchedulePolicyInterval { + if m != nil { + return m.Schedules + } + return nil } -func (m *VolumeCreateResponse) Reset() { *m = VolumeCreateResponse{} } -func (m *VolumeCreateResponse) String() string { return proto.CompactTextString(m) } -func (*VolumeCreateResponse) ProtoMessage() {} -func (*VolumeCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{34} +// Defines a request to create credentials +type SdkCredentialCreateRequest struct { + // Name of the credential + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + // (optional) Name of bucket + Bucket string `protobuf:"bytes,2,opt,name=bucket" json:"bucket,omitempty"` + // (optional) Key used to encrypt the data + EncryptionKey string `protobuf:"bytes,3,opt,name=encryption_key,json=encryptionKey" json:"encryption_key,omitempty"` + // Ownership of the credential. Collaborators and groups may be + // added here with their appropriate ACLS. + Ownership *Ownership `protobuf:"bytes,4,opt,name=ownership" json:"ownership,omitempty"` + // use_proxy indicates if a proxy must be used + UseProxy bool `protobuf:"varint,5,opt,name=use_proxy,json=useProxy" json:"use_proxy,omitempty"` + // iamPolicy indicates if IAM creds must be used for access + IamPolicy bool `protobuf:"varint,6,opt,name=iam_policy,json=iamPolicy" json:"iam_policy,omitempty"` + // s3StorageClass for object puts, empty indicates default STANDARD + S3StorageClass string `protobuf:"bytes,7,opt,name=s3_storage_class,json=s3StorageClass" json:"s3_storage_class,omitempty"` + // Start at field number 200 to allow for expansion + // + // Types that are valid to be assigned to CredentialType: + // *SdkCredentialCreateRequest_AwsCredential + // *SdkCredentialCreateRequest_AzureCredential + // *SdkCredentialCreateRequest_GoogleCredential + CredentialType isSdkCredentialCreateRequest_CredentialType `protobuf_oneof:"credential_type"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeCreateResponse.Unmarshal(m, b) + +func (m *SdkCredentialCreateRequest) Reset() { *m = SdkCredentialCreateRequest{} } +func (m *SdkCredentialCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialCreateRequest) ProtoMessage() {} +func (*SdkCredentialCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{97} } -func (m *VolumeCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeCreateResponse.Marshal(b, m, deterministic) +func (m *SdkCredentialCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialCreateRequest.Unmarshal(m, b) } -func (dst *VolumeCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeCreateResponse.Merge(dst, src) +func (m *SdkCredentialCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialCreateRequest.Marshal(b, m, deterministic) } -func (m *VolumeCreateResponse) XXX_Size() int { - return xxx_messageInfo_VolumeCreateResponse.Size(m) +func (dst *SdkCredentialCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialCreateRequest.Merge(dst, src) } -func (m *VolumeCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeCreateResponse.DiscardUnknown(m) +func (m *SdkCredentialCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkCredentialCreateRequest.Size(m) } - -var xxx_messageInfo_VolumeCreateResponse proto.InternalMessageInfo - -func (m *VolumeCreateResponse) GetId() string { - if m != nil { - return m.Id - } - return "" +func (m *SdkCredentialCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialCreateRequest.DiscardUnknown(m) } -func (m *VolumeCreateResponse) GetVolumeResponse() *VolumeResponse { - if m != nil { - return m.VolumeResponse - } - return nil -} +var xxx_messageInfo_SdkCredentialCreateRequest proto.InternalMessageInfo -// VolumeStateAction specifies desired actions. -type VolumeStateAction struct { - // Attach or Detach volume - Attach VolumeActionParam `protobuf:"varint,1,opt,name=attach,enum=openstorage.api.VolumeActionParam" json:"attach,omitempty"` - // Mount or unmount volume - Mount VolumeActionParam `protobuf:"varint,2,opt,name=mount,enum=openstorage.api.VolumeActionParam" json:"mount,omitempty"` - // MountPath Path where the device is mounted - MountPath string `protobuf:"bytes,3,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` - // DevicePath Path returned in attach - DevicePath string `protobuf:"bytes,4,opt,name=device_path,json=devicePath" json:"device_path,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type isSdkCredentialCreateRequest_CredentialType interface { + isSdkCredentialCreateRequest_CredentialType() } -func (m *VolumeStateAction) Reset() { *m = VolumeStateAction{} } -func (m *VolumeStateAction) String() string { return proto.CompactTextString(m) } -func (*VolumeStateAction) ProtoMessage() {} -func (*VolumeStateAction) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{35} -} -func (m *VolumeStateAction) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeStateAction.Unmarshal(m, b) -} -func (m *VolumeStateAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeStateAction.Marshal(b, m, deterministic) -} -func (dst *VolumeStateAction) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeStateAction.Merge(dst, src) +type SdkCredentialCreateRequest_AwsCredential struct { + AwsCredential *SdkAwsCredentialRequest `protobuf:"bytes,200,opt,name=aws_credential,json=awsCredential,oneof"` } -func (m *VolumeStateAction) XXX_Size() int { - return xxx_messageInfo_VolumeStateAction.Size(m) +type SdkCredentialCreateRequest_AzureCredential struct { + AzureCredential *SdkAzureCredentialRequest `protobuf:"bytes,201,opt,name=azure_credential,json=azureCredential,oneof"` } -func (m *VolumeStateAction) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeStateAction.DiscardUnknown(m) +type SdkCredentialCreateRequest_GoogleCredential struct { + GoogleCredential *SdkGoogleCredentialRequest `protobuf:"bytes,202,opt,name=google_credential,json=googleCredential,oneof"` } -var xxx_messageInfo_VolumeStateAction proto.InternalMessageInfo +func (*SdkCredentialCreateRequest_AwsCredential) isSdkCredentialCreateRequest_CredentialType() {} +func (*SdkCredentialCreateRequest_AzureCredential) isSdkCredentialCreateRequest_CredentialType() {} +func (*SdkCredentialCreateRequest_GoogleCredential) isSdkCredentialCreateRequest_CredentialType() {} -func (m *VolumeStateAction) GetAttach() VolumeActionParam { +func (m *SdkCredentialCreateRequest) GetCredentialType() isSdkCredentialCreateRequest_CredentialType { if m != nil { - return m.Attach + return m.CredentialType } - return VolumeActionParam_VOLUME_ACTION_PARAM_NONE + return nil } -func (m *VolumeStateAction) GetMount() VolumeActionParam { +func (m *SdkCredentialCreateRequest) GetName() string { if m != nil { - return m.Mount + return m.Name } - return VolumeActionParam_VOLUME_ACTION_PARAM_NONE + return "" } -func (m *VolumeStateAction) GetMountPath() string { +func (m *SdkCredentialCreateRequest) GetBucket() string { if m != nil { - return m.MountPath + return m.Bucket } return "" } -func (m *VolumeStateAction) GetDevicePath() string { +func (m *SdkCredentialCreateRequest) GetEncryptionKey() string { if m != nil { - return m.DevicePath + return m.EncryptionKey } return "" } -// VolumeSet specifies a request to update a volume. -type VolumeSetRequest struct { - // User specified volume name and labels - Locator *VolumeLocator `protobuf:"bytes,1,opt,name=locator" json:"locator,omitempty"` - // The storage spec for the volume - Spec *VolumeSpec `protobuf:"bytes,2,opt,name=spec" json:"spec,omitempty"` - // State modification on this volume. - Action *VolumeStateAction `protobuf:"bytes,3,opt,name=action" json:"action,omitempty"` - // additional options - // required for the Set operation. - Options map[string]string `protobuf:"bytes,4,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCredentialCreateRequest) GetOwnership() *Ownership { + if m != nil { + return m.Ownership + } + return nil } -func (m *VolumeSetRequest) Reset() { *m = VolumeSetRequest{} } -func (m *VolumeSetRequest) String() string { return proto.CompactTextString(m) } -func (*VolumeSetRequest) ProtoMessage() {} -func (*VolumeSetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{36} -} -func (m *VolumeSetRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeSetRequest.Unmarshal(m, b) -} -func (m *VolumeSetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeSetRequest.Marshal(b, m, deterministic) -} -func (dst *VolumeSetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeSetRequest.Merge(dst, src) -} -func (m *VolumeSetRequest) XXX_Size() int { - return xxx_messageInfo_VolumeSetRequest.Size(m) -} -func (m *VolumeSetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeSetRequest.DiscardUnknown(m) +func (m *SdkCredentialCreateRequest) GetUseProxy() bool { + if m != nil { + return m.UseProxy + } + return false } -var xxx_messageInfo_VolumeSetRequest proto.InternalMessageInfo - -func (m *VolumeSetRequest) GetLocator() *VolumeLocator { +func (m *SdkCredentialCreateRequest) GetIamPolicy() bool { if m != nil { - return m.Locator + return m.IamPolicy } - return nil + return false } -func (m *VolumeSetRequest) GetSpec() *VolumeSpec { +func (m *SdkCredentialCreateRequest) GetS3StorageClass() string { if m != nil { - return m.Spec + return m.S3StorageClass } - return nil + return "" } -func (m *VolumeSetRequest) GetAction() *VolumeStateAction { - if m != nil { - return m.Action +func (m *SdkCredentialCreateRequest) GetAwsCredential() *SdkAwsCredentialRequest { + if x, ok := m.GetCredentialType().(*SdkCredentialCreateRequest_AwsCredential); ok { + return x.AwsCredential } return nil } -func (m *VolumeSetRequest) GetOptions() map[string]string { - if m != nil { - return m.Options +func (m *SdkCredentialCreateRequest) GetAzureCredential() *SdkAzureCredentialRequest { + if x, ok := m.GetCredentialType().(*SdkCredentialCreateRequest_AzureCredential); ok { + return x.AzureCredential } return nil } -// VolumeSetResponse -type VolumeSetResponse struct { - // Volume - Volume *Volume `protobuf:"bytes,1,opt,name=volume" json:"volume,omitempty"` - // VolumeResponse - VolumeResponse *VolumeResponse `protobuf:"bytes,2,opt,name=volume_response,json=volumeResponse" json:"volume_response,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCredentialCreateRequest) GetGoogleCredential() *SdkGoogleCredentialRequest { + if x, ok := m.GetCredentialType().(*SdkCredentialCreateRequest_GoogleCredential); ok { + return x.GoogleCredential + } + return nil } -func (m *VolumeSetResponse) Reset() { *m = VolumeSetResponse{} } -func (m *VolumeSetResponse) String() string { return proto.CompactTextString(m) } -func (*VolumeSetResponse) ProtoMessage() {} -func (*VolumeSetResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{37} -} -func (m *VolumeSetResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeSetResponse.Unmarshal(m, b) -} -func (m *VolumeSetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeSetResponse.Marshal(b, m, deterministic) -} -func (dst *VolumeSetResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeSetResponse.Merge(dst, src) -} -func (m *VolumeSetResponse) XXX_Size() int { - return xxx_messageInfo_VolumeSetResponse.Size(m) -} -func (m *VolumeSetResponse) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeSetResponse.DiscardUnknown(m) +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SdkCredentialCreateRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SdkCredentialCreateRequest_OneofMarshaler, _SdkCredentialCreateRequest_OneofUnmarshaler, _SdkCredentialCreateRequest_OneofSizer, []interface{}{ + (*SdkCredentialCreateRequest_AwsCredential)(nil), + (*SdkCredentialCreateRequest_AzureCredential)(nil), + (*SdkCredentialCreateRequest_GoogleCredential)(nil), + } } -var xxx_messageInfo_VolumeSetResponse proto.InternalMessageInfo +func _SdkCredentialCreateRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SdkCredentialCreateRequest) + // credential_type + switch x := m.CredentialType.(type) { + case *SdkCredentialCreateRequest_AwsCredential: + b.EncodeVarint(200<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AwsCredential); err != nil { + return err + } + case *SdkCredentialCreateRequest_AzureCredential: + b.EncodeVarint(201<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AzureCredential); err != nil { + return err + } + case *SdkCredentialCreateRequest_GoogleCredential: + b.EncodeVarint(202<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.GoogleCredential); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("SdkCredentialCreateRequest.CredentialType has unexpected type %T", x) + } + return nil +} -func (m *VolumeSetResponse) GetVolume() *Volume { - if m != nil { - return m.Volume +func _SdkCredentialCreateRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SdkCredentialCreateRequest) + switch tag { + case 200: // credential_type.aws_credential + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAwsCredentialRequest) + err := b.DecodeMessage(msg) + m.CredentialType = &SdkCredentialCreateRequest_AwsCredential{msg} + return true, err + case 201: // credential_type.azure_credential + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAzureCredentialRequest) + err := b.DecodeMessage(msg) + m.CredentialType = &SdkCredentialCreateRequest_AzureCredential{msg} + return true, err + case 202: // credential_type.google_credential + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkGoogleCredentialRequest) + err := b.DecodeMessage(msg) + m.CredentialType = &SdkCredentialCreateRequest_GoogleCredential{msg} + return true, err + default: + return false, nil } - return nil } -func (m *VolumeSetResponse) GetVolumeResponse() *VolumeResponse { - if m != nil { - return m.VolumeResponse +func _SdkCredentialCreateRequest_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SdkCredentialCreateRequest) + // credential_type + switch x := m.CredentialType.(type) { + case *SdkCredentialCreateRequest_AwsCredential: + s := proto.Size(x.AwsCredential) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkCredentialCreateRequest_AzureCredential: + s := proto.Size(x.AzureCredential) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkCredentialCreateRequest_GoogleCredential: + s := proto.Size(x.GoogleCredential) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) } - return nil + return n } -// SnapCreateRequest specifies a request to create a snapshot of given volume. -type SnapCreateRequest struct { - // volume id - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - Locator *VolumeLocator `protobuf:"bytes,2,opt,name=locator" json:"locator,omitempty"` - Readonly bool `protobuf:"varint,3,opt,name=readonly" json:"readonly,omitempty"` - // NoRetry indicates not to retry snapshot creation in the background. - NoRetry bool `protobuf:"varint,4,opt,name=no_retry,json=noRetry" json:"no_retry,omitempty"` +// Defines a response from creating a credential +type SdkCredentialCreateResponse struct { + // Id of the credentials + CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SnapCreateRequest) Reset() { *m = SnapCreateRequest{} } -func (m *SnapCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SnapCreateRequest) ProtoMessage() {} -func (*SnapCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{38} +func (m *SdkCredentialCreateResponse) Reset() { *m = SdkCredentialCreateResponse{} } +func (m *SdkCredentialCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialCreateResponse) ProtoMessage() {} +func (*SdkCredentialCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{98} } -func (m *SnapCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SnapCreateRequest.Unmarshal(m, b) +func (m *SdkCredentialCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialCreateResponse.Unmarshal(m, b) } -func (m *SnapCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SnapCreateRequest.Marshal(b, m, deterministic) +func (m *SdkCredentialCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialCreateResponse.Marshal(b, m, deterministic) } -func (dst *SnapCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SnapCreateRequest.Merge(dst, src) +func (dst *SdkCredentialCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialCreateResponse.Merge(dst, src) } -func (m *SnapCreateRequest) XXX_Size() int { - return xxx_messageInfo_SnapCreateRequest.Size(m) +func (m *SdkCredentialCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkCredentialCreateResponse.Size(m) } -func (m *SnapCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SnapCreateRequest.DiscardUnknown(m) +func (m *SdkCredentialCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SnapCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCredentialCreateResponse proto.InternalMessageInfo -func (m *SnapCreateRequest) GetId() string { +func (m *SdkCredentialCreateResponse) GetCredentialId() string { if m != nil { - return m.Id + return m.CredentialId } return "" } -func (m *SnapCreateRequest) GetLocator() *VolumeLocator { - if m != nil { - return m.Locator - } - return nil -} - -func (m *SnapCreateRequest) GetReadonly() bool { - if m != nil { - return m.Readonly - } - return false -} - -func (m *SnapCreateRequest) GetNoRetry() bool { - if m != nil { - return m.NoRetry - } - return false -} - -// SnapCreateRequest specifies a response that get's returned when creating a snapshot. -type SnapCreateResponse struct { - // VolumeCreateResponse - // - // in: body - // Required: true - VolumeCreateResponse *VolumeCreateResponse `protobuf:"bytes,1,opt,name=volume_create_response,json=volumeCreateResponse" json:"volume_create_response,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines credentials for Aws/S3 endpoints +type SdkAwsCredentialRequest struct { + // Access key + AccessKey string `protobuf:"bytes,1,opt,name=access_key,json=accessKey" json:"access_key,omitempty"` + // Secret key + SecretKey string `protobuf:"bytes,2,opt,name=secret_key,json=secretKey" json:"secret_key,omitempty"` + // Endpoint + Endpoint string `protobuf:"bytes,3,opt,name=endpoint" json:"endpoint,omitempty"` + // Region + Region string `protobuf:"bytes,4,opt,name=region" json:"region,omitempty"` + // (optional) Disable SSL connection + DisableSsl bool `protobuf:"varint,5,opt,name=disable_ssl,json=disableSsl" json:"disable_ssl,omitempty"` + // (optional) Disable path-style access + DisablePathStyle bool `protobuf:"varint,6,opt,name=disable_path_style,json=disablePathStyle" json:"disable_path_style,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SnapCreateResponse) Reset() { *m = SnapCreateResponse{} } -func (m *SnapCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SnapCreateResponse) ProtoMessage() {} -func (*SnapCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{39} +func (m *SdkAwsCredentialRequest) Reset() { *m = SdkAwsCredentialRequest{} } +func (m *SdkAwsCredentialRequest) String() string { return proto.CompactTextString(m) } +func (*SdkAwsCredentialRequest) ProtoMessage() {} +func (*SdkAwsCredentialRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{99} } -func (m *SnapCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SnapCreateResponse.Unmarshal(m, b) +func (m *SdkAwsCredentialRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAwsCredentialRequest.Unmarshal(m, b) } -func (m *SnapCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SnapCreateResponse.Marshal(b, m, deterministic) +func (m *SdkAwsCredentialRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAwsCredentialRequest.Marshal(b, m, deterministic) } -func (dst *SnapCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SnapCreateResponse.Merge(dst, src) +func (dst *SdkAwsCredentialRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAwsCredentialRequest.Merge(dst, src) } -func (m *SnapCreateResponse) XXX_Size() int { - return xxx_messageInfo_SnapCreateResponse.Size(m) +func (m *SdkAwsCredentialRequest) XXX_Size() int { + return xxx_messageInfo_SdkAwsCredentialRequest.Size(m) } -func (m *SnapCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SnapCreateResponse.DiscardUnknown(m) +func (m *SdkAwsCredentialRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAwsCredentialRequest.DiscardUnknown(m) } -var xxx_messageInfo_SnapCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkAwsCredentialRequest proto.InternalMessageInfo -func (m *SnapCreateResponse) GetVolumeCreateResponse() *VolumeCreateResponse { +func (m *SdkAwsCredentialRequest) GetAccessKey() string { if m != nil { - return m.VolumeCreateResponse + return m.AccessKey } - return nil + return "" } -// VolumeInfo -type VolumeInfo struct { - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - Path string `protobuf:"bytes,2,opt,name=path" json:"path,omitempty"` - Storage *VolumeSpec `protobuf:"bytes,3,opt,name=storage" json:"storage,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkAwsCredentialRequest) GetSecretKey() string { + if m != nil { + return m.SecretKey + } + return "" } -func (m *VolumeInfo) Reset() { *m = VolumeInfo{} } -func (m *VolumeInfo) String() string { return proto.CompactTextString(m) } -func (*VolumeInfo) ProtoMessage() {} -func (*VolumeInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{40} -} -func (m *VolumeInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeInfo.Unmarshal(m, b) -} -func (m *VolumeInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeInfo.Marshal(b, m, deterministic) -} -func (dst *VolumeInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeInfo.Merge(dst, src) -} -func (m *VolumeInfo) XXX_Size() int { - return xxx_messageInfo_VolumeInfo.Size(m) -} -func (m *VolumeInfo) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeInfo.DiscardUnknown(m) +func (m *SdkAwsCredentialRequest) GetEndpoint() string { + if m != nil { + return m.Endpoint + } + return "" } -var xxx_messageInfo_VolumeInfo proto.InternalMessageInfo - -func (m *VolumeInfo) GetVolumeId() string { +func (m *SdkAwsCredentialRequest) GetRegion() string { if m != nil { - return m.VolumeId + return m.Region } return "" } -func (m *VolumeInfo) GetPath() string { +func (m *SdkAwsCredentialRequest) GetDisableSsl() bool { if m != nil { - return m.Path + return m.DisableSsl } - return "" + return false } -func (m *VolumeInfo) GetStorage() *VolumeSpec { +func (m *SdkAwsCredentialRequest) GetDisablePathStyle() bool { if m != nil { - return m.Storage + return m.DisablePathStyle } - return nil + return false } -// VolumeConsumer identifies a consumer for a Volume. An example of a VolumeConsumer -// would be a Pod in Kubernetes who has mounted the PersistentVolumeClaim for the -// Volume -type VolumeConsumer struct { - // Name is the name of the volume consumer - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - // Namespace is the namespace of the volume consumer - Namespace string `protobuf:"bytes,2,opt,name=namespace" json:"namespace,omitempty"` - // Type is the type of the consumer. E.g a Kubernetes pod - Type string `protobuf:"bytes,3,opt,name=type" json:"type,omitempty"` - // NodeID is the identifier of the node on which the consumer is running. This - // identifier would be from the perspective of the container runtime or - // orchestrator under which the volume consumer resides. For example, NodeID - // can be name of a minion in Kubernetes. - NodeId string `protobuf:"bytes,4,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` - // OwnerName is the name of the entity who owns this volume consumer - OwnerName string `protobuf:"bytes,5,opt,name=owner_name,json=ownerName" json:"owner_name,omitempty"` - // OwnerType is the type of the entity who owns this volume consumer. The type would - // be from the perspective of the container runtime or the orchestrator under which - // the volume consumer resides. For e.g OwnerType can be a Deployment in Kubernetes. - OwnerType string `protobuf:"bytes,6,opt,name=owner_type,json=ownerType" json:"owner_type,omitempty"` +// Defines credentials for Azure +type SdkAzureCredentialRequest struct { + // Account name + AccountName string `protobuf:"bytes,1,opt,name=account_name,json=accountName" json:"account_name,omitempty"` + // Account key + AccountKey string `protobuf:"bytes,2,opt,name=account_key,json=accountKey" json:"account_key,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *VolumeConsumer) Reset() { *m = VolumeConsumer{} } -func (m *VolumeConsumer) String() string { return proto.CompactTextString(m) } -func (*VolumeConsumer) ProtoMessage() {} -func (*VolumeConsumer) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{41} +func (m *SdkAzureCredentialRequest) Reset() { *m = SdkAzureCredentialRequest{} } +func (m *SdkAzureCredentialRequest) String() string { return proto.CompactTextString(m) } +func (*SdkAzureCredentialRequest) ProtoMessage() {} +func (*SdkAzureCredentialRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{100} } -func (m *VolumeConsumer) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumeConsumer.Unmarshal(m, b) +func (m *SdkAzureCredentialRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAzureCredentialRequest.Unmarshal(m, b) } -func (m *VolumeConsumer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumeConsumer.Marshal(b, m, deterministic) +func (m *SdkAzureCredentialRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAzureCredentialRequest.Marshal(b, m, deterministic) } -func (dst *VolumeConsumer) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumeConsumer.Merge(dst, src) +func (dst *SdkAzureCredentialRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAzureCredentialRequest.Merge(dst, src) } -func (m *VolumeConsumer) XXX_Size() int { - return xxx_messageInfo_VolumeConsumer.Size(m) +func (m *SdkAzureCredentialRequest) XXX_Size() int { + return xxx_messageInfo_SdkAzureCredentialRequest.Size(m) } -func (m *VolumeConsumer) XXX_DiscardUnknown() { - xxx_messageInfo_VolumeConsumer.DiscardUnknown(m) +func (m *SdkAzureCredentialRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAzureCredentialRequest.DiscardUnknown(m) } -var xxx_messageInfo_VolumeConsumer proto.InternalMessageInfo +var xxx_messageInfo_SdkAzureCredentialRequest proto.InternalMessageInfo -func (m *VolumeConsumer) GetName() string { +func (m *SdkAzureCredentialRequest) GetAccountName() string { if m != nil { - return m.Name + return m.AccountName } return "" } -func (m *VolumeConsumer) GetNamespace() string { +func (m *SdkAzureCredentialRequest) GetAccountKey() string { if m != nil { - return m.Namespace + return m.AccountKey } return "" } -func (m *VolumeConsumer) GetType() string { - if m != nil { - return m.Type - } - return "" +// Defines credentials for Google +type SdkGoogleCredentialRequest struct { + // Project ID + ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + // JSON Key + JsonKey string `protobuf:"bytes,2,opt,name=json_key,json=jsonKey" json:"json_key,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *VolumeConsumer) GetNodeId() string { - if m != nil { - return m.NodeId - } - return "" +func (m *SdkGoogleCredentialRequest) Reset() { *m = SdkGoogleCredentialRequest{} } +func (m *SdkGoogleCredentialRequest) String() string { return proto.CompactTextString(m) } +func (*SdkGoogleCredentialRequest) ProtoMessage() {} +func (*SdkGoogleCredentialRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{101} +} +func (m *SdkGoogleCredentialRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkGoogleCredentialRequest.Unmarshal(m, b) +} +func (m *SdkGoogleCredentialRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkGoogleCredentialRequest.Marshal(b, m, deterministic) +} +func (dst *SdkGoogleCredentialRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkGoogleCredentialRequest.Merge(dst, src) +} +func (m *SdkGoogleCredentialRequest) XXX_Size() int { + return xxx_messageInfo_SdkGoogleCredentialRequest.Size(m) +} +func (m *SdkGoogleCredentialRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkGoogleCredentialRequest.DiscardUnknown(m) } -func (m *VolumeConsumer) GetOwnerName() string { +var xxx_messageInfo_SdkGoogleCredentialRequest proto.InternalMessageInfo + +func (m *SdkGoogleCredentialRequest) GetProjectId() string { if m != nil { - return m.OwnerName + return m.ProjectId } return "" } -func (m *VolumeConsumer) GetOwnerType() string { +func (m *SdkGoogleCredentialRequest) GetJsonKey() string { if m != nil { - return m.OwnerType + return m.JsonKey } return "" } -// GraphDriverChanges represent a list of changes between the filesystem layers -// specified by the ID and Parent. // Parent may be an empty string, in which -// case there is no parent. -// Where the Path is the filesystem path within the layered filesystem -type GraphDriverChanges struct { - Path string `protobuf:"bytes,1,opt,name=path" json:"path,omitempty"` - Kind GraphDriverChangeType `protobuf:"varint,2,opt,name=kind,enum=openstorage.api.GraphDriverChangeType" json:"kind,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines the response for AWS/S3 credentials +type SdkAwsCredentialResponse struct { + // Access key + AccessKey string `protobuf:"bytes,2,opt,name=access_key,json=accessKey" json:"access_key,omitempty"` + // Endpoint + Endpoint string `protobuf:"bytes,3,opt,name=endpoint" json:"endpoint,omitempty"` + // Region + Region string `protobuf:"bytes,4,opt,name=region" json:"region,omitempty"` + // (optional) Disable SSL connection + DisableSsl bool `protobuf:"varint,5,opt,name=disable_ssl,json=disableSsl" json:"disable_ssl,omitempty"` + // (optional) Disable path-style access + DisablePathStyle bool `protobuf:"varint,6,opt,name=disable_path_style,json=disablePathStyle" json:"disable_path_style,omitempty"` + // (optional) Storage class for s3 puts + S3StorageClass string `protobuf:"bytes,7,opt,name=s3_storage_class,json=s3StorageClass" json:"s3_storage_class,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *GraphDriverChanges) Reset() { *m = GraphDriverChanges{} } -func (m *GraphDriverChanges) String() string { return proto.CompactTextString(m) } -func (*GraphDriverChanges) ProtoMessage() {} -func (*GraphDriverChanges) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{42} +func (m *SdkAwsCredentialResponse) Reset() { *m = SdkAwsCredentialResponse{} } +func (m *SdkAwsCredentialResponse) String() string { return proto.CompactTextString(m) } +func (*SdkAwsCredentialResponse) ProtoMessage() {} +func (*SdkAwsCredentialResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{102} } -func (m *GraphDriverChanges) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_GraphDriverChanges.Unmarshal(m, b) +func (m *SdkAwsCredentialResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAwsCredentialResponse.Unmarshal(m, b) } -func (m *GraphDriverChanges) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_GraphDriverChanges.Marshal(b, m, deterministic) +func (m *SdkAwsCredentialResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAwsCredentialResponse.Marshal(b, m, deterministic) } -func (dst *GraphDriverChanges) XXX_Merge(src proto.Message) { - xxx_messageInfo_GraphDriverChanges.Merge(dst, src) +func (dst *SdkAwsCredentialResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAwsCredentialResponse.Merge(dst, src) } -func (m *GraphDriverChanges) XXX_Size() int { - return xxx_messageInfo_GraphDriverChanges.Size(m) +func (m *SdkAwsCredentialResponse) XXX_Size() int { + return xxx_messageInfo_SdkAwsCredentialResponse.Size(m) } -func (m *GraphDriverChanges) XXX_DiscardUnknown() { - xxx_messageInfo_GraphDriverChanges.DiscardUnknown(m) +func (m *SdkAwsCredentialResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAwsCredentialResponse.DiscardUnknown(m) } -var xxx_messageInfo_GraphDriverChanges proto.InternalMessageInfo +var xxx_messageInfo_SdkAwsCredentialResponse proto.InternalMessageInfo -func (m *GraphDriverChanges) GetPath() string { +func (m *SdkAwsCredentialResponse) GetAccessKey() string { if m != nil { - return m.Path + return m.AccessKey } return "" } -func (m *GraphDriverChanges) GetKind() GraphDriverChangeType { +func (m *SdkAwsCredentialResponse) GetEndpoint() string { if m != nil { - return m.Kind + return m.Endpoint } - return GraphDriverChangeType_GRAPH_DRIVER_CHANGE_TYPE_NONE + return "" } -// ClusterResponse specifies a response that gets returned when requesting the cluster -type ClusterResponse struct { - // Error code - // - // in: body - Error string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkAwsCredentialResponse) GetRegion() string { + if m != nil { + return m.Region + } + return "" } -func (m *ClusterResponse) Reset() { *m = ClusterResponse{} } -func (m *ClusterResponse) String() string { return proto.CompactTextString(m) } -func (*ClusterResponse) ProtoMessage() {} -func (*ClusterResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{43} -} -func (m *ClusterResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterResponse.Unmarshal(m, b) -} -func (m *ClusterResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterResponse.Marshal(b, m, deterministic) -} -func (dst *ClusterResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterResponse.Merge(dst, src) -} -func (m *ClusterResponse) XXX_Size() int { - return xxx_messageInfo_ClusterResponse.Size(m) -} -func (m *ClusterResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterResponse.DiscardUnknown(m) +func (m *SdkAwsCredentialResponse) GetDisableSsl() bool { + if m != nil { + return m.DisableSsl + } + return false } -var xxx_messageInfo_ClusterResponse proto.InternalMessageInfo +func (m *SdkAwsCredentialResponse) GetDisablePathStyle() bool { + if m != nil { + return m.DisablePathStyle + } + return false +} -func (m *ClusterResponse) GetError() string { +func (m *SdkAwsCredentialResponse) GetS3StorageClass() string { if m != nil { - return m.Error + return m.S3StorageClass } return "" } -// Active Request -type ActiveRequest struct { - ReqestKV map[int64]string `protobuf:"bytes,1,rep,name=ReqestKV" json:"ReqestKV,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines the response for Azure credentials +type SdkAzureCredentialResponse struct { + // Account name + AccountName string `protobuf:"bytes,2,opt,name=account_name,json=accountName" json:"account_name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ActiveRequest) Reset() { *m = ActiveRequest{} } -func (m *ActiveRequest) String() string { return proto.CompactTextString(m) } -func (*ActiveRequest) ProtoMessage() {} -func (*ActiveRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{44} +func (m *SdkAzureCredentialResponse) Reset() { *m = SdkAzureCredentialResponse{} } +func (m *SdkAzureCredentialResponse) String() string { return proto.CompactTextString(m) } +func (*SdkAzureCredentialResponse) ProtoMessage() {} +func (*SdkAzureCredentialResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{103} } -func (m *ActiveRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ActiveRequest.Unmarshal(m, b) +func (m *SdkAzureCredentialResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkAzureCredentialResponse.Unmarshal(m, b) } -func (m *ActiveRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ActiveRequest.Marshal(b, m, deterministic) +func (m *SdkAzureCredentialResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkAzureCredentialResponse.Marshal(b, m, deterministic) } -func (dst *ActiveRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ActiveRequest.Merge(dst, src) +func (dst *SdkAzureCredentialResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkAzureCredentialResponse.Merge(dst, src) } -func (m *ActiveRequest) XXX_Size() int { - return xxx_messageInfo_ActiveRequest.Size(m) +func (m *SdkAzureCredentialResponse) XXX_Size() int { + return xxx_messageInfo_SdkAzureCredentialResponse.Size(m) } -func (m *ActiveRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ActiveRequest.DiscardUnknown(m) +func (m *SdkAzureCredentialResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkAzureCredentialResponse.DiscardUnknown(m) } -var xxx_messageInfo_ActiveRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkAzureCredentialResponse proto.InternalMessageInfo -func (m *ActiveRequest) GetReqestKV() map[int64]string { +func (m *SdkAzureCredentialResponse) GetAccountName() string { if m != nil { - return m.ReqestKV + return m.AccountName } - return nil + return "" } -// Active Requests -type ActiveRequests struct { - RequestCount int64 `protobuf:"varint,1,opt,name=RequestCount" json:"RequestCount,omitempty"` - ActiveRequest []*ActiveRequest `protobuf:"bytes,2,rep,name=ActiveRequest" json:"ActiveRequest,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines the response for Google credentials +type SdkGoogleCredentialResponse struct { + // Project ID + ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ActiveRequests) Reset() { *m = ActiveRequests{} } -func (m *ActiveRequests) String() string { return proto.CompactTextString(m) } -func (*ActiveRequests) ProtoMessage() {} -func (*ActiveRequests) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{45} +func (m *SdkGoogleCredentialResponse) Reset() { *m = SdkGoogleCredentialResponse{} } +func (m *SdkGoogleCredentialResponse) String() string { return proto.CompactTextString(m) } +func (*SdkGoogleCredentialResponse) ProtoMessage() {} +func (*SdkGoogleCredentialResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{104} } -func (m *ActiveRequests) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ActiveRequests.Unmarshal(m, b) +func (m *SdkGoogleCredentialResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkGoogleCredentialResponse.Unmarshal(m, b) } -func (m *ActiveRequests) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ActiveRequests.Marshal(b, m, deterministic) +func (m *SdkGoogleCredentialResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkGoogleCredentialResponse.Marshal(b, m, deterministic) } -func (dst *ActiveRequests) XXX_Merge(src proto.Message) { - xxx_messageInfo_ActiveRequests.Merge(dst, src) +func (dst *SdkGoogleCredentialResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkGoogleCredentialResponse.Merge(dst, src) } -func (m *ActiveRequests) XXX_Size() int { - return xxx_messageInfo_ActiveRequests.Size(m) +func (m *SdkGoogleCredentialResponse) XXX_Size() int { + return xxx_messageInfo_SdkGoogleCredentialResponse.Size(m) } -func (m *ActiveRequests) XXX_DiscardUnknown() { - xxx_messageInfo_ActiveRequests.DiscardUnknown(m) +func (m *SdkGoogleCredentialResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkGoogleCredentialResponse.DiscardUnknown(m) } -var xxx_messageInfo_ActiveRequests proto.InternalMessageInfo - -func (m *ActiveRequests) GetRequestCount() int64 { - if m != nil { - return m.RequestCount - } - return 0 -} +var xxx_messageInfo_SdkGoogleCredentialResponse proto.InternalMessageInfo -func (m *ActiveRequests) GetActiveRequest() []*ActiveRequest { +func (m *SdkGoogleCredentialResponse) GetProjectId() string { if m != nil { - return m.ActiveRequest + return m.ProjectId } - return nil + return "" } -// GroupSnapCreateRequest specifies a request to create a snapshot of given group. -type GroupSnapCreateRequest struct { - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - Labels map[string]string `protobuf:"bytes,2,rep,name=Labels" json:"Labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - VolumeIds []string `protobuf:"bytes,3,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Empty request +type SdkCredentialEnumerateRequest struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *GroupSnapCreateRequest) Reset() { *m = GroupSnapCreateRequest{} } -func (m *GroupSnapCreateRequest) String() string { return proto.CompactTextString(m) } -func (*GroupSnapCreateRequest) ProtoMessage() {} -func (*GroupSnapCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{46} +func (m *SdkCredentialEnumerateRequest) Reset() { *m = SdkCredentialEnumerateRequest{} } +func (m *SdkCredentialEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialEnumerateRequest) ProtoMessage() {} +func (*SdkCredentialEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{105} } -func (m *GroupSnapCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_GroupSnapCreateRequest.Unmarshal(m, b) +func (m *SdkCredentialEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialEnumerateRequest.Unmarshal(m, b) } -func (m *GroupSnapCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_GroupSnapCreateRequest.Marshal(b, m, deterministic) +func (m *SdkCredentialEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialEnumerateRequest.Marshal(b, m, deterministic) } -func (dst *GroupSnapCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_GroupSnapCreateRequest.Merge(dst, src) +func (dst *SdkCredentialEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialEnumerateRequest.Merge(dst, src) } -func (m *GroupSnapCreateRequest) XXX_Size() int { - return xxx_messageInfo_GroupSnapCreateRequest.Size(m) +func (m *SdkCredentialEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkCredentialEnumerateRequest.Size(m) } -func (m *GroupSnapCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_GroupSnapCreateRequest.DiscardUnknown(m) +func (m *SdkCredentialEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialEnumerateRequest.DiscardUnknown(m) } -var xxx_messageInfo_GroupSnapCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCredentialEnumerateRequest proto.InternalMessageInfo -func (m *GroupSnapCreateRequest) GetId() string { - if m != nil { - return m.Id - } - return "" +// Defines response for a enumeration of credentials +type SdkCredentialEnumerateResponse struct { + // List of credentials + CredentialIds []string `protobuf:"bytes,1,rep,name=credential_ids,json=credentialIds" json:"credential_ids,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *GroupSnapCreateRequest) GetLabels() map[string]string { - if m != nil { - return m.Labels - } - return nil +func (m *SdkCredentialEnumerateResponse) Reset() { *m = SdkCredentialEnumerateResponse{} } +func (m *SdkCredentialEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialEnumerateResponse) ProtoMessage() {} +func (*SdkCredentialEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{106} +} +func (m *SdkCredentialEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialEnumerateResponse.Unmarshal(m, b) +} +func (m *SdkCredentialEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialEnumerateResponse.Marshal(b, m, deterministic) +} +func (dst *SdkCredentialEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialEnumerateResponse.Merge(dst, src) +} +func (m *SdkCredentialEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkCredentialEnumerateResponse.Size(m) +} +func (m *SdkCredentialEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialEnumerateResponse.DiscardUnknown(m) } -func (m *GroupSnapCreateRequest) GetVolumeIds() []string { +var xxx_messageInfo_SdkCredentialEnumerateResponse proto.InternalMessageInfo + +func (m *SdkCredentialEnumerateResponse) GetCredentialIds() []string { if m != nil { - return m.VolumeIds + return m.CredentialIds } return nil } -// GroupSnapCreateRequest specifies a response that get's returned when creating a group snapshot. -type GroupSnapCreateResponse struct { - // Created snapshots - // - // in: body - // Required: true - Snapshots map[string]*SnapCreateResponse `protobuf:"bytes,1,rep,name=snapshots" json:"snapshots,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // Error message - // - // in: body - // Required: true - Error string `protobuf:"bytes,2,opt,name=error" json:"error,omitempty"` +// Defines the request to inspection for credentials +type SdkCredentialInspectRequest struct { + // Id of the credential + CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *GroupSnapCreateResponse) Reset() { *m = GroupSnapCreateResponse{} } -func (m *GroupSnapCreateResponse) String() string { return proto.CompactTextString(m) } -func (*GroupSnapCreateResponse) ProtoMessage() {} -func (*GroupSnapCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{47} +func (m *SdkCredentialInspectRequest) Reset() { *m = SdkCredentialInspectRequest{} } +func (m *SdkCredentialInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialInspectRequest) ProtoMessage() {} +func (*SdkCredentialInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{107} } -func (m *GroupSnapCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_GroupSnapCreateResponse.Unmarshal(m, b) +func (m *SdkCredentialInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialInspectRequest.Unmarshal(m, b) } -func (m *GroupSnapCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_GroupSnapCreateResponse.Marshal(b, m, deterministic) +func (m *SdkCredentialInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialInspectRequest.Marshal(b, m, deterministic) } -func (dst *GroupSnapCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_GroupSnapCreateResponse.Merge(dst, src) +func (dst *SdkCredentialInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialInspectRequest.Merge(dst, src) } -func (m *GroupSnapCreateResponse) XXX_Size() int { - return xxx_messageInfo_GroupSnapCreateResponse.Size(m) +func (m *SdkCredentialInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkCredentialInspectRequest.Size(m) } -func (m *GroupSnapCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_GroupSnapCreateResponse.DiscardUnknown(m) +func (m *SdkCredentialInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_GroupSnapCreateResponse proto.InternalMessageInfo - -func (m *GroupSnapCreateResponse) GetSnapshots() map[string]*SnapCreateResponse { - if m != nil { - return m.Snapshots - } - return nil -} +var xxx_messageInfo_SdkCredentialInspectRequest proto.InternalMessageInfo -func (m *GroupSnapCreateResponse) GetError() string { +func (m *SdkCredentialInspectRequest) GetCredentialId() string { if m != nil { - return m.Error + return m.CredentialId } return "" } -// StorageNode describes the state of the node -type StorageNode struct { - // Id of the node - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - // Cpu usage of the node - Cpu float64 `protobuf:"fixed64,2,opt,name=cpu" json:"cpu,omitempty"` - // Total memory of the node - MemTotal uint64 `protobuf:"varint,3,opt,name=mem_total,json=memTotal" json:"mem_total,omitempty"` - // Used memory of the node - MemUsed uint64 `protobuf:"varint,4,opt,name=mem_used,json=memUsed" json:"mem_used,omitempty"` - // Free memory of the node - MemFree uint64 `protobuf:"varint,5,opt,name=mem_free,json=memFree" json:"mem_free,omitempty"` - // Average load (percentage) - AvgLoad int64 `protobuf:"varint,6,opt,name=avg_load,json=avgLoad" json:"avg_load,omitempty"` - // Node status - Status Status `protobuf:"varint,7,opt,name=status,enum=openstorage.api.Status" json:"status,omitempty"` - // List of disks on the node - Disks map[string]*StorageResource `protobuf:"bytes,9,rep,name=disks" json:"disks,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // List of storage pools this node supports - Pools []*StoragePool `protobuf:"bytes,10,rep,name=pools" json:"pools,omitempty"` - // Management IP - MgmtIp string `protobuf:"bytes,11,opt,name=mgmt_ip,json=mgmtIp" json:"mgmt_ip,omitempty"` - // Data IP - DataIp string `protobuf:"bytes,12,opt,name=data_ip,json=dataIp" json:"data_ip,omitempty"` - // Hostname of the node - Hostname string `protobuf:"bytes,15,opt,name=hostname" json:"hostname,omitempty"` - // User defined labels for the node - NodeLabels map[string]string `protobuf:"bytes,16,rep,name=node_labels,json=nodeLabels" json:"node_labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // SchedulerNodeName is name of the node in scheduler context. It can be - // empty if unable to get the name from the scheduler. - SchedulerNodeName string `protobuf:"bytes,17,opt,name=scheduler_node_name,json=schedulerNodeName" json:"scheduler_node_name,omitempty"` - // HardwareType is the type of the hardware the node has - HWType HardwareType `protobuf:"varint,18,opt,name=HWType,enum=openstorage.api.HardwareType" json:"HWType,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines the response to an inspection of a credential. +// This response uses OneOf proto style. Depending on your programming language +// you will need to check if the value of credential_type is one of the ones below. +type SdkCredentialInspectResponse struct { + // Credential id + CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + // Name of the credential + Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + // (optional) Name of bucket + Bucket string `protobuf:"bytes,3,opt,name=bucket" json:"bucket,omitempty"` + // Ownership of the credential + Ownership *Ownership `protobuf:"bytes,4,opt,name=ownership" json:"ownership,omitempty"` + // proxy flag for the credential + UseProxy bool `protobuf:"varint,5,opt,name=use_proxy,json=useProxy" json:"use_proxy,omitempty"` + // iamPolicy indicates if IAM creds must be used for access + IamPolicy bool `protobuf:"varint,6,opt,name=iam_policy,json=iamPolicy" json:"iam_policy,omitempty"` + // Start at field number 200 for expansion support + // + // Types that are valid to be assigned to CredentialType: + // *SdkCredentialInspectResponse_AwsCredential + // *SdkCredentialInspectResponse_AzureCredential + // *SdkCredentialInspectResponse_GoogleCredential + CredentialType isSdkCredentialInspectResponse_CredentialType `protobuf_oneof:"credential_type"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *StorageNode) Reset() { *m = StorageNode{} } -func (m *StorageNode) String() string { return proto.CompactTextString(m) } -func (*StorageNode) ProtoMessage() {} -func (*StorageNode) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{48} +func (m *SdkCredentialInspectResponse) Reset() { *m = SdkCredentialInspectResponse{} } +func (m *SdkCredentialInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialInspectResponse) ProtoMessage() {} +func (*SdkCredentialInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{108} +} +func (m *SdkCredentialInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialInspectResponse.Unmarshal(m, b) +} +func (m *SdkCredentialInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialInspectResponse.Marshal(b, m, deterministic) +} +func (dst *SdkCredentialInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialInspectResponse.Merge(dst, src) +} +func (m *SdkCredentialInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkCredentialInspectResponse.Size(m) } -func (m *StorageNode) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_StorageNode.Unmarshal(m, b) +func (m *SdkCredentialInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialInspectResponse.DiscardUnknown(m) } -func (m *StorageNode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_StorageNode.Marshal(b, m, deterministic) + +var xxx_messageInfo_SdkCredentialInspectResponse proto.InternalMessageInfo + +type isSdkCredentialInspectResponse_CredentialType interface { + isSdkCredentialInspectResponse_CredentialType() } -func (dst *StorageNode) XXX_Merge(src proto.Message) { - xxx_messageInfo_StorageNode.Merge(dst, src) + +type SdkCredentialInspectResponse_AwsCredential struct { + AwsCredential *SdkAwsCredentialResponse `protobuf:"bytes,200,opt,name=aws_credential,json=awsCredential,oneof"` } -func (m *StorageNode) XXX_Size() int { - return xxx_messageInfo_StorageNode.Size(m) +type SdkCredentialInspectResponse_AzureCredential struct { + AzureCredential *SdkAzureCredentialResponse `protobuf:"bytes,201,opt,name=azure_credential,json=azureCredential,oneof"` } -func (m *StorageNode) XXX_DiscardUnknown() { - xxx_messageInfo_StorageNode.DiscardUnknown(m) +type SdkCredentialInspectResponse_GoogleCredential struct { + GoogleCredential *SdkGoogleCredentialResponse `protobuf:"bytes,202,opt,name=google_credential,json=googleCredential,oneof"` } -var xxx_messageInfo_StorageNode proto.InternalMessageInfo +func (*SdkCredentialInspectResponse_AwsCredential) isSdkCredentialInspectResponse_CredentialType() {} +func (*SdkCredentialInspectResponse_AzureCredential) isSdkCredentialInspectResponse_CredentialType() {} +func (*SdkCredentialInspectResponse_GoogleCredential) isSdkCredentialInspectResponse_CredentialType() { +} -func (m *StorageNode) GetId() string { +func (m *SdkCredentialInspectResponse) GetCredentialType() isSdkCredentialInspectResponse_CredentialType { if m != nil { - return m.Id + return m.CredentialType } - return "" + return nil } -func (m *StorageNode) GetCpu() float64 { +func (m *SdkCredentialInspectResponse) GetCredentialId() string { if m != nil { - return m.Cpu + return m.CredentialId } - return 0 + return "" } -func (m *StorageNode) GetMemTotal() uint64 { +func (m *SdkCredentialInspectResponse) GetName() string { if m != nil { - return m.MemTotal + return m.Name } - return 0 + return "" } -func (m *StorageNode) GetMemUsed() uint64 { +func (m *SdkCredentialInspectResponse) GetBucket() string { if m != nil { - return m.MemUsed + return m.Bucket } - return 0 + return "" } -func (m *StorageNode) GetMemFree() uint64 { +func (m *SdkCredentialInspectResponse) GetOwnership() *Ownership { if m != nil { - return m.MemFree + return m.Ownership } - return 0 + return nil } -func (m *StorageNode) GetAvgLoad() int64 { +func (m *SdkCredentialInspectResponse) GetUseProxy() bool { if m != nil { - return m.AvgLoad + return m.UseProxy } - return 0 + return false } -func (m *StorageNode) GetStatus() Status { +func (m *SdkCredentialInspectResponse) GetIamPolicy() bool { if m != nil { - return m.Status + return m.IamPolicy } - return Status_STATUS_NONE + return false } -func (m *StorageNode) GetDisks() map[string]*StorageResource { - if m != nil { - return m.Disks +func (m *SdkCredentialInspectResponse) GetAwsCredential() *SdkAwsCredentialResponse { + if x, ok := m.GetCredentialType().(*SdkCredentialInspectResponse_AwsCredential); ok { + return x.AwsCredential } return nil } -func (m *StorageNode) GetPools() []*StoragePool { - if m != nil { - return m.Pools +func (m *SdkCredentialInspectResponse) GetAzureCredential() *SdkAzureCredentialResponse { + if x, ok := m.GetCredentialType().(*SdkCredentialInspectResponse_AzureCredential); ok { + return x.AzureCredential } return nil } -func (m *StorageNode) GetMgmtIp() string { - if m != nil { - return m.MgmtIp +func (m *SdkCredentialInspectResponse) GetGoogleCredential() *SdkGoogleCredentialResponse { + if x, ok := m.GetCredentialType().(*SdkCredentialInspectResponse_GoogleCredential); ok { + return x.GoogleCredential } - return "" + return nil } -func (m *StorageNode) GetDataIp() string { - if m != nil { - return m.DataIp +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SdkCredentialInspectResponse) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SdkCredentialInspectResponse_OneofMarshaler, _SdkCredentialInspectResponse_OneofUnmarshaler, _SdkCredentialInspectResponse_OneofSizer, []interface{}{ + (*SdkCredentialInspectResponse_AwsCredential)(nil), + (*SdkCredentialInspectResponse_AzureCredential)(nil), + (*SdkCredentialInspectResponse_GoogleCredential)(nil), } - return "" } -func (m *StorageNode) GetHostname() string { - if m != nil { - return m.Hostname +func _SdkCredentialInspectResponse_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SdkCredentialInspectResponse) + // credential_type + switch x := m.CredentialType.(type) { + case *SdkCredentialInspectResponse_AwsCredential: + b.EncodeVarint(200<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AwsCredential); err != nil { + return err + } + case *SdkCredentialInspectResponse_AzureCredential: + b.EncodeVarint(201<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AzureCredential); err != nil { + return err + } + case *SdkCredentialInspectResponse_GoogleCredential: + b.EncodeVarint(202<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.GoogleCredential); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("SdkCredentialInspectResponse.CredentialType has unexpected type %T", x) } - return "" + return nil } -func (m *StorageNode) GetNodeLabels() map[string]string { - if m != nil { - return m.NodeLabels +func _SdkCredentialInspectResponse_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SdkCredentialInspectResponse) + switch tag { + case 200: // credential_type.aws_credential + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAwsCredentialResponse) + err := b.DecodeMessage(msg) + m.CredentialType = &SdkCredentialInspectResponse_AwsCredential{msg} + return true, err + case 201: // credential_type.azure_credential + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkAzureCredentialResponse) + err := b.DecodeMessage(msg) + m.CredentialType = &SdkCredentialInspectResponse_AzureCredential{msg} + return true, err + case 202: // credential_type.google_credential + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkGoogleCredentialResponse) + err := b.DecodeMessage(msg) + m.CredentialType = &SdkCredentialInspectResponse_GoogleCredential{msg} + return true, err + default: + return false, nil } - return nil } -func (m *StorageNode) GetSchedulerNodeName() string { - if m != nil { - return m.SchedulerNodeName +func _SdkCredentialInspectResponse_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SdkCredentialInspectResponse) + // credential_type + switch x := m.CredentialType.(type) { + case *SdkCredentialInspectResponse_AwsCredential: + s := proto.Size(x.AwsCredential) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkCredentialInspectResponse_AzureCredential: + s := proto.Size(x.AzureCredential) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkCredentialInspectResponse_GoogleCredential: + s := proto.Size(x.GoogleCredential) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) } - return "" + return n } -func (m *StorageNode) GetHWType() HardwareType { +// Defines the request to delete credentials +type SdkCredentialDeleteRequest struct { + // Id for credentials + CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkCredentialDeleteRequest) Reset() { *m = SdkCredentialDeleteRequest{} } +func (m *SdkCredentialDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialDeleteRequest) ProtoMessage() {} +func (*SdkCredentialDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{109} +} +func (m *SdkCredentialDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialDeleteRequest.Unmarshal(m, b) +} +func (m *SdkCredentialDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialDeleteRequest.Marshal(b, m, deterministic) +} +func (dst *SdkCredentialDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialDeleteRequest.Merge(dst, src) +} +func (m *SdkCredentialDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkCredentialDeleteRequest.Size(m) +} +func (m *SdkCredentialDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialDeleteRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkCredentialDeleteRequest proto.InternalMessageInfo + +func (m *SdkCredentialDeleteRequest) GetCredentialId() string { if m != nil { - return m.HWType + return m.CredentialId } - return HardwareType_UnknownMachine + return "" } -// StorageCluster represents the state and information about the cluster -type StorageCluster struct { - // Status of the cluster - Status Status `protobuf:"varint,1,opt,name=status,enum=openstorage.api.Status" json:"status,omitempty"` - // Id of the cluster - Id string `protobuf:"bytes,2,opt,name=id" json:"id,omitempty"` - // Name of the cluster - Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"` +// Empty response +type SdkCredentialDeleteResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkCredentialDeleteResponse) Reset() { *m = SdkCredentialDeleteResponse{} } +func (m *SdkCredentialDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialDeleteResponse) ProtoMessage() {} +func (*SdkCredentialDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{110} +} +func (m *SdkCredentialDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialDeleteResponse.Unmarshal(m, b) +} +func (m *SdkCredentialDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialDeleteResponse.Marshal(b, m, deterministic) +} +func (dst *SdkCredentialDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialDeleteResponse.Merge(dst, src) +} +func (m *SdkCredentialDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkCredentialDeleteResponse.Size(m) +} +func (m *SdkCredentialDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialDeleteResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkCredentialDeleteResponse proto.InternalMessageInfo + +// Defines a request to validate credentials +type SdkCredentialValidateRequest struct { + // Id of the credentials + CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *StorageCluster) Reset() { *m = StorageCluster{} } -func (m *StorageCluster) String() string { return proto.CompactTextString(m) } -func (*StorageCluster) ProtoMessage() {} -func (*StorageCluster) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{49} +func (m *SdkCredentialValidateRequest) Reset() { *m = SdkCredentialValidateRequest{} } +func (m *SdkCredentialValidateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialValidateRequest) ProtoMessage() {} +func (*SdkCredentialValidateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{111} } -func (m *StorageCluster) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_StorageCluster.Unmarshal(m, b) +func (m *SdkCredentialValidateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialValidateRequest.Unmarshal(m, b) } -func (m *StorageCluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_StorageCluster.Marshal(b, m, deterministic) +func (m *SdkCredentialValidateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialValidateRequest.Marshal(b, m, deterministic) } -func (dst *StorageCluster) XXX_Merge(src proto.Message) { - xxx_messageInfo_StorageCluster.Merge(dst, src) +func (dst *SdkCredentialValidateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialValidateRequest.Merge(dst, src) } -func (m *StorageCluster) XXX_Size() int { - return xxx_messageInfo_StorageCluster.Size(m) +func (m *SdkCredentialValidateRequest) XXX_Size() int { + return xxx_messageInfo_SdkCredentialValidateRequest.Size(m) } -func (m *StorageCluster) XXX_DiscardUnknown() { - xxx_messageInfo_StorageCluster.DiscardUnknown(m) +func (m *SdkCredentialValidateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialValidateRequest.DiscardUnknown(m) } -var xxx_messageInfo_StorageCluster proto.InternalMessageInfo +var xxx_messageInfo_SdkCredentialValidateRequest proto.InternalMessageInfo -func (m *StorageCluster) GetStatus() Status { +func (m *SdkCredentialValidateRequest) GetCredentialId() string { if m != nil { - return m.Status + return m.CredentialId } - return Status_STATUS_NONE + return "" } -func (m *StorageCluster) GetId() string { - if m != nil { - return m.Id - } - return "" +// Empty response +type SdkCredentialValidateResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *StorageCluster) GetName() string { - if m != nil { - return m.Name - } - return "" +func (m *SdkCredentialValidateResponse) Reset() { *m = SdkCredentialValidateResponse{} } +func (m *SdkCredentialValidateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialValidateResponse) ProtoMessage() {} +func (*SdkCredentialValidateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{112} +} +func (m *SdkCredentialValidateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialValidateResponse.Unmarshal(m, b) +} +func (m *SdkCredentialValidateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialValidateResponse.Marshal(b, m, deterministic) +} +func (dst *SdkCredentialValidateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialValidateResponse.Merge(dst, src) +} +func (m *SdkCredentialValidateResponse) XXX_Size() int { + return xxx_messageInfo_SdkCredentialValidateResponse.Size(m) +} +func (m *SdkCredentialValidateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialValidateResponse.DiscardUnknown(m) } -// Define a request to create storage policy -type SdkOpenStoragePolicyCreateRequest struct { - // storage policy to create - StoragePolicy *SdkStoragePolicy `protobuf:"bytes,1,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +var xxx_messageInfo_SdkCredentialValidateResponse proto.InternalMessageInfo + +// Defines a request to remove any references to credentials +type SdkCredentialDeleteReferencesRequest struct { + // Id of the credentials + CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyCreateRequest) Reset() { *m = SdkOpenStoragePolicyCreateRequest{} } -func (m *SdkOpenStoragePolicyCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyCreateRequest) ProtoMessage() {} -func (*SdkOpenStoragePolicyCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{50} +func (m *SdkCredentialDeleteReferencesRequest) Reset() { *m = SdkCredentialDeleteReferencesRequest{} } +func (m *SdkCredentialDeleteReferencesRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialDeleteReferencesRequest) ProtoMessage() {} +func (*SdkCredentialDeleteReferencesRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{113} } -func (m *SdkOpenStoragePolicyCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.Unmarshal(m, b) +func (m *SdkCredentialDeleteReferencesRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialDeleteReferencesRequest.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.Marshal(b, m, deterministic) +func (m *SdkCredentialDeleteReferencesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialDeleteReferencesRequest.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicyCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.Merge(dst, src) +func (dst *SdkCredentialDeleteReferencesRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialDeleteReferencesRequest.Merge(dst, src) } -func (m *SdkOpenStoragePolicyCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.Size(m) +func (m *SdkCredentialDeleteReferencesRequest) XXX_Size() int { + return xxx_messageInfo_SdkCredentialDeleteReferencesRequest.Size(m) } -func (m *SdkOpenStoragePolicyCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyCreateRequest.DiscardUnknown(m) +func (m *SdkCredentialDeleteReferencesRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialDeleteReferencesRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCredentialDeleteReferencesRequest proto.InternalMessageInfo -func (m *SdkOpenStoragePolicyCreateRequest) GetStoragePolicy() *SdkStoragePolicy { +func (m *SdkCredentialDeleteReferencesRequest) GetCredentialId() string { if m != nil { - return m.StoragePolicy + return m.CredentialId } - return nil + return "" } // Empty response -type SdkOpenStoragePolicyCreateResponse struct { +type SdkCredentialDeleteReferencesResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyCreateResponse) Reset() { *m = SdkOpenStoragePolicyCreateResponse{} } -func (m *SdkOpenStoragePolicyCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyCreateResponse) ProtoMessage() {} -func (*SdkOpenStoragePolicyCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{51} +func (m *SdkCredentialDeleteReferencesResponse) Reset() { *m = SdkCredentialDeleteReferencesResponse{} } +func (m *SdkCredentialDeleteReferencesResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCredentialDeleteReferencesResponse) ProtoMessage() {} +func (*SdkCredentialDeleteReferencesResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{114} } -func (m *SdkOpenStoragePolicyCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.Unmarshal(m, b) +func (m *SdkCredentialDeleteReferencesResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCredentialDeleteReferencesResponse.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.Marshal(b, m, deterministic) +func (m *SdkCredentialDeleteReferencesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCredentialDeleteReferencesResponse.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicyCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.Merge(dst, src) +func (dst *SdkCredentialDeleteReferencesResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCredentialDeleteReferencesResponse.Merge(dst, src) } -func (m *SdkOpenStoragePolicyCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.Size(m) +func (m *SdkCredentialDeleteReferencesResponse) XXX_Size() int { + return xxx_messageInfo_SdkCredentialDeleteReferencesResponse.Size(m) } -func (m *SdkOpenStoragePolicyCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyCreateResponse.DiscardUnknown(m) +func (m *SdkCredentialDeleteReferencesResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCredentialDeleteReferencesResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCredentialDeleteReferencesResponse proto.InternalMessageInfo -// Empty request -type SdkOpenStoragePolicyEnumerateRequest struct { +// Options to attach device +type SdkVolumeAttachOptions struct { + // Indicates the name of the secret stored in a secret store + // In case of Hashicorp's Vault, it will be the key from the key-value pair stored in its kv backend. + // In case of Kubernetes secret, it is the name of the secret object itself + SecretName string `protobuf:"bytes,1,opt,name=secret_name,json=secretName" json:"secret_name,omitempty"` + // In case of Kubernetes, this will be the key stored in the Kubernetes secret + SecretKey string `protobuf:"bytes,2,opt,name=secret_key,json=secretKey" json:"secret_key,omitempty"` + // It indicates the additional context which could be used to retrieve the secret. + // In case of Kubernetes, this is the namespace in which the secret is created. + SecretContext string `protobuf:"bytes,3,opt,name=secret_context,json=secretContext" json:"secret_context,omitempty"` + // Indicates whether fastpath needs to be enabled during attach + Fastpath string `protobuf:"bytes,4,opt,name=fastpath" json:"fastpath,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyEnumerateRequest) Reset() { *m = SdkOpenStoragePolicyEnumerateRequest{} } -func (m *SdkOpenStoragePolicyEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyEnumerateRequest) ProtoMessage() {} -func (*SdkOpenStoragePolicyEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{52} +func (m *SdkVolumeAttachOptions) Reset() { *m = SdkVolumeAttachOptions{} } +func (m *SdkVolumeAttachOptions) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeAttachOptions) ProtoMessage() {} +func (*SdkVolumeAttachOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{115} } -func (m *SdkOpenStoragePolicyEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.Unmarshal(m, b) +func (m *SdkVolumeAttachOptions) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeAttachOptions.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeAttachOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeAttachOptions.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicyEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.Merge(dst, src) +func (dst *SdkVolumeAttachOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeAttachOptions.Merge(dst, src) } -func (m *SdkOpenStoragePolicyEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.Size(m) +func (m *SdkVolumeAttachOptions) XXX_Size() int { + return xxx_messageInfo_SdkVolumeAttachOptions.Size(m) } -func (m *SdkOpenStoragePolicyEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest.DiscardUnknown(m) +func (m *SdkVolumeAttachOptions) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeAttachOptions.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeAttachOptions proto.InternalMessageInfo -// Define a storage policy enumerate response -type SdkOpenStoragePolicyEnumerateResponse struct { - // List of storage policies - StoragePolicies []*SdkStoragePolicy `protobuf:"bytes,1,rep,name=storage_policies,json=storagePolicies" json:"storage_policies,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkVolumeAttachOptions) GetSecretName() string { + if m != nil { + return m.SecretName + } + return "" } -func (m *SdkOpenStoragePolicyEnumerateResponse) Reset() { *m = SdkOpenStoragePolicyEnumerateResponse{} } -func (m *SdkOpenStoragePolicyEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyEnumerateResponse) ProtoMessage() {} -func (*SdkOpenStoragePolicyEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{53} +func (m *SdkVolumeAttachOptions) GetSecretKey() string { + if m != nil { + return m.SecretKey + } + return "" } -func (m *SdkOpenStoragePolicyEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.Unmarshal(m, b) + +func (m *SdkVolumeAttachOptions) GetSecretContext() string { + if m != nil { + return m.SecretContext + } + return "" } -func (m *SdkOpenStoragePolicyEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.Marshal(b, m, deterministic) + +func (m *SdkVolumeAttachOptions) GetFastpath() string { + if m != nil { + return m.Fastpath + } + return "" } -func (dst *SdkOpenStoragePolicyEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.Merge(dst, src) + +// Defines a request to mount a volume to the node receiving this request +type SdkVolumeMountRequest struct { + // Id of the volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Mount path for mounting the volume. + MountPath string `protobuf:"bytes,2,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` + // Options to attach device + Options *SdkVolumeAttachOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"` + // The following options are private to the driver plugin running the + // OpenStorage SDK. Contact your driver developer for any special + // values that need to be provided here. + DriverOptions map[string]string `protobuf:"bytes,4,rep,name=driver_options,json=driverOptions" json:"driver_options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.Size(m) + +func (m *SdkVolumeMountRequest) Reset() { *m = SdkVolumeMountRequest{} } +func (m *SdkVolumeMountRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeMountRequest) ProtoMessage() {} +func (*SdkVolumeMountRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{116} } -func (m *SdkOpenStoragePolicyEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse.DiscardUnknown(m) +func (m *SdkVolumeMountRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeMountRequest.Unmarshal(m, b) +} +func (m *SdkVolumeMountRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeMountRequest.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeMountRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeMountRequest.Merge(dst, src) +} +func (m *SdkVolumeMountRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeMountRequest.Size(m) +} +func (m *SdkVolumeMountRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeMountRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeMountRequest proto.InternalMessageInfo + +func (m *SdkVolumeMountRequest) GetVolumeId() string { + if m != nil { + return m.VolumeId + } + return "" +} + +func (m *SdkVolumeMountRequest) GetMountPath() string { + if m != nil { + return m.MountPath + } + return "" } -var xxx_messageInfo_SdkOpenStoragePolicyEnumerateResponse proto.InternalMessageInfo +func (m *SdkVolumeMountRequest) GetOptions() *SdkVolumeAttachOptions { + if m != nil { + return m.Options + } + return nil +} -func (m *SdkOpenStoragePolicyEnumerateResponse) GetStoragePolicies() []*SdkStoragePolicy { +func (m *SdkVolumeMountRequest) GetDriverOptions() map[string]string { if m != nil { - return m.StoragePolicies + return m.DriverOptions } return nil } -// Define a request to inspect storage policy -type SdkOpenStoragePolicyInspectRequest struct { - // name of storage policy to retrive - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` +// Empty response +type SdkVolumeMountResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyInspectRequest) Reset() { *m = SdkOpenStoragePolicyInspectRequest{} } -func (m *SdkOpenStoragePolicyInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyInspectRequest) ProtoMessage() {} -func (*SdkOpenStoragePolicyInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{54} +func (m *SdkVolumeMountResponse) Reset() { *m = SdkVolumeMountResponse{} } +func (m *SdkVolumeMountResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeMountResponse) ProtoMessage() {} +func (*SdkVolumeMountResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{117} } -func (m *SdkOpenStoragePolicyInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.Unmarshal(m, b) +func (m *SdkVolumeMountResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeMountResponse.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeMountResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeMountResponse.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicyInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.Merge(dst, src) +func (dst *SdkVolumeMountResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeMountResponse.Merge(dst, src) } -func (m *SdkOpenStoragePolicyInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.Size(m) +func (m *SdkVolumeMountResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeMountResponse.Size(m) } -func (m *SdkOpenStoragePolicyInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyInspectRequest.DiscardUnknown(m) +func (m *SdkVolumeMountResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeMountResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyInspectRequest proto.InternalMessageInfo - -func (m *SdkOpenStoragePolicyInspectRequest) GetName() string { - if m != nil { - return m.Name - } - return "" -} +var xxx_messageInfo_SdkVolumeMountResponse proto.InternalMessageInfo -// Define a storage policy inspect response -type SdkOpenStoragePolicyInspectResponse struct { - // storage policy information requested by name - StoragePolicy *SdkStoragePolicy `protobuf:"bytes,1,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Options to unmount device +type SdkVolumeUnmountOptions struct { + // Delete the mount path on the node after unmounting + DeleteMountPath bool `protobuf:"varint,1,opt,name=delete_mount_path,json=deleteMountPath" json:"delete_mount_path,omitempty"` + // Do not wait for a delay before deleting path. + // Normally a storage driver may delay before deleting the mount path, + // which may be necessary to reduce the risk of race conditions. This + // choice will remove that delay. This value is only usable when + // `delete_mount_path` is set. + NoDelayBeforeDeletingMountPath bool `protobuf:"varint,2,opt,name=no_delay_before_deleting_mount_path,json=noDelayBeforeDeletingMountPath" json:"no_delay_before_deleting_mount_path,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyInspectResponse) Reset() { *m = SdkOpenStoragePolicyInspectResponse{} } -func (m *SdkOpenStoragePolicyInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyInspectResponse) ProtoMessage() {} -func (*SdkOpenStoragePolicyInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{55} +func (m *SdkVolumeUnmountOptions) Reset() { *m = SdkVolumeUnmountOptions{} } +func (m *SdkVolumeUnmountOptions) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeUnmountOptions) ProtoMessage() {} +func (*SdkVolumeUnmountOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{118} } -func (m *SdkOpenStoragePolicyInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.Unmarshal(m, b) +func (m *SdkVolumeUnmountOptions) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeUnmountOptions.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.Marshal(b, m, deterministic) +func (m *SdkVolumeUnmountOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeUnmountOptions.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicyInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.Merge(dst, src) +func (dst *SdkVolumeUnmountOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeUnmountOptions.Merge(dst, src) } -func (m *SdkOpenStoragePolicyInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.Size(m) +func (m *SdkVolumeUnmountOptions) XXX_Size() int { + return xxx_messageInfo_SdkVolumeUnmountOptions.Size(m) } -func (m *SdkOpenStoragePolicyInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyInspectResponse.DiscardUnknown(m) +func (m *SdkVolumeUnmountOptions) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeUnmountOptions.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyInspectResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeUnmountOptions proto.InternalMessageInfo -func (m *SdkOpenStoragePolicyInspectResponse) GetStoragePolicy() *SdkStoragePolicy { +func (m *SdkVolumeUnmountOptions) GetDeleteMountPath() bool { if m != nil { - return m.StoragePolicy + return m.DeleteMountPath } - return nil + return false } -// Define a request to delete storage policy -type SdkOpenStoragePolicyDeleteRequest struct { - // name of storage policy to delete - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkVolumeUnmountOptions) GetNoDelayBeforeDeletingMountPath() bool { + if m != nil { + return m.NoDelayBeforeDeletingMountPath + } + return false } -func (m *SdkOpenStoragePolicyDeleteRequest) Reset() { *m = SdkOpenStoragePolicyDeleteRequest{} } -func (m *SdkOpenStoragePolicyDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyDeleteRequest) ProtoMessage() {} -func (*SdkOpenStoragePolicyDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{56} +// Defines a request to unmount a volume on the node receiving this request +type SdkVolumeUnmountRequest struct { + // Id of volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // MountPath for device + MountPath string `protobuf:"bytes,2,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` + // Options to unmount device + Options *SdkVolumeUnmountOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"` + // The following options are private to the driver plugin running the + // OpenStorage SDK. Contact your driver developer for any special + // values that need to be provided here. + DriverOptions map[string]string `protobuf:"bytes,4,rep,name=driver_options,json=driverOptions" json:"driver_options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.Unmarshal(m, b) + +func (m *SdkVolumeUnmountRequest) Reset() { *m = SdkVolumeUnmountRequest{} } +func (m *SdkVolumeUnmountRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeUnmountRequest) ProtoMessage() {} +func (*SdkVolumeUnmountRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{119} } -func (m *SdkOpenStoragePolicyDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeUnmountRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeUnmountRequest.Unmarshal(m, b) } -func (dst *SdkOpenStoragePolicyDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.Merge(dst, src) +func (m *SdkVolumeUnmountRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeUnmountRequest.Marshal(b, m, deterministic) } -func (m *SdkOpenStoragePolicyDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.Size(m) +func (dst *SdkVolumeUnmountRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeUnmountRequest.Merge(dst, src) } -func (m *SdkOpenStoragePolicyDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest.DiscardUnknown(m) +func (m *SdkVolumeUnmountRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeUnmountRequest.Size(m) +} +func (m *SdkVolumeUnmountRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeUnmountRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyDeleteRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeUnmountRequest proto.InternalMessageInfo -func (m *SdkOpenStoragePolicyDeleteRequest) GetName() string { +func (m *SdkVolumeUnmountRequest) GetVolumeId() string { if m != nil { - return m.Name + return m.VolumeId } return "" } -// Empty Response -type SdkOpenStoragePolicyDeleteResponse struct { +func (m *SdkVolumeUnmountRequest) GetMountPath() string { + if m != nil { + return m.MountPath + } + return "" +} + +func (m *SdkVolumeUnmountRequest) GetOptions() *SdkVolumeUnmountOptions { + if m != nil { + return m.Options + } + return nil +} + +func (m *SdkVolumeUnmountRequest) GetDriverOptions() map[string]string { + if m != nil { + return m.DriverOptions + } + return nil +} + +// Empty response +type SdkVolumeUnmountResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyDeleteResponse) Reset() { *m = SdkOpenStoragePolicyDeleteResponse{} } -func (m *SdkOpenStoragePolicyDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyDeleteResponse) ProtoMessage() {} -func (*SdkOpenStoragePolicyDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{57} +func (m *SdkVolumeUnmountResponse) Reset() { *m = SdkVolumeUnmountResponse{} } +func (m *SdkVolumeUnmountResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeUnmountResponse) ProtoMessage() {} +func (*SdkVolumeUnmountResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{120} } -func (m *SdkOpenStoragePolicyDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.Unmarshal(m, b) +func (m *SdkVolumeUnmountResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeUnmountResponse.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.Marshal(b, m, deterministic) +func (m *SdkVolumeUnmountResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeUnmountResponse.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicyDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.Merge(dst, src) +func (dst *SdkVolumeUnmountResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeUnmountResponse.Merge(dst, src) } -func (m *SdkOpenStoragePolicyDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.Size(m) +func (m *SdkVolumeUnmountResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeUnmountResponse.Size(m) } -func (m *SdkOpenStoragePolicyDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse.DiscardUnknown(m) +func (m *SdkVolumeUnmountResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeUnmountResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyDeleteResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeUnmountResponse proto.InternalMessageInfo -// Define a request to update storage policy -type SdkOpenStoragePolicyUpdateRequest struct { - // storage policy to update - StoragePolicy *SdkStoragePolicy `protobuf:"bytes,1,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` +// Defines a request to attach a volume to the node receiving this request +type SdkVolumeAttachRequest struct { + // Id of volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Options to attach device + Options *SdkVolumeAttachOptions `protobuf:"bytes,2,opt,name=options" json:"options,omitempty"` + // The following options are private to the driver plugin running the + // OpenStorage SDK. Contact your driver developer for any special + // values that need to be provided here. + DriverOptions map[string]string `protobuf:"bytes,3,rep,name=driver_options,json=driverOptions" json:"driver_options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyUpdateRequest) Reset() { *m = SdkOpenStoragePolicyUpdateRequest{} } -func (m *SdkOpenStoragePolicyUpdateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyUpdateRequest) ProtoMessage() {} -func (*SdkOpenStoragePolicyUpdateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{58} +func (m *SdkVolumeAttachRequest) Reset() { *m = SdkVolumeAttachRequest{} } +func (m *SdkVolumeAttachRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeAttachRequest) ProtoMessage() {} +func (*SdkVolumeAttachRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{121} } -func (m *SdkOpenStoragePolicyUpdateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.Unmarshal(m, b) +func (m *SdkVolumeAttachRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeAttachRequest.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeAttachRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeAttachRequest.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicyUpdateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.Merge(dst, src) +func (dst *SdkVolumeAttachRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeAttachRequest.Merge(dst, src) } -func (m *SdkOpenStoragePolicyUpdateRequest) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.Size(m) +func (m *SdkVolumeAttachRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeAttachRequest.Size(m) } -func (m *SdkOpenStoragePolicyUpdateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest.DiscardUnknown(m) +func (m *SdkVolumeAttachRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeAttachRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyUpdateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeAttachRequest proto.InternalMessageInfo -func (m *SdkOpenStoragePolicyUpdateRequest) GetStoragePolicy() *SdkStoragePolicy { +func (m *SdkVolumeAttachRequest) GetVolumeId() string { if m != nil { - return m.StoragePolicy + return m.VolumeId } - return nil + return "" } -// Empty Response -type SdkOpenStoragePolicyUpdateResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkVolumeAttachRequest) GetOptions() *SdkVolumeAttachOptions { + if m != nil { + return m.Options + } + return nil } -func (m *SdkOpenStoragePolicyUpdateResponse) Reset() { *m = SdkOpenStoragePolicyUpdateResponse{} } -func (m *SdkOpenStoragePolicyUpdateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyUpdateResponse) ProtoMessage() {} -func (*SdkOpenStoragePolicyUpdateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{59} -} -func (m *SdkOpenStoragePolicyUpdateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.Unmarshal(m, b) -} -func (m *SdkOpenStoragePolicyUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.Marshal(b, m, deterministic) -} -func (dst *SdkOpenStoragePolicyUpdateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.Merge(dst, src) -} -func (m *SdkOpenStoragePolicyUpdateResponse) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.Size(m) -} -func (m *SdkOpenStoragePolicyUpdateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse.DiscardUnknown(m) +func (m *SdkVolumeAttachRequest) GetDriverOptions() map[string]string { + if m != nil { + return m.DriverOptions + } + return nil } -var xxx_messageInfo_SdkOpenStoragePolicyUpdateResponse proto.InternalMessageInfo - -// Define a request to set default storage policy -type SdkOpenStoragePolicySetDefaultRequest struct { - // name of policy to set as default storage policy - // for volume creation - // This policy will be used to validate/update volume configuration - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` +// Defines a response from the node which received the request to attach +type SdkVolumeAttachResponse struct { + // Device path where device is exported + DevicePath string `protobuf:"bytes,1,opt,name=device_path,json=devicePath" json:"device_path,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicySetDefaultRequest) Reset() { *m = SdkOpenStoragePolicySetDefaultRequest{} } -func (m *SdkOpenStoragePolicySetDefaultRequest) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicySetDefaultRequest) ProtoMessage() {} -func (*SdkOpenStoragePolicySetDefaultRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{60} +func (m *SdkVolumeAttachResponse) Reset() { *m = SdkVolumeAttachResponse{} } +func (m *SdkVolumeAttachResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeAttachResponse) ProtoMessage() {} +func (*SdkVolumeAttachResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{122} } -func (m *SdkOpenStoragePolicySetDefaultRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.Unmarshal(m, b) +func (m *SdkVolumeAttachResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeAttachResponse.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicySetDefaultRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeAttachResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeAttachResponse.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicySetDefaultRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.Merge(dst, src) +func (dst *SdkVolumeAttachResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeAttachResponse.Merge(dst, src) } -func (m *SdkOpenStoragePolicySetDefaultRequest) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.Size(m) +func (m *SdkVolumeAttachResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeAttachResponse.Size(m) } -func (m *SdkOpenStoragePolicySetDefaultRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest.DiscardUnknown(m) +func (m *SdkVolumeAttachResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeAttachResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicySetDefaultRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeAttachResponse proto.InternalMessageInfo -func (m *SdkOpenStoragePolicySetDefaultRequest) GetName() string { +func (m *SdkVolumeAttachResponse) GetDevicePath() string { if m != nil { - return m.Name + return m.DevicePath } return "" } -// Empty Response -type SdkOpenStoragePolicySetDefaultResponse struct { +type SdkVolumeDetachOptions struct { + // Forcefully detach device from the kernel + Force bool `protobuf:"varint,1,opt,name=force" json:"force,omitempty"` + // Unmount the volume before detaching + UnmountBeforeDetach bool `protobuf:"varint,2,opt,name=unmount_before_detach,json=unmountBeforeDetach" json:"unmount_before_detach,omitempty"` + // redirect the request to the attached node + Redirect bool `protobuf:"varint,3,opt,name=redirect" json:"redirect,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicySetDefaultResponse) Reset() { - *m = SdkOpenStoragePolicySetDefaultResponse{} +func (m *SdkVolumeDetachOptions) Reset() { *m = SdkVolumeDetachOptions{} } +func (m *SdkVolumeDetachOptions) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeDetachOptions) ProtoMessage() {} +func (*SdkVolumeDetachOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{123} } -func (m *SdkOpenStoragePolicySetDefaultResponse) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicySetDefaultResponse) ProtoMessage() {} -func (*SdkOpenStoragePolicySetDefaultResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{61} +func (m *SdkVolumeDetachOptions) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeDetachOptions.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicySetDefaultResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.Unmarshal(m, b) +func (m *SdkVolumeDetachOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeDetachOptions.Marshal(b, m, deterministic) } -func (m *SdkOpenStoragePolicySetDefaultResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.Marshal(b, m, deterministic) +func (dst *SdkVolumeDetachOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeDetachOptions.Merge(dst, src) } -func (dst *SdkOpenStoragePolicySetDefaultResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.Merge(dst, src) +func (m *SdkVolumeDetachOptions) XXX_Size() int { + return xxx_messageInfo_SdkVolumeDetachOptions.Size(m) } -func (m *SdkOpenStoragePolicySetDefaultResponse) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.Size(m) +func (m *SdkVolumeDetachOptions) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeDetachOptions.DiscardUnknown(m) } -func (m *SdkOpenStoragePolicySetDefaultResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse.DiscardUnknown(m) + +var xxx_messageInfo_SdkVolumeDetachOptions proto.InternalMessageInfo + +func (m *SdkVolumeDetachOptions) GetForce() bool { + if m != nil { + return m.Force + } + return false } -var xxx_messageInfo_SdkOpenStoragePolicySetDefaultResponse proto.InternalMessageInfo +func (m *SdkVolumeDetachOptions) GetUnmountBeforeDetach() bool { + if m != nil { + return m.UnmountBeforeDetach + } + return false +} -// Empty Request -type SdkOpenStoragePolicyReleaseRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkVolumeDetachOptions) GetRedirect() bool { + if m != nil { + return m.Redirect + } + return false } -func (m *SdkOpenStoragePolicyReleaseRequest) Reset() { *m = SdkOpenStoragePolicyReleaseRequest{} } -func (m *SdkOpenStoragePolicyReleaseRequest) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyReleaseRequest) ProtoMessage() {} -func (*SdkOpenStoragePolicyReleaseRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{62} +// Defines a request to detach a volume +type SdkVolumeDetachRequest struct { + // Id of the volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Options to detach device + Options *SdkVolumeDetachOptions `protobuf:"bytes,2,opt,name=options" json:"options,omitempty"` + // The following options are private to the driver plugin running the + // OpenStorage SDK. Contact your driver developer for any special + // values that need to be provided here. + DriverOptions map[string]string `protobuf:"bytes,3,rep,name=driver_options,json=driverOptions" json:"driver_options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyReleaseRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.Unmarshal(m, b) + +func (m *SdkVolumeDetachRequest) Reset() { *m = SdkVolumeDetachRequest{} } +func (m *SdkVolumeDetachRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeDetachRequest) ProtoMessage() {} +func (*SdkVolumeDetachRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{124} } -func (m *SdkOpenStoragePolicyReleaseRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeDetachRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeDetachRequest.Unmarshal(m, b) } -func (dst *SdkOpenStoragePolicyReleaseRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.Merge(dst, src) +func (m *SdkVolumeDetachRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeDetachRequest.Marshal(b, m, deterministic) } -func (m *SdkOpenStoragePolicyReleaseRequest) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.Size(m) +func (dst *SdkVolumeDetachRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeDetachRequest.Merge(dst, src) } -func (m *SdkOpenStoragePolicyReleaseRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest.DiscardUnknown(m) +func (m *SdkVolumeDetachRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeDetachRequest.Size(m) +} +func (m *SdkVolumeDetachRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeDetachRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyReleaseRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeDetachRequest proto.InternalMessageInfo -// Empty Response -type SdkOpenStoragePolicyReleaseResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkVolumeDetachRequest) GetVolumeId() string { + if m != nil { + return m.VolumeId + } + return "" } -func (m *SdkOpenStoragePolicyReleaseResponse) Reset() { *m = SdkOpenStoragePolicyReleaseResponse{} } -func (m *SdkOpenStoragePolicyReleaseResponse) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyReleaseResponse) ProtoMessage() {} -func (*SdkOpenStoragePolicyReleaseResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{63} -} -func (m *SdkOpenStoragePolicyReleaseResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.Unmarshal(m, b) -} -func (m *SdkOpenStoragePolicyReleaseResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.Marshal(b, m, deterministic) -} -func (dst *SdkOpenStoragePolicyReleaseResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.Merge(dst, src) -} -func (m *SdkOpenStoragePolicyReleaseResponse) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.Size(m) -} -func (m *SdkOpenStoragePolicyReleaseResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse.DiscardUnknown(m) +func (m *SdkVolumeDetachRequest) GetOptions() *SdkVolumeDetachOptions { + if m != nil { + return m.Options + } + return nil } -var xxx_messageInfo_SdkOpenStoragePolicyReleaseResponse proto.InternalMessageInfo +func (m *SdkVolumeDetachRequest) GetDriverOptions() map[string]string { + if m != nil { + return m.DriverOptions + } + return nil +} -// Empty Request -type SdkOpenStoragePolicyDefaultInspectRequest struct { +// Empty response +type SdkVolumeDetachResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyDefaultInspectRequest) Reset() { - *m = SdkOpenStoragePolicyDefaultInspectRequest{} -} -func (m *SdkOpenStoragePolicyDefaultInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkOpenStoragePolicyDefaultInspectRequest) ProtoMessage() {} -func (*SdkOpenStoragePolicyDefaultInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{64} +func (m *SdkVolumeDetachResponse) Reset() { *m = SdkVolumeDetachResponse{} } +func (m *SdkVolumeDetachResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeDetachResponse) ProtoMessage() {} +func (*SdkVolumeDetachResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{125} } -func (m *SdkOpenStoragePolicyDefaultInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.Unmarshal(m, b) +func (m *SdkVolumeDetachResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeDetachResponse.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyDefaultInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeDetachResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeDetachResponse.Marshal(b, m, deterministic) } -func (dst *SdkOpenStoragePolicyDefaultInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.Merge(dst, src) +func (dst *SdkVolumeDetachResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeDetachResponse.Merge(dst, src) } -func (m *SdkOpenStoragePolicyDefaultInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.Size(m) +func (m *SdkVolumeDetachResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeDetachResponse.Size(m) } -func (m *SdkOpenStoragePolicyDefaultInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest.DiscardUnknown(m) +func (m *SdkVolumeDetachResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeDetachResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeDetachResponse proto.InternalMessageInfo -// Define default storage policy response -type SdkOpenStoragePolicyDefaultInspectResponse struct { - // storage policy information which is set as default - StoragePolicy *SdkStoragePolicy `protobuf:"bytes,1,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` +// Defines a request to create a volume. Use OpenStorageVolume.Update() +// to update any labels on the volume. +type SdkVolumeCreateRequest struct { + // Unique name of the volume. This will be used for idempotency. + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + // Volume specification + Spec *VolumeSpec `protobuf:"bytes,2,opt,name=spec" json:"spec,omitempty"` + // Labels to apply to the volume + Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkOpenStoragePolicyDefaultInspectResponse) Reset() { - *m = SdkOpenStoragePolicyDefaultInspectResponse{} -} -func (m *SdkOpenStoragePolicyDefaultInspectResponse) String() string { - return proto.CompactTextString(m) +func (m *SdkVolumeCreateRequest) Reset() { *m = SdkVolumeCreateRequest{} } +func (m *SdkVolumeCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeCreateRequest) ProtoMessage() {} +func (*SdkVolumeCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{126} } -func (*SdkOpenStoragePolicyDefaultInspectResponse) ProtoMessage() {} -func (*SdkOpenStoragePolicyDefaultInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{65} +func (m *SdkVolumeCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeCreateRequest.Unmarshal(m, b) } -func (m *SdkOpenStoragePolicyDefaultInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.Unmarshal(m, b) +func (m *SdkVolumeCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeCreateRequest.Marshal(b, m, deterministic) } -func (m *SdkOpenStoragePolicyDefaultInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.Marshal(b, m, deterministic) +func (dst *SdkVolumeCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeCreateRequest.Merge(dst, src) } -func (dst *SdkOpenStoragePolicyDefaultInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.Merge(dst, src) +func (m *SdkVolumeCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeCreateRequest.Size(m) } -func (m *SdkOpenStoragePolicyDefaultInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.Size(m) +func (m *SdkVolumeCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeCreateRequest.DiscardUnknown(m) } -func (m *SdkOpenStoragePolicyDefaultInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse.DiscardUnknown(m) + +var xxx_messageInfo_SdkVolumeCreateRequest proto.InternalMessageInfo + +func (m *SdkVolumeCreateRequest) GetName() string { + if m != nil { + return m.Name + } + return "" } -var xxx_messageInfo_SdkOpenStoragePolicyDefaultInspectResponse proto.InternalMessageInfo +func (m *SdkVolumeCreateRequest) GetSpec() *VolumeSpec { + if m != nil { + return m.Spec + } + return nil +} -func (m *SdkOpenStoragePolicyDefaultInspectResponse) GetStoragePolicy() *SdkStoragePolicy { +func (m *SdkVolumeCreateRequest) GetLabels() map[string]string { if m != nil { - return m.StoragePolicy + return m.Labels } return nil } -// Define a schedule policy request -type SdkSchedulePolicyCreateRequest struct { - // Schedule Policy - SchedulePolicy *SdkSchedulePolicy `protobuf:"bytes,1,opt,name=schedule_policy,json=schedulePolicy" json:"schedule_policy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response to the creation of a volume +type SdkVolumeCreateResponse struct { + // Id of new volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyCreateRequest) Reset() { *m = SdkSchedulePolicyCreateRequest{} } -func (m *SdkSchedulePolicyCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyCreateRequest) ProtoMessage() {} -func (*SdkSchedulePolicyCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{66} +func (m *SdkVolumeCreateResponse) Reset() { *m = SdkVolumeCreateResponse{} } +func (m *SdkVolumeCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeCreateResponse) ProtoMessage() {} +func (*SdkVolumeCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{127} } -func (m *SdkSchedulePolicyCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyCreateRequest.Unmarshal(m, b) +func (m *SdkVolumeCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeCreateResponse.Unmarshal(m, b) } -func (m *SdkSchedulePolicyCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyCreateRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeCreateResponse.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyCreateRequest.Merge(dst, src) +func (dst *SdkVolumeCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeCreateResponse.Merge(dst, src) } -func (m *SdkSchedulePolicyCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyCreateRequest.Size(m) +func (m *SdkVolumeCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeCreateResponse.Size(m) } -func (m *SdkSchedulePolicyCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyCreateRequest.DiscardUnknown(m) +func (m *SdkVolumeCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeCreateResponse proto.InternalMessageInfo -func (m *SdkSchedulePolicyCreateRequest) GetSchedulePolicy() *SdkSchedulePolicy { +func (m *SdkVolumeCreateResponse) GetVolumeId() string { if m != nil { - return m.SchedulePolicy + return m.VolumeId } - return nil + return "" } -// Empty response -type SdkSchedulePolicyCreateResponse struct { +// Defines a request to clone a volume or create a volume from a snapshot +type SdkVolumeCloneRequest struct { + // Unique name of the volume. This will be used for idempotency. + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + // Parent volume id or snapshot id will create a new volume as a clone of the parent. + ParentId string `protobuf:"bytes,2,opt,name=parent_id,json=parentId" json:"parent_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyCreateResponse) Reset() { *m = SdkSchedulePolicyCreateResponse{} } -func (m *SdkSchedulePolicyCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyCreateResponse) ProtoMessage() {} -func (*SdkSchedulePolicyCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{67} +func (m *SdkVolumeCloneRequest) Reset() { *m = SdkVolumeCloneRequest{} } +func (m *SdkVolumeCloneRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeCloneRequest) ProtoMessage() {} +func (*SdkVolumeCloneRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{128} } -func (m *SdkSchedulePolicyCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyCreateResponse.Unmarshal(m, b) +func (m *SdkVolumeCloneRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeCloneRequest.Unmarshal(m, b) } -func (m *SdkSchedulePolicyCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyCreateResponse.Marshal(b, m, deterministic) +func (m *SdkVolumeCloneRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeCloneRequest.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyCreateResponse.Merge(dst, src) +func (dst *SdkVolumeCloneRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeCloneRequest.Merge(dst, src) } -func (m *SdkSchedulePolicyCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyCreateResponse.Size(m) +func (m *SdkVolumeCloneRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeCloneRequest.Size(m) } -func (m *SdkSchedulePolicyCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyCreateResponse.DiscardUnknown(m) +func (m *SdkVolumeCloneRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeCloneRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeCloneRequest proto.InternalMessageInfo -// Define a request to update a schedule policy -type SdkSchedulePolicyUpdateRequest struct { - // Schedule Policy - SchedulePolicy *SdkSchedulePolicy `protobuf:"bytes,1,opt,name=schedule_policy,json=schedulePolicy" json:"schedule_policy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkVolumeCloneRequest) GetName() string { + if m != nil { + return m.Name + } + return "" } -func (m *SdkSchedulePolicyUpdateRequest) Reset() { *m = SdkSchedulePolicyUpdateRequest{} } -func (m *SdkSchedulePolicyUpdateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyUpdateRequest) ProtoMessage() {} -func (*SdkSchedulePolicyUpdateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{68} +func (m *SdkVolumeCloneRequest) GetParentId() string { + if m != nil { + return m.ParentId + } + return "" +} + +// Defines the response when creating a clone from a volume or a snapshot +type SdkVolumeCloneResponse struct { + // Id of new volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkVolumeCloneResponse) Reset() { *m = SdkVolumeCloneResponse{} } +func (m *SdkVolumeCloneResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeCloneResponse) ProtoMessage() {} +func (*SdkVolumeCloneResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{129} +} +func (m *SdkVolumeCloneResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeCloneResponse.Unmarshal(m, b) +} +func (m *SdkVolumeCloneResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeCloneResponse.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeCloneResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeCloneResponse.Merge(dst, src) +} +func (m *SdkVolumeCloneResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeCloneResponse.Size(m) +} +func (m *SdkVolumeCloneResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeCloneResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeCloneResponse proto.InternalMessageInfo + +func (m *SdkVolumeCloneResponse) GetVolumeId() string { + if m != nil { + return m.VolumeId + } + return "" +} + +// Defines the request to delete a volume +type SdkVolumeDeleteRequest struct { + // Id of volume to delete + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyUpdateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyUpdateRequest.Unmarshal(m, b) + +func (m *SdkVolumeDeleteRequest) Reset() { *m = SdkVolumeDeleteRequest{} } +func (m *SdkVolumeDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeDeleteRequest) ProtoMessage() {} +func (*SdkVolumeDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{130} } -func (m *SdkSchedulePolicyUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyUpdateRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeDeleteRequest.Unmarshal(m, b) } -func (dst *SdkSchedulePolicyUpdateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyUpdateRequest.Merge(dst, src) +func (m *SdkVolumeDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeDeleteRequest.Marshal(b, m, deterministic) } -func (m *SdkSchedulePolicyUpdateRequest) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyUpdateRequest.Size(m) +func (dst *SdkVolumeDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeDeleteRequest.Merge(dst, src) } -func (m *SdkSchedulePolicyUpdateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyUpdateRequest.DiscardUnknown(m) +func (m *SdkVolumeDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeDeleteRequest.Size(m) +} +func (m *SdkVolumeDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeDeleteRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyUpdateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeDeleteRequest proto.InternalMessageInfo -func (m *SdkSchedulePolicyUpdateRequest) GetSchedulePolicy() *SdkSchedulePolicy { +func (m *SdkVolumeDeleteRequest) GetVolumeId() string { if m != nil { - return m.SchedulePolicy + return m.VolumeId } - return nil + return "" } // Empty response -type SdkSchedulePolicyUpdateResponse struct { +type SdkVolumeDeleteResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyUpdateResponse) Reset() { *m = SdkSchedulePolicyUpdateResponse{} } -func (m *SdkSchedulePolicyUpdateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyUpdateResponse) ProtoMessage() {} -func (*SdkSchedulePolicyUpdateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{69} +func (m *SdkVolumeDeleteResponse) Reset() { *m = SdkVolumeDeleteResponse{} } +func (m *SdkVolumeDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeDeleteResponse) ProtoMessage() {} +func (*SdkVolumeDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{131} } -func (m *SdkSchedulePolicyUpdateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyUpdateResponse.Unmarshal(m, b) +func (m *SdkVolumeDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeDeleteResponse.Unmarshal(m, b) } -func (m *SdkSchedulePolicyUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyUpdateResponse.Marshal(b, m, deterministic) +func (m *SdkVolumeDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeDeleteResponse.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyUpdateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyUpdateResponse.Merge(dst, src) +func (dst *SdkVolumeDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeDeleteResponse.Merge(dst, src) } -func (m *SdkSchedulePolicyUpdateResponse) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyUpdateResponse.Size(m) +func (m *SdkVolumeDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeDeleteResponse.Size(m) } -func (m *SdkSchedulePolicyUpdateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyUpdateResponse.DiscardUnknown(m) +func (m *SdkVolumeDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeDeleteResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyUpdateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeDeleteResponse proto.InternalMessageInfo -// Empty request -type SdkSchedulePolicyEnumerateRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines the request to inspect a volume +type SdkVolumeInspectRequest struct { + // Id of volume to inspect + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Options during inspection + Options *VolumeInspectOptions `protobuf:"bytes,2,opt,name=options" json:"options,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyEnumerateRequest) Reset() { *m = SdkSchedulePolicyEnumerateRequest{} } -func (m *SdkSchedulePolicyEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyEnumerateRequest) ProtoMessage() {} -func (*SdkSchedulePolicyEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{70} +func (m *SdkVolumeInspectRequest) Reset() { *m = SdkVolumeInspectRequest{} } +func (m *SdkVolumeInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeInspectRequest) ProtoMessage() {} +func (*SdkVolumeInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{132} } -func (m *SdkSchedulePolicyEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.Unmarshal(m, b) +func (m *SdkVolumeInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeInspectRequest.Unmarshal(m, b) } -func (m *SdkSchedulePolicyEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeInspectRequest.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.Merge(dst, src) +func (dst *SdkVolumeInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeInspectRequest.Merge(dst, src) } -func (m *SdkSchedulePolicyEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.Size(m) +func (m *SdkVolumeInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeInspectRequest.Size(m) } -func (m *SdkSchedulePolicyEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyEnumerateRequest.DiscardUnknown(m) +func (m *SdkVolumeInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeInspectRequest proto.InternalMessageInfo -// Defines a schedule policy enumerate response -type SdkSchedulePolicyEnumerateResponse struct { - // List of Schedule Policy - Policies []*SdkSchedulePolicy `protobuf:"bytes,1,rep,name=policies" json:"policies,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkVolumeInspectRequest) GetVolumeId() string { + if m != nil { + return m.VolumeId + } + return "" } -func (m *SdkSchedulePolicyEnumerateResponse) Reset() { *m = SdkSchedulePolicyEnumerateResponse{} } -func (m *SdkSchedulePolicyEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyEnumerateResponse) ProtoMessage() {} -func (*SdkSchedulePolicyEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{71} +func (m *SdkVolumeInspectRequest) GetOptions() *VolumeInspectOptions { + if m != nil { + return m.Options + } + return nil } -func (m *SdkSchedulePolicyEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.Unmarshal(m, b) + +// Defines the response when inspecting a volume +type SdkVolumeInspectResponse struct { + // Information about the volume + Volume *Volume `protobuf:"bytes,1,opt,name=volume" json:"volume,omitempty"` + // Name of volume + Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + // Volume labels + Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.Marshal(b, m, deterministic) + +func (m *SdkVolumeInspectResponse) Reset() { *m = SdkVolumeInspectResponse{} } +func (m *SdkVolumeInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeInspectResponse) ProtoMessage() {} +func (*SdkVolumeInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{133} } -func (dst *SdkSchedulePolicyEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.Merge(dst, src) +func (m *SdkVolumeInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeInspectResponse.Unmarshal(m, b) } -func (m *SdkSchedulePolicyEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.Size(m) +func (m *SdkVolumeInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeInspectResponse.Marshal(b, m, deterministic) } -func (m *SdkSchedulePolicyEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyEnumerateResponse.DiscardUnknown(m) +func (dst *SdkVolumeInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeInspectResponse.Merge(dst, src) +} +func (m *SdkVolumeInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeInspectResponse.Size(m) +} +func (m *SdkVolumeInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeInspectResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyEnumerateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeInspectResponse proto.InternalMessageInfo -func (m *SdkSchedulePolicyEnumerateResponse) GetPolicies() []*SdkSchedulePolicy { +func (m *SdkVolumeInspectResponse) GetVolume() *Volume { if m != nil { - return m.Policies + return m.Volume } return nil } -// Define a schedule policy inspection request -type SdkSchedulePolicyInspectRequest struct { - // Name of the schedule Policy - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkVolumeInspectResponse) GetName() string { + if m != nil { + return m.Name + } + return "" } -func (m *SdkSchedulePolicyInspectRequest) Reset() { *m = SdkSchedulePolicyInspectRequest{} } -func (m *SdkSchedulePolicyInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyInspectRequest) ProtoMessage() {} -func (*SdkSchedulePolicyInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{72} +func (m *SdkVolumeInspectResponse) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil } -func (m *SdkSchedulePolicyInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyInspectRequest.Unmarshal(m, b) + +// Defines the request to inspect volumes using a filter +type SdkVolumeInspectWithFiltersRequest struct { + // (optional) Name to search + Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + // (optional) Labels to search + Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // (optional) Ownership to match + Ownership *Ownership `protobuf:"bytes,4,opt,name=ownership" json:"ownership,omitempty"` + // (optional) Group to match + Group *Group `protobuf:"bytes,5,opt,name=group" json:"group,omitempty"` + // Options during inspection + Options *VolumeInspectOptions `protobuf:"bytes,6,opt,name=options" json:"options,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyInspectRequest.Marshal(b, m, deterministic) + +func (m *SdkVolumeInspectWithFiltersRequest) Reset() { *m = SdkVolumeInspectWithFiltersRequest{} } +func (m *SdkVolumeInspectWithFiltersRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeInspectWithFiltersRequest) ProtoMessage() {} +func (*SdkVolumeInspectWithFiltersRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{134} } -func (dst *SdkSchedulePolicyInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyInspectRequest.Merge(dst, src) +func (m *SdkVolumeInspectWithFiltersRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.Unmarshal(m, b) } -func (m *SdkSchedulePolicyInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyInspectRequest.Size(m) +func (m *SdkVolumeInspectWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeInspectWithFiltersRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.Merge(dst, src) +} +func (m *SdkVolumeInspectWithFiltersRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.Size(m) +} +func (m *SdkVolumeInspectWithFiltersRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeInspectWithFiltersRequest proto.InternalMessageInfo + +func (m *SdkVolumeInspectWithFiltersRequest) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *SdkVolumeInspectWithFiltersRequest) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil } -func (m *SdkSchedulePolicyInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyInspectRequest.DiscardUnknown(m) + +func (m *SdkVolumeInspectWithFiltersRequest) GetOwnership() *Ownership { + if m != nil { + return m.Ownership + } + return nil } -var xxx_messageInfo_SdkSchedulePolicyInspectRequest proto.InternalMessageInfo +func (m *SdkVolumeInspectWithFiltersRequest) GetGroup() *Group { + if m != nil { + return m.Group + } + return nil +} -func (m *SdkSchedulePolicyInspectRequest) GetName() string { +func (m *SdkVolumeInspectWithFiltersRequest) GetOptions() *VolumeInspectOptions { if m != nil { - return m.Name + return m.Options } - return "" + return nil } -// Defines a schedule policy inspection response -type SdkSchedulePolicyInspectResponse struct { - // List of Schedule Policy - Policy *SdkSchedulePolicy `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines the response when inspecting volumes using a filter +type SdkVolumeInspectWithFiltersResponse struct { + // List of `SdkVolumeInspectResponse` objects describing the volumes + Volumes []*SdkVolumeInspectResponse `protobuf:"bytes,1,rep,name=volumes" json:"volumes,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyInspectResponse) Reset() { *m = SdkSchedulePolicyInspectResponse{} } -func (m *SdkSchedulePolicyInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyInspectResponse) ProtoMessage() {} -func (*SdkSchedulePolicyInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{73} +func (m *SdkVolumeInspectWithFiltersResponse) Reset() { *m = SdkVolumeInspectWithFiltersResponse{} } +func (m *SdkVolumeInspectWithFiltersResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeInspectWithFiltersResponse) ProtoMessage() {} +func (*SdkVolumeInspectWithFiltersResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{135} } -func (m *SdkSchedulePolicyInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyInspectResponse.Unmarshal(m, b) +func (m *SdkVolumeInspectWithFiltersResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.Unmarshal(m, b) } -func (m *SdkSchedulePolicyInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyInspectResponse.Marshal(b, m, deterministic) +func (m *SdkVolumeInspectWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyInspectResponse.Merge(dst, src) +func (dst *SdkVolumeInspectWithFiltersResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.Merge(dst, src) } -func (m *SdkSchedulePolicyInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyInspectResponse.Size(m) +func (m *SdkVolumeInspectWithFiltersResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.Size(m) } -func (m *SdkSchedulePolicyInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyInspectResponse.DiscardUnknown(m) +func (m *SdkVolumeInspectWithFiltersResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyInspectResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeInspectWithFiltersResponse proto.InternalMessageInfo -func (m *SdkSchedulePolicyInspectResponse) GetPolicy() *SdkSchedulePolicy { +func (m *SdkVolumeInspectWithFiltersResponse) GetVolumes() []*SdkVolumeInspectResponse { if m != nil { - return m.Policy + return m.Volumes } return nil } -// Define schedule policy deletion request -type SdkSchedulePolicyDeleteRequest struct { - // Name of the schedule policy - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// This request is used to adjust or set new values in the volume +type SdkVolumeUpdateRequest struct { + // Id of the volume to update + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Change label values. Some of these values may not be able to be changed. + // New labels will be added to the current volume labels. To delete a label, set the + // value of the label to an empty string. + Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // VolumeSpecUpdate provides a method to request that certain values + // in the VolumeSpec are changed. This is necessary as a separate variable + // because values like int and bool in the VolumeSpec cannot be determined + // if they are being requested to change in gRPC proto3. Some of these + // values may not be able to be changed. + // + // Here are a few examples of actions that can be accomplished using the VolumeSpec: + // + // * To resize the volume: Set a new value in spec.size_opt.size. + // * To change number of replicas: Adjust spec.ha_level_opt.ha_level. + // * To change the I/O Profile: Adjust spec.io_profile_opt.io_profile. + Spec *VolumeSpecUpdate `protobuf:"bytes,4,opt,name=spec" json:"spec,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyDeleteRequest) Reset() { *m = SdkSchedulePolicyDeleteRequest{} } -func (m *SdkSchedulePolicyDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyDeleteRequest) ProtoMessage() {} -func (*SdkSchedulePolicyDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{74} +func (m *SdkVolumeUpdateRequest) Reset() { *m = SdkVolumeUpdateRequest{} } +func (m *SdkVolumeUpdateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeUpdateRequest) ProtoMessage() {} +func (*SdkVolumeUpdateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{136} } -func (m *SdkSchedulePolicyDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyDeleteRequest.Unmarshal(m, b) +func (m *SdkVolumeUpdateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeUpdateRequest.Unmarshal(m, b) } -func (m *SdkSchedulePolicyDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyDeleteRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeUpdateRequest.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyDeleteRequest.Merge(dst, src) +func (dst *SdkVolumeUpdateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeUpdateRequest.Merge(dst, src) } -func (m *SdkSchedulePolicyDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyDeleteRequest.Size(m) +func (m *SdkVolumeUpdateRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeUpdateRequest.Size(m) } -func (m *SdkSchedulePolicyDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyDeleteRequest.DiscardUnknown(m) +func (m *SdkVolumeUpdateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeUpdateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyDeleteRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeUpdateRequest proto.InternalMessageInfo -func (m *SdkSchedulePolicyDeleteRequest) GetName() string { +func (m *SdkVolumeUpdateRequest) GetVolumeId() string { if m != nil { - return m.Name + return m.VolumeId } return "" } +func (m *SdkVolumeUpdateRequest) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +func (m *SdkVolumeUpdateRequest) GetSpec() *VolumeSpecUpdate { + if m != nil { + return m.Spec + } + return nil +} + // Empty response -type SdkSchedulePolicyDeleteResponse struct { +type SdkVolumeUpdateResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyDeleteResponse) Reset() { *m = SdkSchedulePolicyDeleteResponse{} } -func (m *SdkSchedulePolicyDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyDeleteResponse) ProtoMessage() {} -func (*SdkSchedulePolicyDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{75} +func (m *SdkVolumeUpdateResponse) Reset() { *m = SdkVolumeUpdateResponse{} } +func (m *SdkVolumeUpdateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeUpdateResponse) ProtoMessage() {} +func (*SdkVolumeUpdateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{137} } -func (m *SdkSchedulePolicyDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyDeleteResponse.Unmarshal(m, b) +func (m *SdkVolumeUpdateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeUpdateResponse.Unmarshal(m, b) } -func (m *SdkSchedulePolicyDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyDeleteResponse.Marshal(b, m, deterministic) +func (m *SdkVolumeUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeUpdateResponse.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyDeleteResponse.Merge(dst, src) +func (dst *SdkVolumeUpdateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeUpdateResponse.Merge(dst, src) } -func (m *SdkSchedulePolicyDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyDeleteResponse.Size(m) +func (m *SdkVolumeUpdateResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeUpdateResponse.Size(m) } -func (m *SdkSchedulePolicyDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyDeleteResponse.DiscardUnknown(m) +func (m *SdkVolumeUpdateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeUpdateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyDeleteResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeUpdateResponse proto.InternalMessageInfo -// Defines a daily schedule -type SdkSchedulePolicyIntervalDaily struct { - // Range: 0-23 - Hour int32 `protobuf:"varint,1,opt,name=hour" json:"hour,omitempty"` - // Range: 0-59 - Minute int32 `protobuf:"varint,2,opt,name=minute" json:"minute,omitempty"` +// Defines a request to retreive volume statistics +type SdkVolumeStatsRequest struct { + // Id of the volume to get statistics + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // When set to false the stats are in /proc/diskstats style stats. + // When set to true the stats are stats for a specific duration. + NotCumulative bool `protobuf:"varint,2,opt,name=not_cumulative,json=notCumulative" json:"not_cumulative,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyIntervalDaily) Reset() { *m = SdkSchedulePolicyIntervalDaily{} } -func (m *SdkSchedulePolicyIntervalDaily) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyIntervalDaily) ProtoMessage() {} -func (*SdkSchedulePolicyIntervalDaily) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{76} +func (m *SdkVolumeStatsRequest) Reset() { *m = SdkVolumeStatsRequest{} } +func (m *SdkVolumeStatsRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeStatsRequest) ProtoMessage() {} +func (*SdkVolumeStatsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{138} } -func (m *SdkSchedulePolicyIntervalDaily) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyIntervalDaily.Unmarshal(m, b) +func (m *SdkVolumeStatsRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeStatsRequest.Unmarshal(m, b) } -func (m *SdkSchedulePolicyIntervalDaily) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyIntervalDaily.Marshal(b, m, deterministic) +func (m *SdkVolumeStatsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeStatsRequest.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyIntervalDaily) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyIntervalDaily.Merge(dst, src) +func (dst *SdkVolumeStatsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeStatsRequest.Merge(dst, src) } -func (m *SdkSchedulePolicyIntervalDaily) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyIntervalDaily.Size(m) +func (m *SdkVolumeStatsRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeStatsRequest.Size(m) } -func (m *SdkSchedulePolicyIntervalDaily) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyIntervalDaily.DiscardUnknown(m) +func (m *SdkVolumeStatsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeStatsRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyIntervalDaily proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeStatsRequest proto.InternalMessageInfo -func (m *SdkSchedulePolicyIntervalDaily) GetHour() int32 { +func (m *SdkVolumeStatsRequest) GetVolumeId() string { if m != nil { - return m.Hour + return m.VolumeId } - return 0 + return "" } -func (m *SdkSchedulePolicyIntervalDaily) GetMinute() int32 { +func (m *SdkVolumeStatsRequest) GetNotCumulative() bool { if m != nil { - return m.Minute + return m.NotCumulative } - return 0 + return false } -// Defines a weekly schedule -type SdkSchedulePolicyIntervalWeekly struct { - Day SdkTimeWeekday `protobuf:"varint,1,opt,name=day,enum=openstorage.api.SdkTimeWeekday" json:"day,omitempty"` - // Range: 0-23 - Hour int32 `protobuf:"varint,2,opt,name=hour" json:"hour,omitempty"` - // Range: 0-59 - Minute int32 `protobuf:"varint,3,opt,name=minute" json:"minute,omitempty"` +// Defines a response containing drive statistics +type SdkVolumeStatsResponse struct { + // Statistics for a single volume + Stats *Stats `protobuf:"bytes,1,opt,name=stats" json:"stats,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyIntervalWeekly) Reset() { *m = SdkSchedulePolicyIntervalWeekly{} } -func (m *SdkSchedulePolicyIntervalWeekly) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyIntervalWeekly) ProtoMessage() {} -func (*SdkSchedulePolicyIntervalWeekly) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{77} -} -func (m *SdkSchedulePolicyIntervalWeekly) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.Unmarshal(m, b) +func (m *SdkVolumeStatsResponse) Reset() { *m = SdkVolumeStatsResponse{} } +func (m *SdkVolumeStatsResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeStatsResponse) ProtoMessage() {} +func (*SdkVolumeStatsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{139} } -func (m *SdkSchedulePolicyIntervalWeekly) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.Marshal(b, m, deterministic) +func (m *SdkVolumeStatsResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeStatsResponse.Unmarshal(m, b) } -func (dst *SdkSchedulePolicyIntervalWeekly) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.Merge(dst, src) +func (m *SdkVolumeStatsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeStatsResponse.Marshal(b, m, deterministic) } -func (m *SdkSchedulePolicyIntervalWeekly) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.Size(m) +func (dst *SdkVolumeStatsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeStatsResponse.Merge(dst, src) } -func (m *SdkSchedulePolicyIntervalWeekly) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyIntervalWeekly.DiscardUnknown(m) +func (m *SdkVolumeStatsResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeStatsResponse.Size(m) } - -var xxx_messageInfo_SdkSchedulePolicyIntervalWeekly proto.InternalMessageInfo - -func (m *SdkSchedulePolicyIntervalWeekly) GetDay() SdkTimeWeekday { - if m != nil { - return m.Day - } - return SdkTimeWeekday_SdkTimeWeekdaySunday +func (m *SdkVolumeStatsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeStatsResponse.DiscardUnknown(m) } -func (m *SdkSchedulePolicyIntervalWeekly) GetHour() int32 { - if m != nil { - return m.Hour - } - return 0 -} +var xxx_messageInfo_SdkVolumeStatsResponse proto.InternalMessageInfo -func (m *SdkSchedulePolicyIntervalWeekly) GetMinute() int32 { +func (m *SdkVolumeStatsResponse) GetStats() *Stats { if m != nil { - return m.Minute + return m.Stats } - return 0 + return nil } -// Defines a monthly schedule -type SdkSchedulePolicyIntervalMonthly struct { - // Range: 1-28 - Day int32 `protobuf:"varint,1,opt,name=day" json:"day,omitempty"` - // Range: 0-59 - Hour int32 `protobuf:"varint,2,opt,name=hour" json:"hour,omitempty"` - // Range: 0-59 - Minute int32 `protobuf:"varint,3,opt,name=minute" json:"minute,omitempty"` +// Defines request to retrieve volume/snapshot capacity usage details +type SdkVolumeCapacityUsageRequest struct { + // Id of the snapshot/volume to get capacity usage details + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyIntervalMonthly) Reset() { *m = SdkSchedulePolicyIntervalMonthly{} } -func (m *SdkSchedulePolicyIntervalMonthly) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyIntervalMonthly) ProtoMessage() {} -func (*SdkSchedulePolicyIntervalMonthly) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{78} +func (m *SdkVolumeCapacityUsageRequest) Reset() { *m = SdkVolumeCapacityUsageRequest{} } +func (m *SdkVolumeCapacityUsageRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeCapacityUsageRequest) ProtoMessage() {} +func (*SdkVolumeCapacityUsageRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{140} } -func (m *SdkSchedulePolicyIntervalMonthly) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.Unmarshal(m, b) +func (m *SdkVolumeCapacityUsageRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeCapacityUsageRequest.Unmarshal(m, b) } -func (m *SdkSchedulePolicyIntervalMonthly) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.Marshal(b, m, deterministic) +func (m *SdkVolumeCapacityUsageRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeCapacityUsageRequest.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyIntervalMonthly) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.Merge(dst, src) +func (dst *SdkVolumeCapacityUsageRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeCapacityUsageRequest.Merge(dst, src) } -func (m *SdkSchedulePolicyIntervalMonthly) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.Size(m) +func (m *SdkVolumeCapacityUsageRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeCapacityUsageRequest.Size(m) } -func (m *SdkSchedulePolicyIntervalMonthly) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyIntervalMonthly.DiscardUnknown(m) +func (m *SdkVolumeCapacityUsageRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeCapacityUsageRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyIntervalMonthly proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeCapacityUsageRequest proto.InternalMessageInfo -func (m *SdkSchedulePolicyIntervalMonthly) GetDay() int32 { +func (m *SdkVolumeCapacityUsageRequest) GetVolumeId() string { if m != nil { - return m.Day + return m.VolumeId } - return 0 + return "" } -func (m *SdkSchedulePolicyIntervalMonthly) GetHour() int32 { - if m != nil { - return m.Hour - } - return 0 +// Defines response containing volume/snapshot capacity usage details +type SdkVolumeCapacityUsageResponse struct { + // CapacityUsage details + CapacityUsageInfo *CapacityUsageInfo `protobuf:"bytes,1,opt,name=capacity_usage_info,json=capacityUsageInfo" json:"capacity_usage_info,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyIntervalMonthly) GetMinute() int32 { +func (m *SdkVolumeCapacityUsageResponse) Reset() { *m = SdkVolumeCapacityUsageResponse{} } +func (m *SdkVolumeCapacityUsageResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeCapacityUsageResponse) ProtoMessage() {} +func (*SdkVolumeCapacityUsageResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{141} +} +func (m *SdkVolumeCapacityUsageResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeCapacityUsageResponse.Unmarshal(m, b) +} +func (m *SdkVolumeCapacityUsageResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeCapacityUsageResponse.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeCapacityUsageResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeCapacityUsageResponse.Merge(dst, src) +} +func (m *SdkVolumeCapacityUsageResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeCapacityUsageResponse.Size(m) +} +func (m *SdkVolumeCapacityUsageResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeCapacityUsageResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeCapacityUsageResponse proto.InternalMessageInfo + +func (m *SdkVolumeCapacityUsageResponse) GetCapacityUsageInfo() *CapacityUsageInfo { if m != nil { - return m.Minute + return m.CapacityUsageInfo } - return 0 + return nil } -// Defines a periodic schedule -type SdkSchedulePolicyIntervalPeriodic struct { - // Specify the number of seconds between intervals - Seconds int64 `protobuf:"varint,1,opt,name=seconds" json:"seconds,omitempty"` +// Defines a request to list volumes +type SdkVolumeEnumerateRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyIntervalPeriodic) Reset() { *m = SdkSchedulePolicyIntervalPeriodic{} } -func (m *SdkSchedulePolicyIntervalPeriodic) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyIntervalPeriodic) ProtoMessage() {} -func (*SdkSchedulePolicyIntervalPeriodic) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{79} +func (m *SdkVolumeEnumerateRequest) Reset() { *m = SdkVolumeEnumerateRequest{} } +func (m *SdkVolumeEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeEnumerateRequest) ProtoMessage() {} +func (*SdkVolumeEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{142} } -func (m *SdkSchedulePolicyIntervalPeriodic) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.Unmarshal(m, b) +func (m *SdkVolumeEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeEnumerateRequest.Unmarshal(m, b) } -func (m *SdkSchedulePolicyIntervalPeriodic) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.Marshal(b, m, deterministic) +func (m *SdkVolumeEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeEnumerateRequest.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyIntervalPeriodic) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.Merge(dst, src) +func (dst *SdkVolumeEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeEnumerateRequest.Merge(dst, src) } -func (m *SdkSchedulePolicyIntervalPeriodic) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.Size(m) +func (m *SdkVolumeEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeEnumerateRequest.Size(m) } -func (m *SdkSchedulePolicyIntervalPeriodic) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic.DiscardUnknown(m) +func (m *SdkVolumeEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeEnumerateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyIntervalPeriodic proto.InternalMessageInfo - -func (m *SdkSchedulePolicyIntervalPeriodic) GetSeconds() int64 { - if m != nil { - return m.Seconds - } - return 0 -} +var xxx_messageInfo_SdkVolumeEnumerateRequest proto.InternalMessageInfo -// Defines a schedule policy interval -type SdkSchedulePolicyInterval struct { - // Number of instances to retain - Retain int64 `protobuf:"varint,1,opt,name=retain" json:"retain,omitempty"` - // Start oneof at field number 200 to allow for expansion - // - // Types that are valid to be assigned to PeriodType: - // *SdkSchedulePolicyInterval_Daily - // *SdkSchedulePolicyInterval_Weekly - // *SdkSchedulePolicyInterval_Monthly - // *SdkSchedulePolicyInterval_Periodic - PeriodType isSdkSchedulePolicyInterval_PeriodType `protobuf_oneof:"period_type"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines the response when listing volumes +type SdkVolumeEnumerateResponse struct { + // List of volumes matching label + VolumeIds []string `protobuf:"bytes,1,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicyInterval) Reset() { *m = SdkSchedulePolicyInterval{} } -func (m *SdkSchedulePolicyInterval) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicyInterval) ProtoMessage() {} -func (*SdkSchedulePolicyInterval) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{80} +func (m *SdkVolumeEnumerateResponse) Reset() { *m = SdkVolumeEnumerateResponse{} } +func (m *SdkVolumeEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeEnumerateResponse) ProtoMessage() {} +func (*SdkVolumeEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{143} } -func (m *SdkSchedulePolicyInterval) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicyInterval.Unmarshal(m, b) +func (m *SdkVolumeEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeEnumerateResponse.Unmarshal(m, b) } -func (m *SdkSchedulePolicyInterval) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicyInterval.Marshal(b, m, deterministic) +func (m *SdkVolumeEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeEnumerateResponse.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicyInterval) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicyInterval.Merge(dst, src) +func (dst *SdkVolumeEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeEnumerateResponse.Merge(dst, src) } -func (m *SdkSchedulePolicyInterval) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicyInterval.Size(m) +func (m *SdkVolumeEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeEnumerateResponse.Size(m) } -func (m *SdkSchedulePolicyInterval) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicyInterval.DiscardUnknown(m) +func (m *SdkVolumeEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeEnumerateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicyInterval proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeEnumerateResponse proto.InternalMessageInfo -type isSdkSchedulePolicyInterval_PeriodType interface { - isSdkSchedulePolicyInterval_PeriodType() +func (m *SdkVolumeEnumerateResponse) GetVolumeIds() []string { + if m != nil { + return m.VolumeIds + } + return nil } -type SdkSchedulePolicyInterval_Daily struct { - Daily *SdkSchedulePolicyIntervalDaily `protobuf:"bytes,200,opt,name=daily,oneof"` +// Defines a request to list volumes +type SdkVolumeEnumerateWithFiltersRequest struct { + // (optional) Name to search + Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + // (optional) Labels to search + Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // (optional) Ownership to match + Ownership *Ownership `protobuf:"bytes,4,opt,name=ownership" json:"ownership,omitempty"` + // (optional) Group to match + Group *Group `protobuf:"bytes,5,opt,name=group" json:"group,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkVolumeEnumerateWithFiltersRequest) Reset() { *m = SdkVolumeEnumerateWithFiltersRequest{} } +func (m *SdkVolumeEnumerateWithFiltersRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeEnumerateWithFiltersRequest) ProtoMessage() {} +func (*SdkVolumeEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{144} +} +func (m *SdkVolumeEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.Unmarshal(m, b) +} +func (m *SdkVolumeEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.Marshal(b, m, deterministic) } -type SdkSchedulePolicyInterval_Weekly struct { - Weekly *SdkSchedulePolicyIntervalWeekly `protobuf:"bytes,201,opt,name=weekly,oneof"` +func (dst *SdkVolumeEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.Merge(dst, src) } -type SdkSchedulePolicyInterval_Monthly struct { - Monthly *SdkSchedulePolicyIntervalMonthly `protobuf:"bytes,202,opt,name=monthly,oneof"` +func (m *SdkVolumeEnumerateWithFiltersRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.Size(m) } -type SdkSchedulePolicyInterval_Periodic struct { - Periodic *SdkSchedulePolicyIntervalPeriodic `protobuf:"bytes,203,opt,name=periodic,oneof"` +func (m *SdkVolumeEnumerateWithFiltersRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.DiscardUnknown(m) } -func (*SdkSchedulePolicyInterval_Daily) isSdkSchedulePolicyInterval_PeriodType() {} -func (*SdkSchedulePolicyInterval_Weekly) isSdkSchedulePolicyInterval_PeriodType() {} -func (*SdkSchedulePolicyInterval_Monthly) isSdkSchedulePolicyInterval_PeriodType() {} -func (*SdkSchedulePolicyInterval_Periodic) isSdkSchedulePolicyInterval_PeriodType() {} +var xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest proto.InternalMessageInfo -func (m *SdkSchedulePolicyInterval) GetPeriodType() isSdkSchedulePolicyInterval_PeriodType { +func (m *SdkVolumeEnumerateWithFiltersRequest) GetName() string { if m != nil { - return m.PeriodType + return m.Name } - return nil + return "" } -func (m *SdkSchedulePolicyInterval) GetRetain() int64 { +func (m *SdkVolumeEnumerateWithFiltersRequest) GetLabels() map[string]string { if m != nil { - return m.Retain + return m.Labels } - return 0 + return nil } -func (m *SdkSchedulePolicyInterval) GetDaily() *SdkSchedulePolicyIntervalDaily { - if x, ok := m.GetPeriodType().(*SdkSchedulePolicyInterval_Daily); ok { - return x.Daily +func (m *SdkVolumeEnumerateWithFiltersRequest) GetOwnership() *Ownership { + if m != nil { + return m.Ownership } return nil } -func (m *SdkSchedulePolicyInterval) GetWeekly() *SdkSchedulePolicyIntervalWeekly { - if x, ok := m.GetPeriodType().(*SdkSchedulePolicyInterval_Weekly); ok { - return x.Weekly +func (m *SdkVolumeEnumerateWithFiltersRequest) GetGroup() *Group { + if m != nil { + return m.Group } return nil } -func (m *SdkSchedulePolicyInterval) GetMonthly() *SdkSchedulePolicyIntervalMonthly { - if x, ok := m.GetPeriodType().(*SdkSchedulePolicyInterval_Monthly); ok { - return x.Monthly +// Defines the response when listing volumes +type SdkVolumeEnumerateWithFiltersResponse struct { + // List of volumes matching label + VolumeIds []string `protobuf:"bytes,1,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkVolumeEnumerateWithFiltersResponse) Reset() { *m = SdkVolumeEnumerateWithFiltersResponse{} } +func (m *SdkVolumeEnumerateWithFiltersResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeEnumerateWithFiltersResponse) ProtoMessage() {} +func (*SdkVolumeEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{145} +} +func (m *SdkVolumeEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.Unmarshal(m, b) +} +func (m *SdkVolumeEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.Merge(dst, src) +} +func (m *SdkVolumeEnumerateWithFiltersResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.Size(m) +} +func (m *SdkVolumeEnumerateWithFiltersResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse proto.InternalMessageInfo + +func (m *SdkVolumeEnumerateWithFiltersResponse) GetVolumeIds() []string { + if m != nil { + return m.VolumeIds } return nil } -func (m *SdkSchedulePolicyInterval) GetPeriodic() *SdkSchedulePolicyIntervalPeriodic { - if x, ok := m.GetPeriodType().(*SdkSchedulePolicyInterval_Periodic); ok { - return x.Periodic +// Defines the request when creating a snapshot from a volume. +type SdkVolumeSnapshotCreateRequest struct { + // Id of volume to take the snapshot from + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Name of the snapshot. + Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + // Labels to apply to snapshot + Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkVolumeSnapshotCreateRequest) Reset() { *m = SdkVolumeSnapshotCreateRequest{} } +func (m *SdkVolumeSnapshotCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeSnapshotCreateRequest) ProtoMessage() {} +func (*SdkVolumeSnapshotCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{146} +} +func (m *SdkVolumeSnapshotCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotCreateRequest.Unmarshal(m, b) +} +func (m *SdkVolumeSnapshotCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotCreateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeSnapshotCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotCreateRequest.Merge(dst, src) +} +func (m *SdkVolumeSnapshotCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotCreateRequest.Size(m) +} +func (m *SdkVolumeSnapshotCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotCreateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeSnapshotCreateRequest proto.InternalMessageInfo + +func (m *SdkVolumeSnapshotCreateRequest) GetVolumeId() string { + if m != nil { + return m.VolumeId } - return nil + return "" } -// XXX_OneofFuncs is for the internal use of the proto package. -func (*SdkSchedulePolicyInterval) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _SdkSchedulePolicyInterval_OneofMarshaler, _SdkSchedulePolicyInterval_OneofUnmarshaler, _SdkSchedulePolicyInterval_OneofSizer, []interface{}{ - (*SdkSchedulePolicyInterval_Daily)(nil), - (*SdkSchedulePolicyInterval_Weekly)(nil), - (*SdkSchedulePolicyInterval_Monthly)(nil), - (*SdkSchedulePolicyInterval_Periodic)(nil), +func (m *SdkVolumeSnapshotCreateRequest) GetName() string { + if m != nil { + return m.Name } + return "" } -func _SdkSchedulePolicyInterval_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*SdkSchedulePolicyInterval) - // period_type - switch x := m.PeriodType.(type) { - case *SdkSchedulePolicyInterval_Daily: - b.EncodeVarint(200<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.Daily); err != nil { - return err - } - case *SdkSchedulePolicyInterval_Weekly: - b.EncodeVarint(201<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.Weekly); err != nil { - return err - } - case *SdkSchedulePolicyInterval_Monthly: - b.EncodeVarint(202<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.Monthly); err != nil { - return err - } - case *SdkSchedulePolicyInterval_Periodic: - b.EncodeVarint(203<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.Periodic); err != nil { - return err - } - case nil: - default: - return fmt.Errorf("SdkSchedulePolicyInterval.PeriodType has unexpected type %T", x) +func (m *SdkVolumeSnapshotCreateRequest) GetLabels() map[string]string { + if m != nil { + return m.Labels } return nil } -func _SdkSchedulePolicyInterval_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*SdkSchedulePolicyInterval) - switch tag { - case 200: // period_type.daily - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkSchedulePolicyIntervalDaily) - err := b.DecodeMessage(msg) - m.PeriodType = &SdkSchedulePolicyInterval_Daily{msg} - return true, err - case 201: // period_type.weekly - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkSchedulePolicyIntervalWeekly) - err := b.DecodeMessage(msg) - m.PeriodType = &SdkSchedulePolicyInterval_Weekly{msg} - return true, err - case 202: // period_type.monthly - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkSchedulePolicyIntervalMonthly) - err := b.DecodeMessage(msg) - m.PeriodType = &SdkSchedulePolicyInterval_Monthly{msg} - return true, err - case 203: // period_type.periodic - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkSchedulePolicyIntervalPeriodic) - err := b.DecodeMessage(msg) - m.PeriodType = &SdkSchedulePolicyInterval_Periodic{msg} - return true, err - default: - return false, nil - } +// Defines a response after creating a snapshot of a volume +type SdkVolumeSnapshotCreateResponse struct { + // Id of immutable snapshot + SnapshotId string `protobuf:"bytes,1,opt,name=snapshot_id,json=snapshotId" json:"snapshot_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func _SdkSchedulePolicyInterval_OneofSizer(msg proto.Message) (n int) { - m := msg.(*SdkSchedulePolicyInterval) - // period_type - switch x := m.PeriodType.(type) { - case *SdkSchedulePolicyInterval_Daily: - s := proto.Size(x.Daily) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkSchedulePolicyInterval_Weekly: - s := proto.Size(x.Weekly) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkSchedulePolicyInterval_Monthly: - s := proto.Size(x.Monthly) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkSchedulePolicyInterval_Periodic: - s := proto.Size(x.Periodic) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) +func (m *SdkVolumeSnapshotCreateResponse) Reset() { *m = SdkVolumeSnapshotCreateResponse{} } +func (m *SdkVolumeSnapshotCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeSnapshotCreateResponse) ProtoMessage() {} +func (*SdkVolumeSnapshotCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{147} +} +func (m *SdkVolumeSnapshotCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotCreateResponse.Unmarshal(m, b) +} +func (m *SdkVolumeSnapshotCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotCreateResponse.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeSnapshotCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotCreateResponse.Merge(dst, src) +} +func (m *SdkVolumeSnapshotCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotCreateResponse.Size(m) +} +func (m *SdkVolumeSnapshotCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotCreateResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeSnapshotCreateResponse proto.InternalMessageInfo + +func (m *SdkVolumeSnapshotCreateResponse) GetSnapshotId() string { + if m != nil { + return m.SnapshotId } - return n + return "" } -// Defines a schedule policy -type SdkSchedulePolicy struct { - // Name of the schedule policy - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - // Schedule policies - Schedules []*SdkSchedulePolicyInterval `protobuf:"bytes,2,rep,name=schedules" json:"schedules,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to restore a volume to a snapshot +type SdkVolumeSnapshotRestoreRequest struct { + // Id of volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Snapshot id to apply to `volume_id` + SnapshotId string `protobuf:"bytes,2,opt,name=snapshot_id,json=snapshotId" json:"snapshot_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkSchedulePolicy) Reset() { *m = SdkSchedulePolicy{} } -func (m *SdkSchedulePolicy) String() string { return proto.CompactTextString(m) } -func (*SdkSchedulePolicy) ProtoMessage() {} -func (*SdkSchedulePolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{81} +func (m *SdkVolumeSnapshotRestoreRequest) Reset() { *m = SdkVolumeSnapshotRestoreRequest{} } +func (m *SdkVolumeSnapshotRestoreRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeSnapshotRestoreRequest) ProtoMessage() {} +func (*SdkVolumeSnapshotRestoreRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{148} } -func (m *SdkSchedulePolicy) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkSchedulePolicy.Unmarshal(m, b) +func (m *SdkVolumeSnapshotRestoreRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.Unmarshal(m, b) } -func (m *SdkSchedulePolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkSchedulePolicy.Marshal(b, m, deterministic) +func (m *SdkVolumeSnapshotRestoreRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.Marshal(b, m, deterministic) } -func (dst *SdkSchedulePolicy) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkSchedulePolicy.Merge(dst, src) +func (dst *SdkVolumeSnapshotRestoreRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.Merge(dst, src) } -func (m *SdkSchedulePolicy) XXX_Size() int { - return xxx_messageInfo_SdkSchedulePolicy.Size(m) +func (m *SdkVolumeSnapshotRestoreRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.Size(m) } -func (m *SdkSchedulePolicy) XXX_DiscardUnknown() { - xxx_messageInfo_SdkSchedulePolicy.DiscardUnknown(m) +func (m *SdkVolumeSnapshotRestoreRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkSchedulePolicy proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeSnapshotRestoreRequest proto.InternalMessageInfo -func (m *SdkSchedulePolicy) GetName() string { +func (m *SdkVolumeSnapshotRestoreRequest) GetVolumeId() string { if m != nil { - return m.Name + return m.VolumeId } return "" } -func (m *SdkSchedulePolicy) GetSchedules() []*SdkSchedulePolicyInterval { +func (m *SdkVolumeSnapshotRestoreRequest) GetSnapshotId() string { if m != nil { - return m.Schedules + return m.SnapshotId } - return nil + return "" } -// Defines a request to create credentials -type SdkCredentialCreateRequest struct { - // Name of the credential - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - // (optional) Name of bucket - Bucket string `protobuf:"bytes,2,opt,name=bucket" json:"bucket,omitempty"` - // (optional) Key used to encrypt the data - EncryptionKey string `protobuf:"bytes,3,opt,name=encryption_key,json=encryptionKey" json:"encryption_key,omitempty"` - // Ownership of the credential. Collaborators and groups may be - // added here with their appropriate ACLS. - Ownership *Ownership `protobuf:"bytes,4,opt,name=ownership" json:"ownership,omitempty"` - // Start at field number 200 to allow for expansion - // - // Types that are valid to be assigned to CredentialType: - // *SdkCredentialCreateRequest_AwsCredential - // *SdkCredentialCreateRequest_AzureCredential - // *SdkCredentialCreateRequest_GoogleCredential - CredentialType isSdkCredentialCreateRequest_CredentialType `protobuf_oneof:"credential_type"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Empty response +type SdkVolumeSnapshotRestoreResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialCreateRequest) Reset() { *m = SdkCredentialCreateRequest{} } -func (m *SdkCredentialCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialCreateRequest) ProtoMessage() {} -func (*SdkCredentialCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{82} +func (m *SdkVolumeSnapshotRestoreResponse) Reset() { *m = SdkVolumeSnapshotRestoreResponse{} } +func (m *SdkVolumeSnapshotRestoreResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeSnapshotRestoreResponse) ProtoMessage() {} +func (*SdkVolumeSnapshotRestoreResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{149} } -func (m *SdkCredentialCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialCreateRequest.Unmarshal(m, b) +func (m *SdkVolumeSnapshotRestoreResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.Unmarshal(m, b) } -func (m *SdkCredentialCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialCreateRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeSnapshotRestoreResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.Marshal(b, m, deterministic) } -func (dst *SdkCredentialCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialCreateRequest.Merge(dst, src) +func (dst *SdkVolumeSnapshotRestoreResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.Merge(dst, src) } -func (m *SdkCredentialCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkCredentialCreateRequest.Size(m) +func (m *SdkVolumeSnapshotRestoreResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.Size(m) } -func (m *SdkCredentialCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialCreateRequest.DiscardUnknown(m) +func (m *SdkVolumeSnapshotRestoreResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeSnapshotRestoreResponse proto.InternalMessageInfo -type isSdkCredentialCreateRequest_CredentialType interface { - isSdkCredentialCreateRequest_CredentialType() +// Defines a request to list the snaphots +type SdkVolumeSnapshotEnumerateRequest struct { + // Get the snapshots for this volume id + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -type SdkCredentialCreateRequest_AwsCredential struct { - AwsCredential *SdkAwsCredentialRequest `protobuf:"bytes,200,opt,name=aws_credential,json=awsCredential,oneof"` +func (m *SdkVolumeSnapshotEnumerateRequest) Reset() { *m = SdkVolumeSnapshotEnumerateRequest{} } +func (m *SdkVolumeSnapshotEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeSnapshotEnumerateRequest) ProtoMessage() {} +func (*SdkVolumeSnapshotEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{150} } -type SdkCredentialCreateRequest_AzureCredential struct { - AzureCredential *SdkAzureCredentialRequest `protobuf:"bytes,201,opt,name=azure_credential,json=azureCredential,oneof"` +func (m *SdkVolumeSnapshotEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.Unmarshal(m, b) } -type SdkCredentialCreateRequest_GoogleCredential struct { - GoogleCredential *SdkGoogleCredentialRequest `protobuf:"bytes,202,opt,name=google_credential,json=googleCredential,oneof"` +func (m *SdkVolumeSnapshotEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.Marshal(b, m, deterministic) } - -func (*SdkCredentialCreateRequest_AwsCredential) isSdkCredentialCreateRequest_CredentialType() {} -func (*SdkCredentialCreateRequest_AzureCredential) isSdkCredentialCreateRequest_CredentialType() {} -func (*SdkCredentialCreateRequest_GoogleCredential) isSdkCredentialCreateRequest_CredentialType() {} - -func (m *SdkCredentialCreateRequest) GetCredentialType() isSdkCredentialCreateRequest_CredentialType { - if m != nil { - return m.CredentialType - } - return nil +func (dst *SdkVolumeSnapshotEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.Merge(dst, src) +} +func (m *SdkVolumeSnapshotEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.Size(m) +} +func (m *SdkVolumeSnapshotEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.DiscardUnknown(m) } -func (m *SdkCredentialCreateRequest) GetName() string { +var xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest proto.InternalMessageInfo + +func (m *SdkVolumeSnapshotEnumerateRequest) GetVolumeId() string { if m != nil { - return m.Name + return m.VolumeId } return "" } -func (m *SdkCredentialCreateRequest) GetBucket() string { - if m != nil { - return m.Bucket - } - return "" +// Defines a response when listing snapshots +type SdkVolumeSnapshotEnumerateResponse struct { + // List of immutable snapshots + VolumeSnapshotIds []string `protobuf:"bytes,1,rep,name=volume_snapshot_ids,json=volumeSnapshotIds" json:"volume_snapshot_ids,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialCreateRequest) GetEncryptionKey() string { - if m != nil { - return m.EncryptionKey - } - return "" +func (m *SdkVolumeSnapshotEnumerateResponse) Reset() { *m = SdkVolumeSnapshotEnumerateResponse{} } +func (m *SdkVolumeSnapshotEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeSnapshotEnumerateResponse) ProtoMessage() {} +func (*SdkVolumeSnapshotEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{151} +} +func (m *SdkVolumeSnapshotEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.Unmarshal(m, b) +} +func (m *SdkVolumeSnapshotEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeSnapshotEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.Merge(dst, src) +} +func (m *SdkVolumeSnapshotEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.Size(m) +} +func (m *SdkVolumeSnapshotEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.DiscardUnknown(m) } -func (m *SdkCredentialCreateRequest) GetOwnership() *Ownership { +var xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse proto.InternalMessageInfo + +func (m *SdkVolumeSnapshotEnumerateResponse) GetVolumeSnapshotIds() []string { if m != nil { - return m.Ownership + return m.VolumeSnapshotIds } return nil } -func (m *SdkCredentialCreateRequest) GetAwsCredential() *SdkAwsCredentialRequest { - if x, ok := m.GetCredentialType().(*SdkCredentialCreateRequest_AwsCredential); ok { - return x.AwsCredential +// Defines a request to list the snaphots +type SdkVolumeSnapshotEnumerateWithFiltersRequest struct { + // (optional) Get the snapshots for this volume id + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // (optional) Get snapshots that match these labels + Labels map[string]string `protobuf:"bytes,2,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) Reset() { + *m = SdkVolumeSnapshotEnumerateWithFiltersRequest{} +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) String() string { + return proto.CompactTextString(m) +} +func (*SdkVolumeSnapshotEnumerateWithFiltersRequest) ProtoMessage() {} +func (*SdkVolumeSnapshotEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{152} +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.Unmarshal(m, b) +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.Merge(dst, src) +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.Size(m) +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest proto.InternalMessageInfo + +func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) GetVolumeId() string { + if m != nil { + return m.VolumeId } - return nil + return "" } -func (m *SdkCredentialCreateRequest) GetAzureCredential() *SdkAzureCredentialRequest { - if x, ok := m.GetCredentialType().(*SdkCredentialCreateRequest_AzureCredential); ok { - return x.AzureCredential +func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) GetLabels() map[string]string { + if m != nil { + return m.Labels } return nil } -func (m *SdkCredentialCreateRequest) GetGoogleCredential() *SdkGoogleCredentialRequest { - if x, ok := m.GetCredentialType().(*SdkCredentialCreateRequest_GoogleCredential); ok { - return x.GoogleCredential - } - return nil +// Defines a response when listing snapshots +type SdkVolumeSnapshotEnumerateWithFiltersResponse struct { + // List of immutable snapshots + VolumeSnapshotIds []string `protobuf:"bytes,1,rep,name=volume_snapshot_ids,json=volumeSnapshotIds" json:"volume_snapshot_ids,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -// XXX_OneofFuncs is for the internal use of the proto package. -func (*SdkCredentialCreateRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _SdkCredentialCreateRequest_OneofMarshaler, _SdkCredentialCreateRequest_OneofUnmarshaler, _SdkCredentialCreateRequest_OneofSizer, []interface{}{ - (*SdkCredentialCreateRequest_AwsCredential)(nil), - (*SdkCredentialCreateRequest_AzureCredential)(nil), - (*SdkCredentialCreateRequest_GoogleCredential)(nil), - } +func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) Reset() { + *m = SdkVolumeSnapshotEnumerateWithFiltersResponse{} } - -func _SdkCredentialCreateRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*SdkCredentialCreateRequest) - // credential_type - switch x := m.CredentialType.(type) { - case *SdkCredentialCreateRequest_AwsCredential: - b.EncodeVarint(200<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.AwsCredential); err != nil { - return err - } - case *SdkCredentialCreateRequest_AzureCredential: - b.EncodeVarint(201<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.AzureCredential); err != nil { - return err - } - case *SdkCredentialCreateRequest_GoogleCredential: - b.EncodeVarint(202<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.GoogleCredential); err != nil { - return err - } - case nil: - default: - return fmt.Errorf("SdkCredentialCreateRequest.CredentialType has unexpected type %T", x) - } - return nil +func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) String() string { + return proto.CompactTextString(m) } - -func _SdkCredentialCreateRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*SdkCredentialCreateRequest) - switch tag { - case 200: // credential_type.aws_credential - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkAwsCredentialRequest) - err := b.DecodeMessage(msg) - m.CredentialType = &SdkCredentialCreateRequest_AwsCredential{msg} - return true, err - case 201: // credential_type.azure_credential - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkAzureCredentialRequest) - err := b.DecodeMessage(msg) - m.CredentialType = &SdkCredentialCreateRequest_AzureCredential{msg} - return true, err - case 202: // credential_type.google_credential - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkGoogleCredentialRequest) - err := b.DecodeMessage(msg) - m.CredentialType = &SdkCredentialCreateRequest_GoogleCredential{msg} - return true, err - default: - return false, nil - } +func (*SdkVolumeSnapshotEnumerateWithFiltersResponse) ProtoMessage() {} +func (*SdkVolumeSnapshotEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{153} +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.Unmarshal(m, b) +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.Merge(dst, src) +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.Size(m) +} +func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.DiscardUnknown(m) } -func _SdkCredentialCreateRequest_OneofSizer(msg proto.Message) (n int) { - m := msg.(*SdkCredentialCreateRequest) - // credential_type - switch x := m.CredentialType.(type) { - case *SdkCredentialCreateRequest_AwsCredential: - s := proto.Size(x.AwsCredential) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkCredentialCreateRequest_AzureCredential: - s := proto.Size(x.AzureCredential) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkCredentialCreateRequest_GoogleCredential: - s := proto.Size(x.GoogleCredential) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) +var xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse proto.InternalMessageInfo + +func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) GetVolumeSnapshotIds() []string { + if m != nil { + return m.VolumeSnapshotIds } - return n + return nil } -// Defines a response from creating a credential -type SdkCredentialCreateResponse struct { - // Id of the credentials - CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to update the snapshot schedule of a volume +type SdkVolumeSnapshotScheduleUpdateRequest struct { + // Id of volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Names of schedule policies + SnapshotScheduleNames []string `protobuf:"bytes,2,rep,name=snapshot_schedule_names,json=snapshotScheduleNames" json:"snapshot_schedule_names,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialCreateResponse) Reset() { *m = SdkCredentialCreateResponse{} } -func (m *SdkCredentialCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialCreateResponse) ProtoMessage() {} -func (*SdkCredentialCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{83} +func (m *SdkVolumeSnapshotScheduleUpdateRequest) Reset() { + *m = SdkVolumeSnapshotScheduleUpdateRequest{} } -func (m *SdkCredentialCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialCreateResponse.Unmarshal(m, b) +func (m *SdkVolumeSnapshotScheduleUpdateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeSnapshotScheduleUpdateRequest) ProtoMessage() {} +func (*SdkVolumeSnapshotScheduleUpdateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{154} } -func (m *SdkCredentialCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialCreateResponse.Marshal(b, m, deterministic) +func (m *SdkVolumeSnapshotScheduleUpdateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.Unmarshal(m, b) } -func (dst *SdkCredentialCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialCreateResponse.Merge(dst, src) +func (m *SdkVolumeSnapshotScheduleUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.Marshal(b, m, deterministic) } -func (m *SdkCredentialCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkCredentialCreateResponse.Size(m) +func (dst *SdkVolumeSnapshotScheduleUpdateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.Merge(dst, src) } -func (m *SdkCredentialCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialCreateResponse.DiscardUnknown(m) +func (m *SdkVolumeSnapshotScheduleUpdateRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.Size(m) +} +func (m *SdkVolumeSnapshotScheduleUpdateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest proto.InternalMessageInfo -func (m *SdkCredentialCreateResponse) GetCredentialId() string { +func (m *SdkVolumeSnapshotScheduleUpdateRequest) GetVolumeId() string { if m != nil { - return m.CredentialId + return m.VolumeId } return "" } -// Defines credentials for Aws/S3 endpoints -type SdkAwsCredentialRequest struct { - // Access key - AccessKey string `protobuf:"bytes,1,opt,name=access_key,json=accessKey" json:"access_key,omitempty"` - // Secret key - SecretKey string `protobuf:"bytes,2,opt,name=secret_key,json=secretKey" json:"secret_key,omitempty"` - // Endpoint - Endpoint string `protobuf:"bytes,3,opt,name=endpoint" json:"endpoint,omitempty"` - // Region - Region string `protobuf:"bytes,4,opt,name=region" json:"region,omitempty"` - // (optional) Disable SSL connection - DisableSsl bool `protobuf:"varint,5,opt,name=disable_ssl,json=disableSsl" json:"disable_ssl,omitempty"` - // (optional) Disable path-style access - DisablePathStyle bool `protobuf:"varint,6,opt,name=disable_path_style,json=disablePathStyle" json:"disable_path_style,omitempty"` +func (m *SdkVolumeSnapshotScheduleUpdateRequest) GetSnapshotScheduleNames() []string { + if m != nil { + return m.SnapshotScheduleNames + } + return nil +} + +// Empty response +type SdkVolumeSnapshotScheduleUpdateResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAwsCredentialRequest) Reset() { *m = SdkAwsCredentialRequest{} } -func (m *SdkAwsCredentialRequest) String() string { return proto.CompactTextString(m) } -func (*SdkAwsCredentialRequest) ProtoMessage() {} -func (*SdkAwsCredentialRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{84} +func (m *SdkVolumeSnapshotScheduleUpdateResponse) Reset() { + *m = SdkVolumeSnapshotScheduleUpdateResponse{} } -func (m *SdkAwsCredentialRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAwsCredentialRequest.Unmarshal(m, b) +func (m *SdkVolumeSnapshotScheduleUpdateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeSnapshotScheduleUpdateResponse) ProtoMessage() {} +func (*SdkVolumeSnapshotScheduleUpdateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{155} } -func (m *SdkAwsCredentialRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAwsCredentialRequest.Marshal(b, m, deterministic) +func (m *SdkVolumeSnapshotScheduleUpdateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.Unmarshal(m, b) } -func (dst *SdkAwsCredentialRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAwsCredentialRequest.Merge(dst, src) +func (m *SdkVolumeSnapshotScheduleUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.Marshal(b, m, deterministic) } -func (m *SdkAwsCredentialRequest) XXX_Size() int { - return xxx_messageInfo_SdkAwsCredentialRequest.Size(m) +func (dst *SdkVolumeSnapshotScheduleUpdateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.Merge(dst, src) } -func (m *SdkAwsCredentialRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAwsCredentialRequest.DiscardUnknown(m) +func (m *SdkVolumeSnapshotScheduleUpdateResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.Size(m) +} +func (m *SdkVolumeSnapshotScheduleUpdateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkAwsCredentialRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse proto.InternalMessageInfo -func (m *SdkAwsCredentialRequest) GetAccessKey() string { - if m != nil { - return m.AccessKey - } - return "" +// Defines request to retrieve all volumes/snapshots capacity usage details +// for a given node +type SdkNodeVolumeUsageByNodeRequest struct { + // Id of the node to get snapshot/volumes capacity usage details + NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAwsCredentialRequest) GetSecretKey() string { - if m != nil { - return m.SecretKey - } - return "" +func (m *SdkNodeVolumeUsageByNodeRequest) Reset() { *m = SdkNodeVolumeUsageByNodeRequest{} } +func (m *SdkNodeVolumeUsageByNodeRequest) String() string { return proto.CompactTextString(m) } +func (*SdkNodeVolumeUsageByNodeRequest) ProtoMessage() {} +func (*SdkNodeVolumeUsageByNodeRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{156} +} +func (m *SdkNodeVolumeUsageByNodeRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeVolumeUsageByNodeRequest.Unmarshal(m, b) +} +func (m *SdkNodeVolumeUsageByNodeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeVolumeUsageByNodeRequest.Marshal(b, m, deterministic) +} +func (dst *SdkNodeVolumeUsageByNodeRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeVolumeUsageByNodeRequest.Merge(dst, src) +} +func (m *SdkNodeVolumeUsageByNodeRequest) XXX_Size() int { + return xxx_messageInfo_SdkNodeVolumeUsageByNodeRequest.Size(m) +} +func (m *SdkNodeVolumeUsageByNodeRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeVolumeUsageByNodeRequest.DiscardUnknown(m) } -func (m *SdkAwsCredentialRequest) GetEndpoint() string { +var xxx_messageInfo_SdkNodeVolumeUsageByNodeRequest proto.InternalMessageInfo + +func (m *SdkNodeVolumeUsageByNodeRequest) GetNodeId() string { if m != nil { - return m.Endpoint + return m.NodeId } return "" } -func (m *SdkAwsCredentialRequest) GetRegion() string { - if m != nil { - return m.Region - } - return "" +// Defines response containing Node's volumes/snapshot capacity usage details +type SdkNodeVolumeUsageByNodeResponse struct { + // VolumeUsageByNode details + VolumeUsageInfo *VolumeUsageByNode `protobuf:"bytes,1,opt,name=volume_usage_info,json=volumeUsageInfo" json:"volume_usage_info,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAwsCredentialRequest) GetDisableSsl() bool { - if m != nil { - return m.DisableSsl - } - return false +func (m *SdkNodeVolumeUsageByNodeResponse) Reset() { *m = SdkNodeVolumeUsageByNodeResponse{} } +func (m *SdkNodeVolumeUsageByNodeResponse) String() string { return proto.CompactTextString(m) } +func (*SdkNodeVolumeUsageByNodeResponse) ProtoMessage() {} +func (*SdkNodeVolumeUsageByNodeResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{157} +} +func (m *SdkNodeVolumeUsageByNodeResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeVolumeUsageByNodeResponse.Unmarshal(m, b) +} +func (m *SdkNodeVolumeUsageByNodeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeVolumeUsageByNodeResponse.Marshal(b, m, deterministic) +} +func (dst *SdkNodeVolumeUsageByNodeResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeVolumeUsageByNodeResponse.Merge(dst, src) +} +func (m *SdkNodeVolumeUsageByNodeResponse) XXX_Size() int { + return xxx_messageInfo_SdkNodeVolumeUsageByNodeResponse.Size(m) +} +func (m *SdkNodeVolumeUsageByNodeResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeVolumeUsageByNodeResponse.DiscardUnknown(m) } -func (m *SdkAwsCredentialRequest) GetDisablePathStyle() bool { +var xxx_messageInfo_SdkNodeVolumeUsageByNodeResponse proto.InternalMessageInfo + +func (m *SdkNodeVolumeUsageByNodeResponse) GetVolumeUsageInfo() *VolumeUsageByNode { if m != nil { - return m.DisablePathStyle + return m.VolumeUsageInfo } - return false + return nil } -// Defines credentials for Azure -type SdkAzureCredentialRequest struct { - // Account name - AccountName string `protobuf:"bytes,1,opt,name=account_name,json=accountName" json:"account_name,omitempty"` - // Account key - AccountKey string `protobuf:"bytes,2,opt,name=account_key,json=accountKey" json:"account_key,omitempty"` +// Empty request +type SdkClusterDomainsEnumerateRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAzureCredentialRequest) Reset() { *m = SdkAzureCredentialRequest{} } -func (m *SdkAzureCredentialRequest) String() string { return proto.CompactTextString(m) } -func (*SdkAzureCredentialRequest) ProtoMessage() {} -func (*SdkAzureCredentialRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{85} +func (m *SdkClusterDomainsEnumerateRequest) Reset() { *m = SdkClusterDomainsEnumerateRequest{} } +func (m *SdkClusterDomainsEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterDomainsEnumerateRequest) ProtoMessage() {} +func (*SdkClusterDomainsEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{158} } -func (m *SdkAzureCredentialRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAzureCredentialRequest.Unmarshal(m, b) +func (m *SdkClusterDomainsEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterDomainsEnumerateRequest.Unmarshal(m, b) } -func (m *SdkAzureCredentialRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAzureCredentialRequest.Marshal(b, m, deterministic) +func (m *SdkClusterDomainsEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterDomainsEnumerateRequest.Marshal(b, m, deterministic) } -func (dst *SdkAzureCredentialRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAzureCredentialRequest.Merge(dst, src) +func (dst *SdkClusterDomainsEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterDomainsEnumerateRequest.Merge(dst, src) } -func (m *SdkAzureCredentialRequest) XXX_Size() int { - return xxx_messageInfo_SdkAzureCredentialRequest.Size(m) +func (m *SdkClusterDomainsEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterDomainsEnumerateRequest.Size(m) } -func (m *SdkAzureCredentialRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAzureCredentialRequest.DiscardUnknown(m) +func (m *SdkClusterDomainsEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterDomainsEnumerateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkAzureCredentialRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterDomainsEnumerateRequest proto.InternalMessageInfo -func (m *SdkAzureCredentialRequest) GetAccountName() string { - if m != nil { - return m.AccountName - } - return "" +// Defines a response when enumerating cluster domains +type SdkClusterDomainsEnumerateResponse struct { + // List of names of all the cluster domains in a cluster + ClusterDomainNames []string `protobuf:"bytes,1,rep,name=cluster_domain_names,json=clusterDomainNames" json:"cluster_domain_names,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAzureCredentialRequest) GetAccountKey() string { +func (m *SdkClusterDomainsEnumerateResponse) Reset() { *m = SdkClusterDomainsEnumerateResponse{} } +func (m *SdkClusterDomainsEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterDomainsEnumerateResponse) ProtoMessage() {} +func (*SdkClusterDomainsEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{159} +} +func (m *SdkClusterDomainsEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterDomainsEnumerateResponse.Unmarshal(m, b) +} +func (m *SdkClusterDomainsEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterDomainsEnumerateResponse.Marshal(b, m, deterministic) +} +func (dst *SdkClusterDomainsEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterDomainsEnumerateResponse.Merge(dst, src) +} +func (m *SdkClusterDomainsEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterDomainsEnumerateResponse.Size(m) +} +func (m *SdkClusterDomainsEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterDomainsEnumerateResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkClusterDomainsEnumerateResponse proto.InternalMessageInfo + +func (m *SdkClusterDomainsEnumerateResponse) GetClusterDomainNames() []string { if m != nil { - return m.AccountKey + return m.ClusterDomainNames } - return "" + return nil } -// Defines credentials for Google -type SdkGoogleCredentialRequest struct { - // Project ID - ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"` - // JSON Key - JsonKey string `protobuf:"bytes,2,opt,name=json_key,json=jsonKey" json:"json_key,omitempty"` +// Defines a request to inspect a cluster domain +type SdkClusterDomainInspectRequest struct { + // Name of the cluster domain to inspect + ClusterDomainName string `protobuf:"bytes,1,opt,name=cluster_domain_name,json=clusterDomainName" json:"cluster_domain_name,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkGoogleCredentialRequest) Reset() { *m = SdkGoogleCredentialRequest{} } -func (m *SdkGoogleCredentialRequest) String() string { return proto.CompactTextString(m) } -func (*SdkGoogleCredentialRequest) ProtoMessage() {} -func (*SdkGoogleCredentialRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{86} +func (m *SdkClusterDomainInspectRequest) Reset() { *m = SdkClusterDomainInspectRequest{} } +func (m *SdkClusterDomainInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterDomainInspectRequest) ProtoMessage() {} +func (*SdkClusterDomainInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{160} } -func (m *SdkGoogleCredentialRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkGoogleCredentialRequest.Unmarshal(m, b) +func (m *SdkClusterDomainInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterDomainInspectRequest.Unmarshal(m, b) } -func (m *SdkGoogleCredentialRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkGoogleCredentialRequest.Marshal(b, m, deterministic) +func (m *SdkClusterDomainInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterDomainInspectRequest.Marshal(b, m, deterministic) } -func (dst *SdkGoogleCredentialRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkGoogleCredentialRequest.Merge(dst, src) +func (dst *SdkClusterDomainInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterDomainInspectRequest.Merge(dst, src) } -func (m *SdkGoogleCredentialRequest) XXX_Size() int { - return xxx_messageInfo_SdkGoogleCredentialRequest.Size(m) +func (m *SdkClusterDomainInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterDomainInspectRequest.Size(m) } -func (m *SdkGoogleCredentialRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkGoogleCredentialRequest.DiscardUnknown(m) +func (m *SdkClusterDomainInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterDomainInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkGoogleCredentialRequest proto.InternalMessageInfo - -func (m *SdkGoogleCredentialRequest) GetProjectId() string { - if m != nil { - return m.ProjectId - } - return "" -} +var xxx_messageInfo_SdkClusterDomainInspectRequest proto.InternalMessageInfo -func (m *SdkGoogleCredentialRequest) GetJsonKey() string { +func (m *SdkClusterDomainInspectRequest) GetClusterDomainName() string { if m != nil { - return m.JsonKey + return m.ClusterDomainName } return "" } -// Defines the response for AWS/S3 credentials -type SdkAwsCredentialResponse struct { - // Access key - AccessKey string `protobuf:"bytes,2,opt,name=access_key,json=accessKey" json:"access_key,omitempty"` - // Endpoint - Endpoint string `protobuf:"bytes,3,opt,name=endpoint" json:"endpoint,omitempty"` - // Region - Region string `protobuf:"bytes,4,opt,name=region" json:"region,omitempty"` - // (optional) Disable SSL connection - DisableSsl bool `protobuf:"varint,5,opt,name=disable_ssl,json=disableSsl" json:"disable_ssl,omitempty"` - // (optional) Disable path-style access - DisablePathStyle bool `protobuf:"varint,6,opt,name=disable_path_style,json=disablePathStyle" json:"disable_path_style,omitempty"` +// Defines a response to inspecting a cluster domain +type SdkClusterDomainInspectResponse struct { + // Name of the cluster domain + ClusterDomainName string `protobuf:"bytes,1,opt,name=cluster_domain_name,json=clusterDomainName" json:"cluster_domain_name,omitempty"` + // IsActive indicates whether this cluster domain is active + IsActive bool `protobuf:"varint,2,opt,name=is_active,json=isActive" json:"is_active,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAwsCredentialResponse) Reset() { *m = SdkAwsCredentialResponse{} } -func (m *SdkAwsCredentialResponse) String() string { return proto.CompactTextString(m) } -func (*SdkAwsCredentialResponse) ProtoMessage() {} -func (*SdkAwsCredentialResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{87} +func (m *SdkClusterDomainInspectResponse) Reset() { *m = SdkClusterDomainInspectResponse{} } +func (m *SdkClusterDomainInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterDomainInspectResponse) ProtoMessage() {} +func (*SdkClusterDomainInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{161} } -func (m *SdkAwsCredentialResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAwsCredentialResponse.Unmarshal(m, b) +func (m *SdkClusterDomainInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterDomainInspectResponse.Unmarshal(m, b) } -func (m *SdkAwsCredentialResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAwsCredentialResponse.Marshal(b, m, deterministic) +func (m *SdkClusterDomainInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterDomainInspectResponse.Marshal(b, m, deterministic) } -func (dst *SdkAwsCredentialResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAwsCredentialResponse.Merge(dst, src) +func (dst *SdkClusterDomainInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterDomainInspectResponse.Merge(dst, src) } -func (m *SdkAwsCredentialResponse) XXX_Size() int { - return xxx_messageInfo_SdkAwsCredentialResponse.Size(m) +func (m *SdkClusterDomainInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterDomainInspectResponse.Size(m) } -func (m *SdkAwsCredentialResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAwsCredentialResponse.DiscardUnknown(m) +func (m *SdkClusterDomainInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterDomainInspectResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkAwsCredentialResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterDomainInspectResponse proto.InternalMessageInfo -func (m *SdkAwsCredentialResponse) GetAccessKey() string { +func (m *SdkClusterDomainInspectResponse) GetClusterDomainName() string { if m != nil { - return m.AccessKey + return m.ClusterDomainName } return "" } -func (m *SdkAwsCredentialResponse) GetEndpoint() string { +func (m *SdkClusterDomainInspectResponse) GetIsActive() bool { if m != nil { - return m.Endpoint + return m.IsActive } - return "" + return false } -func (m *SdkAwsCredentialResponse) GetRegion() string { - if m != nil { - return m.Region - } - return "" +// Defines a request to activate a cluster domain +type SdkClusterDomainActivateRequest struct { + // Name of the cluster domain to activate + ClusterDomainName string `protobuf:"bytes,1,opt,name=cluster_domain_name,json=clusterDomainName" json:"cluster_domain_name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkAwsCredentialResponse) GetDisableSsl() bool { - if m != nil { - return m.DisableSsl - } - return false +func (m *SdkClusterDomainActivateRequest) Reset() { *m = SdkClusterDomainActivateRequest{} } +func (m *SdkClusterDomainActivateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterDomainActivateRequest) ProtoMessage() {} +func (*SdkClusterDomainActivateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{162} +} +func (m *SdkClusterDomainActivateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterDomainActivateRequest.Unmarshal(m, b) +} +func (m *SdkClusterDomainActivateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterDomainActivateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkClusterDomainActivateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterDomainActivateRequest.Merge(dst, src) } +func (m *SdkClusterDomainActivateRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterDomainActivateRequest.Size(m) +} +func (m *SdkClusterDomainActivateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterDomainActivateRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkClusterDomainActivateRequest proto.InternalMessageInfo -func (m *SdkAwsCredentialResponse) GetDisablePathStyle() bool { +func (m *SdkClusterDomainActivateRequest) GetClusterDomainName() string { if m != nil { - return m.DisablePathStyle + return m.ClusterDomainName } - return false + return "" } -// Defines the response for Azure credentials -type SdkAzureCredentialResponse struct { - // Account name - AccountName string `protobuf:"bytes,2,opt,name=account_name,json=accountName" json:"account_name,omitempty"` +// Empty response +type SdkClusterDomainActivateResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkAzureCredentialResponse) Reset() { *m = SdkAzureCredentialResponse{} } -func (m *SdkAzureCredentialResponse) String() string { return proto.CompactTextString(m) } -func (*SdkAzureCredentialResponse) ProtoMessage() {} -func (*SdkAzureCredentialResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{88} +func (m *SdkClusterDomainActivateResponse) Reset() { *m = SdkClusterDomainActivateResponse{} } +func (m *SdkClusterDomainActivateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterDomainActivateResponse) ProtoMessage() {} +func (*SdkClusterDomainActivateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{163} } -func (m *SdkAzureCredentialResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkAzureCredentialResponse.Unmarshal(m, b) +func (m *SdkClusterDomainActivateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterDomainActivateResponse.Unmarshal(m, b) } -func (m *SdkAzureCredentialResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkAzureCredentialResponse.Marshal(b, m, deterministic) +func (m *SdkClusterDomainActivateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterDomainActivateResponse.Marshal(b, m, deterministic) } -func (dst *SdkAzureCredentialResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkAzureCredentialResponse.Merge(dst, src) +func (dst *SdkClusterDomainActivateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterDomainActivateResponse.Merge(dst, src) } -func (m *SdkAzureCredentialResponse) XXX_Size() int { - return xxx_messageInfo_SdkAzureCredentialResponse.Size(m) +func (m *SdkClusterDomainActivateResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterDomainActivateResponse.Size(m) } -func (m *SdkAzureCredentialResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkAzureCredentialResponse.DiscardUnknown(m) +func (m *SdkClusterDomainActivateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterDomainActivateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkAzureCredentialResponse proto.InternalMessageInfo - -func (m *SdkAzureCredentialResponse) GetAccountName() string { - if m != nil { - return m.AccountName - } - return "" -} +var xxx_messageInfo_SdkClusterDomainActivateResponse proto.InternalMessageInfo -// Defines the response for Google credentials -type SdkGoogleCredentialResponse struct { - // Project ID - ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId" json:"project_id,omitempty"` +// Defines a request to deactivate a cluster domain +type SdkClusterDomainDeactivateRequest struct { + // Name of the cluster domain to deactivate + ClusterDomainName string `protobuf:"bytes,1,opt,name=cluster_domain_name,json=clusterDomainName" json:"cluster_domain_name,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkGoogleCredentialResponse) Reset() { *m = SdkGoogleCredentialResponse{} } -func (m *SdkGoogleCredentialResponse) String() string { return proto.CompactTextString(m) } -func (*SdkGoogleCredentialResponse) ProtoMessage() {} -func (*SdkGoogleCredentialResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{89} +func (m *SdkClusterDomainDeactivateRequest) Reset() { *m = SdkClusterDomainDeactivateRequest{} } +func (m *SdkClusterDomainDeactivateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterDomainDeactivateRequest) ProtoMessage() {} +func (*SdkClusterDomainDeactivateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{164} } -func (m *SdkGoogleCredentialResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkGoogleCredentialResponse.Unmarshal(m, b) +func (m *SdkClusterDomainDeactivateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterDomainDeactivateRequest.Unmarshal(m, b) } -func (m *SdkGoogleCredentialResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkGoogleCredentialResponse.Marshal(b, m, deterministic) +func (m *SdkClusterDomainDeactivateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterDomainDeactivateRequest.Marshal(b, m, deterministic) } -func (dst *SdkGoogleCredentialResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkGoogleCredentialResponse.Merge(dst, src) +func (dst *SdkClusterDomainDeactivateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterDomainDeactivateRequest.Merge(dst, src) } -func (m *SdkGoogleCredentialResponse) XXX_Size() int { - return xxx_messageInfo_SdkGoogleCredentialResponse.Size(m) +func (m *SdkClusterDomainDeactivateRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterDomainDeactivateRequest.Size(m) } -func (m *SdkGoogleCredentialResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkGoogleCredentialResponse.DiscardUnknown(m) +func (m *SdkClusterDomainDeactivateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterDomainDeactivateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkGoogleCredentialResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterDomainDeactivateRequest proto.InternalMessageInfo -func (m *SdkGoogleCredentialResponse) GetProjectId() string { +func (m *SdkClusterDomainDeactivateRequest) GetClusterDomainName() string { if m != nil { - return m.ProjectId + return m.ClusterDomainName } return "" } -// Empty request -type SdkCredentialEnumerateRequest struct { +// Empty response +type SdkClusterDomainDeactivateResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialEnumerateRequest) Reset() { *m = SdkCredentialEnumerateRequest{} } -func (m *SdkCredentialEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialEnumerateRequest) ProtoMessage() {} -func (*SdkCredentialEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{90} +func (m *SdkClusterDomainDeactivateResponse) Reset() { *m = SdkClusterDomainDeactivateResponse{} } +func (m *SdkClusterDomainDeactivateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterDomainDeactivateResponse) ProtoMessage() {} +func (*SdkClusterDomainDeactivateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{165} } -func (m *SdkCredentialEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialEnumerateRequest.Unmarshal(m, b) +func (m *SdkClusterDomainDeactivateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterDomainDeactivateResponse.Unmarshal(m, b) } -func (m *SdkCredentialEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkClusterDomainDeactivateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterDomainDeactivateResponse.Marshal(b, m, deterministic) } -func (dst *SdkCredentialEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialEnumerateRequest.Merge(dst, src) +func (dst *SdkClusterDomainDeactivateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterDomainDeactivateResponse.Merge(dst, src) } -func (m *SdkCredentialEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkCredentialEnumerateRequest.Size(m) +func (m *SdkClusterDomainDeactivateResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterDomainDeactivateResponse.Size(m) } -func (m *SdkCredentialEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialEnumerateRequest.DiscardUnknown(m) +func (m *SdkClusterDomainDeactivateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterDomainDeactivateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterDomainDeactivateResponse proto.InternalMessageInfo -// Defines response for a enumeration of credentials -type SdkCredentialEnumerateResponse struct { - // List of credentials - CredentialIds []string `protobuf:"bytes,1,rep,name=credential_ids,json=credentialIds" json:"credential_ids,omitempty"` +// Empty request +type SdkClusterInspectCurrentRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialEnumerateResponse) Reset() { *m = SdkCredentialEnumerateResponse{} } -func (m *SdkCredentialEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialEnumerateResponse) ProtoMessage() {} -func (*SdkCredentialEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{91} +func (m *SdkClusterInspectCurrentRequest) Reset() { *m = SdkClusterInspectCurrentRequest{} } +func (m *SdkClusterInspectCurrentRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterInspectCurrentRequest) ProtoMessage() {} +func (*SdkClusterInspectCurrentRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{166} } -func (m *SdkCredentialEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialEnumerateResponse.Unmarshal(m, b) +func (m *SdkClusterInspectCurrentRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterInspectCurrentRequest.Unmarshal(m, b) } -func (m *SdkCredentialEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialEnumerateResponse.Marshal(b, m, deterministic) +func (m *SdkClusterInspectCurrentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterInspectCurrentRequest.Marshal(b, m, deterministic) } -func (dst *SdkCredentialEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialEnumerateResponse.Merge(dst, src) +func (dst *SdkClusterInspectCurrentRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterInspectCurrentRequest.Merge(dst, src) } -func (m *SdkCredentialEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkCredentialEnumerateResponse.Size(m) +func (m *SdkClusterInspectCurrentRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterInspectCurrentRequest.Size(m) } -func (m *SdkCredentialEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialEnumerateResponse.DiscardUnknown(m) +func (m *SdkClusterInspectCurrentRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterInspectCurrentRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialEnumerateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterInspectCurrentRequest proto.InternalMessageInfo -func (m *SdkCredentialEnumerateResponse) GetCredentialIds() []string { +// Defines a response when inspecting the current cluster +type SdkClusterInspectCurrentResponse struct { + // Cluster information + Cluster *StorageCluster `protobuf:"bytes,1,opt,name=cluster" json:"cluster,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkClusterInspectCurrentResponse) Reset() { *m = SdkClusterInspectCurrentResponse{} } +func (m *SdkClusterInspectCurrentResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterInspectCurrentResponse) ProtoMessage() {} +func (*SdkClusterInspectCurrentResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{167} +} +func (m *SdkClusterInspectCurrentResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterInspectCurrentResponse.Unmarshal(m, b) +} +func (m *SdkClusterInspectCurrentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterInspectCurrentResponse.Marshal(b, m, deterministic) +} +func (dst *SdkClusterInspectCurrentResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterInspectCurrentResponse.Merge(dst, src) +} +func (m *SdkClusterInspectCurrentResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterInspectCurrentResponse.Size(m) +} +func (m *SdkClusterInspectCurrentResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterInspectCurrentResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkClusterInspectCurrentResponse proto.InternalMessageInfo + +func (m *SdkClusterInspectCurrentResponse) GetCluster() *StorageCluster { if m != nil { - return m.CredentialIds + return m.Cluster } return nil } -// Defines the request to inspection for credentials -type SdkCredentialInspectRequest struct { - // Id of the credential - CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` +// Defines a request when inspecting a node +type SdkNodeInspectRequest struct { + // Id of node to inspect + NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialInspectRequest) Reset() { *m = SdkCredentialInspectRequest{} } -func (m *SdkCredentialInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialInspectRequest) ProtoMessage() {} -func (*SdkCredentialInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{92} +func (m *SdkNodeInspectRequest) Reset() { *m = SdkNodeInspectRequest{} } +func (m *SdkNodeInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkNodeInspectRequest) ProtoMessage() {} +func (*SdkNodeInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{168} } -func (m *SdkCredentialInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialInspectRequest.Unmarshal(m, b) +func (m *SdkNodeInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeInspectRequest.Unmarshal(m, b) } -func (m *SdkCredentialInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialInspectRequest.Marshal(b, m, deterministic) +func (m *SdkNodeInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeInspectRequest.Marshal(b, m, deterministic) } -func (dst *SdkCredentialInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialInspectRequest.Merge(dst, src) +func (dst *SdkNodeInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeInspectRequest.Merge(dst, src) } -func (m *SdkCredentialInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkCredentialInspectRequest.Size(m) +func (m *SdkNodeInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkNodeInspectRequest.Size(m) } -func (m *SdkCredentialInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialInspectRequest.DiscardUnknown(m) +func (m *SdkNodeInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialInspectRequest proto.InternalMessageInfo - -func (m *SdkCredentialInspectRequest) GetCredentialId() string { - if m != nil { - return m.CredentialId - } - return "" -} +var xxx_messageInfo_SdkNodeInspectRequest proto.InternalMessageInfo -// Defines the response to an inspection of a credential. -// This response uses OneOf proto style. Depending on your programming language -// you will need to check if the value of credential_type is one of the ones below. -type SdkCredentialInspectResponse struct { - // Credential id - CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - // Name of the credential - Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - // (optional) Name of bucket - Bucket string `protobuf:"bytes,3,opt,name=bucket" json:"bucket,omitempty"` - // Ownership of the credential - Ownership *Ownership `protobuf:"bytes,4,opt,name=ownership" json:"ownership,omitempty"` - // Start at field number 200 for expansion support +func (m *SdkNodeInspectRequest) GetNodeId() string { + if m != nil { + return m.NodeId + } + return "" +} + +// Job is a generic job object that can encapsulate other +// messages which follow the job framework of APIs +type Job struct { + // ID of the job + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // State of the current job + State Job_State `protobuf:"varint,2,opt,name=state,enum=openstorage.api.Job_State" json:"state,omitempty"` + // Type is the job type + Type Job_Type `protobuf:"varint,3,opt,name=type,enum=openstorage.api.Job_Type" json:"type,omitempty"` + // Job is one of the supported jobs // - // Types that are valid to be assigned to CredentialType: - // *SdkCredentialInspectResponse_AwsCredential - // *SdkCredentialInspectResponse_AzureCredential - // *SdkCredentialInspectResponse_GoogleCredential - CredentialType isSdkCredentialInspectResponse_CredentialType `protobuf_oneof:"credential_type"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + // Types that are valid to be assigned to Job: + // *Job_DrainAttachments + // *Job_ClouddriveTransfer + Job isJob_Job `protobuf_oneof:"job"` + // CreateTime is the time the job was created + CreateTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime" json:"create_time,omitempty"` + // LastUpdateTime is the time the job was updated + LastUpdateTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=last_update_time,json=lastUpdateTime" json:"last_update_time,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialInspectResponse) Reset() { *m = SdkCredentialInspectResponse{} } -func (m *SdkCredentialInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialInspectResponse) ProtoMessage() {} -func (*SdkCredentialInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{93} +func (m *Job) Reset() { *m = Job{} } +func (m *Job) String() string { return proto.CompactTextString(m) } +func (*Job) ProtoMessage() {} +func (*Job) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{169} } -func (m *SdkCredentialInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialInspectResponse.Unmarshal(m, b) +func (m *Job) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Job.Unmarshal(m, b) } -func (m *SdkCredentialInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialInspectResponse.Marshal(b, m, deterministic) +func (m *Job) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Job.Marshal(b, m, deterministic) } -func (dst *SdkCredentialInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialInspectResponse.Merge(dst, src) +func (dst *Job) XXX_Merge(src proto.Message) { + xxx_messageInfo_Job.Merge(dst, src) } -func (m *SdkCredentialInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkCredentialInspectResponse.Size(m) +func (m *Job) XXX_Size() int { + return xxx_messageInfo_Job.Size(m) } -func (m *SdkCredentialInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialInspectResponse.DiscardUnknown(m) +func (m *Job) XXX_DiscardUnknown() { + xxx_messageInfo_Job.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialInspectResponse proto.InternalMessageInfo +var xxx_messageInfo_Job proto.InternalMessageInfo -type isSdkCredentialInspectResponse_CredentialType interface { - isSdkCredentialInspectResponse_CredentialType() +type isJob_Job interface { + isJob_Job() } -type SdkCredentialInspectResponse_AwsCredential struct { - AwsCredential *SdkAwsCredentialResponse `protobuf:"bytes,200,opt,name=aws_credential,json=awsCredential,oneof"` -} -type SdkCredentialInspectResponse_AzureCredential struct { - AzureCredential *SdkAzureCredentialResponse `protobuf:"bytes,201,opt,name=azure_credential,json=azureCredential,oneof"` +type Job_DrainAttachments struct { + DrainAttachments *NodeDrainAttachmentsJob `protobuf:"bytes,400,opt,name=drain_attachments,json=drainAttachments,oneof"` } -type SdkCredentialInspectResponse_GoogleCredential struct { - GoogleCredential *SdkGoogleCredentialResponse `protobuf:"bytes,202,opt,name=google_credential,json=googleCredential,oneof"` +type Job_ClouddriveTransfer struct { + ClouddriveTransfer *CloudDriveTransferJob `protobuf:"bytes,401,opt,name=clouddrive_transfer,json=clouddriveTransfer,oneof"` } -func (*SdkCredentialInspectResponse_AwsCredential) isSdkCredentialInspectResponse_CredentialType() {} -func (*SdkCredentialInspectResponse_AzureCredential) isSdkCredentialInspectResponse_CredentialType() {} -func (*SdkCredentialInspectResponse_GoogleCredential) isSdkCredentialInspectResponse_CredentialType() { -} +func (*Job_DrainAttachments) isJob_Job() {} +func (*Job_ClouddriveTransfer) isJob_Job() {} -func (m *SdkCredentialInspectResponse) GetCredentialType() isSdkCredentialInspectResponse_CredentialType { +func (m *Job) GetJob() isJob_Job { if m != nil { - return m.CredentialType + return m.Job } return nil } -func (m *SdkCredentialInspectResponse) GetCredentialId() string { +func (m *Job) GetId() string { if m != nil { - return m.CredentialId + return m.Id } return "" } -func (m *SdkCredentialInspectResponse) GetName() string { +func (m *Job) GetState() Job_State { if m != nil { - return m.Name + return m.State } - return "" + return Job_UNSPECIFIED_STATE } -func (m *SdkCredentialInspectResponse) GetBucket() string { +func (m *Job) GetType() Job_Type { if m != nil { - return m.Bucket + return m.Type } - return "" + return Job_UNSPECIFIED_TYPE } -func (m *SdkCredentialInspectResponse) GetOwnership() *Ownership { - if m != nil { - return m.Ownership +func (m *Job) GetDrainAttachments() *NodeDrainAttachmentsJob { + if x, ok := m.GetJob().(*Job_DrainAttachments); ok { + return x.DrainAttachments } return nil } -func (m *SdkCredentialInspectResponse) GetAwsCredential() *SdkAwsCredentialResponse { - if x, ok := m.GetCredentialType().(*SdkCredentialInspectResponse_AwsCredential); ok { - return x.AwsCredential +func (m *Job) GetClouddriveTransfer() *CloudDriveTransferJob { + if x, ok := m.GetJob().(*Job_ClouddriveTransfer); ok { + return x.ClouddriveTransfer } return nil } -func (m *SdkCredentialInspectResponse) GetAzureCredential() *SdkAzureCredentialResponse { - if x, ok := m.GetCredentialType().(*SdkCredentialInspectResponse_AzureCredential); ok { - return x.AzureCredential +func (m *Job) GetCreateTime() *timestamp.Timestamp { + if m != nil { + return m.CreateTime } return nil } -func (m *SdkCredentialInspectResponse) GetGoogleCredential() *SdkGoogleCredentialResponse { - if x, ok := m.GetCredentialType().(*SdkCredentialInspectResponse_GoogleCredential); ok { - return x.GoogleCredential +func (m *Job) GetLastUpdateTime() *timestamp.Timestamp { + if m != nil { + return m.LastUpdateTime } return nil } // XXX_OneofFuncs is for the internal use of the proto package. -func (*SdkCredentialInspectResponse) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _SdkCredentialInspectResponse_OneofMarshaler, _SdkCredentialInspectResponse_OneofUnmarshaler, _SdkCredentialInspectResponse_OneofSizer, []interface{}{ - (*SdkCredentialInspectResponse_AwsCredential)(nil), - (*SdkCredentialInspectResponse_AzureCredential)(nil), - (*SdkCredentialInspectResponse_GoogleCredential)(nil), +func (*Job) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _Job_OneofMarshaler, _Job_OneofUnmarshaler, _Job_OneofSizer, []interface{}{ + (*Job_DrainAttachments)(nil), + (*Job_ClouddriveTransfer)(nil), } } -func _SdkCredentialInspectResponse_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*SdkCredentialInspectResponse) - // credential_type - switch x := m.CredentialType.(type) { - case *SdkCredentialInspectResponse_AwsCredential: - b.EncodeVarint(200<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.AwsCredential); err != nil { - return err - } - case *SdkCredentialInspectResponse_AzureCredential: - b.EncodeVarint(201<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.AzureCredential); err != nil { +func _Job_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*Job) + // job + switch x := m.Job.(type) { + case *Job_DrainAttachments: + b.EncodeVarint(400<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.DrainAttachments); err != nil { return err } - case *SdkCredentialInspectResponse_GoogleCredential: - b.EncodeVarint(202<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.GoogleCredential); err != nil { + case *Job_ClouddriveTransfer: + b.EncodeVarint(401<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.ClouddriveTransfer); err != nil { return err } case nil: default: - return fmt.Errorf("SdkCredentialInspectResponse.CredentialType has unexpected type %T", x) + return fmt.Errorf("Job.Job has unexpected type %T", x) } return nil } -func _SdkCredentialInspectResponse_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*SdkCredentialInspectResponse) +func _Job_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*Job) switch tag { - case 200: // credential_type.aws_credential - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkAwsCredentialResponse) - err := b.DecodeMessage(msg) - m.CredentialType = &SdkCredentialInspectResponse_AwsCredential{msg} - return true, err - case 201: // credential_type.azure_credential + case 400: // job.drain_attachments if wire != proto.WireBytes { return true, proto.ErrInternalBadWireType } - msg := new(SdkAzureCredentialResponse) + msg := new(NodeDrainAttachmentsJob) err := b.DecodeMessage(msg) - m.CredentialType = &SdkCredentialInspectResponse_AzureCredential{msg} + m.Job = &Job_DrainAttachments{msg} return true, err - case 202: // credential_type.google_credential + case 401: // job.clouddrive_transfer if wire != proto.WireBytes { return true, proto.ErrInternalBadWireType } - msg := new(SdkGoogleCredentialResponse) + msg := new(CloudDriveTransferJob) err := b.DecodeMessage(msg) - m.CredentialType = &SdkCredentialInspectResponse_GoogleCredential{msg} + m.Job = &Job_ClouddriveTransfer{msg} return true, err default: return false, nil } } -func _SdkCredentialInspectResponse_OneofSizer(msg proto.Message) (n int) { - m := msg.(*SdkCredentialInspectResponse) - // credential_type - switch x := m.CredentialType.(type) { - case *SdkCredentialInspectResponse_AwsCredential: - s := proto.Size(x.AwsCredential) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkCredentialInspectResponse_AzureCredential: - s := proto.Size(x.AzureCredential) +func _Job_OneofSizer(msg proto.Message) (n int) { + m := msg.(*Job) + // job + switch x := m.Job.(type) { + case *Job_DrainAttachments: + s := proto.Size(x.DrainAttachments) n += 2 // tag and wire n += proto.SizeVarint(uint64(s)) n += s - case *SdkCredentialInspectResponse_GoogleCredential: - s := proto.Size(x.GoogleCredential) + case *Job_ClouddriveTransfer: + s := proto.Size(x.ClouddriveTransfer) n += 2 // tag and wire n += proto.SizeVarint(uint64(s)) n += s @@ -9405,5850 +14743,6344 @@ func _SdkCredentialInspectResponse_OneofSizer(msg proto.Message) (n int) { return n } -// Defines the request to delete credentials -type SdkCredentialDeleteRequest struct { - // Id for credentials - CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` +// Defines a response for an SDK request that spins up a new job +// to perform the request +type SdkJobResponse struct { + // Job that was created for the SDK request + Job *Job `protobuf:"bytes,1,opt,name=job" json:"job,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialDeleteRequest) Reset() { *m = SdkCredentialDeleteRequest{} } -func (m *SdkCredentialDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialDeleteRequest) ProtoMessage() {} -func (*SdkCredentialDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{94} +func (m *SdkJobResponse) Reset() { *m = SdkJobResponse{} } +func (m *SdkJobResponse) String() string { return proto.CompactTextString(m) } +func (*SdkJobResponse) ProtoMessage() {} +func (*SdkJobResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{170} } -func (m *SdkCredentialDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialDeleteRequest.Unmarshal(m, b) +func (m *SdkJobResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkJobResponse.Unmarshal(m, b) } -func (m *SdkCredentialDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialDeleteRequest.Marshal(b, m, deterministic) +func (m *SdkJobResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkJobResponse.Marshal(b, m, deterministic) } -func (dst *SdkCredentialDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialDeleteRequest.Merge(dst, src) +func (dst *SdkJobResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkJobResponse.Merge(dst, src) } -func (m *SdkCredentialDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkCredentialDeleteRequest.Size(m) +func (m *SdkJobResponse) XXX_Size() int { + return xxx_messageInfo_SdkJobResponse.Size(m) } -func (m *SdkCredentialDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialDeleteRequest.DiscardUnknown(m) +func (m *SdkJobResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkJobResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialDeleteRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkJobResponse proto.InternalMessageInfo -func (m *SdkCredentialDeleteRequest) GetCredentialId() string { +func (m *SdkJobResponse) GetJob() *Job { if m != nil { - return m.CredentialId + return m.Job } - return "" + return nil } -// Empty response -type SdkCredentialDeleteResponse struct { +// Options for draining volume attachment from a node +type NodeDrainAttachmentOptions struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialDeleteResponse) Reset() { *m = SdkCredentialDeleteResponse{} } -func (m *SdkCredentialDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialDeleteResponse) ProtoMessage() {} -func (*SdkCredentialDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{95} +func (m *NodeDrainAttachmentOptions) Reset() { *m = NodeDrainAttachmentOptions{} } +func (m *NodeDrainAttachmentOptions) String() string { return proto.CompactTextString(m) } +func (*NodeDrainAttachmentOptions) ProtoMessage() {} +func (*NodeDrainAttachmentOptions) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{171} } -func (m *SdkCredentialDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialDeleteResponse.Unmarshal(m, b) +func (m *NodeDrainAttachmentOptions) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_NodeDrainAttachmentOptions.Unmarshal(m, b) } -func (m *SdkCredentialDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialDeleteResponse.Marshal(b, m, deterministic) +func (m *NodeDrainAttachmentOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_NodeDrainAttachmentOptions.Marshal(b, m, deterministic) } -func (dst *SdkCredentialDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialDeleteResponse.Merge(dst, src) +func (dst *NodeDrainAttachmentOptions) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeDrainAttachmentOptions.Merge(dst, src) } -func (m *SdkCredentialDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkCredentialDeleteResponse.Size(m) +func (m *NodeDrainAttachmentOptions) XXX_Size() int { + return xxx_messageInfo_NodeDrainAttachmentOptions.Size(m) } -func (m *SdkCredentialDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialDeleteResponse.DiscardUnknown(m) +func (m *NodeDrainAttachmentOptions) XXX_DiscardUnknown() { + xxx_messageInfo_NodeDrainAttachmentOptions.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialDeleteResponse proto.InternalMessageInfo +var xxx_messageInfo_NodeDrainAttachmentOptions proto.InternalMessageInfo -// Defines a request to validate credentials -type SdkCredentialValidateRequest struct { - // Id of the credentials - CredentialId string `protobuf:"bytes,1,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` +// Defines a node drain volume attachments request +type SdkNodeDrainAttachmentsRequest struct { + // Id of the node to drain + NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` + // Selector is used for selecting volumes whose + // attachment needs to be moved from this node. + // The selector could be a list of volume label + // key value pairs to select a subset of volumes. + Selector []*LabelSelectorRequirement `protobuf:"bytes,2,rep,name=selector" json:"selector,omitempty"` + // Drain only sharedv4 volumes from a node + // By default all volumes will be drained. + OnlySharedv4 bool `protobuf:"varint,3,opt,name=only_sharedv4,json=onlySharedv4" json:"only_sharedv4,omitempty"` + // Issuer is a user friendly name for the caller who is + // invoking the API. It can be used by caller to filter out + // drain requests from a particular issuer + Issuer string `protobuf:"bytes,4,opt,name=issuer" json:"issuer,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCredentialValidateRequest) Reset() { *m = SdkCredentialValidateRequest{} } -func (m *SdkCredentialValidateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialValidateRequest) ProtoMessage() {} -func (*SdkCredentialValidateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{96} +func (m *SdkNodeDrainAttachmentsRequest) Reset() { *m = SdkNodeDrainAttachmentsRequest{} } +func (m *SdkNodeDrainAttachmentsRequest) String() string { return proto.CompactTextString(m) } +func (*SdkNodeDrainAttachmentsRequest) ProtoMessage() {} +func (*SdkNodeDrainAttachmentsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{172} } -func (m *SdkCredentialValidateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialValidateRequest.Unmarshal(m, b) +func (m *SdkNodeDrainAttachmentsRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeDrainAttachmentsRequest.Unmarshal(m, b) } -func (m *SdkCredentialValidateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialValidateRequest.Marshal(b, m, deterministic) +func (m *SdkNodeDrainAttachmentsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeDrainAttachmentsRequest.Marshal(b, m, deterministic) } -func (dst *SdkCredentialValidateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialValidateRequest.Merge(dst, src) +func (dst *SdkNodeDrainAttachmentsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeDrainAttachmentsRequest.Merge(dst, src) } -func (m *SdkCredentialValidateRequest) XXX_Size() int { - return xxx_messageInfo_SdkCredentialValidateRequest.Size(m) +func (m *SdkNodeDrainAttachmentsRequest) XXX_Size() int { + return xxx_messageInfo_SdkNodeDrainAttachmentsRequest.Size(m) } -func (m *SdkCredentialValidateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialValidateRequest.DiscardUnknown(m) +func (m *SdkNodeDrainAttachmentsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeDrainAttachmentsRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCredentialValidateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkNodeDrainAttachmentsRequest proto.InternalMessageInfo -func (m *SdkCredentialValidateRequest) GetCredentialId() string { +func (m *SdkNodeDrainAttachmentsRequest) GetNodeId() string { if m != nil { - return m.CredentialId + return m.NodeId } return "" } -// Empty response -type SdkCredentialValidateResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkNodeDrainAttachmentsRequest) GetSelector() []*LabelSelectorRequirement { + if m != nil { + return m.Selector + } + return nil } -func (m *SdkCredentialValidateResponse) Reset() { *m = SdkCredentialValidateResponse{} } -func (m *SdkCredentialValidateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCredentialValidateResponse) ProtoMessage() {} -func (*SdkCredentialValidateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{97} -} -func (m *SdkCredentialValidateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCredentialValidateResponse.Unmarshal(m, b) -} -func (m *SdkCredentialValidateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCredentialValidateResponse.Marshal(b, m, deterministic) -} -func (dst *SdkCredentialValidateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCredentialValidateResponse.Merge(dst, src) -} -func (m *SdkCredentialValidateResponse) XXX_Size() int { - return xxx_messageInfo_SdkCredentialValidateResponse.Size(m) -} -func (m *SdkCredentialValidateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCredentialValidateResponse.DiscardUnknown(m) +func (m *SdkNodeDrainAttachmentsRequest) GetOnlySharedv4() bool { + if m != nil { + return m.OnlySharedv4 + } + return false } -var xxx_messageInfo_SdkCredentialValidateResponse proto.InternalMessageInfo +func (m *SdkNodeDrainAttachmentsRequest) GetIssuer() string { + if m != nil { + return m.Issuer + } + return "" +} -// Options to attach device -type SdkVolumeAttachOptions struct { - // Indicates the name of the secret stored in a secret store - // In case of Hashicorp's Vault, it will be the key from the key-value pair stored in its kv backend. - // In case of Kubernetes secret, it is the name of the secret object itself - SecretName string `protobuf:"bytes,1,opt,name=secret_name,json=secretName" json:"secret_name,omitempty"` - // In case of Kubernetes, this will be the key stored in the Kubernetes secret - SecretKey string `protobuf:"bytes,2,opt,name=secret_key,json=secretKey" json:"secret_key,omitempty"` - // It indicates the additional context which could be used to retrieve the secret. - // In case of Kubernetes, this is the namespace in which the secret is created. - SecretContext string `protobuf:"bytes,3,opt,name=secret_context,json=secretContext" json:"secret_context,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// NodeDrainAttachmentsJob describe a job to drain volume attachments from a node +type NodeDrainAttachmentsJob struct { + // NodeID of the node for which this drain job is running + NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` + // Status describes a helpful status of this node drain operation + Status string `protobuf:"bytes,2,opt,name=Status" json:"Status,omitempty"` + // Issuer is a user friendly name for the caller who is + // invoking the API. It can be used by caller to filter out + // drain requests from a particular issuer + Issuer string `protobuf:"bytes,3,opt,name=issuer" json:"issuer,omitempty"` + // Parameters is the original request params for this node drain operation + // This node drain job is applicable to only one of these node drain operations. + Parameters *SdkNodeDrainAttachmentsRequest `protobuf:"bytes,4,opt,name=parameters" json:"parameters,omitempty"` + // CreateTime is the time the job was created + CreateTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime" json:"create_time,omitempty"` + // LastUpdateTime is the time the job was updated + LastUpdateTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=last_update_time,json=lastUpdateTime" json:"last_update_time,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeAttachOptions) Reset() { *m = SdkVolumeAttachOptions{} } -func (m *SdkVolumeAttachOptions) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeAttachOptions) ProtoMessage() {} -func (*SdkVolumeAttachOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{98} +func (m *NodeDrainAttachmentsJob) Reset() { *m = NodeDrainAttachmentsJob{} } +func (m *NodeDrainAttachmentsJob) String() string { return proto.CompactTextString(m) } +func (*NodeDrainAttachmentsJob) ProtoMessage() {} +func (*NodeDrainAttachmentsJob) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{173} } -func (m *SdkVolumeAttachOptions) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeAttachOptions.Unmarshal(m, b) +func (m *NodeDrainAttachmentsJob) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_NodeDrainAttachmentsJob.Unmarshal(m, b) } -func (m *SdkVolumeAttachOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeAttachOptions.Marshal(b, m, deterministic) +func (m *NodeDrainAttachmentsJob) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_NodeDrainAttachmentsJob.Marshal(b, m, deterministic) } -func (dst *SdkVolumeAttachOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeAttachOptions.Merge(dst, src) +func (dst *NodeDrainAttachmentsJob) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeDrainAttachmentsJob.Merge(dst, src) } -func (m *SdkVolumeAttachOptions) XXX_Size() int { - return xxx_messageInfo_SdkVolumeAttachOptions.Size(m) +func (m *NodeDrainAttachmentsJob) XXX_Size() int { + return xxx_messageInfo_NodeDrainAttachmentsJob.Size(m) } -func (m *SdkVolumeAttachOptions) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeAttachOptions.DiscardUnknown(m) +func (m *NodeDrainAttachmentsJob) XXX_DiscardUnknown() { + xxx_messageInfo_NodeDrainAttachmentsJob.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeAttachOptions proto.InternalMessageInfo +var xxx_messageInfo_NodeDrainAttachmentsJob proto.InternalMessageInfo + +func (m *NodeDrainAttachmentsJob) GetNodeId() string { + if m != nil { + return m.NodeId + } + return "" +} -func (m *SdkVolumeAttachOptions) GetSecretName() string { +func (m *NodeDrainAttachmentsJob) GetStatus() string { if m != nil { - return m.SecretName + return m.Status } return "" } -func (m *SdkVolumeAttachOptions) GetSecretKey() string { +func (m *NodeDrainAttachmentsJob) GetIssuer() string { if m != nil { - return m.SecretKey + return m.Issuer } return "" } -func (m *SdkVolumeAttachOptions) GetSecretContext() string { +func (m *NodeDrainAttachmentsJob) GetParameters() *SdkNodeDrainAttachmentsRequest { if m != nil { - return m.SecretContext + return m.Parameters } - return "" + return nil } -// Defines a request to mount a volume to the node receiving this request -type SdkVolumeMountRequest struct { - // Id of the volume - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Mount path for mounting the volume. - MountPath string `protobuf:"bytes,2,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` - // Options to attach device - Options *SdkVolumeAttachOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"` - // The following options are private to the driver plugin running the - // OpenStorage SDK. Contact your driver developer for any special - // values that need to be provided here. - DriverOptions map[string]string `protobuf:"bytes,4,rep,name=driver_options,json=driverOptions" json:"driver_options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *NodeDrainAttachmentsJob) GetCreateTime() *timestamp.Timestamp { + if m != nil { + return m.CreateTime + } + return nil } -func (m *SdkVolumeMountRequest) Reset() { *m = SdkVolumeMountRequest{} } -func (m *SdkVolumeMountRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeMountRequest) ProtoMessage() {} -func (*SdkVolumeMountRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{99} +func (m *NodeDrainAttachmentsJob) GetLastUpdateTime() *timestamp.Timestamp { + if m != nil { + return m.LastUpdateTime + } + return nil } -func (m *SdkVolumeMountRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeMountRequest.Unmarshal(m, b) + +type CloudDriveTransferJob struct { + // SourceDrivesetID is the ID of the current driveset that needs to be transferred + SourceDrivesetId string `protobuf:"bytes,1,opt,name=source_driveset_id,json=sourceDrivesetId" json:"source_driveset_id,omitempty"` + // DestinationDrivesetID is the ID of the storageless driveset that needs to take over the SourceDriveSetID + DestinationDrivesetId string `protobuf:"bytes,2,opt,name=destination_driveset_id,json=destinationDrivesetId" json:"destination_driveset_id,omitempty"` + // Status describes a helpful status of this operation + Status string `protobuf:"bytes,3,opt,name=status" json:"status,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeMountRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeMountRequest.Marshal(b, m, deterministic) + +func (m *CloudDriveTransferJob) Reset() { *m = CloudDriveTransferJob{} } +func (m *CloudDriveTransferJob) String() string { return proto.CompactTextString(m) } +func (*CloudDriveTransferJob) ProtoMessage() {} +func (*CloudDriveTransferJob) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{174} } -func (dst *SdkVolumeMountRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeMountRequest.Merge(dst, src) +func (m *CloudDriveTransferJob) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudDriveTransferJob.Unmarshal(m, b) } -func (m *SdkVolumeMountRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeMountRequest.Size(m) +func (m *CloudDriveTransferJob) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudDriveTransferJob.Marshal(b, m, deterministic) } -func (m *SdkVolumeMountRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeMountRequest.DiscardUnknown(m) +func (dst *CloudDriveTransferJob) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudDriveTransferJob.Merge(dst, src) +} +func (m *CloudDriveTransferJob) XXX_Size() int { + return xxx_messageInfo_CloudDriveTransferJob.Size(m) +} +func (m *CloudDriveTransferJob) XXX_DiscardUnknown() { + xxx_messageInfo_CloudDriveTransferJob.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeMountRequest proto.InternalMessageInfo +var xxx_messageInfo_CloudDriveTransferJob proto.InternalMessageInfo -func (m *SdkVolumeMountRequest) GetVolumeId() string { +func (m *CloudDriveTransferJob) GetSourceDrivesetId() string { if m != nil { - return m.VolumeId + return m.SourceDrivesetId } return "" } -func (m *SdkVolumeMountRequest) GetMountPath() string { +func (m *CloudDriveTransferJob) GetDestinationDrivesetId() string { if m != nil { - return m.MountPath + return m.DestinationDrivesetId } return "" } -func (m *SdkVolumeMountRequest) GetOptions() *SdkVolumeAttachOptions { - if m != nil { - return m.Options - } - return nil -} - -func (m *SdkVolumeMountRequest) GetDriverOptions() map[string]string { +func (m *CloudDriveTransferJob) GetStatus() string { if m != nil { - return m.DriverOptions + return m.Status } - return nil + return "" } -// Empty response -type SdkVolumeMountResponse struct { +// Defines a request to list all the jobs +type SdkEnumerateJobsRequest struct { + // Type if specified will list the jobs of the provided type + Type Job_Type `protobuf:"varint,1,opt,name=type,enum=openstorage.api.Job_Type" json:"type,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeMountResponse) Reset() { *m = SdkVolumeMountResponse{} } -func (m *SdkVolumeMountResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeMountResponse) ProtoMessage() {} -func (*SdkVolumeMountResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{100} +func (m *SdkEnumerateJobsRequest) Reset() { *m = SdkEnumerateJobsRequest{} } +func (m *SdkEnumerateJobsRequest) String() string { return proto.CompactTextString(m) } +func (*SdkEnumerateJobsRequest) ProtoMessage() {} +func (*SdkEnumerateJobsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{175} } -func (m *SdkVolumeMountResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeMountResponse.Unmarshal(m, b) +func (m *SdkEnumerateJobsRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkEnumerateJobsRequest.Unmarshal(m, b) } -func (m *SdkVolumeMountResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeMountResponse.Marshal(b, m, deterministic) +func (m *SdkEnumerateJobsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkEnumerateJobsRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeMountResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeMountResponse.Merge(dst, src) +func (dst *SdkEnumerateJobsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkEnumerateJobsRequest.Merge(dst, src) } -func (m *SdkVolumeMountResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeMountResponse.Size(m) +func (m *SdkEnumerateJobsRequest) XXX_Size() int { + return xxx_messageInfo_SdkEnumerateJobsRequest.Size(m) } -func (m *SdkVolumeMountResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeMountResponse.DiscardUnknown(m) +func (m *SdkEnumerateJobsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkEnumerateJobsRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeMountResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkEnumerateJobsRequest proto.InternalMessageInfo -// Options to unmount device -type SdkVolumeUnmountOptions struct { - // Delete the mount path on the node after unmounting - DeleteMountPath bool `protobuf:"varint,1,opt,name=delete_mount_path,json=deleteMountPath" json:"delete_mount_path,omitempty"` - // Do not wait for a delay before deleting path. - // Normally a storage driver may delay before deleting the mount path, - // which may be necessary to reduce the risk of race conditions. This - // choice will remove that delay. This value is only usable when - // `delete_mount_path` is set. - NoDelayBeforeDeletingMountPath bool `protobuf:"varint,2,opt,name=no_delay_before_deleting_mount_path,json=noDelayBeforeDeletingMountPath" json:"no_delay_before_deleting_mount_path,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkEnumerateJobsRequest) GetType() Job_Type { + if m != nil { + return m.Type + } + return Job_UNSPECIFIED_TYPE } -func (m *SdkVolumeUnmountOptions) Reset() { *m = SdkVolumeUnmountOptions{} } -func (m *SdkVolumeUnmountOptions) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeUnmountOptions) ProtoMessage() {} -func (*SdkVolumeUnmountOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{101} +// Defines a response will all the known jobs +type SdkEnumerateJobsResponse struct { + // Jobs is the list of jobs in the response + Jobs []*Job `protobuf:"bytes,1,rep,name=jobs" json:"jobs,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeUnmountOptions) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeUnmountOptions.Unmarshal(m, b) + +func (m *SdkEnumerateJobsResponse) Reset() { *m = SdkEnumerateJobsResponse{} } +func (m *SdkEnumerateJobsResponse) String() string { return proto.CompactTextString(m) } +func (*SdkEnumerateJobsResponse) ProtoMessage() {} +func (*SdkEnumerateJobsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{176} } -func (m *SdkVolumeUnmountOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeUnmountOptions.Marshal(b, m, deterministic) +func (m *SdkEnumerateJobsResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkEnumerateJobsResponse.Unmarshal(m, b) } -func (dst *SdkVolumeUnmountOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeUnmountOptions.Merge(dst, src) +func (m *SdkEnumerateJobsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkEnumerateJobsResponse.Marshal(b, m, deterministic) } -func (m *SdkVolumeUnmountOptions) XXX_Size() int { - return xxx_messageInfo_SdkVolumeUnmountOptions.Size(m) +func (dst *SdkEnumerateJobsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkEnumerateJobsResponse.Merge(dst, src) } -func (m *SdkVolumeUnmountOptions) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeUnmountOptions.DiscardUnknown(m) +func (m *SdkEnumerateJobsResponse) XXX_Size() int { + return xxx_messageInfo_SdkEnumerateJobsResponse.Size(m) } - -var xxx_messageInfo_SdkVolumeUnmountOptions proto.InternalMessageInfo - -func (m *SdkVolumeUnmountOptions) GetDeleteMountPath() bool { - if m != nil { - return m.DeleteMountPath - } - return false +func (m *SdkEnumerateJobsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkEnumerateJobsResponse.DiscardUnknown(m) } -func (m *SdkVolumeUnmountOptions) GetNoDelayBeforeDeletingMountPath() bool { +var xxx_messageInfo_SdkEnumerateJobsResponse proto.InternalMessageInfo + +func (m *SdkEnumerateJobsResponse) GetJobs() []*Job { if m != nil { - return m.NoDelayBeforeDeletingMountPath + return m.Jobs } - return false + return nil } -// Defines a request to unmount a volume on the node receiving this request -type SdkVolumeUnmountRequest struct { - // Id of volume - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // MountPath for device - MountPath string `protobuf:"bytes,2,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` - // Options to unmount device - Options *SdkVolumeUnmountOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"` - // The following options are private to the driver plugin running the - // OpenStorage SDK. Contact your driver developer for any special - // values that need to be provided here. - DriverOptions map[string]string `protobuf:"bytes,4,rep,name=driver_options,json=driverOptions" json:"driver_options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to update an existing job +type SdkUpdateJobRequest struct { + // ID of the job + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Type of the job + Type Job_Type `protobuf:"varint,2,opt,name=type,enum=openstorage.api.Job_Type" json:"type,omitempty"` + // State is the new task state to update the job to + State Job_State `protobuf:"varint,3,opt,name=state,enum=openstorage.api.Job_State" json:"state,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeUnmountRequest) Reset() { *m = SdkVolumeUnmountRequest{} } -func (m *SdkVolumeUnmountRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeUnmountRequest) ProtoMessage() {} -func (*SdkVolumeUnmountRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{102} +func (m *SdkUpdateJobRequest) Reset() { *m = SdkUpdateJobRequest{} } +func (m *SdkUpdateJobRequest) String() string { return proto.CompactTextString(m) } +func (*SdkUpdateJobRequest) ProtoMessage() {} +func (*SdkUpdateJobRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{177} } -func (m *SdkVolumeUnmountRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeUnmountRequest.Unmarshal(m, b) +func (m *SdkUpdateJobRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkUpdateJobRequest.Unmarshal(m, b) } -func (m *SdkVolumeUnmountRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeUnmountRequest.Marshal(b, m, deterministic) +func (m *SdkUpdateJobRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkUpdateJobRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeUnmountRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeUnmountRequest.Merge(dst, src) +func (dst *SdkUpdateJobRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkUpdateJobRequest.Merge(dst, src) } -func (m *SdkVolumeUnmountRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeUnmountRequest.Size(m) +func (m *SdkUpdateJobRequest) XXX_Size() int { + return xxx_messageInfo_SdkUpdateJobRequest.Size(m) } -func (m *SdkVolumeUnmountRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeUnmountRequest.DiscardUnknown(m) +func (m *SdkUpdateJobRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkUpdateJobRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeUnmountRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkUpdateJobRequest proto.InternalMessageInfo -func (m *SdkVolumeUnmountRequest) GetVolumeId() string { +func (m *SdkUpdateJobRequest) GetId() string { if m != nil { - return m.VolumeId + return m.Id } return "" } -func (m *SdkVolumeUnmountRequest) GetMountPath() string { +func (m *SdkUpdateJobRequest) GetType() Job_Type { if m != nil { - return m.MountPath + return m.Type } - return "" + return Job_UNSPECIFIED_TYPE } -func (m *SdkVolumeUnmountRequest) GetOptions() *SdkVolumeUnmountOptions { +func (m *SdkUpdateJobRequest) GetState() Job_State { if m != nil { - return m.Options + return m.State } - return nil + return Job_UNSPECIFIED_STATE } -func (m *SdkVolumeUnmountRequest) GetDriverOptions() map[string]string { - if m != nil { - return m.DriverOptions - } - return nil +// Defines the response for an update to an existing job +type SdkUpdateJobResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -// Empty response -type SdkVolumeUnmountResponse struct { +func (m *SdkUpdateJobResponse) Reset() { *m = SdkUpdateJobResponse{} } +func (m *SdkUpdateJobResponse) String() string { return proto.CompactTextString(m) } +func (*SdkUpdateJobResponse) ProtoMessage() {} +func (*SdkUpdateJobResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{178} +} +func (m *SdkUpdateJobResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkUpdateJobResponse.Unmarshal(m, b) +} +func (m *SdkUpdateJobResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkUpdateJobResponse.Marshal(b, m, deterministic) +} +func (dst *SdkUpdateJobResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkUpdateJobResponse.Merge(dst, src) +} +func (m *SdkUpdateJobResponse) XXX_Size() int { + return xxx_messageInfo_SdkUpdateJobResponse.Size(m) +} +func (m *SdkUpdateJobResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkUpdateJobResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkUpdateJobResponse proto.InternalMessageInfo + +// Defines a request to get the status of an existing job +type SdkGetJobStatusRequest struct { + // ID of the job + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Type of the job + Type Job_Type `protobuf:"varint,2,opt,name=type,enum=openstorage.api.Job_Type" json:"type,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeUnmountResponse) Reset() { *m = SdkVolumeUnmountResponse{} } -func (m *SdkVolumeUnmountResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeUnmountResponse) ProtoMessage() {} -func (*SdkVolumeUnmountResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{103} +func (m *SdkGetJobStatusRequest) Reset() { *m = SdkGetJobStatusRequest{} } +func (m *SdkGetJobStatusRequest) String() string { return proto.CompactTextString(m) } +func (*SdkGetJobStatusRequest) ProtoMessage() {} +func (*SdkGetJobStatusRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{179} } -func (m *SdkVolumeUnmountResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeUnmountResponse.Unmarshal(m, b) +func (m *SdkGetJobStatusRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkGetJobStatusRequest.Unmarshal(m, b) } -func (m *SdkVolumeUnmountResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeUnmountResponse.Marshal(b, m, deterministic) +func (m *SdkGetJobStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkGetJobStatusRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeUnmountResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeUnmountResponse.Merge(dst, src) +func (dst *SdkGetJobStatusRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkGetJobStatusRequest.Merge(dst, src) } -func (m *SdkVolumeUnmountResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeUnmountResponse.Size(m) +func (m *SdkGetJobStatusRequest) XXX_Size() int { + return xxx_messageInfo_SdkGetJobStatusRequest.Size(m) } -func (m *SdkVolumeUnmountResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeUnmountResponse.DiscardUnknown(m) +func (m *SdkGetJobStatusRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkGetJobStatusRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeUnmountResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkGetJobStatusRequest proto.InternalMessageInfo -// Defines a request to attach a volume to the node receiving this request -type SdkVolumeAttachRequest struct { - // Id of volume - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Options to attach device - Options *SdkVolumeAttachOptions `protobuf:"bytes,2,opt,name=options" json:"options,omitempty"` - // The following options are private to the driver plugin running the - // OpenStorage SDK. Contact your driver developer for any special - // values that need to be provided here. - DriverOptions map[string]string `protobuf:"bytes,3,rep,name=driver_options,json=driverOptions" json:"driver_options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` +func (m *SdkGetJobStatusRequest) GetId() string { + if m != nil { + return m.Id + } + return "" +} + +func (m *SdkGetJobStatusRequest) GetType() Job_Type { + if m != nil { + return m.Type + } + return Job_UNSPECIFIED_TYPE +} + +// JobAudit is an audit entry for a job describing the different operations +// performed as a part of the job +type JobAudit struct { + Summary []*JobWorkSummary `protobuf:"bytes,1,rep,name=summary" json:"summary,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeAttachRequest) Reset() { *m = SdkVolumeAttachRequest{} } -func (m *SdkVolumeAttachRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeAttachRequest) ProtoMessage() {} -func (*SdkVolumeAttachRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{104} +func (m *JobAudit) Reset() { *m = JobAudit{} } +func (m *JobAudit) String() string { return proto.CompactTextString(m) } +func (*JobAudit) ProtoMessage() {} +func (*JobAudit) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{180} } -func (m *SdkVolumeAttachRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeAttachRequest.Unmarshal(m, b) +func (m *JobAudit) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_JobAudit.Unmarshal(m, b) } -func (m *SdkVolumeAttachRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeAttachRequest.Marshal(b, m, deterministic) +func (m *JobAudit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_JobAudit.Marshal(b, m, deterministic) +} +func (dst *JobAudit) XXX_Merge(src proto.Message) { + xxx_messageInfo_JobAudit.Merge(dst, src) +} +func (m *JobAudit) XXX_Size() int { + return xxx_messageInfo_JobAudit.Size(m) +} +func (m *JobAudit) XXX_DiscardUnknown() { + xxx_messageInfo_JobAudit.DiscardUnknown(m) +} + +var xxx_messageInfo_JobAudit proto.InternalMessageInfo + +func (m *JobAudit) GetSummary() []*JobWorkSummary { + if m != nil { + return m.Summary + } + return nil +} + +// JobWorkSummary describes an action taken while performing the hob +type JobWorkSummary struct { + // Summary provides more information about the on-going job + // + // Types that are valid to be assigned to Summary: + // *JobWorkSummary_DrainAttachmentsSummary + Summary isJobWorkSummary_Summary `protobuf_oneof:"summary"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *JobWorkSummary) Reset() { *m = JobWorkSummary{} } +func (m *JobWorkSummary) String() string { return proto.CompactTextString(m) } +func (*JobWorkSummary) ProtoMessage() {} +func (*JobWorkSummary) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{181} +} +func (m *JobWorkSummary) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_JobWorkSummary.Unmarshal(m, b) } -func (dst *SdkVolumeAttachRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeAttachRequest.Merge(dst, src) +func (m *JobWorkSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_JobWorkSummary.Marshal(b, m, deterministic) } -func (m *SdkVolumeAttachRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeAttachRequest.Size(m) +func (dst *JobWorkSummary) XXX_Merge(src proto.Message) { + xxx_messageInfo_JobWorkSummary.Merge(dst, src) } -func (m *SdkVolumeAttachRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeAttachRequest.DiscardUnknown(m) +func (m *JobWorkSummary) XXX_Size() int { + return xxx_messageInfo_JobWorkSummary.Size(m) +} +func (m *JobWorkSummary) XXX_DiscardUnknown() { + xxx_messageInfo_JobWorkSummary.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeAttachRequest proto.InternalMessageInfo +var xxx_messageInfo_JobWorkSummary proto.InternalMessageInfo -func (m *SdkVolumeAttachRequest) GetVolumeId() string { - if m != nil { - return m.VolumeId - } - return "" +type isJobWorkSummary_Summary interface { + isJobWorkSummary_Summary() } -func (m *SdkVolumeAttachRequest) GetOptions() *SdkVolumeAttachOptions { +type JobWorkSummary_DrainAttachmentsSummary struct { + DrainAttachmentsSummary *DrainAttachmentsSummary `protobuf:"bytes,3,opt,name=drain_attachments_summary,json=drainAttachmentsSummary,oneof"` +} + +func (*JobWorkSummary_DrainAttachmentsSummary) isJobWorkSummary_Summary() {} + +func (m *JobWorkSummary) GetSummary() isJobWorkSummary_Summary { if m != nil { - return m.Options + return m.Summary } return nil } -func (m *SdkVolumeAttachRequest) GetDriverOptions() map[string]string { - if m != nil { - return m.DriverOptions +func (m *JobWorkSummary) GetDrainAttachmentsSummary() *DrainAttachmentsSummary { + if x, ok := m.GetSummary().(*JobWorkSummary_DrainAttachmentsSummary); ok { + return x.DrainAttachmentsSummary } return nil } -// Defines a response from the node which received the request to attach -type SdkVolumeAttachResponse struct { - // Device path where device is exported - DevicePath string `protobuf:"bytes,1,opt,name=device_path,json=devicePath" json:"device_path,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// XXX_OneofFuncs is for the internal use of the proto package. +func (*JobWorkSummary) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _JobWorkSummary_OneofMarshaler, _JobWorkSummary_OneofUnmarshaler, _JobWorkSummary_OneofSizer, []interface{}{ + (*JobWorkSummary_DrainAttachmentsSummary)(nil), + } } -func (m *SdkVolumeAttachResponse) Reset() { *m = SdkVolumeAttachResponse{} } -func (m *SdkVolumeAttachResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeAttachResponse) ProtoMessage() {} -func (*SdkVolumeAttachResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{105} -} -func (m *SdkVolumeAttachResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeAttachResponse.Unmarshal(m, b) -} -func (m *SdkVolumeAttachResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeAttachResponse.Marshal(b, m, deterministic) -} -func (dst *SdkVolumeAttachResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeAttachResponse.Merge(dst, src) -} -func (m *SdkVolumeAttachResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeAttachResponse.Size(m) -} -func (m *SdkVolumeAttachResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeAttachResponse.DiscardUnknown(m) +func _JobWorkSummary_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*JobWorkSummary) + // summary + switch x := m.Summary.(type) { + case *JobWorkSummary_DrainAttachmentsSummary: + b.EncodeVarint(3<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.DrainAttachmentsSummary); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("JobWorkSummary.Summary has unexpected type %T", x) + } + return nil } -var xxx_messageInfo_SdkVolumeAttachResponse proto.InternalMessageInfo +func _JobWorkSummary_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*JobWorkSummary) + switch tag { + case 3: // summary.drain_attachments_summary + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(DrainAttachmentsSummary) + err := b.DecodeMessage(msg) + m.Summary = &JobWorkSummary_DrainAttachmentsSummary{msg} + return true, err + default: + return false, nil + } +} -func (m *SdkVolumeAttachResponse) GetDevicePath() string { - if m != nil { - return m.DevicePath +func _JobWorkSummary_OneofSizer(msg proto.Message) (n int) { + m := msg.(*JobWorkSummary) + // summary + switch x := m.Summary.(type) { + case *JobWorkSummary_DrainAttachmentsSummary: + s := proto.Size(x.DrainAttachmentsSummary) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) } - return "" + return n } -type SdkVolumeDetachOptions struct { - // Forcefully detach device from the kernel - Force bool `protobuf:"varint,1,opt,name=force" json:"force,omitempty"` - // Unmount the volume before detaching - UnmountBeforeDetach bool `protobuf:"varint,2,opt,name=unmount_before_detach,json=unmountBeforeDetach" json:"unmount_before_detach,omitempty"` - // redirect the request to the attached node - Redirect bool `protobuf:"varint,3,opt,name=redirect" json:"redirect,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// JobSummary provides a summary of a job +type JobSummary struct { + // ID of the job + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Total runtime in seconds + TotalRuntimeSeconds uint64 `protobuf:"varint,2,opt,name=total_runtime_seconds,json=totalRuntimeSeconds" json:"total_runtime_seconds,omitempty"` + // Summary provides more information about the on-going job + WorkSummaries []*JobWorkSummary `protobuf:"bytes,3,rep,name=work_summaries,json=workSummaries" json:"work_summaries,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeDetachOptions) Reset() { *m = SdkVolumeDetachOptions{} } -func (m *SdkVolumeDetachOptions) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeDetachOptions) ProtoMessage() {} -func (*SdkVolumeDetachOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{106} +func (m *JobSummary) Reset() { *m = JobSummary{} } +func (m *JobSummary) String() string { return proto.CompactTextString(m) } +func (*JobSummary) ProtoMessage() {} +func (*JobSummary) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{182} } -func (m *SdkVolumeDetachOptions) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeDetachOptions.Unmarshal(m, b) +func (m *JobSummary) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_JobSummary.Unmarshal(m, b) } -func (m *SdkVolumeDetachOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeDetachOptions.Marshal(b, m, deterministic) +func (m *JobSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_JobSummary.Marshal(b, m, deterministic) } -func (dst *SdkVolumeDetachOptions) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeDetachOptions.Merge(dst, src) +func (dst *JobSummary) XXX_Merge(src proto.Message) { + xxx_messageInfo_JobSummary.Merge(dst, src) } -func (m *SdkVolumeDetachOptions) XXX_Size() int { - return xxx_messageInfo_SdkVolumeDetachOptions.Size(m) +func (m *JobSummary) XXX_Size() int { + return xxx_messageInfo_JobSummary.Size(m) } -func (m *SdkVolumeDetachOptions) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeDetachOptions.DiscardUnknown(m) +func (m *JobSummary) XXX_DiscardUnknown() { + xxx_messageInfo_JobSummary.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeDetachOptions proto.InternalMessageInfo +var xxx_messageInfo_JobSummary proto.InternalMessageInfo -func (m *SdkVolumeDetachOptions) GetForce() bool { +func (m *JobSummary) GetId() string { if m != nil { - return m.Force + return m.Id } - return false + return "" } -func (m *SdkVolumeDetachOptions) GetUnmountBeforeDetach() bool { +func (m *JobSummary) GetTotalRuntimeSeconds() uint64 { if m != nil { - return m.UnmountBeforeDetach + return m.TotalRuntimeSeconds } - return false + return 0 } -func (m *SdkVolumeDetachOptions) GetRedirect() bool { +func (m *JobSummary) GetWorkSummaries() []*JobWorkSummary { if m != nil { - return m.Redirect + return m.WorkSummaries } - return false + return nil } -// Defines a request to detach a volume -type SdkVolumeDetachRequest struct { - // Id of the volume - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Options to detach device - Options *SdkVolumeDetachOptions `protobuf:"bytes,2,opt,name=options" json:"options,omitempty"` - // The following options are private to the driver plugin running the - // OpenStorage SDK. Contact your driver developer for any special - // values that need to be provided here. - DriverOptions map[string]string `protobuf:"bytes,3,rep,name=driver_options,json=driverOptions" json:"driver_options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines the status of an existing job +type SdkGetJobStatusResponse struct { + // Job for this node drain operation. + Job *Job `protobuf:"bytes,1,opt,name=job" json:"job,omitempty"` + // Summary of this job + Summary *JobSummary `protobuf:"bytes,2,opt,name=summary" json:"summary,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeDetachRequest) Reset() { *m = SdkVolumeDetachRequest{} } -func (m *SdkVolumeDetachRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeDetachRequest) ProtoMessage() {} -func (*SdkVolumeDetachRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{107} +func (m *SdkGetJobStatusResponse) Reset() { *m = SdkGetJobStatusResponse{} } +func (m *SdkGetJobStatusResponse) String() string { return proto.CompactTextString(m) } +func (*SdkGetJobStatusResponse) ProtoMessage() {} +func (*SdkGetJobStatusResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{183} } -func (m *SdkVolumeDetachRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeDetachRequest.Unmarshal(m, b) +func (m *SdkGetJobStatusResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkGetJobStatusResponse.Unmarshal(m, b) } -func (m *SdkVolumeDetachRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeDetachRequest.Marshal(b, m, deterministic) +func (m *SdkGetJobStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkGetJobStatusResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeDetachRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeDetachRequest.Merge(dst, src) +func (dst *SdkGetJobStatusResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkGetJobStatusResponse.Merge(dst, src) } -func (m *SdkVolumeDetachRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeDetachRequest.Size(m) +func (m *SdkGetJobStatusResponse) XXX_Size() int { + return xxx_messageInfo_SdkGetJobStatusResponse.Size(m) } -func (m *SdkVolumeDetachRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeDetachRequest.DiscardUnknown(m) +func (m *SdkGetJobStatusResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkGetJobStatusResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeDetachRequest proto.InternalMessageInfo - -func (m *SdkVolumeDetachRequest) GetVolumeId() string { - if m != nil { - return m.VolumeId - } - return "" -} +var xxx_messageInfo_SdkGetJobStatusResponse proto.InternalMessageInfo -func (m *SdkVolumeDetachRequest) GetOptions() *SdkVolumeDetachOptions { +func (m *SdkGetJobStatusResponse) GetJob() *Job { if m != nil { - return m.Options + return m.Job } return nil } -func (m *SdkVolumeDetachRequest) GetDriverOptions() map[string]string { +func (m *SdkGetJobStatusResponse) GetSummary() *JobSummary { if m != nil { - return m.DriverOptions + return m.Summary } return nil } -// Empty response -type SdkVolumeDetachResponse struct { +// DrainAttachments summary of the volumes whose attachments need to be drained +// from a node +type DrainAttachmentsSummary struct { + // Total number of volumes that need to be drained + NumVolumesTotal uint64 `protobuf:"varint,2,opt,name=num_volumes_total,json=numVolumesTotal" json:"num_volumes_total,omitempty"` + // Number of volumes which have been drained + NumVolumesDone uint64 `protobuf:"varint,3,opt,name=num_volumes_done,json=numVolumesDone" json:"num_volumes_done,omitempty"` + // Number of volumes which have not been drained yet + NumVolumesPending uint64 `protobuf:"varint,4,opt,name=num_volumes_pending,json=numVolumesPending" json:"num_volumes_pending,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeDetachResponse) Reset() { *m = SdkVolumeDetachResponse{} } -func (m *SdkVolumeDetachResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeDetachResponse) ProtoMessage() {} -func (*SdkVolumeDetachResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{108} +func (m *DrainAttachmentsSummary) Reset() { *m = DrainAttachmentsSummary{} } +func (m *DrainAttachmentsSummary) String() string { return proto.CompactTextString(m) } +func (*DrainAttachmentsSummary) ProtoMessage() {} +func (*DrainAttachmentsSummary) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{184} } -func (m *SdkVolumeDetachResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeDetachResponse.Unmarshal(m, b) +func (m *DrainAttachmentsSummary) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DrainAttachmentsSummary.Unmarshal(m, b) } -func (m *SdkVolumeDetachResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeDetachResponse.Marshal(b, m, deterministic) +func (m *DrainAttachmentsSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DrainAttachmentsSummary.Marshal(b, m, deterministic) } -func (dst *SdkVolumeDetachResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeDetachResponse.Merge(dst, src) +func (dst *DrainAttachmentsSummary) XXX_Merge(src proto.Message) { + xxx_messageInfo_DrainAttachmentsSummary.Merge(dst, src) } -func (m *SdkVolumeDetachResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeDetachResponse.Size(m) +func (m *DrainAttachmentsSummary) XXX_Size() int { + return xxx_messageInfo_DrainAttachmentsSummary.Size(m) } -func (m *SdkVolumeDetachResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeDetachResponse.DiscardUnknown(m) +func (m *DrainAttachmentsSummary) XXX_DiscardUnknown() { + xxx_messageInfo_DrainAttachmentsSummary.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeDetachResponse proto.InternalMessageInfo +var xxx_messageInfo_DrainAttachmentsSummary proto.InternalMessageInfo -// Defines a request to create a volume. Use OpenStorageVolume.Update() -// to update any labels on the volume. -type SdkVolumeCreateRequest struct { - // Unique name of the volume. This will be used for idempotency. - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - // Volume specification - Spec *VolumeSpec `protobuf:"bytes,2,opt,name=spec" json:"spec,omitempty"` - // Labels to apply to the volume - Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *DrainAttachmentsSummary) GetNumVolumesTotal() uint64 { + if m != nil { + return m.NumVolumesTotal + } + return 0 } -func (m *SdkVolumeCreateRequest) Reset() { *m = SdkVolumeCreateRequest{} } -func (m *SdkVolumeCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeCreateRequest) ProtoMessage() {} -func (*SdkVolumeCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{109} +func (m *DrainAttachmentsSummary) GetNumVolumesDone() uint64 { + if m != nil { + return m.NumVolumesDone + } + return 0 } -func (m *SdkVolumeCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeCreateRequest.Unmarshal(m, b) + +func (m *DrainAttachmentsSummary) GetNumVolumesPending() uint64 { + if m != nil { + return m.NumVolumesPending + } + return 0 } -func (m *SdkVolumeCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeCreateRequest.Marshal(b, m, deterministic) + +// SdkNodeCordonAttachmentsRequest request for disabling new volume +// attachments from a node +type SdkNodeCordonAttachmentsRequest struct { + // Node ID on which any further volume attachments will be disabled + NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (dst *SdkVolumeCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeCreateRequest.Merge(dst, src) + +func (m *SdkNodeCordonAttachmentsRequest) Reset() { *m = SdkNodeCordonAttachmentsRequest{} } +func (m *SdkNodeCordonAttachmentsRequest) String() string { return proto.CompactTextString(m) } +func (*SdkNodeCordonAttachmentsRequest) ProtoMessage() {} +func (*SdkNodeCordonAttachmentsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{185} } -func (m *SdkVolumeCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeCreateRequest.Size(m) +func (m *SdkNodeCordonAttachmentsRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeCordonAttachmentsRequest.Unmarshal(m, b) } -func (m *SdkVolumeCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeCreateRequest.DiscardUnknown(m) +func (m *SdkNodeCordonAttachmentsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeCordonAttachmentsRequest.Marshal(b, m, deterministic) +} +func (dst *SdkNodeCordonAttachmentsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeCordonAttachmentsRequest.Merge(dst, src) +} +func (m *SdkNodeCordonAttachmentsRequest) XXX_Size() int { + return xxx_messageInfo_SdkNodeCordonAttachmentsRequest.Size(m) +} +func (m *SdkNodeCordonAttachmentsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeCordonAttachmentsRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkNodeCordonAttachmentsRequest proto.InternalMessageInfo -func (m *SdkVolumeCreateRequest) GetName() string { +func (m *SdkNodeCordonAttachmentsRequest) GetNodeId() string { if m != nil { - return m.Name + return m.NodeId } return "" } -func (m *SdkVolumeCreateRequest) GetSpec() *VolumeSpec { - if m != nil { - return m.Spec - } - return nil +// SdkNodeCordonAttachmentsRespinse response for disabling new volume +// attachments from a node +type SdkNodeCordonAttachmentsResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeCreateRequest) GetLabels() map[string]string { - if m != nil { - return m.Labels - } - return nil +func (m *SdkNodeCordonAttachmentsResponse) Reset() { *m = SdkNodeCordonAttachmentsResponse{} } +func (m *SdkNodeCordonAttachmentsResponse) String() string { return proto.CompactTextString(m) } +func (*SdkNodeCordonAttachmentsResponse) ProtoMessage() {} +func (*SdkNodeCordonAttachmentsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{186} +} +func (m *SdkNodeCordonAttachmentsResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeCordonAttachmentsResponse.Unmarshal(m, b) +} +func (m *SdkNodeCordonAttachmentsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeCordonAttachmentsResponse.Marshal(b, m, deterministic) +} +func (dst *SdkNodeCordonAttachmentsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeCordonAttachmentsResponse.Merge(dst, src) +} +func (m *SdkNodeCordonAttachmentsResponse) XXX_Size() int { + return xxx_messageInfo_SdkNodeCordonAttachmentsResponse.Size(m) +} +func (m *SdkNodeCordonAttachmentsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeCordonAttachmentsResponse.DiscardUnknown(m) } -// Defines a response to the creation of a volume -type SdkVolumeCreateResponse struct { - // Id of new volume - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` +var xxx_messageInfo_SdkNodeCordonAttachmentsResponse proto.InternalMessageInfo + +// SdkNodeUncordonAttachmentsRequest request for re-enabling volume +// attachments for a node +type SdkNodeUncordonAttachmentsRequest struct { + // Node ID on which any further volume attachments will be enabled + NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeCreateResponse) Reset() { *m = SdkVolumeCreateResponse{} } -func (m *SdkVolumeCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeCreateResponse) ProtoMessage() {} -func (*SdkVolumeCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{110} +func (m *SdkNodeUncordonAttachmentsRequest) Reset() { *m = SdkNodeUncordonAttachmentsRequest{} } +func (m *SdkNodeUncordonAttachmentsRequest) String() string { return proto.CompactTextString(m) } +func (*SdkNodeUncordonAttachmentsRequest) ProtoMessage() {} +func (*SdkNodeUncordonAttachmentsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{187} } -func (m *SdkVolumeCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeCreateResponse.Unmarshal(m, b) +func (m *SdkNodeUncordonAttachmentsRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeUncordonAttachmentsRequest.Unmarshal(m, b) } -func (m *SdkVolumeCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeCreateResponse.Marshal(b, m, deterministic) +func (m *SdkNodeUncordonAttachmentsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeUncordonAttachmentsRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeCreateResponse.Merge(dst, src) +func (dst *SdkNodeUncordonAttachmentsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeUncordonAttachmentsRequest.Merge(dst, src) } -func (m *SdkVolumeCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeCreateResponse.Size(m) +func (m *SdkNodeUncordonAttachmentsRequest) XXX_Size() int { + return xxx_messageInfo_SdkNodeUncordonAttachmentsRequest.Size(m) } -func (m *SdkVolumeCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeCreateResponse.DiscardUnknown(m) +func (m *SdkNodeUncordonAttachmentsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeUncordonAttachmentsRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkNodeUncordonAttachmentsRequest proto.InternalMessageInfo -func (m *SdkVolumeCreateResponse) GetVolumeId() string { +func (m *SdkNodeUncordonAttachmentsRequest) GetNodeId() string { if m != nil { - return m.VolumeId + return m.NodeId } return "" } -// Defines a request to clone a volume or create a volume from a snapshot -type SdkVolumeCloneRequest struct { - // Unique name of the volume. This will be used for idempotency. - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - // Parent volume id or snapshot id will create a new volume as a clone of the parent. - ParentId string `protobuf:"bytes,2,opt,name=parent_id,json=parentId" json:"parent_id,omitempty"` +// SdkNodeUncordonAttachmentsRespinse response for enabling new volume +// attachments from a node +type SdkNodeUncordonAttachmentsResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeCloneRequest) Reset() { *m = SdkVolumeCloneRequest{} } -func (m *SdkVolumeCloneRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeCloneRequest) ProtoMessage() {} -func (*SdkVolumeCloneRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{111} +func (m *SdkNodeUncordonAttachmentsResponse) Reset() { *m = SdkNodeUncordonAttachmentsResponse{} } +func (m *SdkNodeUncordonAttachmentsResponse) String() string { return proto.CompactTextString(m) } +func (*SdkNodeUncordonAttachmentsResponse) ProtoMessage() {} +func (*SdkNodeUncordonAttachmentsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{188} } -func (m *SdkVolumeCloneRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeCloneRequest.Unmarshal(m, b) +func (m *SdkNodeUncordonAttachmentsResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeUncordonAttachmentsResponse.Unmarshal(m, b) } -func (m *SdkVolumeCloneRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeCloneRequest.Marshal(b, m, deterministic) +func (m *SdkNodeUncordonAttachmentsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeUncordonAttachmentsResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeCloneRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeCloneRequest.Merge(dst, src) +func (dst *SdkNodeUncordonAttachmentsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeUncordonAttachmentsResponse.Merge(dst, src) } -func (m *SdkVolumeCloneRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeCloneRequest.Size(m) +func (m *SdkNodeUncordonAttachmentsResponse) XXX_Size() int { + return xxx_messageInfo_SdkNodeUncordonAttachmentsResponse.Size(m) } -func (m *SdkVolumeCloneRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeCloneRequest.DiscardUnknown(m) +func (m *SdkNodeUncordonAttachmentsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeUncordonAttachmentsResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeCloneRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkNodeUncordonAttachmentsResponse proto.InternalMessageInfo -func (m *SdkVolumeCloneRequest) GetName() string { +// Defines a request when inspect a storage pool +type SdkStoragePoolResizeRequest struct { + // UUID of the storage pool to inspect + Uuid string `protobuf:"bytes,1,opt,name=uuid" json:"uuid,omitempty"` + // ResizeFactor is the option to indicate if you would like to resize the pool + // by a fixed size or by a percentage of current size + // + // Types that are valid to be assigned to ResizeFactor: + // *SdkStoragePoolResizeRequest_Size + // *SdkStoragePoolResizeRequest_Percentage + ResizeFactor isSdkStoragePoolResizeRequest_ResizeFactor `protobuf_oneof:"resize_factor"` + // OperationType is the operation that's used to resize the storage pool (optional) + OperationType SdkStoragePool_ResizeOperationType `protobuf:"varint,3,opt,name=operation_type,json=operationType,enum=openstorage.api.SdkStoragePool_ResizeOperationType" json:"operation_type,omitempty"` + // SkipWaitForCleanVolumes would skip the wait for all volumes on the pool to be clean before doing a resize + SkipWaitForCleanVolumes bool `protobuf:"varint,4,opt,name=skip_wait_for_clean_volumes,json=skipWaitForCleanVolumes" json:"skip_wait_for_clean_volumes,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkStoragePoolResizeRequest) Reset() { *m = SdkStoragePoolResizeRequest{} } +func (m *SdkStoragePoolResizeRequest) String() string { return proto.CompactTextString(m) } +func (*SdkStoragePoolResizeRequest) ProtoMessage() {} +func (*SdkStoragePoolResizeRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{189} +} +func (m *SdkStoragePoolResizeRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkStoragePoolResizeRequest.Unmarshal(m, b) +} +func (m *SdkStoragePoolResizeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkStoragePoolResizeRequest.Marshal(b, m, deterministic) +} +func (dst *SdkStoragePoolResizeRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkStoragePoolResizeRequest.Merge(dst, src) +} +func (m *SdkStoragePoolResizeRequest) XXX_Size() int { + return xxx_messageInfo_SdkStoragePoolResizeRequest.Size(m) +} +func (m *SdkStoragePoolResizeRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkStoragePoolResizeRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkStoragePoolResizeRequest proto.InternalMessageInfo + +type isSdkStoragePoolResizeRequest_ResizeFactor interface { + isSdkStoragePoolResizeRequest_ResizeFactor() +} + +type SdkStoragePoolResizeRequest_Size struct { + Size uint64 `protobuf:"varint,200,opt,name=size,oneof"` +} +type SdkStoragePoolResizeRequest_Percentage struct { + Percentage uint64 `protobuf:"varint,201,opt,name=percentage,oneof"` +} + +func (*SdkStoragePoolResizeRequest_Size) isSdkStoragePoolResizeRequest_ResizeFactor() {} +func (*SdkStoragePoolResizeRequest_Percentage) isSdkStoragePoolResizeRequest_ResizeFactor() {} + +func (m *SdkStoragePoolResizeRequest) GetResizeFactor() isSdkStoragePoolResizeRequest_ResizeFactor { if m != nil { - return m.Name + return m.ResizeFactor } - return "" + return nil } -func (m *SdkVolumeCloneRequest) GetParentId() string { +func (m *SdkStoragePoolResizeRequest) GetUuid() string { if m != nil { - return m.ParentId + return m.Uuid } return "" } -// Defines the response when creating a clone from a volume or a snapshot -type SdkVolumeCloneResponse struct { - // Id of new volume - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkStoragePoolResizeRequest) GetSize() uint64 { + if x, ok := m.GetResizeFactor().(*SdkStoragePoolResizeRequest_Size); ok { + return x.Size + } + return 0 } -func (m *SdkVolumeCloneResponse) Reset() { *m = SdkVolumeCloneResponse{} } -func (m *SdkVolumeCloneResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeCloneResponse) ProtoMessage() {} -func (*SdkVolumeCloneResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{112} -} -func (m *SdkVolumeCloneResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeCloneResponse.Unmarshal(m, b) +func (m *SdkStoragePoolResizeRequest) GetPercentage() uint64 { + if x, ok := m.GetResizeFactor().(*SdkStoragePoolResizeRequest_Percentage); ok { + return x.Percentage + } + return 0 } -func (m *SdkVolumeCloneResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeCloneResponse.Marshal(b, m, deterministic) + +func (m *SdkStoragePoolResizeRequest) GetOperationType() SdkStoragePool_ResizeOperationType { + if m != nil { + return m.OperationType + } + return SdkStoragePool_RESIZE_TYPE_AUTO } -func (dst *SdkVolumeCloneResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeCloneResponse.Merge(dst, src) + +func (m *SdkStoragePoolResizeRequest) GetSkipWaitForCleanVolumes() bool { + if m != nil { + return m.SkipWaitForCleanVolumes + } + return false } -func (m *SdkVolumeCloneResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeCloneResponse.Size(m) + +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SdkStoragePoolResizeRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SdkStoragePoolResizeRequest_OneofMarshaler, _SdkStoragePoolResizeRequest_OneofUnmarshaler, _SdkStoragePoolResizeRequest_OneofSizer, []interface{}{ + (*SdkStoragePoolResizeRequest_Size)(nil), + (*SdkStoragePoolResizeRequest_Percentage)(nil), + } } -func (m *SdkVolumeCloneResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeCloneResponse.DiscardUnknown(m) + +func _SdkStoragePoolResizeRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SdkStoragePoolResizeRequest) + // resize_factor + switch x := m.ResizeFactor.(type) { + case *SdkStoragePoolResizeRequest_Size: + b.EncodeVarint(200<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Size)) + case *SdkStoragePoolResizeRequest_Percentage: + b.EncodeVarint(201<<3 | proto.WireVarint) + b.EncodeVarint(uint64(x.Percentage)) + case nil: + default: + return fmt.Errorf("SdkStoragePoolResizeRequest.ResizeFactor has unexpected type %T", x) + } + return nil } -var xxx_messageInfo_SdkVolumeCloneResponse proto.InternalMessageInfo +func _SdkStoragePoolResizeRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SdkStoragePoolResizeRequest) + switch tag { + case 200: // resize_factor.size + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.ResizeFactor = &SdkStoragePoolResizeRequest_Size{x} + return true, err + case 201: // resize_factor.percentage + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.ResizeFactor = &SdkStoragePoolResizeRequest_Percentage{x} + return true, err + default: + return false, nil + } +} -func (m *SdkVolumeCloneResponse) GetVolumeId() string { - if m != nil { - return m.VolumeId +func _SdkStoragePoolResizeRequest_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SdkStoragePoolResizeRequest) + // resize_factor + switch x := m.ResizeFactor.(type) { + case *SdkStoragePoolResizeRequest_Size: + n += 2 // tag and wire + n += proto.SizeVarint(uint64(x.Size)) + case *SdkStoragePoolResizeRequest_Percentage: + n += 2 // tag and wire + n += proto.SizeVarint(uint64(x.Percentage)) + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) } - return "" + return n } -// Defines the request to delete a volume -type SdkVolumeDeleteRequest struct { - // Id of volume to delete - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type StorageRebalanceTriggerThreshold struct { + // Type defines type of threshold + Type StorageRebalanceTriggerThreshold_Type `protobuf:"varint,1,opt,name=type,enum=openstorage.api.StorageRebalanceTriggerThreshold_Type" json:"type,omitempty"` + // Metric defines metric for which this threshold applies to. + Metric StorageRebalanceTriggerThreshold_Metric `protobuf:"varint,2,opt,name=metric,enum=openstorage.api.StorageRebalanceTriggerThreshold_Metric" json:"metric,omitempty"` + // OverLoadTriggerThreshold will select entity which is over this + // threshold. OverLoadTriggerThreshold threshold selects pools + // which act as source for reduction of load defined by the metric. + OverLoadTriggerThreshold uint64 `protobuf:"varint,3,opt,name=over_load_trigger_threshold,json=overLoadTriggerThreshold" json:"over_load_trigger_threshold,omitempty"` + // UnderLoadTriggerThreshold will select entity which is under this + // threshold. UnderLoadTriggerThreshold selects pools which act as + // targets for increasing load defined by metric. + UnderLoadTriggerThreshold uint64 `protobuf:"varint,4,opt,name=under_load_trigger_threshold,json=underLoadTriggerThreshold" json:"under_load_trigger_threshold,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeDeleteRequest) Reset() { *m = SdkVolumeDeleteRequest{} } -func (m *SdkVolumeDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeDeleteRequest) ProtoMessage() {} -func (*SdkVolumeDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{113} +func (m *StorageRebalanceTriggerThreshold) Reset() { *m = StorageRebalanceTriggerThreshold{} } +func (m *StorageRebalanceTriggerThreshold) String() string { return proto.CompactTextString(m) } +func (*StorageRebalanceTriggerThreshold) ProtoMessage() {} +func (*StorageRebalanceTriggerThreshold) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{190} } -func (m *SdkVolumeDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeDeleteRequest.Unmarshal(m, b) +func (m *StorageRebalanceTriggerThreshold) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_StorageRebalanceTriggerThreshold.Unmarshal(m, b) } -func (m *SdkVolumeDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeDeleteRequest.Marshal(b, m, deterministic) +func (m *StorageRebalanceTriggerThreshold) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_StorageRebalanceTriggerThreshold.Marshal(b, m, deterministic) } -func (dst *SdkVolumeDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeDeleteRequest.Merge(dst, src) +func (dst *StorageRebalanceTriggerThreshold) XXX_Merge(src proto.Message) { + xxx_messageInfo_StorageRebalanceTriggerThreshold.Merge(dst, src) } -func (m *SdkVolumeDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeDeleteRequest.Size(m) +func (m *StorageRebalanceTriggerThreshold) XXX_Size() int { + return xxx_messageInfo_StorageRebalanceTriggerThreshold.Size(m) } -func (m *SdkVolumeDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeDeleteRequest.DiscardUnknown(m) +func (m *StorageRebalanceTriggerThreshold) XXX_DiscardUnknown() { + xxx_messageInfo_StorageRebalanceTriggerThreshold.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeDeleteRequest proto.InternalMessageInfo +var xxx_messageInfo_StorageRebalanceTriggerThreshold proto.InternalMessageInfo -func (m *SdkVolumeDeleteRequest) GetVolumeId() string { +func (m *StorageRebalanceTriggerThreshold) GetType() StorageRebalanceTriggerThreshold_Type { if m != nil { - return m.VolumeId + return m.Type } - return "" + return StorageRebalanceTriggerThreshold_ABSOLUTE_PERCENT } -// Empty response -type SdkVolumeDeleteResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *StorageRebalanceTriggerThreshold) GetMetric() StorageRebalanceTriggerThreshold_Metric { + if m != nil { + return m.Metric + } + return StorageRebalanceTriggerThreshold_PROVISION_SPACE } -func (m *SdkVolumeDeleteResponse) Reset() { *m = SdkVolumeDeleteResponse{} } -func (m *SdkVolumeDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeDeleteResponse) ProtoMessage() {} -func (*SdkVolumeDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{114} -} -func (m *SdkVolumeDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeDeleteResponse.Unmarshal(m, b) -} -func (m *SdkVolumeDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeDeleteResponse.Marshal(b, m, deterministic) -} -func (dst *SdkVolumeDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeDeleteResponse.Merge(dst, src) -} -func (m *SdkVolumeDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeDeleteResponse.Size(m) +func (m *StorageRebalanceTriggerThreshold) GetOverLoadTriggerThreshold() uint64 { + if m != nil { + return m.OverLoadTriggerThreshold + } + return 0 } -func (m *SdkVolumeDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeDeleteResponse.DiscardUnknown(m) + +func (m *StorageRebalanceTriggerThreshold) GetUnderLoadTriggerThreshold() uint64 { + if m != nil { + return m.UnderLoadTriggerThreshold + } + return 0 } -var xxx_messageInfo_SdkVolumeDeleteResponse proto.InternalMessageInfo - -// Defines the request to inspect a volume -type SdkVolumeInspectRequest struct { - // Id of volume to inspect - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Options during inspection - Options *VolumeInspectOptions `protobuf:"bytes,2,opt,name=options" json:"options,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type SdkStorageRebalanceRequest struct { + // TriggerThresholds defines thresholds that would trigger rebalance. + // For example, TriggerThreshold{ThresholdTypeAbsolutePercent, MetricTypeUsedSpace, 75, 10} + // would trigger rebalance on pools where used space is more than 75% or less than 10%. Similarly, + // TriggerThreshold{ThresholdTypeDeltaMeanPercent, MetricTypeUsedSpace, 15, 25} will + // trigger rebalance for pools where used space is more than 15% from the mean + // percent for used space for the entire cluster or less than 25% from the mean + // percent for used space for the entire cluster. + TriggerThresholds []*StorageRebalanceTriggerThreshold `protobuf:"bytes,1,rep,name=trigger_thresholds,json=triggerThresholds" json:"trigger_thresholds,omitempty"` + // TrialRun if true the job only produces steps that would be taken without making any changes + TrialRun bool `protobuf:"varint,2,opt,name=trial_run,json=trialRun" json:"trial_run,omitempty"` + // SourcePoolSelector allows selecting pools to which trigger thresholds will apply as source + SourcePoolSelector []*LabelSelectorRequirement `protobuf:"bytes,3,rep,name=source_pool_selector,json=sourcePoolSelector" json:"source_pool_selector,omitempty"` + // TargetPoolSelector allows selecting pools to which trigger thresholds will apply as target + TargetPoolSelector []*LabelSelectorRequirement `protobuf:"bytes,4,rep,name=target_pool_selector,json=targetPoolSelector" json:"target_pool_selector,omitempty"` + // MaxDurationMinutes defines how long operation should run when started at schedule. + // 0 values means no limit on duration + MaxDurationMinutes uint64 `protobuf:"varint,5,opt,name=max_duration_minutes,json=maxDurationMinutes" json:"max_duration_minutes,omitempty"` + // RemoveRepl1Snapshots if true will instruct rebalance job to remove repl-1 snapshots + RemoveRepl_1Snapshots bool `protobuf:"varint,6,opt,name=remove_repl_1_snapshots,json=removeRepl1Snapshots" json:"remove_repl_1_snapshots,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeInspectRequest) Reset() { *m = SdkVolumeInspectRequest{} } -func (m *SdkVolumeInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeInspectRequest) ProtoMessage() {} -func (*SdkVolumeInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{115} +func (m *SdkStorageRebalanceRequest) Reset() { *m = SdkStorageRebalanceRequest{} } +func (m *SdkStorageRebalanceRequest) String() string { return proto.CompactTextString(m) } +func (*SdkStorageRebalanceRequest) ProtoMessage() {} +func (*SdkStorageRebalanceRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{191} } -func (m *SdkVolumeInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeInspectRequest.Unmarshal(m, b) +func (m *SdkStorageRebalanceRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkStorageRebalanceRequest.Unmarshal(m, b) } -func (m *SdkVolumeInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeInspectRequest.Marshal(b, m, deterministic) +func (m *SdkStorageRebalanceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkStorageRebalanceRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeInspectRequest.Merge(dst, src) +func (dst *SdkStorageRebalanceRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkStorageRebalanceRequest.Merge(dst, src) } -func (m *SdkVolumeInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeInspectRequest.Size(m) +func (m *SdkStorageRebalanceRequest) XXX_Size() int { + return xxx_messageInfo_SdkStorageRebalanceRequest.Size(m) } -func (m *SdkVolumeInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeInspectRequest.DiscardUnknown(m) +func (m *SdkStorageRebalanceRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkStorageRebalanceRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeInspectRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkStorageRebalanceRequest proto.InternalMessageInfo -func (m *SdkVolumeInspectRequest) GetVolumeId() string { +func (m *SdkStorageRebalanceRequest) GetTriggerThresholds() []*StorageRebalanceTriggerThreshold { if m != nil { - return m.VolumeId + return m.TriggerThresholds } - return "" + return nil } -func (m *SdkVolumeInspectRequest) GetOptions() *VolumeInspectOptions { +func (m *SdkStorageRebalanceRequest) GetTrialRun() bool { if m != nil { - return m.Options + return m.TrialRun + } + return false +} + +func (m *SdkStorageRebalanceRequest) GetSourcePoolSelector() []*LabelSelectorRequirement { + if m != nil { + return m.SourcePoolSelector } return nil } -// Defines the response when inspecting a volume -type SdkVolumeInspectResponse struct { - // Information about the volume - Volume *Volume `protobuf:"bytes,1,opt,name=volume" json:"volume,omitempty"` - // Name of volume - Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - // Volume labels - Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkStorageRebalanceRequest) GetTargetPoolSelector() []*LabelSelectorRequirement { + if m != nil { + return m.TargetPoolSelector + } + return nil } -func (m *SdkVolumeInspectResponse) Reset() { *m = SdkVolumeInspectResponse{} } -func (m *SdkVolumeInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeInspectResponse) ProtoMessage() {} -func (*SdkVolumeInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{116} +func (m *SdkStorageRebalanceRequest) GetMaxDurationMinutes() uint64 { + if m != nil { + return m.MaxDurationMinutes + } + return 0 } -func (m *SdkVolumeInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeInspectResponse.Unmarshal(m, b) + +func (m *SdkStorageRebalanceRequest) GetRemoveRepl_1Snapshots() bool { + if m != nil { + return m.RemoveRepl_1Snapshots + } + return false } -func (m *SdkVolumeInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeInspectResponse.Marshal(b, m, deterministic) + +// SdkStorageRebalanceResponse is the response to a storage rebalance request +type SdkStorageRebalanceResponse struct { + // Job for this rebalance + Job *StorageRebalanceJob `protobuf:"bytes,1,opt,name=job" json:"job,omitempty"` + // Summary summarizes the rebalance job + Summary *StorageRebalanceSummary `protobuf:"bytes,2,opt,name=summary" json:"summary,omitempty"` + // Actions describe all the actions taken during this rebalance + Actions []*StorageRebalanceAudit `protobuf:"bytes,3,rep,name=actions" json:"actions,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (dst *SdkVolumeInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeInspectResponse.Merge(dst, src) + +func (m *SdkStorageRebalanceResponse) Reset() { *m = SdkStorageRebalanceResponse{} } +func (m *SdkStorageRebalanceResponse) String() string { return proto.CompactTextString(m) } +func (*SdkStorageRebalanceResponse) ProtoMessage() {} +func (*SdkStorageRebalanceResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{192} } -func (m *SdkVolumeInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeInspectResponse.Size(m) +func (m *SdkStorageRebalanceResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkStorageRebalanceResponse.Unmarshal(m, b) } -func (m *SdkVolumeInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeInspectResponse.DiscardUnknown(m) +func (m *SdkStorageRebalanceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkStorageRebalanceResponse.Marshal(b, m, deterministic) +} +func (dst *SdkStorageRebalanceResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkStorageRebalanceResponse.Merge(dst, src) +} +func (m *SdkStorageRebalanceResponse) XXX_Size() int { + return xxx_messageInfo_SdkStorageRebalanceResponse.Size(m) +} +func (m *SdkStorageRebalanceResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkStorageRebalanceResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeInspectResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkStorageRebalanceResponse proto.InternalMessageInfo -func (m *SdkVolumeInspectResponse) GetVolume() *Volume { +func (m *SdkStorageRebalanceResponse) GetJob() *StorageRebalanceJob { if m != nil { - return m.Volume + return m.Job } return nil } -func (m *SdkVolumeInspectResponse) GetName() string { +func (m *SdkStorageRebalanceResponse) GetSummary() *StorageRebalanceSummary { if m != nil { - return m.Name + return m.Summary } - return "" + return nil } -func (m *SdkVolumeInspectResponse) GetLabels() map[string]string { +func (m *SdkStorageRebalanceResponse) GetActions() []*StorageRebalanceAudit { if m != nil { - return m.Labels + return m.Actions } return nil } -// Defines the request to inspect volumes using a filter -type SdkVolumeInspectWithFiltersRequest struct { - // (optional) Name to search - Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - // (optional) Labels to search - Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // (optional) Ownership to match - Ownership *Ownership `protobuf:"bytes,4,opt,name=ownership" json:"ownership,omitempty"` - // (optional) Group to match - Group *Group `protobuf:"bytes,5,opt,name=group" json:"group,omitempty"` - // Options during inspection - Options *VolumeInspectOptions `protobuf:"bytes,6,opt,name=options" json:"options,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// StorageRebalanceJob describes job input and current status +type StorageRebalanceJob struct { + // ID of the rebalance job + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Status describes status of pools after rebalance if rebalance did not finish successfully + Status string `protobuf:"bytes,2,opt,name=status" json:"status,omitempty"` + // State of the current job + State StorageRebalanceJobState `protobuf:"varint,3,opt,name=state,enum=openstorage.api.StorageRebalanceJobState" json:"state,omitempty"` + // Parameters is the original request params for this rebalance operation + Parameters *SdkStorageRebalanceRequest `protobuf:"bytes,4,opt,name=parameters" json:"parameters,omitempty"` + // CreateTime is the time the job was created + CreateTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime" json:"create_time,omitempty"` + // LastUpdateTime is the time the job was updated + LastUpdateTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=last_update_time,json=lastUpdateTime" json:"last_update_time,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeInspectWithFiltersRequest) Reset() { *m = SdkVolumeInspectWithFiltersRequest{} } -func (m *SdkVolumeInspectWithFiltersRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeInspectWithFiltersRequest) ProtoMessage() {} -func (*SdkVolumeInspectWithFiltersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{117} +func (m *StorageRebalanceJob) Reset() { *m = StorageRebalanceJob{} } +func (m *StorageRebalanceJob) String() string { return proto.CompactTextString(m) } +func (*StorageRebalanceJob) ProtoMessage() {} +func (*StorageRebalanceJob) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{193} } -func (m *SdkVolumeInspectWithFiltersRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.Unmarshal(m, b) +func (m *StorageRebalanceJob) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_StorageRebalanceJob.Unmarshal(m, b) } -func (m *SdkVolumeInspectWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.Marshal(b, m, deterministic) +func (m *StorageRebalanceJob) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_StorageRebalanceJob.Marshal(b, m, deterministic) } -func (dst *SdkVolumeInspectWithFiltersRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.Merge(dst, src) +func (dst *StorageRebalanceJob) XXX_Merge(src proto.Message) { + xxx_messageInfo_StorageRebalanceJob.Merge(dst, src) } -func (m *SdkVolumeInspectWithFiltersRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.Size(m) +func (m *StorageRebalanceJob) XXX_Size() int { + return xxx_messageInfo_StorageRebalanceJob.Size(m) } -func (m *SdkVolumeInspectWithFiltersRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeInspectWithFiltersRequest.DiscardUnknown(m) +func (m *StorageRebalanceJob) XXX_DiscardUnknown() { + xxx_messageInfo_StorageRebalanceJob.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeInspectWithFiltersRequest proto.InternalMessageInfo +var xxx_messageInfo_StorageRebalanceJob proto.InternalMessageInfo -func (m *SdkVolumeInspectWithFiltersRequest) GetName() string { +func (m *StorageRebalanceJob) GetId() string { if m != nil { - return m.Name + return m.Id } return "" } -func (m *SdkVolumeInspectWithFiltersRequest) GetLabels() map[string]string { +func (m *StorageRebalanceJob) GetStatus() string { if m != nil { - return m.Labels + return m.Status } - return nil + return "" } -func (m *SdkVolumeInspectWithFiltersRequest) GetOwnership() *Ownership { +func (m *StorageRebalanceJob) GetState() StorageRebalanceJobState { if m != nil { - return m.Ownership + return m.State + } + return StorageRebalanceJobState_PENDING +} + +func (m *StorageRebalanceJob) GetParameters() *SdkStorageRebalanceRequest { + if m != nil { + return m.Parameters } return nil } -func (m *SdkVolumeInspectWithFiltersRequest) GetGroup() *Group { +func (m *StorageRebalanceJob) GetCreateTime() *timestamp.Timestamp { if m != nil { - return m.Group + return m.CreateTime } return nil } -func (m *SdkVolumeInspectWithFiltersRequest) GetOptions() *VolumeInspectOptions { +func (m *StorageRebalanceJob) GetLastUpdateTime() *timestamp.Timestamp { if m != nil { - return m.Options + return m.LastUpdateTime } return nil } -// Defines the response when inspecting volumes using a filter -type SdkVolumeInspectWithFiltersResponse struct { - // List of `SdkVolumeInspectResponse` objects describing the volumes - Volumes []*SdkVolumeInspectResponse `protobuf:"bytes,1,rep,name=volumes" json:"volumes,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// StorageRebalanceSummary describes summary for the job +type StorageRebalanceSummary struct { + // TotalRunTimeSeconds is the total time rebalance is running + TotalRunTimeSeconds uint64 `protobuf:"varint,1,opt,name=total_run_time_seconds,json=totalRunTimeSeconds" json:"total_run_time_seconds,omitempty"` + // WorkSummary summarizes the work done + WorkSummary []*StorageRebalanceWorkSummary `protobuf:"bytes,2,rep,name=work_summary,json=workSummary" json:"work_summary,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeInspectWithFiltersResponse) Reset() { *m = SdkVolumeInspectWithFiltersResponse{} } -func (m *SdkVolumeInspectWithFiltersResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeInspectWithFiltersResponse) ProtoMessage() {} -func (*SdkVolumeInspectWithFiltersResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{118} +func (m *StorageRebalanceSummary) Reset() { *m = StorageRebalanceSummary{} } +func (m *StorageRebalanceSummary) String() string { return proto.CompactTextString(m) } +func (*StorageRebalanceSummary) ProtoMessage() {} +func (*StorageRebalanceSummary) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{194} } -func (m *SdkVolumeInspectWithFiltersResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.Unmarshal(m, b) +func (m *StorageRebalanceSummary) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_StorageRebalanceSummary.Unmarshal(m, b) } -func (m *SdkVolumeInspectWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.Marshal(b, m, deterministic) +func (m *StorageRebalanceSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_StorageRebalanceSummary.Marshal(b, m, deterministic) } -func (dst *SdkVolumeInspectWithFiltersResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.Merge(dst, src) +func (dst *StorageRebalanceSummary) XXX_Merge(src proto.Message) { + xxx_messageInfo_StorageRebalanceSummary.Merge(dst, src) } -func (m *SdkVolumeInspectWithFiltersResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.Size(m) +func (m *StorageRebalanceSummary) XXX_Size() int { + return xxx_messageInfo_StorageRebalanceSummary.Size(m) } -func (m *SdkVolumeInspectWithFiltersResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeInspectWithFiltersResponse.DiscardUnknown(m) +func (m *StorageRebalanceSummary) XXX_DiscardUnknown() { + xxx_messageInfo_StorageRebalanceSummary.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeInspectWithFiltersResponse proto.InternalMessageInfo +var xxx_messageInfo_StorageRebalanceSummary proto.InternalMessageInfo -func (m *SdkVolumeInspectWithFiltersResponse) GetVolumes() []*SdkVolumeInspectResponse { +func (m *StorageRebalanceSummary) GetTotalRunTimeSeconds() uint64 { if m != nil { - return m.Volumes + return m.TotalRunTimeSeconds + } + return 0 +} + +func (m *StorageRebalanceSummary) GetWorkSummary() []*StorageRebalanceWorkSummary { + if m != nil { + return m.WorkSummary } return nil } -// This request is used to adjust or set new values in the volume -type SdkVolumeUpdateRequest struct { - // Id of the volume to update +type StorageRebalanceWorkSummary struct { + // Type describes the type of summary. + Type StorageRebalanceWorkSummary_Type `protobuf:"varint,1,opt,name=type,enum=openstorage.api.StorageRebalanceWorkSummary_Type" json:"type,omitempty"` + // Done is the amount of bytes/work done + Done uint64 `protobuf:"varint,2,opt,name=done" json:"done,omitempty"` + // Pending is the amount of bytes/work pending. Done + Pending == Total + Pending uint64 `protobuf:"varint,3,opt,name=pending" json:"pending,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *StorageRebalanceWorkSummary) Reset() { *m = StorageRebalanceWorkSummary{} } +func (m *StorageRebalanceWorkSummary) String() string { return proto.CompactTextString(m) } +func (*StorageRebalanceWorkSummary) ProtoMessage() {} +func (*StorageRebalanceWorkSummary) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{195} +} +func (m *StorageRebalanceWorkSummary) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_StorageRebalanceWorkSummary.Unmarshal(m, b) +} +func (m *StorageRebalanceWorkSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_StorageRebalanceWorkSummary.Marshal(b, m, deterministic) +} +func (dst *StorageRebalanceWorkSummary) XXX_Merge(src proto.Message) { + xxx_messageInfo_StorageRebalanceWorkSummary.Merge(dst, src) +} +func (m *StorageRebalanceWorkSummary) XXX_Size() int { + return xxx_messageInfo_StorageRebalanceWorkSummary.Size(m) +} +func (m *StorageRebalanceWorkSummary) XXX_DiscardUnknown() { + xxx_messageInfo_StorageRebalanceWorkSummary.DiscardUnknown(m) +} + +var xxx_messageInfo_StorageRebalanceWorkSummary proto.InternalMessageInfo + +func (m *StorageRebalanceWorkSummary) GetType() StorageRebalanceWorkSummary_Type { + if m != nil { + return m.Type + } + return StorageRebalanceWorkSummary_UnbalancedPools +} + +func (m *StorageRebalanceWorkSummary) GetDone() uint64 { + if m != nil { + return m.Done + } + return 0 +} + +func (m *StorageRebalanceWorkSummary) GetPending() uint64 { + if m != nil { + return m.Pending + } + return 0 +} + +// StorageRebalanceAudit describes the action taken during rebalance +type StorageRebalanceAudit struct { + // VolumeID is the id of the volume which was rebalanced VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Change label values. Some of these values may not be able to be changed. - // New labels will be added to the current volume labels. To delete a label, set the - // value of the label to an empty string. - Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // VolumeSpecUpdate provides a method to request that certain values - // in the VolumeSpec are changed. This is necessary as a separate variable - // because values like int and bool in the VolumeSpec cannot be determined - // if they are being requested to change in gRPC proto3. Some of these - // values may not be able to be changed. - // - // Here are a few examples of actions that can be accomplished using the VolumeSpec: - // - // * To resize the volume: Set a new value in spec.size_opt.size. - // * To change number of replicas: Adjust spec.ha_level_opt.ha_level. - // * To change the I/O Profile: Adjust spec.io_profile_opt.io_profile. - Spec *VolumeSpecUpdate `protobuf:"bytes,4,opt,name=spec" json:"spec,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + // Name is the name of the volumes which was rebalanced + Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + // Action is the action executed + Action StorageRebalanceAudit_StorageRebalanceAction `protobuf:"varint,3,opt,name=action,enum=openstorage.api.StorageRebalanceAudit_StorageRebalanceAction" json:"action,omitempty"` + // Node on which this action happened + Node string `protobuf:"bytes,4,opt,name=node" json:"node,omitempty"` + // Pool on which this action happened + Pool string `protobuf:"bytes,5,opt,name=pool" json:"pool,omitempty"` + // StartTime is the time at which action was started + StartTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=start_time,json=startTime" json:"start_time,omitempty"` + // EndTime is time time at which action ended + EndTime *timestamp.Timestamp `protobuf:"bytes,7,opt,name=end_time,json=endTime" json:"end_time,omitempty"` + // WorkSummary summarizes the work done + WorkSummary []*StorageRebalanceWorkSummary `protobuf:"bytes,8,rep,name=work_summary,json=workSummary" json:"work_summary,omitempty"` + // ReplicationSetId is the ID of the replication set + ReplicationSetId uint64 `protobuf:"varint,9,opt,name=replication_set_id,json=replicationSetId" json:"replication_set_id,omitempty"` + // State is the current state of the rebalance action + State StorageRebalanceJobState `protobuf:"varint,10,opt,name=state,enum=openstorage.api.StorageRebalanceJobState" json:"state,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeUpdateRequest) Reset() { *m = SdkVolumeUpdateRequest{} } -func (m *SdkVolumeUpdateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeUpdateRequest) ProtoMessage() {} -func (*SdkVolumeUpdateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{119} +func (m *StorageRebalanceAudit) Reset() { *m = StorageRebalanceAudit{} } +func (m *StorageRebalanceAudit) String() string { return proto.CompactTextString(m) } +func (*StorageRebalanceAudit) ProtoMessage() {} +func (*StorageRebalanceAudit) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{196} } -func (m *SdkVolumeUpdateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeUpdateRequest.Unmarshal(m, b) +func (m *StorageRebalanceAudit) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_StorageRebalanceAudit.Unmarshal(m, b) } -func (m *SdkVolumeUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeUpdateRequest.Marshal(b, m, deterministic) +func (m *StorageRebalanceAudit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_StorageRebalanceAudit.Marshal(b, m, deterministic) } -func (dst *SdkVolumeUpdateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeUpdateRequest.Merge(dst, src) +func (dst *StorageRebalanceAudit) XXX_Merge(src proto.Message) { + xxx_messageInfo_StorageRebalanceAudit.Merge(dst, src) } -func (m *SdkVolumeUpdateRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeUpdateRequest.Size(m) +func (m *StorageRebalanceAudit) XXX_Size() int { + return xxx_messageInfo_StorageRebalanceAudit.Size(m) +} +func (m *StorageRebalanceAudit) XXX_DiscardUnknown() { + xxx_messageInfo_StorageRebalanceAudit.DiscardUnknown(m) +} + +var xxx_messageInfo_StorageRebalanceAudit proto.InternalMessageInfo + +func (m *StorageRebalanceAudit) GetVolumeId() string { + if m != nil { + return m.VolumeId + } + return "" +} + +func (m *StorageRebalanceAudit) GetName() string { + if m != nil { + return m.Name + } + return "" } -func (m *SdkVolumeUpdateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeUpdateRequest.DiscardUnknown(m) + +func (m *StorageRebalanceAudit) GetAction() StorageRebalanceAudit_StorageRebalanceAction { + if m != nil { + return m.Action + } + return StorageRebalanceAudit_ADD_REPLICA } -var xxx_messageInfo_SdkVolumeUpdateRequest proto.InternalMessageInfo +func (m *StorageRebalanceAudit) GetNode() string { + if m != nil { + return m.Node + } + return "" +} -func (m *SdkVolumeUpdateRequest) GetVolumeId() string { +func (m *StorageRebalanceAudit) GetPool() string { if m != nil { - return m.VolumeId + return m.Pool } return "" } -func (m *SdkVolumeUpdateRequest) GetLabels() map[string]string { +func (m *StorageRebalanceAudit) GetStartTime() *timestamp.Timestamp { if m != nil { - return m.Labels + return m.StartTime } return nil } -func (m *SdkVolumeUpdateRequest) GetSpec() *VolumeSpecUpdate { +func (m *StorageRebalanceAudit) GetEndTime() *timestamp.Timestamp { if m != nil { - return m.Spec + return m.EndTime } return nil } -// Empty response -type SdkVolumeUpdateResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *StorageRebalanceAudit) GetWorkSummary() []*StorageRebalanceWorkSummary { + if m != nil { + return m.WorkSummary + } + return nil } -func (m *SdkVolumeUpdateResponse) Reset() { *m = SdkVolumeUpdateResponse{} } -func (m *SdkVolumeUpdateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeUpdateResponse) ProtoMessage() {} -func (*SdkVolumeUpdateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{120} -} -func (m *SdkVolumeUpdateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeUpdateResponse.Unmarshal(m, b) -} -func (m *SdkVolumeUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeUpdateResponse.Marshal(b, m, deterministic) -} -func (dst *SdkVolumeUpdateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeUpdateResponse.Merge(dst, src) -} -func (m *SdkVolumeUpdateResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeUpdateResponse.Size(m) -} -func (m *SdkVolumeUpdateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeUpdateResponse.DiscardUnknown(m) +func (m *StorageRebalanceAudit) GetReplicationSetId() uint64 { + if m != nil { + return m.ReplicationSetId + } + return 0 } -var xxx_messageInfo_SdkVolumeUpdateResponse proto.InternalMessageInfo +func (m *StorageRebalanceAudit) GetState() StorageRebalanceJobState { + if m != nil { + return m.State + } + return StorageRebalanceJobState_PENDING +} -// Defines a request to retreive volume statistics -type SdkVolumeStatsRequest struct { - // Id of the volume to get statistics - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // When set to false the stats are in /proc/diskstats style stats. - // When set to true the stats are stats for a specific duration. - NotCumulative bool `protobuf:"varint,2,opt,name=not_cumulative,json=notCumulative" json:"not_cumulative,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type SdkUpdateRebalanceJobRequest struct { + // ID of the rebalance job + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // State is the new task state to update the job to + State StorageRebalanceJobState `protobuf:"varint,2,opt,name=state,enum=openstorage.api.StorageRebalanceJobState" json:"state,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeStatsRequest) Reset() { *m = SdkVolumeStatsRequest{} } -func (m *SdkVolumeStatsRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeStatsRequest) ProtoMessage() {} -func (*SdkVolumeStatsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{121} +func (m *SdkUpdateRebalanceJobRequest) Reset() { *m = SdkUpdateRebalanceJobRequest{} } +func (m *SdkUpdateRebalanceJobRequest) String() string { return proto.CompactTextString(m) } +func (*SdkUpdateRebalanceJobRequest) ProtoMessage() {} +func (*SdkUpdateRebalanceJobRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{197} } -func (m *SdkVolumeStatsRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeStatsRequest.Unmarshal(m, b) +func (m *SdkUpdateRebalanceJobRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkUpdateRebalanceJobRequest.Unmarshal(m, b) } -func (m *SdkVolumeStatsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeStatsRequest.Marshal(b, m, deterministic) +func (m *SdkUpdateRebalanceJobRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkUpdateRebalanceJobRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeStatsRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeStatsRequest.Merge(dst, src) +func (dst *SdkUpdateRebalanceJobRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkUpdateRebalanceJobRequest.Merge(dst, src) } -func (m *SdkVolumeStatsRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeStatsRequest.Size(m) +func (m *SdkUpdateRebalanceJobRequest) XXX_Size() int { + return xxx_messageInfo_SdkUpdateRebalanceJobRequest.Size(m) } -func (m *SdkVolumeStatsRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeStatsRequest.DiscardUnknown(m) +func (m *SdkUpdateRebalanceJobRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkUpdateRebalanceJobRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeStatsRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkUpdateRebalanceJobRequest proto.InternalMessageInfo -func (m *SdkVolumeStatsRequest) GetVolumeId() string { +func (m *SdkUpdateRebalanceJobRequest) GetId() string { if m != nil { - return m.VolumeId + return m.Id } return "" } -func (m *SdkVolumeStatsRequest) GetNotCumulative() bool { +func (m *SdkUpdateRebalanceJobRequest) GetState() StorageRebalanceJobState { if m != nil { - return m.NotCumulative + return m.State } - return false + return StorageRebalanceJobState_PENDING } -// Defines a response containing drive statistics -type SdkVolumeStatsResponse struct { - // Statistics for a single volume - Stats *Stats `protobuf:"bytes,1,opt,name=stats" json:"stats,omitempty"` +type SdkUpdateRebalanceJobResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeStatsResponse) Reset() { *m = SdkVolumeStatsResponse{} } -func (m *SdkVolumeStatsResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeStatsResponse) ProtoMessage() {} -func (*SdkVolumeStatsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{122} +func (m *SdkUpdateRebalanceJobResponse) Reset() { *m = SdkUpdateRebalanceJobResponse{} } +func (m *SdkUpdateRebalanceJobResponse) String() string { return proto.CompactTextString(m) } +func (*SdkUpdateRebalanceJobResponse) ProtoMessage() {} +func (*SdkUpdateRebalanceJobResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{198} } -func (m *SdkVolumeStatsResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeStatsResponse.Unmarshal(m, b) +func (m *SdkUpdateRebalanceJobResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkUpdateRebalanceJobResponse.Unmarshal(m, b) } -func (m *SdkVolumeStatsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeStatsResponse.Marshal(b, m, deterministic) +func (m *SdkUpdateRebalanceJobResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkUpdateRebalanceJobResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeStatsResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeStatsResponse.Merge(dst, src) +func (dst *SdkUpdateRebalanceJobResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkUpdateRebalanceJobResponse.Merge(dst, src) } -func (m *SdkVolumeStatsResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeStatsResponse.Size(m) +func (m *SdkUpdateRebalanceJobResponse) XXX_Size() int { + return xxx_messageInfo_SdkUpdateRebalanceJobResponse.Size(m) } -func (m *SdkVolumeStatsResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeStatsResponse.DiscardUnknown(m) +func (m *SdkUpdateRebalanceJobResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkUpdateRebalanceJobResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeStatsResponse proto.InternalMessageInfo - -func (m *SdkVolumeStatsResponse) GetStats() *Stats { - if m != nil { - return m.Stats - } - return nil -} +var xxx_messageInfo_SdkUpdateRebalanceJobResponse proto.InternalMessageInfo -// Defines request to retrieve volume/snapshot capacity usage details -type SdkVolumeCapacityUsageRequest struct { - // Id of the snapshot/volume to get capacity usage details - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` +type SdkGetRebalanceJobStatusRequest struct { + // ID of the rebalance job + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeCapacityUsageRequest) Reset() { *m = SdkVolumeCapacityUsageRequest{} } -func (m *SdkVolumeCapacityUsageRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeCapacityUsageRequest) ProtoMessage() {} -func (*SdkVolumeCapacityUsageRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{123} +func (m *SdkGetRebalanceJobStatusRequest) Reset() { *m = SdkGetRebalanceJobStatusRequest{} } +func (m *SdkGetRebalanceJobStatusRequest) String() string { return proto.CompactTextString(m) } +func (*SdkGetRebalanceJobStatusRequest) ProtoMessage() {} +func (*SdkGetRebalanceJobStatusRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{199} } -func (m *SdkVolumeCapacityUsageRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeCapacityUsageRequest.Unmarshal(m, b) +func (m *SdkGetRebalanceJobStatusRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkGetRebalanceJobStatusRequest.Unmarshal(m, b) } -func (m *SdkVolumeCapacityUsageRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeCapacityUsageRequest.Marshal(b, m, deterministic) +func (m *SdkGetRebalanceJobStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkGetRebalanceJobStatusRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeCapacityUsageRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeCapacityUsageRequest.Merge(dst, src) +func (dst *SdkGetRebalanceJobStatusRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkGetRebalanceJobStatusRequest.Merge(dst, src) } -func (m *SdkVolumeCapacityUsageRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeCapacityUsageRequest.Size(m) +func (m *SdkGetRebalanceJobStatusRequest) XXX_Size() int { + return xxx_messageInfo_SdkGetRebalanceJobStatusRequest.Size(m) } -func (m *SdkVolumeCapacityUsageRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeCapacityUsageRequest.DiscardUnknown(m) +func (m *SdkGetRebalanceJobStatusRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkGetRebalanceJobStatusRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeCapacityUsageRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkGetRebalanceJobStatusRequest proto.InternalMessageInfo -func (m *SdkVolumeCapacityUsageRequest) GetVolumeId() string { +func (m *SdkGetRebalanceJobStatusRequest) GetId() string { if m != nil { - return m.VolumeId + return m.Id } return "" } -// Defines response containing volume/snapshot capacity usage details -type SdkVolumeCapacityUsageResponse struct { - // CapacityUsage details - CapacityUsageInfo *CapacityUsageInfo `protobuf:"bytes,1,opt,name=capacity_usage_info,json=capacityUsageInfo" json:"capacity_usage_info,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type SdkGetRebalanceJobStatusResponse struct { + // Job for this rebalance + Job *StorageRebalanceJob `protobuf:"bytes,1,opt,name=job" json:"job,omitempty"` + // Summary summarizes the rebalance job + Summary *StorageRebalanceSummary `protobuf:"bytes,2,opt,name=summary" json:"summary,omitempty"` + // Actions describe all the actions taken during this rebalance + Actions []*StorageRebalanceAudit `protobuf:"bytes,3,rep,name=actions" json:"actions,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeCapacityUsageResponse) Reset() { *m = SdkVolumeCapacityUsageResponse{} } -func (m *SdkVolumeCapacityUsageResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeCapacityUsageResponse) ProtoMessage() {} -func (*SdkVolumeCapacityUsageResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{124} +func (m *SdkGetRebalanceJobStatusResponse) Reset() { *m = SdkGetRebalanceJobStatusResponse{} } +func (m *SdkGetRebalanceJobStatusResponse) String() string { return proto.CompactTextString(m) } +func (*SdkGetRebalanceJobStatusResponse) ProtoMessage() {} +func (*SdkGetRebalanceJobStatusResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{200} } -func (m *SdkVolumeCapacityUsageResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeCapacityUsageResponse.Unmarshal(m, b) +func (m *SdkGetRebalanceJobStatusResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkGetRebalanceJobStatusResponse.Unmarshal(m, b) } -func (m *SdkVolumeCapacityUsageResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeCapacityUsageResponse.Marshal(b, m, deterministic) +func (m *SdkGetRebalanceJobStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkGetRebalanceJobStatusResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeCapacityUsageResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeCapacityUsageResponse.Merge(dst, src) +func (dst *SdkGetRebalanceJobStatusResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkGetRebalanceJobStatusResponse.Merge(dst, src) } -func (m *SdkVolumeCapacityUsageResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeCapacityUsageResponse.Size(m) +func (m *SdkGetRebalanceJobStatusResponse) XXX_Size() int { + return xxx_messageInfo_SdkGetRebalanceJobStatusResponse.Size(m) } -func (m *SdkVolumeCapacityUsageResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeCapacityUsageResponse.DiscardUnknown(m) +func (m *SdkGetRebalanceJobStatusResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkGetRebalanceJobStatusResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeCapacityUsageResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkGetRebalanceJobStatusResponse proto.InternalMessageInfo -func (m *SdkVolumeCapacityUsageResponse) GetCapacityUsageInfo() *CapacityUsageInfo { +func (m *SdkGetRebalanceJobStatusResponse) GetJob() *StorageRebalanceJob { if m != nil { - return m.CapacityUsageInfo + return m.Job } return nil } -// Defines a request to list volumes -type SdkVolumeEnumerateRequest struct { +func (m *SdkGetRebalanceJobStatusResponse) GetSummary() *StorageRebalanceSummary { + if m != nil { + return m.Summary + } + return nil +} + +func (m *SdkGetRebalanceJobStatusResponse) GetActions() []*StorageRebalanceAudit { + if m != nil { + return m.Actions + } + return nil +} + +type SdkEnumerateRebalanceJobsRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeEnumerateRequest) Reset() { *m = SdkVolumeEnumerateRequest{} } -func (m *SdkVolumeEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeEnumerateRequest) ProtoMessage() {} -func (*SdkVolumeEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{125} +func (m *SdkEnumerateRebalanceJobsRequest) Reset() { *m = SdkEnumerateRebalanceJobsRequest{} } +func (m *SdkEnumerateRebalanceJobsRequest) String() string { return proto.CompactTextString(m) } +func (*SdkEnumerateRebalanceJobsRequest) ProtoMessage() {} +func (*SdkEnumerateRebalanceJobsRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{201} } -func (m *SdkVolumeEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeEnumerateRequest.Unmarshal(m, b) +func (m *SdkEnumerateRebalanceJobsRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkEnumerateRebalanceJobsRequest.Unmarshal(m, b) } -func (m *SdkVolumeEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkEnumerateRebalanceJobsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkEnumerateRebalanceJobsRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeEnumerateRequest.Merge(dst, src) +func (dst *SdkEnumerateRebalanceJobsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkEnumerateRebalanceJobsRequest.Merge(dst, src) } -func (m *SdkVolumeEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeEnumerateRequest.Size(m) +func (m *SdkEnumerateRebalanceJobsRequest) XXX_Size() int { + return xxx_messageInfo_SdkEnumerateRebalanceJobsRequest.Size(m) } -func (m *SdkVolumeEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeEnumerateRequest.DiscardUnknown(m) +func (m *SdkEnumerateRebalanceJobsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkEnumerateRebalanceJobsRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkEnumerateRebalanceJobsRequest proto.InternalMessageInfo -// Defines the response when listing volumes -type SdkVolumeEnumerateResponse struct { - // List of volumes matching label - VolumeIds []string `protobuf:"bytes,1,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type SdkEnumerateRebalanceJobsResponse struct { + // Jobs is the list of rebalance jobs in the response + Jobs []*StorageRebalanceJob `protobuf:"bytes,1,rep,name=jobs" json:"jobs,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeEnumerateResponse) Reset() { *m = SdkVolumeEnumerateResponse{} } -func (m *SdkVolumeEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeEnumerateResponse) ProtoMessage() {} -func (*SdkVolumeEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{126} +func (m *SdkEnumerateRebalanceJobsResponse) Reset() { *m = SdkEnumerateRebalanceJobsResponse{} } +func (m *SdkEnumerateRebalanceJobsResponse) String() string { return proto.CompactTextString(m) } +func (*SdkEnumerateRebalanceJobsResponse) ProtoMessage() {} +func (*SdkEnumerateRebalanceJobsResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{202} } -func (m *SdkVolumeEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeEnumerateResponse.Unmarshal(m, b) +func (m *SdkEnumerateRebalanceJobsResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkEnumerateRebalanceJobsResponse.Unmarshal(m, b) } -func (m *SdkVolumeEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeEnumerateResponse.Marshal(b, m, deterministic) +func (m *SdkEnumerateRebalanceJobsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkEnumerateRebalanceJobsResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeEnumerateResponse.Merge(dst, src) +func (dst *SdkEnumerateRebalanceJobsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkEnumerateRebalanceJobsResponse.Merge(dst, src) } -func (m *SdkVolumeEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeEnumerateResponse.Size(m) +func (m *SdkEnumerateRebalanceJobsResponse) XXX_Size() int { + return xxx_messageInfo_SdkEnumerateRebalanceJobsResponse.Size(m) } -func (m *SdkVolumeEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeEnumerateResponse.DiscardUnknown(m) +func (m *SdkEnumerateRebalanceJobsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkEnumerateRebalanceJobsResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeEnumerateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkEnumerateRebalanceJobsResponse proto.InternalMessageInfo -func (m *SdkVolumeEnumerateResponse) GetVolumeIds() []string { +func (m *SdkEnumerateRebalanceJobsResponse) GetJobs() []*StorageRebalanceJob { if m != nil { - return m.VolumeIds + return m.Jobs } return nil } -// Defines a request to list volumes -type SdkVolumeEnumerateWithFiltersRequest struct { - // (optional) Name to search - Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - // (optional) Labels to search - Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // (optional) Ownership to match - Ownership *Ownership `protobuf:"bytes,4,opt,name=ownership" json:"ownership,omitempty"` - // (optional) Group to match - Group *Group `protobuf:"bytes,5,opt,name=group" json:"group,omitempty"` +type SdkStoragePool struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkStoragePool) Reset() { *m = SdkStoragePool{} } +func (m *SdkStoragePool) String() string { return proto.CompactTextString(m) } +func (*SdkStoragePool) ProtoMessage() {} +func (*SdkStoragePool) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{203} +} +func (m *SdkStoragePool) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkStoragePool.Unmarshal(m, b) +} +func (m *SdkStoragePool) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkStoragePool.Marshal(b, m, deterministic) +} +func (dst *SdkStoragePool) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkStoragePool.Merge(dst, src) +} +func (m *SdkStoragePool) XXX_Size() int { + return xxx_messageInfo_SdkStoragePool.Size(m) +} +func (m *SdkStoragePool) XXX_DiscardUnknown() { + xxx_messageInfo_SdkStoragePool.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkStoragePool proto.InternalMessageInfo + +// Defines a response when resizing a storage pool +type SdkStoragePoolResizeResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeEnumerateWithFiltersRequest) Reset() { *m = SdkVolumeEnumerateWithFiltersRequest{} } -func (m *SdkVolumeEnumerateWithFiltersRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeEnumerateWithFiltersRequest) ProtoMessage() {} -func (*SdkVolumeEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{127} +func (m *SdkStoragePoolResizeResponse) Reset() { *m = SdkStoragePoolResizeResponse{} } +func (m *SdkStoragePoolResizeResponse) String() string { return proto.CompactTextString(m) } +func (*SdkStoragePoolResizeResponse) ProtoMessage() {} +func (*SdkStoragePoolResizeResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{204} } -func (m *SdkVolumeEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.Unmarshal(m, b) +func (m *SdkStoragePoolResizeResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkStoragePoolResizeResponse.Unmarshal(m, b) } -func (m *SdkVolumeEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.Marshal(b, m, deterministic) +func (m *SdkStoragePoolResizeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkStoragePoolResizeResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.Merge(dst, src) +func (dst *SdkStoragePoolResizeResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkStoragePoolResizeResponse.Merge(dst, src) } -func (m *SdkVolumeEnumerateWithFiltersRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.Size(m) +func (m *SdkStoragePoolResizeResponse) XXX_Size() int { + return xxx_messageInfo_SdkStoragePoolResizeResponse.Size(m) } -func (m *SdkVolumeEnumerateWithFiltersRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest.DiscardUnknown(m) +func (m *SdkStoragePoolResizeResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkStoragePoolResizeResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeEnumerateWithFiltersRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkStoragePoolResizeResponse proto.InternalMessageInfo -func (m *SdkVolumeEnumerateWithFiltersRequest) GetName() string { - if m != nil { - return m.Name - } - return "" +// Defines a response when inspecting a node +type SdkNodeInspectResponse struct { + // Node information + Node *StorageNode `protobuf:"bytes,1,opt,name=node" json:"node,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeEnumerateWithFiltersRequest) GetLabels() map[string]string { - if m != nil { - return m.Labels - } - return nil +func (m *SdkNodeInspectResponse) Reset() { *m = SdkNodeInspectResponse{} } +func (m *SdkNodeInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkNodeInspectResponse) ProtoMessage() {} +func (*SdkNodeInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{205} } - -func (m *SdkVolumeEnumerateWithFiltersRequest) GetOwnership() *Ownership { - if m != nil { - return m.Ownership - } - return nil +func (m *SdkNodeInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeInspectResponse.Unmarshal(m, b) +} +func (m *SdkNodeInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeInspectResponse.Marshal(b, m, deterministic) +} +func (dst *SdkNodeInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeInspectResponse.Merge(dst, src) +} +func (m *SdkNodeInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkNodeInspectResponse.Size(m) +} +func (m *SdkNodeInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeInspectResponse.DiscardUnknown(m) } -func (m *SdkVolumeEnumerateWithFiltersRequest) GetGroup() *Group { +var xxx_messageInfo_SdkNodeInspectResponse proto.InternalMessageInfo + +func (m *SdkNodeInspectResponse) GetNode() *StorageNode { if m != nil { - return m.Group + return m.Node } return nil } -// Defines the response when listing volumes -type SdkVolumeEnumerateWithFiltersResponse struct { - // List of volumes matching label - VolumeIds []string `protobuf:"bytes,1,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"` +// Empty request +type SdkNodeInspectCurrentRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeEnumerateWithFiltersResponse) Reset() { *m = SdkVolumeEnumerateWithFiltersResponse{} } -func (m *SdkVolumeEnumerateWithFiltersResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeEnumerateWithFiltersResponse) ProtoMessage() {} -func (*SdkVolumeEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{128} +func (m *SdkNodeInspectCurrentRequest) Reset() { *m = SdkNodeInspectCurrentRequest{} } +func (m *SdkNodeInspectCurrentRequest) String() string { return proto.CompactTextString(m) } +func (*SdkNodeInspectCurrentRequest) ProtoMessage() {} +func (*SdkNodeInspectCurrentRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{206} } -func (m *SdkVolumeEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.Unmarshal(m, b) +func (m *SdkNodeInspectCurrentRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeInspectCurrentRequest.Unmarshal(m, b) } -func (m *SdkVolumeEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.Marshal(b, m, deterministic) +func (m *SdkNodeInspectCurrentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeInspectCurrentRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.Merge(dst, src) +func (dst *SdkNodeInspectCurrentRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeInspectCurrentRequest.Merge(dst, src) } -func (m *SdkVolumeEnumerateWithFiltersResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.Size(m) +func (m *SdkNodeInspectCurrentRequest) XXX_Size() int { + return xxx_messageInfo_SdkNodeInspectCurrentRequest.Size(m) } -func (m *SdkVolumeEnumerateWithFiltersResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse.DiscardUnknown(m) +func (m *SdkNodeInspectCurrentRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeInspectCurrentRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeEnumerateWithFiltersResponse proto.InternalMessageInfo - -func (m *SdkVolumeEnumerateWithFiltersResponse) GetVolumeIds() []string { - if m != nil { - return m.VolumeIds - } - return nil -} +var xxx_messageInfo_SdkNodeInspectCurrentRequest proto.InternalMessageInfo -// Defines the request when creating a snapshot from a volume. -type SdkVolumeSnapshotCreateRequest struct { - // Id of volume to take the snapshot from - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Name of the snapshot. - Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - // Labels to apply to snapshot - Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response when inspecting a node +type SdkNodeInspectCurrentResponse struct { + // Node information + Node *StorageNode `protobuf:"bytes,1,opt,name=node" json:"node,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotCreateRequest) Reset() { *m = SdkVolumeSnapshotCreateRequest{} } -func (m *SdkVolumeSnapshotCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeSnapshotCreateRequest) ProtoMessage() {} -func (*SdkVolumeSnapshotCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{129} +func (m *SdkNodeInspectCurrentResponse) Reset() { *m = SdkNodeInspectCurrentResponse{} } +func (m *SdkNodeInspectCurrentResponse) String() string { return proto.CompactTextString(m) } +func (*SdkNodeInspectCurrentResponse) ProtoMessage() {} +func (*SdkNodeInspectCurrentResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{207} } -func (m *SdkVolumeSnapshotCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotCreateRequest.Unmarshal(m, b) +func (m *SdkNodeInspectCurrentResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeInspectCurrentResponse.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotCreateRequest.Marshal(b, m, deterministic) +func (m *SdkNodeInspectCurrentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeInspectCurrentResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotCreateRequest.Merge(dst, src) +func (dst *SdkNodeInspectCurrentResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeInspectCurrentResponse.Merge(dst, src) } -func (m *SdkVolumeSnapshotCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotCreateRequest.Size(m) +func (m *SdkNodeInspectCurrentResponse) XXX_Size() int { + return xxx_messageInfo_SdkNodeInspectCurrentResponse.Size(m) } -func (m *SdkVolumeSnapshotCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotCreateRequest.DiscardUnknown(m) +func (m *SdkNodeInspectCurrentResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeInspectCurrentResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkNodeInspectCurrentResponse proto.InternalMessageInfo -func (m *SdkVolumeSnapshotCreateRequest) GetVolumeId() string { +func (m *SdkNodeInspectCurrentResponse) GetNode() *StorageNode { if m != nil { - return m.VolumeId + return m.Node } - return "" + return nil } -func (m *SdkVolumeSnapshotCreateRequest) GetName() string { - if m != nil { - return m.Name - } - return "" +// Empty request +type SdkNodeEnumerateRequest struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotCreateRequest) GetLabels() map[string]string { - if m != nil { - return m.Labels - } - return nil +func (m *SdkNodeEnumerateRequest) Reset() { *m = SdkNodeEnumerateRequest{} } +func (m *SdkNodeEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkNodeEnumerateRequest) ProtoMessage() {} +func (*SdkNodeEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{208} +} +func (m *SdkNodeEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeEnumerateRequest.Unmarshal(m, b) +} +func (m *SdkNodeEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeEnumerateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkNodeEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeEnumerateRequest.Merge(dst, src) +} +func (m *SdkNodeEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkNodeEnumerateRequest.Size(m) +} +func (m *SdkNodeEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeEnumerateRequest.DiscardUnknown(m) } -// Defines a response after creating a snapshot of a volume -type SdkVolumeSnapshotCreateResponse struct { - // Id of immutable snapshot - SnapshotId string `protobuf:"bytes,1,opt,name=snapshot_id,json=snapshotId" json:"snapshot_id,omitempty"` +var xxx_messageInfo_SdkNodeEnumerateRequest proto.InternalMessageInfo + +// Defines a response with a list of node ids +type SdkNodeEnumerateResponse struct { + // List of all the node ids in the cluster + NodeIds []string `protobuf:"bytes,1,rep,name=node_ids,json=nodeIds" json:"node_ids,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotCreateResponse) Reset() { *m = SdkVolumeSnapshotCreateResponse{} } -func (m *SdkVolumeSnapshotCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeSnapshotCreateResponse) ProtoMessage() {} -func (*SdkVolumeSnapshotCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{130} +func (m *SdkNodeEnumerateResponse) Reset() { *m = SdkNodeEnumerateResponse{} } +func (m *SdkNodeEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkNodeEnumerateResponse) ProtoMessage() {} +func (*SdkNodeEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{209} } -func (m *SdkVolumeSnapshotCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotCreateResponse.Unmarshal(m, b) +func (m *SdkNodeEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeEnumerateResponse.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotCreateResponse.Marshal(b, m, deterministic) +func (m *SdkNodeEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeEnumerateResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotCreateResponse.Merge(dst, src) +func (dst *SdkNodeEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeEnumerateResponse.Merge(dst, src) } -func (m *SdkVolumeSnapshotCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotCreateResponse.Size(m) +func (m *SdkNodeEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkNodeEnumerateResponse.Size(m) } -func (m *SdkVolumeSnapshotCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotCreateResponse.DiscardUnknown(m) +func (m *SdkNodeEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeEnumerateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkNodeEnumerateResponse proto.InternalMessageInfo -func (m *SdkVolumeSnapshotCreateResponse) GetSnapshotId() string { +func (m *SdkNodeEnumerateResponse) GetNodeIds() []string { if m != nil { - return m.SnapshotId + return m.NodeIds } - return "" + return nil } -// Defines a request to restore a volume to a snapshot -type SdkVolumeSnapshotRestoreRequest struct { - // Id of volume - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Snapshot id to apply to `volume_id` - SnapshotId string `protobuf:"bytes,2,opt,name=snapshot_id,json=snapshotId" json:"snapshot_id,omitempty"` +// Defines a request to list nodes with given filter. Currently there are +// no filters and all the nodes will be returned. +type SdkNodeEnumerateWithFiltersRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotRestoreRequest) Reset() { *m = SdkVolumeSnapshotRestoreRequest{} } -func (m *SdkVolumeSnapshotRestoreRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeSnapshotRestoreRequest) ProtoMessage() {} -func (*SdkVolumeSnapshotRestoreRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{131} -} -func (m *SdkVolumeSnapshotRestoreRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.Unmarshal(m, b) +func (m *SdkNodeEnumerateWithFiltersRequest) Reset() { *m = SdkNodeEnumerateWithFiltersRequest{} } +func (m *SdkNodeEnumerateWithFiltersRequest) String() string { return proto.CompactTextString(m) } +func (*SdkNodeEnumerateWithFiltersRequest) ProtoMessage() {} +func (*SdkNodeEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{210} } -func (m *SdkVolumeSnapshotRestoreRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.Marshal(b, m, deterministic) +func (m *SdkNodeEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.Unmarshal(m, b) } -func (dst *SdkVolumeSnapshotRestoreRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.Merge(dst, src) +func (m *SdkNodeEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.Marshal(b, m, deterministic) } -func (m *SdkVolumeSnapshotRestoreRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.Size(m) +func (dst *SdkNodeEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.Merge(dst, src) } -func (m *SdkVolumeSnapshotRestoreRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotRestoreRequest.DiscardUnknown(m) +func (m *SdkNodeEnumerateWithFiltersRequest) XXX_Size() int { + return xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.Size(m) } - -var xxx_messageInfo_SdkVolumeSnapshotRestoreRequest proto.InternalMessageInfo - -func (m *SdkVolumeSnapshotRestoreRequest) GetVolumeId() string { - if m != nil { - return m.VolumeId - } - return "" +func (m *SdkNodeEnumerateWithFiltersRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.DiscardUnknown(m) } -func (m *SdkVolumeSnapshotRestoreRequest) GetSnapshotId() string { - if m != nil { - return m.SnapshotId - } - return "" -} +var xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest proto.InternalMessageInfo -// Empty response -type SdkVolumeSnapshotRestoreResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response with a list of nodes +type SdkNodeEnumerateWithFiltersResponse struct { + // List of all the nodes in the cluster + Nodes []*StorageNode `protobuf:"bytes,1,rep,name=nodes" json:"nodes,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotRestoreResponse) Reset() { *m = SdkVolumeSnapshotRestoreResponse{} } -func (m *SdkVolumeSnapshotRestoreResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeSnapshotRestoreResponse) ProtoMessage() {} -func (*SdkVolumeSnapshotRestoreResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{132} +func (m *SdkNodeEnumerateWithFiltersResponse) Reset() { *m = SdkNodeEnumerateWithFiltersResponse{} } +func (m *SdkNodeEnumerateWithFiltersResponse) String() string { return proto.CompactTextString(m) } +func (*SdkNodeEnumerateWithFiltersResponse) ProtoMessage() {} +func (*SdkNodeEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{211} } -func (m *SdkVolumeSnapshotRestoreResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.Unmarshal(m, b) +func (m *SdkNodeEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotRestoreResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.Marshal(b, m, deterministic) +func (m *SdkNodeEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotRestoreResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.Merge(dst, src) +func (dst *SdkNodeEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.Merge(dst, src) } -func (m *SdkVolumeSnapshotRestoreResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.Size(m) +func (m *SdkNodeEnumerateWithFiltersResponse) XXX_Size() int { + return xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.Size(m) } -func (m *SdkVolumeSnapshotRestoreResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotRestoreResponse.DiscardUnknown(m) +func (m *SdkNodeEnumerateWithFiltersResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotRestoreResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse proto.InternalMessageInfo -// Defines a request to list the snaphots -type SdkVolumeSnapshotEnumerateRequest struct { - // Get the snapshots for this volume id - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` +func (m *SdkNodeEnumerateWithFiltersResponse) GetNodes() []*StorageNode { + if m != nil { + return m.Nodes + } + return nil +} + +// Defines a request to get information about an object store endpoint +type SdkObjectstoreInspectRequest struct { + // Id of the object store + ObjectstoreId string `protobuf:"bytes,1,opt,name=objectstore_id,json=objectstoreId" json:"objectstore_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotEnumerateRequest) Reset() { *m = SdkVolumeSnapshotEnumerateRequest{} } -func (m *SdkVolumeSnapshotEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeSnapshotEnumerateRequest) ProtoMessage() {} -func (*SdkVolumeSnapshotEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{133} +func (m *SdkObjectstoreInspectRequest) Reset() { *m = SdkObjectstoreInspectRequest{} } +func (m *SdkObjectstoreInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkObjectstoreInspectRequest) ProtoMessage() {} +func (*SdkObjectstoreInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{212} } -func (m *SdkVolumeSnapshotEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.Unmarshal(m, b) +func (m *SdkObjectstoreInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkObjectstoreInspectRequest.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkObjectstoreInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkObjectstoreInspectRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.Merge(dst, src) +func (dst *SdkObjectstoreInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkObjectstoreInspectRequest.Merge(dst, src) } -func (m *SdkVolumeSnapshotEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.Size(m) +func (m *SdkObjectstoreInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkObjectstoreInspectRequest.Size(m) } -func (m *SdkVolumeSnapshotEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest.DiscardUnknown(m) +func (m *SdkObjectstoreInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkObjectstoreInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkObjectstoreInspectRequest proto.InternalMessageInfo -func (m *SdkVolumeSnapshotEnumerateRequest) GetVolumeId() string { +func (m *SdkObjectstoreInspectRequest) GetObjectstoreId() string { if m != nil { - return m.VolumeId + return m.ObjectstoreId } return "" } -// Defines a response when listing snapshots -type SdkVolumeSnapshotEnumerateResponse struct { - // List of immutable snapshots - VolumeSnapshotIds []string `protobuf:"bytes,1,rep,name=volume_snapshot_ids,json=volumeSnapshotIds" json:"volume_snapshot_ids,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response when inspecting an object store endpoint +type SdkObjectstoreInspectResponse struct { + // Contains information about the object store requested + ObjectstoreStatus *ObjectstoreInfo `protobuf:"bytes,1,opt,name=objectstore_status,json=objectstoreStatus" json:"objectstore_status,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotEnumerateResponse) Reset() { *m = SdkVolumeSnapshotEnumerateResponse{} } -func (m *SdkVolumeSnapshotEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeSnapshotEnumerateResponse) ProtoMessage() {} -func (*SdkVolumeSnapshotEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{134} +func (m *SdkObjectstoreInspectResponse) Reset() { *m = SdkObjectstoreInspectResponse{} } +func (m *SdkObjectstoreInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkObjectstoreInspectResponse) ProtoMessage() {} +func (*SdkObjectstoreInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{213} } -func (m *SdkVolumeSnapshotEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.Unmarshal(m, b) +func (m *SdkObjectstoreInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkObjectstoreInspectResponse.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.Marshal(b, m, deterministic) +func (m *SdkObjectstoreInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkObjectstoreInspectResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.Merge(dst, src) +func (dst *SdkObjectstoreInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkObjectstoreInspectResponse.Merge(dst, src) } -func (m *SdkVolumeSnapshotEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.Size(m) +func (m *SdkObjectstoreInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkObjectstoreInspectResponse.Size(m) } -func (m *SdkVolumeSnapshotEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse.DiscardUnknown(m) +func (m *SdkObjectstoreInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkObjectstoreInspectResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotEnumerateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkObjectstoreInspectResponse proto.InternalMessageInfo -func (m *SdkVolumeSnapshotEnumerateResponse) GetVolumeSnapshotIds() []string { +func (m *SdkObjectstoreInspectResponse) GetObjectstoreStatus() *ObjectstoreInfo { if m != nil { - return m.VolumeSnapshotIds + return m.ObjectstoreStatus } return nil } -// Defines a request to list the snaphots -type SdkVolumeSnapshotEnumerateWithFiltersRequest struct { - // (optional) Get the snapshots for this volume id - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // (optional) Get snapshots that match these labels - Labels map[string]string `protobuf:"bytes,2,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to create an object store +type SdkObjectstoreCreateRequest struct { + // Volume on which objectstore will be running + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) Reset() { - *m = SdkVolumeSnapshotEnumerateWithFiltersRequest{} -} -func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) String() string { - return proto.CompactTextString(m) -} -func (*SdkVolumeSnapshotEnumerateWithFiltersRequest) ProtoMessage() {} -func (*SdkVolumeSnapshotEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{135} +func (m *SdkObjectstoreCreateRequest) Reset() { *m = SdkObjectstoreCreateRequest{} } +func (m *SdkObjectstoreCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkObjectstoreCreateRequest) ProtoMessage() {} +func (*SdkObjectstoreCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{214} } -func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.Unmarshal(m, b) +func (m *SdkObjectstoreCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkObjectstoreCreateRequest.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.Marshal(b, m, deterministic) +func (m *SdkObjectstoreCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkObjectstoreCreateRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.Merge(dst, src) +func (dst *SdkObjectstoreCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkObjectstoreCreateRequest.Merge(dst, src) } -func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.Size(m) +func (m *SdkObjectstoreCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkObjectstoreCreateRequest.Size(m) } -func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest.DiscardUnknown(m) +func (m *SdkObjectstoreCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkObjectstoreCreateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersRequest proto.InternalMessageInfo - -func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) GetVolumeId() string { - if m != nil { - return m.VolumeId - } - return "" -} +var xxx_messageInfo_SdkObjectstoreCreateRequest proto.InternalMessageInfo -func (m *SdkVolumeSnapshotEnumerateWithFiltersRequest) GetLabels() map[string]string { +func (m *SdkObjectstoreCreateRequest) GetVolumeId() string { if m != nil { - return m.Labels + return m.VolumeId } - return nil + return "" } -// Defines a response when listing snapshots -type SdkVolumeSnapshotEnumerateWithFiltersResponse struct { - // List of immutable snapshots - VolumeSnapshotIds []string `protobuf:"bytes,1,rep,name=volume_snapshot_ids,json=volumeSnapshotIds" json:"volume_snapshot_ids,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response when an object store has been created for a +// specified volume +type SdkObjectstoreCreateResponse struct { + // Created objecstore status + ObjectstoreStatus *ObjectstoreInfo `protobuf:"bytes,1,opt,name=objectstore_status,json=objectstoreStatus" json:"objectstore_status,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) Reset() { - *m = SdkVolumeSnapshotEnumerateWithFiltersResponse{} -} -func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) String() string { - return proto.CompactTextString(m) -} -func (*SdkVolumeSnapshotEnumerateWithFiltersResponse) ProtoMessage() {} -func (*SdkVolumeSnapshotEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{136} +func (m *SdkObjectstoreCreateResponse) Reset() { *m = SdkObjectstoreCreateResponse{} } +func (m *SdkObjectstoreCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkObjectstoreCreateResponse) ProtoMessage() {} +func (*SdkObjectstoreCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{215} } -func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.Unmarshal(m, b) +func (m *SdkObjectstoreCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkObjectstoreCreateResponse.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.Marshal(b, m, deterministic) +func (m *SdkObjectstoreCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkObjectstoreCreateResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.Merge(dst, src) +func (dst *SdkObjectstoreCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkObjectstoreCreateResponse.Merge(dst, src) } -func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.Size(m) +func (m *SdkObjectstoreCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkObjectstoreCreateResponse.Size(m) } -func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse.DiscardUnknown(m) +func (m *SdkObjectstoreCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkObjectstoreCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotEnumerateWithFiltersResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkObjectstoreCreateResponse proto.InternalMessageInfo -func (m *SdkVolumeSnapshotEnumerateWithFiltersResponse) GetVolumeSnapshotIds() []string { +func (m *SdkObjectstoreCreateResponse) GetObjectstoreStatus() *ObjectstoreInfo { if m != nil { - return m.VolumeSnapshotIds + return m.ObjectstoreStatus } return nil } -// Defines a request to update the snapshot schedule of a volume -type SdkVolumeSnapshotScheduleUpdateRequest struct { - // Id of volume - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Names of schedule policies - SnapshotScheduleNames []string `protobuf:"bytes,2,rep,name=snapshot_schedule_names,json=snapshotScheduleNames" json:"snapshot_schedule_names,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to delete an object store service from a volume +type SdkObjectstoreDeleteRequest struct { + // Id of the object store to delete + ObjectstoreId string `protobuf:"bytes,1,opt,name=objectstore_id,json=objectstoreId" json:"objectstore_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotScheduleUpdateRequest) Reset() { - *m = SdkVolumeSnapshotScheduleUpdateRequest{} -} -func (m *SdkVolumeSnapshotScheduleUpdateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeSnapshotScheduleUpdateRequest) ProtoMessage() {} -func (*SdkVolumeSnapshotScheduleUpdateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{137} +func (m *SdkObjectstoreDeleteRequest) Reset() { *m = SdkObjectstoreDeleteRequest{} } +func (m *SdkObjectstoreDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkObjectstoreDeleteRequest) ProtoMessage() {} +func (*SdkObjectstoreDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{216} } -func (m *SdkVolumeSnapshotScheduleUpdateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.Unmarshal(m, b) +func (m *SdkObjectstoreDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkObjectstoreDeleteRequest.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotScheduleUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.Marshal(b, m, deterministic) +func (m *SdkObjectstoreDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkObjectstoreDeleteRequest.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotScheduleUpdateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.Merge(dst, src) +func (dst *SdkObjectstoreDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkObjectstoreDeleteRequest.Merge(dst, src) } -func (m *SdkVolumeSnapshotScheduleUpdateRequest) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.Size(m) +func (m *SdkObjectstoreDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkObjectstoreDeleteRequest.Size(m) } -func (m *SdkVolumeSnapshotScheduleUpdateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest.DiscardUnknown(m) +func (m *SdkObjectstoreDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkObjectstoreDeleteRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkObjectstoreDeleteRequest proto.InternalMessageInfo -func (m *SdkVolumeSnapshotScheduleUpdateRequest) GetVolumeId() string { +func (m *SdkObjectstoreDeleteRequest) GetObjectstoreId() string { if m != nil { - return m.VolumeId + return m.ObjectstoreId } return "" } -func (m *SdkVolumeSnapshotScheduleUpdateRequest) GetSnapshotScheduleNames() []string { - if m != nil { - return m.SnapshotScheduleNames - } - return nil -} - // Empty response -type SdkVolumeSnapshotScheduleUpdateResponse struct { +type SdkObjectstoreDeleteResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVolumeSnapshotScheduleUpdateResponse) Reset() { - *m = SdkVolumeSnapshotScheduleUpdateResponse{} -} -func (m *SdkVolumeSnapshotScheduleUpdateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkVolumeSnapshotScheduleUpdateResponse) ProtoMessage() {} -func (*SdkVolumeSnapshotScheduleUpdateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{138} +func (m *SdkObjectstoreDeleteResponse) Reset() { *m = SdkObjectstoreDeleteResponse{} } +func (m *SdkObjectstoreDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkObjectstoreDeleteResponse) ProtoMessage() {} +func (*SdkObjectstoreDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{217} } -func (m *SdkVolumeSnapshotScheduleUpdateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.Unmarshal(m, b) +func (m *SdkObjectstoreDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkObjectstoreDeleteResponse.Unmarshal(m, b) } -func (m *SdkVolumeSnapshotScheduleUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.Marshal(b, m, deterministic) +func (m *SdkObjectstoreDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkObjectstoreDeleteResponse.Marshal(b, m, deterministic) } -func (dst *SdkVolumeSnapshotScheduleUpdateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.Merge(dst, src) +func (dst *SdkObjectstoreDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkObjectstoreDeleteResponse.Merge(dst, src) } -func (m *SdkVolumeSnapshotScheduleUpdateResponse) XXX_Size() int { - return xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.Size(m) +func (m *SdkObjectstoreDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkObjectstoreDeleteResponse.Size(m) } -func (m *SdkVolumeSnapshotScheduleUpdateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse.DiscardUnknown(m) +func (m *SdkObjectstoreDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkObjectstoreDeleteResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkVolumeSnapshotScheduleUpdateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkObjectstoreDeleteResponse proto.InternalMessageInfo -// Empty request -type SdkClusterDomainsEnumerateRequest struct { +// Defines a request to update an object store +type SdkObjectstoreUpdateRequest struct { + // Objectstore Id to update + ObjectstoreId string `protobuf:"bytes,1,opt,name=objectstore_id,json=objectstoreId" json:"objectstore_id,omitempty"` + // enable/disable objectstore + Enable bool `protobuf:"varint,2,opt,name=enable" json:"enable,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterDomainsEnumerateRequest) Reset() { *m = SdkClusterDomainsEnumerateRequest{} } -func (m *SdkClusterDomainsEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterDomainsEnumerateRequest) ProtoMessage() {} -func (*SdkClusterDomainsEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{139} +func (m *SdkObjectstoreUpdateRequest) Reset() { *m = SdkObjectstoreUpdateRequest{} } +func (m *SdkObjectstoreUpdateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkObjectstoreUpdateRequest) ProtoMessage() {} +func (*SdkObjectstoreUpdateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{218} } -func (m *SdkClusterDomainsEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterDomainsEnumerateRequest.Unmarshal(m, b) +func (m *SdkObjectstoreUpdateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkObjectstoreUpdateRequest.Unmarshal(m, b) } -func (m *SdkClusterDomainsEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterDomainsEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkObjectstoreUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkObjectstoreUpdateRequest.Marshal(b, m, deterministic) } -func (dst *SdkClusterDomainsEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterDomainsEnumerateRequest.Merge(dst, src) +func (dst *SdkObjectstoreUpdateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkObjectstoreUpdateRequest.Merge(dst, src) } -func (m *SdkClusterDomainsEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterDomainsEnumerateRequest.Size(m) +func (m *SdkObjectstoreUpdateRequest) XXX_Size() int { + return xxx_messageInfo_SdkObjectstoreUpdateRequest.Size(m) } -func (m *SdkClusterDomainsEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterDomainsEnumerateRequest.DiscardUnknown(m) +func (m *SdkObjectstoreUpdateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkObjectstoreUpdateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterDomainsEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkObjectstoreUpdateRequest proto.InternalMessageInfo -// Defines a response when enumerating cluster domains -type SdkClusterDomainsEnumerateResponse struct { - // List of names of all the cluster domains in a cluster - ClusterDomainNames []string `protobuf:"bytes,1,rep,name=cluster_domain_names,json=clusterDomainNames" json:"cluster_domain_names,omitempty"` +func (m *SdkObjectstoreUpdateRequest) GetObjectstoreId() string { + if m != nil { + return m.ObjectstoreId + } + return "" +} + +func (m *SdkObjectstoreUpdateRequest) GetEnable() bool { + if m != nil { + return m.Enable + } + return false +} + +// Empty response +type SdkObjectstoreUpdateResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterDomainsEnumerateResponse) Reset() { *m = SdkClusterDomainsEnumerateResponse{} } -func (m *SdkClusterDomainsEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterDomainsEnumerateResponse) ProtoMessage() {} -func (*SdkClusterDomainsEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{140} +func (m *SdkObjectstoreUpdateResponse) Reset() { *m = SdkObjectstoreUpdateResponse{} } +func (m *SdkObjectstoreUpdateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkObjectstoreUpdateResponse) ProtoMessage() {} +func (*SdkObjectstoreUpdateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{219} } -func (m *SdkClusterDomainsEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterDomainsEnumerateResponse.Unmarshal(m, b) +func (m *SdkObjectstoreUpdateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkObjectstoreUpdateResponse.Unmarshal(m, b) } -func (m *SdkClusterDomainsEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterDomainsEnumerateResponse.Marshal(b, m, deterministic) +func (m *SdkObjectstoreUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkObjectstoreUpdateResponse.Marshal(b, m, deterministic) } -func (dst *SdkClusterDomainsEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterDomainsEnumerateResponse.Merge(dst, src) +func (dst *SdkObjectstoreUpdateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkObjectstoreUpdateResponse.Merge(dst, src) } -func (m *SdkClusterDomainsEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterDomainsEnumerateResponse.Size(m) +func (m *SdkObjectstoreUpdateResponse) XXX_Size() int { + return xxx_messageInfo_SdkObjectstoreUpdateResponse.Size(m) } -func (m *SdkClusterDomainsEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterDomainsEnumerateResponse.DiscardUnknown(m) +func (m *SdkObjectstoreUpdateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkObjectstoreUpdateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterDomainsEnumerateResponse proto.InternalMessageInfo - -func (m *SdkClusterDomainsEnumerateResponse) GetClusterDomainNames() []string { - if m != nil { - return m.ClusterDomainNames - } - return nil -} +var xxx_messageInfo_SdkObjectstoreUpdateResponse proto.InternalMessageInfo -// Defines a request to inspect a cluster domain -type SdkClusterDomainInspectRequest struct { - // Name of the cluster domain to inspect - ClusterDomainName string `protobuf:"bytes,1,opt,name=cluster_domain_name,json=clusterDomainName" json:"cluster_domain_name,omitempty"` +// Defines a request to create a backup of a volume to the cloud +type SdkCloudBackupCreateRequest struct { + // VolumeID of the volume for which cloudbackup is requested + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Credential id refers to the cloud credentials needed to backup + CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + // Full indicates if full backup is desired even though incremental is possible + Full bool `protobuf:"varint,3,opt,name=full" json:"full,omitempty"` + // TaskId of the task performing this backup. This value can be used for + // idempotency. + TaskId string `protobuf:"bytes,4,opt,name=task_id,json=taskId" json:"task_id,omitempty"` + // Labels are list of key value pairs to tag the cloud backup. These labels + // are stored in the metadata associated with the backup. + Labels map[string]string `protobuf:"bytes,5,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // FullBackupFrequency indicates number of incremental backup after whcih + // a fullbackup must be created. This is to override the default value for + // manual/user triggerred backups and not applicable for scheduled backups + // Value of 0 retains the default behavior. + FullBackupFrequency uint32 `protobuf:"varint,6,opt,name=full_backup_frequency,json=fullBackupFrequency" json:"full_backup_frequency,omitempty"` + // DeleteLocal indicates if local snap created for backup must be deleted after + // the backup is complete + DeleteLocal bool `protobuf:"varint,7,opt,name=delete_local,json=deleteLocal" json:"delete_local,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterDomainInspectRequest) Reset() { *m = SdkClusterDomainInspectRequest{} } -func (m *SdkClusterDomainInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterDomainInspectRequest) ProtoMessage() {} -func (*SdkClusterDomainInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{141} +func (m *SdkCloudBackupCreateRequest) Reset() { *m = SdkCloudBackupCreateRequest{} } +func (m *SdkCloudBackupCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupCreateRequest) ProtoMessage() {} +func (*SdkCloudBackupCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{220} } -func (m *SdkClusterDomainInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterDomainInspectRequest.Unmarshal(m, b) +func (m *SdkCloudBackupCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupCreateRequest.Unmarshal(m, b) } -func (m *SdkClusterDomainInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterDomainInspectRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupCreateRequest.Marshal(b, m, deterministic) } -func (dst *SdkClusterDomainInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterDomainInspectRequest.Merge(dst, src) +func (dst *SdkCloudBackupCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupCreateRequest.Merge(dst, src) } -func (m *SdkClusterDomainInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterDomainInspectRequest.Size(m) +func (m *SdkCloudBackupCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupCreateRequest.Size(m) } -func (m *SdkClusterDomainInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterDomainInspectRequest.DiscardUnknown(m) +func (m *SdkCloudBackupCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupCreateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterDomainInspectRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupCreateRequest proto.InternalMessageInfo -func (m *SdkClusterDomainInspectRequest) GetClusterDomainName() string { +func (m *SdkCloudBackupCreateRequest) GetVolumeId() string { if m != nil { - return m.ClusterDomainName + return m.VolumeId } return "" } -// Defines a response to inspecting a cluster domain -type SdkClusterDomainInspectResponse struct { - // Name of the cluster domain - ClusterDomainName string `protobuf:"bytes,1,opt,name=cluster_domain_name,json=clusterDomainName" json:"cluster_domain_name,omitempty"` - // IsActive indicates whether this cluster domain is active - IsActive bool `protobuf:"varint,2,opt,name=is_active,json=isActive" json:"is_active,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupCreateRequest) GetCredentialId() string { + if m != nil { + return m.CredentialId + } + return "" } -func (m *SdkClusterDomainInspectResponse) Reset() { *m = SdkClusterDomainInspectResponse{} } -func (m *SdkClusterDomainInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterDomainInspectResponse) ProtoMessage() {} -func (*SdkClusterDomainInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{142} -} -func (m *SdkClusterDomainInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterDomainInspectResponse.Unmarshal(m, b) -} -func (m *SdkClusterDomainInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterDomainInspectResponse.Marshal(b, m, deterministic) -} -func (dst *SdkClusterDomainInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterDomainInspectResponse.Merge(dst, src) -} -func (m *SdkClusterDomainInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterDomainInspectResponse.Size(m) +func (m *SdkCloudBackupCreateRequest) GetFull() bool { + if m != nil { + return m.Full + } + return false } -func (m *SdkClusterDomainInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterDomainInspectResponse.DiscardUnknown(m) + +func (m *SdkCloudBackupCreateRequest) GetTaskId() string { + if m != nil { + return m.TaskId + } + return "" } -var xxx_messageInfo_SdkClusterDomainInspectResponse proto.InternalMessageInfo +func (m *SdkCloudBackupCreateRequest) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} -func (m *SdkClusterDomainInspectResponse) GetClusterDomainName() string { +func (m *SdkCloudBackupCreateRequest) GetFullBackupFrequency() uint32 { if m != nil { - return m.ClusterDomainName + return m.FullBackupFrequency } - return "" + return 0 } -func (m *SdkClusterDomainInspectResponse) GetIsActive() bool { +func (m *SdkCloudBackupCreateRequest) GetDeleteLocal() bool { if m != nil { - return m.IsActive + return m.DeleteLocal } return false } -// Defines a request to activate a cluster domain -type SdkClusterDomainActivateRequest struct { - // Name of the cluster domain to activate - ClusterDomainName string `protobuf:"bytes,1,opt,name=cluster_domain_name,json=clusterDomainName" json:"cluster_domain_name,omitempty"` +// Empty response +type SdkCloudBackupCreateResponse struct { + // TaskId of the task performing the backup + TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterDomainActivateRequest) Reset() { *m = SdkClusterDomainActivateRequest{} } -func (m *SdkClusterDomainActivateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterDomainActivateRequest) ProtoMessage() {} -func (*SdkClusterDomainActivateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{143} +func (m *SdkCloudBackupCreateResponse) Reset() { *m = SdkCloudBackupCreateResponse{} } +func (m *SdkCloudBackupCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupCreateResponse) ProtoMessage() {} +func (*SdkCloudBackupCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{221} } -func (m *SdkClusterDomainActivateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterDomainActivateRequest.Unmarshal(m, b) +func (m *SdkCloudBackupCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupCreateResponse.Unmarshal(m, b) } -func (m *SdkClusterDomainActivateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterDomainActivateRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupCreateResponse.Marshal(b, m, deterministic) } -func (dst *SdkClusterDomainActivateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterDomainActivateRequest.Merge(dst, src) +func (dst *SdkCloudBackupCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupCreateResponse.Merge(dst, src) } -func (m *SdkClusterDomainActivateRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterDomainActivateRequest.Size(m) +func (m *SdkCloudBackupCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupCreateResponse.Size(m) } -func (m *SdkClusterDomainActivateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterDomainActivateRequest.DiscardUnknown(m) +func (m *SdkCloudBackupCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterDomainActivateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupCreateResponse proto.InternalMessageInfo -func (m *SdkClusterDomainActivateRequest) GetClusterDomainName() string { +func (m *SdkCloudBackupCreateResponse) GetTaskId() string { if m != nil { - return m.ClusterDomainName + return m.TaskId } return "" } -// Empty response -type SdkClusterDomainActivateResponse struct { +// Defines a request to create a group backup of a group to the cloud +type SdkCloudBackupGroupCreateRequest struct { + // GroupID of the volume for which cloudbackup is requested + GroupId string `protobuf:"bytes,1,opt,name=group_id,json=groupId" json:"group_id,omitempty"` + // VolumeIds are a list of volume IDs to use for the backup request. + // If multiple of GroupID, Labels or VolumeIDs are specified, volumes matching + // all of them are backed uup + VolumeIds []string `protobuf:"bytes,2,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"` + // Credential id refers to the cloud credentials needed to backup + CredentialId string `protobuf:"bytes,3,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + // Full indicates if full backup is desired even though incremental is possible + Full bool `protobuf:"varint,4,opt,name=full" json:"full,omitempty"` + // Labels are list of key value pairs to tag the cloud backup. These labels + // are stored in the metadata associated with the backup. + Labels map[string]string `protobuf:"bytes,5,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // DeleteLocal indicates if local snap created for backup must be deleted after + // the backup is complete + DeleteLocal bool `protobuf:"varint,6,opt,name=delete_local,json=deleteLocal" json:"delete_local,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterDomainActivateResponse) Reset() { *m = SdkClusterDomainActivateResponse{} } -func (m *SdkClusterDomainActivateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterDomainActivateResponse) ProtoMessage() {} -func (*SdkClusterDomainActivateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{144} +func (m *SdkCloudBackupGroupCreateRequest) Reset() { *m = SdkCloudBackupGroupCreateRequest{} } +func (m *SdkCloudBackupGroupCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupGroupCreateRequest) ProtoMessage() {} +func (*SdkCloudBackupGroupCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{222} } -func (m *SdkClusterDomainActivateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterDomainActivateResponse.Unmarshal(m, b) +func (m *SdkCloudBackupGroupCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupGroupCreateRequest.Unmarshal(m, b) } -func (m *SdkClusterDomainActivateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterDomainActivateResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupGroupCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupGroupCreateRequest.Marshal(b, m, deterministic) } -func (dst *SdkClusterDomainActivateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterDomainActivateResponse.Merge(dst, src) +func (dst *SdkCloudBackupGroupCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupGroupCreateRequest.Merge(dst, src) } -func (m *SdkClusterDomainActivateResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterDomainActivateResponse.Size(m) +func (m *SdkCloudBackupGroupCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupGroupCreateRequest.Size(m) } -func (m *SdkClusterDomainActivateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterDomainActivateResponse.DiscardUnknown(m) +func (m *SdkCloudBackupGroupCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupGroupCreateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterDomainActivateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupGroupCreateRequest proto.InternalMessageInfo -// Defines a request to deactivate a cluster domain -type SdkClusterDomainDeactivateRequest struct { - // Name of the cluster domain to deactivate - ClusterDomainName string `protobuf:"bytes,1,opt,name=cluster_domain_name,json=clusterDomainName" json:"cluster_domain_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupGroupCreateRequest) GetGroupId() string { + if m != nil { + return m.GroupId + } + return "" } -func (m *SdkClusterDomainDeactivateRequest) Reset() { *m = SdkClusterDomainDeactivateRequest{} } -func (m *SdkClusterDomainDeactivateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterDomainDeactivateRequest) ProtoMessage() {} -func (*SdkClusterDomainDeactivateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{145} -} -func (m *SdkClusterDomainDeactivateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterDomainDeactivateRequest.Unmarshal(m, b) -} -func (m *SdkClusterDomainDeactivateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterDomainDeactivateRequest.Marshal(b, m, deterministic) -} -func (dst *SdkClusterDomainDeactivateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterDomainDeactivateRequest.Merge(dst, src) +func (m *SdkCloudBackupGroupCreateRequest) GetVolumeIds() []string { + if m != nil { + return m.VolumeIds + } + return nil } -func (m *SdkClusterDomainDeactivateRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterDomainDeactivateRequest.Size(m) + +func (m *SdkCloudBackupGroupCreateRequest) GetCredentialId() string { + if m != nil { + return m.CredentialId + } + return "" } -func (m *SdkClusterDomainDeactivateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterDomainDeactivateRequest.DiscardUnknown(m) + +func (m *SdkCloudBackupGroupCreateRequest) GetFull() bool { + if m != nil { + return m.Full + } + return false } -var xxx_messageInfo_SdkClusterDomainDeactivateRequest proto.InternalMessageInfo +func (m *SdkCloudBackupGroupCreateRequest) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} -func (m *SdkClusterDomainDeactivateRequest) GetClusterDomainName() string { +func (m *SdkCloudBackupGroupCreateRequest) GetDeleteLocal() bool { if m != nil { - return m.ClusterDomainName + return m.DeleteLocal } - return "" + return false } // Empty response -type SdkClusterDomainDeactivateResponse struct { +type SdkCloudBackupGroupCreateResponse struct { + // ID for this group of backups + GroupCloudBackupId string `protobuf:"bytes,1,opt,name=group_cloud_backup_id,json=groupCloudBackupId" json:"group_cloud_backup_id,omitempty"` + // TaskIds of the tasks performing the group backup + TaskIds []string `protobuf:"bytes,2,rep,name=task_ids,json=taskIds" json:"task_ids,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterDomainDeactivateResponse) Reset() { *m = SdkClusterDomainDeactivateResponse{} } -func (m *SdkClusterDomainDeactivateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterDomainDeactivateResponse) ProtoMessage() {} -func (*SdkClusterDomainDeactivateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{146} +func (m *SdkCloudBackupGroupCreateResponse) Reset() { *m = SdkCloudBackupGroupCreateResponse{} } +func (m *SdkCloudBackupGroupCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupGroupCreateResponse) ProtoMessage() {} +func (*SdkCloudBackupGroupCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{223} } -func (m *SdkClusterDomainDeactivateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterDomainDeactivateResponse.Unmarshal(m, b) +func (m *SdkCloudBackupGroupCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupGroupCreateResponse.Unmarshal(m, b) } -func (m *SdkClusterDomainDeactivateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterDomainDeactivateResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupGroupCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupGroupCreateResponse.Marshal(b, m, deterministic) } -func (dst *SdkClusterDomainDeactivateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterDomainDeactivateResponse.Merge(dst, src) +func (dst *SdkCloudBackupGroupCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupGroupCreateResponse.Merge(dst, src) } -func (m *SdkClusterDomainDeactivateResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterDomainDeactivateResponse.Size(m) +func (m *SdkCloudBackupGroupCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupGroupCreateResponse.Size(m) } -func (m *SdkClusterDomainDeactivateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterDomainDeactivateResponse.DiscardUnknown(m) +func (m *SdkCloudBackupGroupCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupGroupCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterDomainDeactivateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupGroupCreateResponse proto.InternalMessageInfo -// Empty request -type SdkClusterInspectCurrentRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupGroupCreateResponse) GetGroupCloudBackupId() string { + if m != nil { + return m.GroupCloudBackupId + } + return "" } -func (m *SdkClusterInspectCurrentRequest) Reset() { *m = SdkClusterInspectCurrentRequest{} } -func (m *SdkClusterInspectCurrentRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterInspectCurrentRequest) ProtoMessage() {} -func (*SdkClusterInspectCurrentRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{147} +func (m *SdkCloudBackupGroupCreateResponse) GetTaskIds() []string { + if m != nil { + return m.TaskIds + } + return nil } -func (m *SdkClusterInspectCurrentRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterInspectCurrentRequest.Unmarshal(m, b) + +// Defines a request to restore a volume from an existing backup stored by +// a cloud provider +type SdkCloudBackupRestoreRequest struct { + // Backup ID being restored + BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` + // Optional volume Name of the new volume to be created + // in the cluster for restoring the cloudbackup + RestoreVolumeName string `protobuf:"bytes,2,opt,name=restore_volume_name,json=restoreVolumeName" json:"restore_volume_name,omitempty"` + // The credential to be used for restore operation + CredentialId string `protobuf:"bytes,3,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + // Optional for provisioning restore + // volume (ResoreVolumeName should not be specified) + NodeId string `protobuf:"bytes,4,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` + // TaskId of the task performing this restore + TaskId string `protobuf:"bytes,5,opt,name=task_id,json=taskId" json:"task_id,omitempty"` + // Modifiable Restore volume spec + Spec *RestoreVolumeSpec `protobuf:"bytes,6,opt,name=spec" json:"spec,omitempty"` + // RestoreVolume locator + Locator *VolumeLocator `protobuf:"bytes,7,opt,name=locator" json:"locator,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterInspectCurrentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterInspectCurrentRequest.Marshal(b, m, deterministic) + +func (m *SdkCloudBackupRestoreRequest) Reset() { *m = SdkCloudBackupRestoreRequest{} } +func (m *SdkCloudBackupRestoreRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupRestoreRequest) ProtoMessage() {} +func (*SdkCloudBackupRestoreRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{224} } -func (dst *SdkClusterInspectCurrentRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterInspectCurrentRequest.Merge(dst, src) +func (m *SdkCloudBackupRestoreRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupRestoreRequest.Unmarshal(m, b) } -func (m *SdkClusterInspectCurrentRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterInspectCurrentRequest.Size(m) +func (m *SdkCloudBackupRestoreRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupRestoreRequest.Marshal(b, m, deterministic) } -func (m *SdkClusterInspectCurrentRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterInspectCurrentRequest.DiscardUnknown(m) +func (dst *SdkCloudBackupRestoreRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupRestoreRequest.Merge(dst, src) +} +func (m *SdkCloudBackupRestoreRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupRestoreRequest.Size(m) +} +func (m *SdkCloudBackupRestoreRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupRestoreRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterInspectCurrentRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupRestoreRequest proto.InternalMessageInfo -// Defines a response when inspecting the current cluster -type SdkClusterInspectCurrentResponse struct { - // Cluster information - Cluster *StorageCluster `protobuf:"bytes,1,opt,name=cluster" json:"cluster,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupRestoreRequest) GetBackupId() string { + if m != nil { + return m.BackupId + } + return "" } -func (m *SdkClusterInspectCurrentResponse) Reset() { *m = SdkClusterInspectCurrentResponse{} } -func (m *SdkClusterInspectCurrentResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterInspectCurrentResponse) ProtoMessage() {} -func (*SdkClusterInspectCurrentResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{148} -} -func (m *SdkClusterInspectCurrentResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterInspectCurrentResponse.Unmarshal(m, b) -} -func (m *SdkClusterInspectCurrentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterInspectCurrentResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupRestoreRequest) GetRestoreVolumeName() string { + if m != nil { + return m.RestoreVolumeName + } + return "" } -func (dst *SdkClusterInspectCurrentResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterInspectCurrentResponse.Merge(dst, src) + +func (m *SdkCloudBackupRestoreRequest) GetCredentialId() string { + if m != nil { + return m.CredentialId + } + return "" } -func (m *SdkClusterInspectCurrentResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterInspectCurrentResponse.Size(m) + +func (m *SdkCloudBackupRestoreRequest) GetNodeId() string { + if m != nil { + return m.NodeId + } + return "" } -func (m *SdkClusterInspectCurrentResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterInspectCurrentResponse.DiscardUnknown(m) + +func (m *SdkCloudBackupRestoreRequest) GetTaskId() string { + if m != nil { + return m.TaskId + } + return "" } -var xxx_messageInfo_SdkClusterInspectCurrentResponse proto.InternalMessageInfo +func (m *SdkCloudBackupRestoreRequest) GetSpec() *RestoreVolumeSpec { + if m != nil { + return m.Spec + } + return nil +} -func (m *SdkClusterInspectCurrentResponse) GetCluster() *StorageCluster { +func (m *SdkCloudBackupRestoreRequest) GetLocator() *VolumeLocator { if m != nil { - return m.Cluster + return m.Locator } return nil } -// Defines a request when inspecting a node -type SdkNodeInspectRequest struct { - // Id of node to inspect - NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` +// Defines a response when restoring a volume from a backup stored by +// a cloud provider +type SdkCloudBackupRestoreResponse struct { + // VolumeID to which the backup is being restored + RestoreVolumeId string `protobuf:"bytes,1,opt,name=restore_volume_id,json=restoreVolumeId" json:"restore_volume_id,omitempty"` + // TaskId of the task performing the restore + TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId" json:"task_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkNodeInspectRequest) Reset() { *m = SdkNodeInspectRequest{} } -func (m *SdkNodeInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkNodeInspectRequest) ProtoMessage() {} -func (*SdkNodeInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{149} +func (m *SdkCloudBackupRestoreResponse) Reset() { *m = SdkCloudBackupRestoreResponse{} } +func (m *SdkCloudBackupRestoreResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupRestoreResponse) ProtoMessage() {} +func (*SdkCloudBackupRestoreResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{225} } -func (m *SdkNodeInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkNodeInspectRequest.Unmarshal(m, b) +func (m *SdkCloudBackupRestoreResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupRestoreResponse.Unmarshal(m, b) } -func (m *SdkNodeInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkNodeInspectRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupRestoreResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupRestoreResponse.Marshal(b, m, deterministic) } -func (dst *SdkNodeInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkNodeInspectRequest.Merge(dst, src) +func (dst *SdkCloudBackupRestoreResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupRestoreResponse.Merge(dst, src) } -func (m *SdkNodeInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkNodeInspectRequest.Size(m) +func (m *SdkCloudBackupRestoreResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupRestoreResponse.Size(m) } -func (m *SdkNodeInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkNodeInspectRequest.DiscardUnknown(m) +func (m *SdkCloudBackupRestoreResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupRestoreResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkNodeInspectRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupRestoreResponse proto.InternalMessageInfo -func (m *SdkNodeInspectRequest) GetNodeId() string { +func (m *SdkCloudBackupRestoreResponse) GetRestoreVolumeId() string { if m != nil { - return m.NodeId + return m.RestoreVolumeId } return "" } -// Defines a request when inspect a storage pool -type SdkStoragePoolResizeRequest struct { - // UUID of the storage pool to inspect - Uuid string `protobuf:"bytes,1,opt,name=uuid" json:"uuid,omitempty"` - // ResizeFactor is the option to indiciate if you would like to resize the pool - // by a fixed size or by a percentage of current size - // - // Types that are valid to be assigned to ResizeFactor: - // *SdkStoragePoolResizeRequest_Size - // *SdkStoragePoolResizeRequest_Percentage - ResizeFactor isSdkStoragePoolResizeRequest_ResizeFactor `protobuf_oneof:"resize_factor"` - // OperationType is the operation that's used to resize the storage pool (optional) - OperationType SdkStoragePool_ResizeOperationType `protobuf:"varint,3,opt,name=operation_type,json=operationType,enum=openstorage.api.SdkStoragePool_ResizeOperationType" json:"operation_type,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupRestoreResponse) GetTaskId() string { + if m != nil { + return m.TaskId + } + return "" } -func (m *SdkStoragePoolResizeRequest) Reset() { *m = SdkStoragePoolResizeRequest{} } -func (m *SdkStoragePoolResizeRequest) String() string { return proto.CompactTextString(m) } -func (*SdkStoragePoolResizeRequest) ProtoMessage() {} -func (*SdkStoragePoolResizeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{150} -} -func (m *SdkStoragePoolResizeRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkStoragePoolResizeRequest.Unmarshal(m, b) -} -func (m *SdkStoragePoolResizeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkStoragePoolResizeRequest.Marshal(b, m, deterministic) +// Defines a request to delete a single backup stored by a cloud provider +type SdkCloudBackupDeleteRequest struct { + // ID is the ID of the cloud backup + BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` + // Credential id is the credential for cloud to be used for the request + CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + // Force Delete cloudbackup even if there are dependencies. This may be + // needed if the backup is an incremental backup and subsequent backups + // depend on this backup specified by `backup_id`. + Force bool `protobuf:"varint,3,opt,name=force" json:"force,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (dst *SdkStoragePoolResizeRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkStoragePoolResizeRequest.Merge(dst, src) + +func (m *SdkCloudBackupDeleteRequest) Reset() { *m = SdkCloudBackupDeleteRequest{} } +func (m *SdkCloudBackupDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupDeleteRequest) ProtoMessage() {} +func (*SdkCloudBackupDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{226} } -func (m *SdkStoragePoolResizeRequest) XXX_Size() int { - return xxx_messageInfo_SdkStoragePoolResizeRequest.Size(m) +func (m *SdkCloudBackupDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupDeleteRequest.Unmarshal(m, b) } -func (m *SdkStoragePoolResizeRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkStoragePoolResizeRequest.DiscardUnknown(m) +func (m *SdkCloudBackupDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupDeleteRequest.Marshal(b, m, deterministic) } - -var xxx_messageInfo_SdkStoragePoolResizeRequest proto.InternalMessageInfo - -type isSdkStoragePoolResizeRequest_ResizeFactor interface { - isSdkStoragePoolResizeRequest_ResizeFactor() +func (dst *SdkCloudBackupDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupDeleteRequest.Merge(dst, src) } - -type SdkStoragePoolResizeRequest_Size struct { - Size uint64 `protobuf:"varint,200,opt,name=size,oneof"` +func (m *SdkCloudBackupDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupDeleteRequest.Size(m) } -type SdkStoragePoolResizeRequest_Percentage struct { - Percentage uint64 `protobuf:"varint,201,opt,name=percentage,oneof"` +func (m *SdkCloudBackupDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupDeleteRequest.DiscardUnknown(m) } -func (*SdkStoragePoolResizeRequest_Size) isSdkStoragePoolResizeRequest_ResizeFactor() {} -func (*SdkStoragePoolResizeRequest_Percentage) isSdkStoragePoolResizeRequest_ResizeFactor() {} +var xxx_messageInfo_SdkCloudBackupDeleteRequest proto.InternalMessageInfo -func (m *SdkStoragePoolResizeRequest) GetResizeFactor() isSdkStoragePoolResizeRequest_ResizeFactor { +func (m *SdkCloudBackupDeleteRequest) GetBackupId() string { if m != nil { - return m.ResizeFactor + return m.BackupId } - return nil + return "" } -func (m *SdkStoragePoolResizeRequest) GetUuid() string { +func (m *SdkCloudBackupDeleteRequest) GetCredentialId() string { if m != nil { - return m.Uuid + return m.CredentialId } return "" } -func (m *SdkStoragePoolResizeRequest) GetSize() uint64 { - if x, ok := m.GetResizeFactor().(*SdkStoragePoolResizeRequest_Size); ok { - return x.Size +func (m *SdkCloudBackupDeleteRequest) GetForce() bool { + if m != nil { + return m.Force } - return 0 + return false } -func (m *SdkStoragePoolResizeRequest) GetPercentage() uint64 { - if x, ok := m.GetResizeFactor().(*SdkStoragePoolResizeRequest_Percentage); ok { - return x.Percentage - } - return 0 +// Empty response +type SdkCloudBackupDeleteResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkStoragePoolResizeRequest) GetOperationType() SdkStoragePool_ResizeOperationType { - if m != nil { - return m.OperationType - } - return SdkStoragePool_RESIZE_TYPE_AUTO +func (m *SdkCloudBackupDeleteResponse) Reset() { *m = SdkCloudBackupDeleteResponse{} } +func (m *SdkCloudBackupDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupDeleteResponse) ProtoMessage() {} +func (*SdkCloudBackupDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{227} } - -// XXX_OneofFuncs is for the internal use of the proto package. -func (*SdkStoragePoolResizeRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _SdkStoragePoolResizeRequest_OneofMarshaler, _SdkStoragePoolResizeRequest_OneofUnmarshaler, _SdkStoragePoolResizeRequest_OneofSizer, []interface{}{ - (*SdkStoragePoolResizeRequest_Size)(nil), - (*SdkStoragePoolResizeRequest_Percentage)(nil), - } +func (m *SdkCloudBackupDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupDeleteResponse.Unmarshal(m, b) } - -func _SdkStoragePoolResizeRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*SdkStoragePoolResizeRequest) - // resize_factor - switch x := m.ResizeFactor.(type) { - case *SdkStoragePoolResizeRequest_Size: - b.EncodeVarint(200<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.Size)) - case *SdkStoragePoolResizeRequest_Percentage: - b.EncodeVarint(201<<3 | proto.WireVarint) - b.EncodeVarint(uint64(x.Percentage)) - case nil: - default: - return fmt.Errorf("SdkStoragePoolResizeRequest.ResizeFactor has unexpected type %T", x) - } - return nil +func (m *SdkCloudBackupDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupDeleteResponse.Marshal(b, m, deterministic) } - -func _SdkStoragePoolResizeRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*SdkStoragePoolResizeRequest) - switch tag { - case 200: // resize_factor.size - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.ResizeFactor = &SdkStoragePoolResizeRequest_Size{x} - return true, err - case 201: // resize_factor.percentage - if wire != proto.WireVarint { - return true, proto.ErrInternalBadWireType - } - x, err := b.DecodeVarint() - m.ResizeFactor = &SdkStoragePoolResizeRequest_Percentage{x} - return true, err - default: - return false, nil - } +func (dst *SdkCloudBackupDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupDeleteResponse.Merge(dst, src) } - -func _SdkStoragePoolResizeRequest_OneofSizer(msg proto.Message) (n int) { - m := msg.(*SdkStoragePoolResizeRequest) - // resize_factor - switch x := m.ResizeFactor.(type) { - case *SdkStoragePoolResizeRequest_Size: - n += 2 // tag and wire - n += proto.SizeVarint(uint64(x.Size)) - case *SdkStoragePoolResizeRequest_Percentage: - n += 2 // tag and wire - n += proto.SizeVarint(uint64(x.Percentage)) - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) - } - return n +func (m *SdkCloudBackupDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupDeleteResponse.Size(m) +} +func (m *SdkCloudBackupDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupDeleteResponse.DiscardUnknown(m) } -type SdkStoragePool struct { +var xxx_messageInfo_SdkCloudBackupDeleteResponse proto.InternalMessageInfo + +// Defines a request to delete all the backups stored by a cloud provider +// for a specified volume +type SdkCloudBackupDeleteAllRequest struct { + // id of the volume for the request + SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` + // Credential id is the credential for cloud to be used for the request + CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkStoragePool) Reset() { *m = SdkStoragePool{} } -func (m *SdkStoragePool) String() string { return proto.CompactTextString(m) } -func (*SdkStoragePool) ProtoMessage() {} -func (*SdkStoragePool) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{151} +func (m *SdkCloudBackupDeleteAllRequest) Reset() { *m = SdkCloudBackupDeleteAllRequest{} } +func (m *SdkCloudBackupDeleteAllRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupDeleteAllRequest) ProtoMessage() {} +func (*SdkCloudBackupDeleteAllRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{228} } -func (m *SdkStoragePool) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkStoragePool.Unmarshal(m, b) +func (m *SdkCloudBackupDeleteAllRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupDeleteAllRequest.Unmarshal(m, b) } -func (m *SdkStoragePool) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkStoragePool.Marshal(b, m, deterministic) +func (m *SdkCloudBackupDeleteAllRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupDeleteAllRequest.Marshal(b, m, deterministic) } -func (dst *SdkStoragePool) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkStoragePool.Merge(dst, src) +func (dst *SdkCloudBackupDeleteAllRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupDeleteAllRequest.Merge(dst, src) } -func (m *SdkStoragePool) XXX_Size() int { - return xxx_messageInfo_SdkStoragePool.Size(m) +func (m *SdkCloudBackupDeleteAllRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupDeleteAllRequest.Size(m) } -func (m *SdkStoragePool) XXX_DiscardUnknown() { - xxx_messageInfo_SdkStoragePool.DiscardUnknown(m) +func (m *SdkCloudBackupDeleteAllRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupDeleteAllRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkStoragePool proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupDeleteAllRequest proto.InternalMessageInfo -// Defines a response when resizing a storage pool -type SdkStoragePoolResizeResponse struct { +func (m *SdkCloudBackupDeleteAllRequest) GetSrcVolumeId() string { + if m != nil { + return m.SrcVolumeId + } + return "" +} + +func (m *SdkCloudBackupDeleteAllRequest) GetCredentialId() string { + if m != nil { + return m.CredentialId + } + return "" +} + +// Empty response +type SdkCloudBackupDeleteAllResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkStoragePoolResizeResponse) Reset() { *m = SdkStoragePoolResizeResponse{} } -func (m *SdkStoragePoolResizeResponse) String() string { return proto.CompactTextString(m) } -func (*SdkStoragePoolResizeResponse) ProtoMessage() {} -func (*SdkStoragePoolResizeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{152} +func (m *SdkCloudBackupDeleteAllResponse) Reset() { *m = SdkCloudBackupDeleteAllResponse{} } +func (m *SdkCloudBackupDeleteAllResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupDeleteAllResponse) ProtoMessage() {} +func (*SdkCloudBackupDeleteAllResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{229} } -func (m *SdkStoragePoolResizeResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkStoragePoolResizeResponse.Unmarshal(m, b) +func (m *SdkCloudBackupDeleteAllResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupDeleteAllResponse.Unmarshal(m, b) } -func (m *SdkStoragePoolResizeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkStoragePoolResizeResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupDeleteAllResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupDeleteAllResponse.Marshal(b, m, deterministic) } -func (dst *SdkStoragePoolResizeResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkStoragePoolResizeResponse.Merge(dst, src) +func (dst *SdkCloudBackupDeleteAllResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupDeleteAllResponse.Merge(dst, src) } -func (m *SdkStoragePoolResizeResponse) XXX_Size() int { - return xxx_messageInfo_SdkStoragePoolResizeResponse.Size(m) +func (m *SdkCloudBackupDeleteAllResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupDeleteAllResponse.Size(m) } -func (m *SdkStoragePoolResizeResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkStoragePoolResizeResponse.DiscardUnknown(m) +func (m *SdkCloudBackupDeleteAllResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupDeleteAllResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkStoragePoolResizeResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupDeleteAllResponse proto.InternalMessageInfo -// Defines a response when inspecting a node -type SdkNodeInspectResponse struct { - // Node information - Node *StorageNode `protobuf:"bytes,1,opt,name=node" json:"node,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to list the backups stored by a cloud provider. +// The following combinations can be used to get cloud backup information: +// +// * For a specific volume in current cluster: Set `src_volume_id` to your desired volume id +// and do not provide `cluster_id` and `all`. +// * For a specific volume in a specific cluster: Set `src_volume_id` to your desired volume id +// and specify `cluster_id`. +// * For a specific volume in all clusters: Set `src_volume_id` to your desired volume id +// and set `all` to true, do not provide `cluster_id`. +// * For all volumes in current cluster: do not provide `cluster_id`, `volume_id` and `all`. +// * For all volumes in a specific cluster: Set `cluster_id` to your desired cluster id +// and do not provide `volume_id` and `all`. +// * For all volumes in all clusters: Set `all` to true do not provide `volume_id` and `cluster_id`. +type SdkCloudBackupEnumerateWithFiltersRequest struct { + // (optional) Source id of the volume for the request. + SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` + // (optional) Cluster id specifies the cluster for the request + ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` + // Credential id is the credential for cloud to be used for the request + CredentialId string `protobuf:"bytes,3,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + // (optional) All indicates if the request should show cloud backups for all clusters or the current cluster. + All bool `protobuf:"varint,4,opt,name=all" json:"all,omitempty"` + // (optional) enumerates backups that have status specified by this type + StatusFilter SdkCloudBackupStatusType `protobuf:"varint,5,opt,name=status_filter,json=statusFilter,enum=openstorage.api.SdkCloudBackupStatusType" json:"status_filter,omitempty"` + // (optional) Enumerates backups that have tags of this type + MetadataFilter map[string]string `protobuf:"bytes,6,rep,name=metadata_filter,json=metadataFilter" json:"metadata_filter,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // (optional) if caller wished to limit number of backups returned by enumerate + MaxBackups uint64 `protobuf:"varint,7,opt,name=max_backups,json=maxBackups" json:"max_backups,omitempty"` + // Returned in the enumerate response if not all of the backups could be returned in the + // response. + ContinuationToken string `protobuf:"bytes,8,opt,name=continuation_token,json=continuationToken" json:"continuation_token,omitempty"` + // If one wants to enumerate known backup, set this field to the backup ID + // naming format :clusteruuidORbicketname/srcVolId-snapId(-incr) + CloudBackupId string `protobuf:"bytes,9,opt,name=cloud_backup_id,json=cloudBackupId" json:"cloud_backup_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkNodeInspectResponse) Reset() { *m = SdkNodeInspectResponse{} } -func (m *SdkNodeInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkNodeInspectResponse) ProtoMessage() {} -func (*SdkNodeInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{153} +func (m *SdkCloudBackupEnumerateWithFiltersRequest) Reset() { + *m = SdkCloudBackupEnumerateWithFiltersRequest{} } -func (m *SdkNodeInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkNodeInspectResponse.Unmarshal(m, b) +func (m *SdkCloudBackupEnumerateWithFiltersRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupEnumerateWithFiltersRequest) ProtoMessage() {} +func (*SdkCloudBackupEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{230} } -func (m *SdkNodeInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkNodeInspectResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.Unmarshal(m, b) } -func (dst *SdkNodeInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkNodeInspectResponse.Merge(dst, src) +func (m *SdkCloudBackupEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.Marshal(b, m, deterministic) } -func (m *SdkNodeInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkNodeInspectResponse.Size(m) +func (dst *SdkCloudBackupEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.Merge(dst, src) } -func (m *SdkNodeInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkNodeInspectResponse.DiscardUnknown(m) +func (m *SdkCloudBackupEnumerateWithFiltersRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.Size(m) +} +func (m *SdkCloudBackupEnumerateWithFiltersRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkNodeInspectResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest proto.InternalMessageInfo -func (m *SdkNodeInspectResponse) GetNode() *StorageNode { +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetSrcVolumeId() string { if m != nil { - return m.Node + return m.SrcVolumeId } - return nil + return "" } -// Empty request -type SdkNodeInspectCurrentRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetClusterId() string { + if m != nil { + return m.ClusterId + } + return "" } -func (m *SdkNodeInspectCurrentRequest) Reset() { *m = SdkNodeInspectCurrentRequest{} } -func (m *SdkNodeInspectCurrentRequest) String() string { return proto.CompactTextString(m) } -func (*SdkNodeInspectCurrentRequest) ProtoMessage() {} -func (*SdkNodeInspectCurrentRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{154} -} -func (m *SdkNodeInspectCurrentRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkNodeInspectCurrentRequest.Unmarshal(m, b) -} -func (m *SdkNodeInspectCurrentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkNodeInspectCurrentRequest.Marshal(b, m, deterministic) -} -func (dst *SdkNodeInspectCurrentRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkNodeInspectCurrentRequest.Merge(dst, src) -} -func (m *SdkNodeInspectCurrentRequest) XXX_Size() int { - return xxx_messageInfo_SdkNodeInspectCurrentRequest.Size(m) -} -func (m *SdkNodeInspectCurrentRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkNodeInspectCurrentRequest.DiscardUnknown(m) +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetCredentialId() string { + if m != nil { + return m.CredentialId + } + return "" } -var xxx_messageInfo_SdkNodeInspectCurrentRequest proto.InternalMessageInfo - -// Defines a response when inspecting a node -type SdkNodeInspectCurrentResponse struct { - // Node information - Node *StorageNode `protobuf:"bytes,1,opt,name=node" json:"node,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetAll() bool { + if m != nil { + return m.All + } + return false } -func (m *SdkNodeInspectCurrentResponse) Reset() { *m = SdkNodeInspectCurrentResponse{} } -func (m *SdkNodeInspectCurrentResponse) String() string { return proto.CompactTextString(m) } -func (*SdkNodeInspectCurrentResponse) ProtoMessage() {} -func (*SdkNodeInspectCurrentResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{155} -} -func (m *SdkNodeInspectCurrentResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkNodeInspectCurrentResponse.Unmarshal(m, b) -} -func (m *SdkNodeInspectCurrentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkNodeInspectCurrentResponse.Marshal(b, m, deterministic) -} -func (dst *SdkNodeInspectCurrentResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkNodeInspectCurrentResponse.Merge(dst, src) +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetStatusFilter() SdkCloudBackupStatusType { + if m != nil { + return m.StatusFilter + } + return SdkCloudBackupStatusType_SdkCloudBackupStatusTypeUnknown } -func (m *SdkNodeInspectCurrentResponse) XXX_Size() int { - return xxx_messageInfo_SdkNodeInspectCurrentResponse.Size(m) + +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetMetadataFilter() map[string]string { + if m != nil { + return m.MetadataFilter + } + return nil } -func (m *SdkNodeInspectCurrentResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkNodeInspectCurrentResponse.DiscardUnknown(m) + +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetMaxBackups() uint64 { + if m != nil { + return m.MaxBackups + } + return 0 } -var xxx_messageInfo_SdkNodeInspectCurrentResponse proto.InternalMessageInfo +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetContinuationToken() string { + if m != nil { + return m.ContinuationToken + } + return "" +} -func (m *SdkNodeInspectCurrentResponse) GetNode() *StorageNode { +func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetCloudBackupId() string { if m != nil { - return m.Node + return m.CloudBackupId } - return nil + return "" } -// Empty request -type SdkNodeEnumerateRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// SdkCloudBackupInfo has information about a backup stored by a cloud provider +type SdkCloudBackupInfo struct { + // This is the id as represented by the cloud provider + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Source volumeID of the backup + SrcVolumeId string `protobuf:"bytes,2,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` + // Name of the sourceVolume of the backup + SrcVolumeName string `protobuf:"bytes,3,opt,name=src_volume_name,json=srcVolumeName" json:"src_volume_name,omitempty"` + // Timestamp is the timestamp at which the source volume + // was backed up to cloud + Timestamp *timestamp.Timestamp `protobuf:"bytes,4,opt,name=timestamp" json:"timestamp,omitempty"` + // Metadata associated with the backup + Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // Status indicates the status of the backup + Status SdkCloudBackupStatusType `protobuf:"varint,6,opt,name=status,enum=openstorage.api.SdkCloudBackupStatusType" json:"status,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkNodeEnumerateRequest) Reset() { *m = SdkNodeEnumerateRequest{} } -func (m *SdkNodeEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkNodeEnumerateRequest) ProtoMessage() {} -func (*SdkNodeEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{156} +func (m *SdkCloudBackupInfo) Reset() { *m = SdkCloudBackupInfo{} } +func (m *SdkCloudBackupInfo) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupInfo) ProtoMessage() {} +func (*SdkCloudBackupInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{231} } -func (m *SdkNodeEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkNodeEnumerateRequest.Unmarshal(m, b) +func (m *SdkCloudBackupInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupInfo.Unmarshal(m, b) } -func (m *SdkNodeEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkNodeEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupInfo.Marshal(b, m, deterministic) } -func (dst *SdkNodeEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkNodeEnumerateRequest.Merge(dst, src) +func (dst *SdkCloudBackupInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupInfo.Merge(dst, src) } -func (m *SdkNodeEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkNodeEnumerateRequest.Size(m) +func (m *SdkCloudBackupInfo) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupInfo.Size(m) } -func (m *SdkNodeEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkNodeEnumerateRequest.DiscardUnknown(m) +func (m *SdkCloudBackupInfo) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupInfo.DiscardUnknown(m) } -var xxx_messageInfo_SdkNodeEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupInfo proto.InternalMessageInfo -// Defines a response with a list of node ids -type SdkNodeEnumerateResponse struct { - // List of all the node ids in the cluster - NodeIds []string `protobuf:"bytes,1,rep,name=node_ids,json=nodeIds" json:"node_ids,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupInfo) GetId() string { + if m != nil { + return m.Id + } + return "" } -func (m *SdkNodeEnumerateResponse) Reset() { *m = SdkNodeEnumerateResponse{} } -func (m *SdkNodeEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkNodeEnumerateResponse) ProtoMessage() {} -func (*SdkNodeEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{157} -} -func (m *SdkNodeEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkNodeEnumerateResponse.Unmarshal(m, b) -} -func (m *SdkNodeEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkNodeEnumerateResponse.Marshal(b, m, deterministic) -} -func (dst *SdkNodeEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkNodeEnumerateResponse.Merge(dst, src) -} -func (m *SdkNodeEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkNodeEnumerateResponse.Size(m) +func (m *SdkCloudBackupInfo) GetSrcVolumeId() string { + if m != nil { + return m.SrcVolumeId + } + return "" } -func (m *SdkNodeEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkNodeEnumerateResponse.DiscardUnknown(m) + +func (m *SdkCloudBackupInfo) GetSrcVolumeName() string { + if m != nil { + return m.SrcVolumeName + } + return "" } -var xxx_messageInfo_SdkNodeEnumerateResponse proto.InternalMessageInfo +func (m *SdkCloudBackupInfo) GetTimestamp() *timestamp.Timestamp { + if m != nil { + return m.Timestamp + } + return nil +} -func (m *SdkNodeEnumerateResponse) GetNodeIds() []string { +func (m *SdkCloudBackupInfo) GetMetadata() map[string]string { if m != nil { - return m.NodeIds + return m.Metadata } return nil } -// Defines a request to list nodes with given filter. Currently there are -// no filters and all the nodes will be returned. -type SdkNodeEnumerateWithFiltersRequest struct { +func (m *SdkCloudBackupInfo) GetStatus() SdkCloudBackupStatusType { + if m != nil { + return m.Status + } + return SdkCloudBackupStatusType_SdkCloudBackupStatusTypeUnknown +} + +// Defines a response which lists all the backups stored by a cloud provider +type SdkCloudBackupEnumerateWithFiltersResponse struct { + Backups []*SdkCloudBackupInfo `protobuf:"bytes,1,rep,name=backups" json:"backups,omitempty"` + // if this is not an empty string, callers must pass this to get next list of + // backups + ContinuationToken string `protobuf:"bytes,2,opt,name=continuation_token,json=continuationToken" json:"continuation_token,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkNodeEnumerateWithFiltersRequest) Reset() { *m = SdkNodeEnumerateWithFiltersRequest{} } -func (m *SdkNodeEnumerateWithFiltersRequest) String() string { return proto.CompactTextString(m) } -func (*SdkNodeEnumerateWithFiltersRequest) ProtoMessage() {} -func (*SdkNodeEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{158} -} -func (m *SdkNodeEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.Unmarshal(m, b) -} -func (m *SdkNodeEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.Marshal(b, m, deterministic) -} -func (dst *SdkNodeEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.Merge(dst, src) -} -func (m *SdkNodeEnumerateWithFiltersRequest) XXX_Size() int { - return xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.Size(m) -} -func (m *SdkNodeEnumerateWithFiltersRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest.DiscardUnknown(m) +func (m *SdkCloudBackupEnumerateWithFiltersResponse) Reset() { + *m = SdkCloudBackupEnumerateWithFiltersResponse{} } - -var xxx_messageInfo_SdkNodeEnumerateWithFiltersRequest proto.InternalMessageInfo - -// Defines a response with a list of nodes -type SdkNodeEnumerateWithFiltersResponse struct { - // List of all the nodes in the cluster - Nodes []*StorageNode `protobuf:"bytes,1,rep,name=nodes" json:"nodes,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupEnumerateWithFiltersResponse) String() string { + return proto.CompactTextString(m) } - -func (m *SdkNodeEnumerateWithFiltersResponse) Reset() { *m = SdkNodeEnumerateWithFiltersResponse{} } -func (m *SdkNodeEnumerateWithFiltersResponse) String() string { return proto.CompactTextString(m) } -func (*SdkNodeEnumerateWithFiltersResponse) ProtoMessage() {} -func (*SdkNodeEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{159} +func (*SdkCloudBackupEnumerateWithFiltersResponse) ProtoMessage() {} +func (*SdkCloudBackupEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{232} } -func (m *SdkNodeEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.Unmarshal(m, b) +func (m *SdkCloudBackupEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.Unmarshal(m, b) } -func (m *SdkNodeEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.Marshal(b, m, deterministic) } -func (dst *SdkNodeEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.Merge(dst, src) +func (dst *SdkCloudBackupEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.Merge(dst, src) } -func (m *SdkNodeEnumerateWithFiltersResponse) XXX_Size() int { - return xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.Size(m) +func (m *SdkCloudBackupEnumerateWithFiltersResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.Size(m) } -func (m *SdkNodeEnumerateWithFiltersResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse.DiscardUnknown(m) +func (m *SdkCloudBackupEnumerateWithFiltersResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkNodeEnumerateWithFiltersResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse proto.InternalMessageInfo -func (m *SdkNodeEnumerateWithFiltersResponse) GetNodes() []*StorageNode { +func (m *SdkCloudBackupEnumerateWithFiltersResponse) GetBackups() []*SdkCloudBackupInfo { if m != nil { - return m.Nodes + return m.Backups } return nil } -// Defines a request to get information about an object store endpoint -type SdkObjectstoreInspectRequest struct { - // Id of the object store - ObjectstoreId string `protobuf:"bytes,1,opt,name=objectstore_id,json=objectstoreId" json:"objectstore_id,omitempty"` +func (m *SdkCloudBackupEnumerateWithFiltersResponse) GetContinuationToken() string { + if m != nil { + return m.ContinuationToken + } + return "" +} + +// SdkCloudBackupStatus defines the status of a backup stored by a cloud provider +type SdkCloudBackupStatus struct { + // This is the id as represented by the cloud provider + BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` + // OpType indicates if this is a backup or restore + Optype SdkCloudBackupOpType `protobuf:"varint,2,opt,name=optype,enum=openstorage.api.SdkCloudBackupOpType" json:"optype,omitempty"` + // State indicates if the op is currently active/done/failed + Status SdkCloudBackupStatusType `protobuf:"varint,3,opt,name=status,enum=openstorage.api.SdkCloudBackupStatusType" json:"status,omitempty"` + // BytesDone indicates total Bytes uploaded/downloaded + BytesDone uint64 `protobuf:"varint,4,opt,name=bytes_done,json=bytesDone" json:"bytes_done,omitempty"` + // StartTime indicates Op's start time + StartTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=start_time,json=startTime" json:"start_time,omitempty"` + // CompletedTime indicates Op's completed time + CompletedTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=completed_time,json=completedTime" json:"completed_time,omitempty"` + // NodeID is the ID of the node where this Op is active + NodeId string `protobuf:"bytes,7,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` + // SourceVolumeID is the the volume that is either being backed up to cloud + // or target volume to which a backup is being restored + SrcVolumeId string `protobuf:"bytes,8,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` + // Info currently indicates the failure cause for failed backup/restore + Info []string `protobuf:"bytes,9,rep,name=info" json:"info,omitempty"` + // CredentialId is the credential used for cloud with this backup/restore op + CredentialId string `protobuf:"bytes,10,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + // BytesTotal is the total number of bytes being transferred + BytesTotal uint64 `protobuf:"varint,11,opt,name=bytes_total,json=bytesTotal" json:"bytes_total,omitempty"` + // ETASeconds is the number of seconds for cloud backup completion + EtaSeconds int64 `protobuf:"varint,12,opt,name=eta_seconds,json=etaSeconds" json:"eta_seconds,omitempty"` + // string group_id volume's group id if this was group cloud backup + GroupId string `protobuf:"bytes,13,opt,name=group_id,json=groupId" json:"group_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkObjectstoreInspectRequest) Reset() { *m = SdkObjectstoreInspectRequest{} } -func (m *SdkObjectstoreInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkObjectstoreInspectRequest) ProtoMessage() {} -func (*SdkObjectstoreInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{160} +func (m *SdkCloudBackupStatus) Reset() { *m = SdkCloudBackupStatus{} } +func (m *SdkCloudBackupStatus) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupStatus) ProtoMessage() {} +func (*SdkCloudBackupStatus) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{233} } -func (m *SdkObjectstoreInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkObjectstoreInspectRequest.Unmarshal(m, b) +func (m *SdkCloudBackupStatus) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupStatus.Unmarshal(m, b) } -func (m *SdkObjectstoreInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkObjectstoreInspectRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupStatus.Marshal(b, m, deterministic) } -func (dst *SdkObjectstoreInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkObjectstoreInspectRequest.Merge(dst, src) +func (dst *SdkCloudBackupStatus) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupStatus.Merge(dst, src) } -func (m *SdkObjectstoreInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkObjectstoreInspectRequest.Size(m) +func (m *SdkCloudBackupStatus) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupStatus.Size(m) } -func (m *SdkObjectstoreInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkObjectstoreInspectRequest.DiscardUnknown(m) +func (m *SdkCloudBackupStatus) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupStatus.DiscardUnknown(m) } -var xxx_messageInfo_SdkObjectstoreInspectRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupStatus proto.InternalMessageInfo -func (m *SdkObjectstoreInspectRequest) GetObjectstoreId() string { +func (m *SdkCloudBackupStatus) GetBackupId() string { if m != nil { - return m.ObjectstoreId + return m.BackupId } return "" } -// Defines a response when inspecting an object store endpoint -type SdkObjectstoreInspectResponse struct { - // Contains information about the object store requested - ObjectstoreStatus *ObjectstoreInfo `protobuf:"bytes,1,opt,name=objectstore_status,json=objectstoreStatus" json:"objectstore_status,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupStatus) GetOptype() SdkCloudBackupOpType { + if m != nil { + return m.Optype + } + return SdkCloudBackupOpType_SdkCloudBackupOpTypeUnknown } -func (m *SdkObjectstoreInspectResponse) Reset() { *m = SdkObjectstoreInspectResponse{} } -func (m *SdkObjectstoreInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkObjectstoreInspectResponse) ProtoMessage() {} -func (*SdkObjectstoreInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{161} -} -func (m *SdkObjectstoreInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkObjectstoreInspectResponse.Unmarshal(m, b) -} -func (m *SdkObjectstoreInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkObjectstoreInspectResponse.Marshal(b, m, deterministic) -} -func (dst *SdkObjectstoreInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkObjectstoreInspectResponse.Merge(dst, src) -} -func (m *SdkObjectstoreInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkObjectstoreInspectResponse.Size(m) -} -func (m *SdkObjectstoreInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkObjectstoreInspectResponse.DiscardUnknown(m) +func (m *SdkCloudBackupStatus) GetStatus() SdkCloudBackupStatusType { + if m != nil { + return m.Status + } + return SdkCloudBackupStatusType_SdkCloudBackupStatusTypeUnknown } -var xxx_messageInfo_SdkObjectstoreInspectResponse proto.InternalMessageInfo - -func (m *SdkObjectstoreInspectResponse) GetObjectstoreStatus() *ObjectstoreInfo { +func (m *SdkCloudBackupStatus) GetBytesDone() uint64 { if m != nil { - return m.ObjectstoreStatus + return m.BytesDone } - return nil + return 0 } -// Defines a request to create an object store -type SdkObjectstoreCreateRequest struct { - // Volume on which objectstore will be running - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupStatus) GetStartTime() *timestamp.Timestamp { + if m != nil { + return m.StartTime + } + return nil } -func (m *SdkObjectstoreCreateRequest) Reset() { *m = SdkObjectstoreCreateRequest{} } -func (m *SdkObjectstoreCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkObjectstoreCreateRequest) ProtoMessage() {} -func (*SdkObjectstoreCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{162} -} -func (m *SdkObjectstoreCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkObjectstoreCreateRequest.Unmarshal(m, b) -} -func (m *SdkObjectstoreCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkObjectstoreCreateRequest.Marshal(b, m, deterministic) -} -func (dst *SdkObjectstoreCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkObjectstoreCreateRequest.Merge(dst, src) -} -func (m *SdkObjectstoreCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkObjectstoreCreateRequest.Size(m) -} -func (m *SdkObjectstoreCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkObjectstoreCreateRequest.DiscardUnknown(m) +func (m *SdkCloudBackupStatus) GetCompletedTime() *timestamp.Timestamp { + if m != nil { + return m.CompletedTime + } + return nil } -var xxx_messageInfo_SdkObjectstoreCreateRequest proto.InternalMessageInfo - -func (m *SdkObjectstoreCreateRequest) GetVolumeId() string { +func (m *SdkCloudBackupStatus) GetNodeId() string { if m != nil { - return m.VolumeId + return m.NodeId } return "" } -// Defines a response when an object store has been created for a -// specified volume -type SdkObjectstoreCreateResponse struct { - // Created objecstore status - ObjectstoreStatus *ObjectstoreInfo `protobuf:"bytes,1,opt,name=objectstore_status,json=objectstoreStatus" json:"objectstore_status,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupStatus) GetSrcVolumeId() string { + if m != nil { + return m.SrcVolumeId + } + return "" } -func (m *SdkObjectstoreCreateResponse) Reset() { *m = SdkObjectstoreCreateResponse{} } -func (m *SdkObjectstoreCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkObjectstoreCreateResponse) ProtoMessage() {} -func (*SdkObjectstoreCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{163} -} -func (m *SdkObjectstoreCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkObjectstoreCreateResponse.Unmarshal(m, b) -} -func (m *SdkObjectstoreCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkObjectstoreCreateResponse.Marshal(b, m, deterministic) -} -func (dst *SdkObjectstoreCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkObjectstoreCreateResponse.Merge(dst, src) +func (m *SdkCloudBackupStatus) GetInfo() []string { + if m != nil { + return m.Info + } + return nil } -func (m *SdkObjectstoreCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkObjectstoreCreateResponse.Size(m) + +func (m *SdkCloudBackupStatus) GetCredentialId() string { + if m != nil { + return m.CredentialId + } + return "" } -func (m *SdkObjectstoreCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkObjectstoreCreateResponse.DiscardUnknown(m) + +func (m *SdkCloudBackupStatus) GetBytesTotal() uint64 { + if m != nil { + return m.BytesTotal + } + return 0 } -var xxx_messageInfo_SdkObjectstoreCreateResponse proto.InternalMessageInfo +func (m *SdkCloudBackupStatus) GetEtaSeconds() int64 { + if m != nil { + return m.EtaSeconds + } + return 0 +} -func (m *SdkObjectstoreCreateResponse) GetObjectstoreStatus() *ObjectstoreInfo { +func (m *SdkCloudBackupStatus) GetGroupId() string { if m != nil { - return m.ObjectstoreStatus + return m.GroupId } - return nil + return "" } -// Defines a request to delete an object store service from a volume -type SdkObjectstoreDeleteRequest struct { - // Id of the object store to delete - ObjectstoreId string `protobuf:"bytes,1,opt,name=objectstore_id,json=objectstoreId" json:"objectstore_id,omitempty"` +// Defines a request to retreive the status of a backup or restore for a +// specified volume +type SdkCloudBackupStatusRequest struct { + // (optional) VolumeId is a value which is used to get information on the + // status of a backup for the specified volume. If no volume id and task_id + // is provided, then status for all volumes is returned. + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Local indicates if only those backups/restores that are + // active on current node must be returned + Local bool `protobuf:"varint,2,opt,name=local" json:"local,omitempty"` + // TaskId of the backup/restore task, if this is specified, + // volume_id is ignored. + TaskId string `protobuf:"bytes,3,opt,name=task_id,json=taskId" json:"task_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkObjectstoreDeleteRequest) Reset() { *m = SdkObjectstoreDeleteRequest{} } -func (m *SdkObjectstoreDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkObjectstoreDeleteRequest) ProtoMessage() {} -func (*SdkObjectstoreDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{164} +func (m *SdkCloudBackupStatusRequest) Reset() { *m = SdkCloudBackupStatusRequest{} } +func (m *SdkCloudBackupStatusRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupStatusRequest) ProtoMessage() {} +func (*SdkCloudBackupStatusRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{234} } -func (m *SdkObjectstoreDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkObjectstoreDeleteRequest.Unmarshal(m, b) +func (m *SdkCloudBackupStatusRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupStatusRequest.Unmarshal(m, b) } -func (m *SdkObjectstoreDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkObjectstoreDeleteRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupStatusRequest.Marshal(b, m, deterministic) } -func (dst *SdkObjectstoreDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkObjectstoreDeleteRequest.Merge(dst, src) +func (dst *SdkCloudBackupStatusRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupStatusRequest.Merge(dst, src) } -func (m *SdkObjectstoreDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkObjectstoreDeleteRequest.Size(m) +func (m *SdkCloudBackupStatusRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupStatusRequest.Size(m) } -func (m *SdkObjectstoreDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkObjectstoreDeleteRequest.DiscardUnknown(m) +func (m *SdkCloudBackupStatusRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupStatusRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkObjectstoreDeleteRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupStatusRequest proto.InternalMessageInfo -func (m *SdkObjectstoreDeleteRequest) GetObjectstoreId() string { +func (m *SdkCloudBackupStatusRequest) GetVolumeId() string { if m != nil { - return m.ObjectstoreId + return m.VolumeId } return "" } -// Empty response -type SdkObjectstoreDeleteResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupStatusRequest) GetLocal() bool { + if m != nil { + return m.Local + } + return false } -func (m *SdkObjectstoreDeleteResponse) Reset() { *m = SdkObjectstoreDeleteResponse{} } -func (m *SdkObjectstoreDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkObjectstoreDeleteResponse) ProtoMessage() {} -func (*SdkObjectstoreDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{165} +func (m *SdkCloudBackupStatusRequest) GetTaskId() string { + if m != nil { + return m.TaskId + } + return "" } -func (m *SdkObjectstoreDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkObjectstoreDeleteResponse.Unmarshal(m, b) + +// Defines a response containing the status of the backups for a specified volume +type SdkCloudBackupStatusResponse struct { + // Statuses is list of currently active/failed/done backup/restores where + // the key is the id of the task performing backup/restore. + Statuses map[string]*SdkCloudBackupStatus `protobuf:"bytes,1,rep,name=statuses" json:"statuses,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkObjectstoreDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkObjectstoreDeleteResponse.Marshal(b, m, deterministic) + +func (m *SdkCloudBackupStatusResponse) Reset() { *m = SdkCloudBackupStatusResponse{} } +func (m *SdkCloudBackupStatusResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupStatusResponse) ProtoMessage() {} +func (*SdkCloudBackupStatusResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{235} } -func (dst *SdkObjectstoreDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkObjectstoreDeleteResponse.Merge(dst, src) +func (m *SdkCloudBackupStatusResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupStatusResponse.Unmarshal(m, b) } -func (m *SdkObjectstoreDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkObjectstoreDeleteResponse.Size(m) +func (m *SdkCloudBackupStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupStatusResponse.Marshal(b, m, deterministic) } -func (m *SdkObjectstoreDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkObjectstoreDeleteResponse.DiscardUnknown(m) +func (dst *SdkCloudBackupStatusResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupStatusResponse.Merge(dst, src) +} +func (m *SdkCloudBackupStatusResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupStatusResponse.Size(m) +} +func (m *SdkCloudBackupStatusResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupStatusResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkObjectstoreDeleteResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupStatusResponse proto.InternalMessageInfo -// Defines a request to update an object store -type SdkObjectstoreUpdateRequest struct { - // Objectstore Id to update - ObjectstoreId string `protobuf:"bytes,1,opt,name=objectstore_id,json=objectstoreId" json:"objectstore_id,omitempty"` - // enable/disable objectstore - Enable bool `protobuf:"varint,2,opt,name=enable" json:"enable,omitempty"` +func (m *SdkCloudBackupStatusResponse) GetStatuses() map[string]*SdkCloudBackupStatus { + if m != nil { + return m.Statuses + } + return nil +} + +// Defines a request to get catalog of a backup stored by a cloud provider +type SdkCloudBackupCatalogRequest struct { + // Id of the backup + BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` + // Credential id describe the credentials for the cloud + CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkObjectstoreUpdateRequest) Reset() { *m = SdkObjectstoreUpdateRequest{} } -func (m *SdkObjectstoreUpdateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkObjectstoreUpdateRequest) ProtoMessage() {} -func (*SdkObjectstoreUpdateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{166} +func (m *SdkCloudBackupCatalogRequest) Reset() { *m = SdkCloudBackupCatalogRequest{} } +func (m *SdkCloudBackupCatalogRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupCatalogRequest) ProtoMessage() {} +func (*SdkCloudBackupCatalogRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{236} } -func (m *SdkObjectstoreUpdateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkObjectstoreUpdateRequest.Unmarshal(m, b) +func (m *SdkCloudBackupCatalogRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupCatalogRequest.Unmarshal(m, b) } -func (m *SdkObjectstoreUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkObjectstoreUpdateRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupCatalogRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupCatalogRequest.Marshal(b, m, deterministic) } -func (dst *SdkObjectstoreUpdateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkObjectstoreUpdateRequest.Merge(dst, src) +func (dst *SdkCloudBackupCatalogRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupCatalogRequest.Merge(dst, src) } -func (m *SdkObjectstoreUpdateRequest) XXX_Size() int { - return xxx_messageInfo_SdkObjectstoreUpdateRequest.Size(m) +func (m *SdkCloudBackupCatalogRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupCatalogRequest.Size(m) } -func (m *SdkObjectstoreUpdateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkObjectstoreUpdateRequest.DiscardUnknown(m) +func (m *SdkCloudBackupCatalogRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupCatalogRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkObjectstoreUpdateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupCatalogRequest proto.InternalMessageInfo -func (m *SdkObjectstoreUpdateRequest) GetObjectstoreId() string { +func (m *SdkCloudBackupCatalogRequest) GetBackupId() string { if m != nil { - return m.ObjectstoreId + return m.BackupId } return "" } -func (m *SdkObjectstoreUpdateRequest) GetEnable() bool { +func (m *SdkCloudBackupCatalogRequest) GetCredentialId() string { if m != nil { - return m.Enable + return m.CredentialId } - return false -} - -// Empty response -type SdkObjectstoreUpdateResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *SdkObjectstoreUpdateResponse) Reset() { *m = SdkObjectstoreUpdateResponse{} } -func (m *SdkObjectstoreUpdateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkObjectstoreUpdateResponse) ProtoMessage() {} -func (*SdkObjectstoreUpdateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{167} -} -func (m *SdkObjectstoreUpdateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkObjectstoreUpdateResponse.Unmarshal(m, b) -} -func (m *SdkObjectstoreUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkObjectstoreUpdateResponse.Marshal(b, m, deterministic) -} -func (dst *SdkObjectstoreUpdateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkObjectstoreUpdateResponse.Merge(dst, src) -} -func (m *SdkObjectstoreUpdateResponse) XXX_Size() int { - return xxx_messageInfo_SdkObjectstoreUpdateResponse.Size(m) -} -func (m *SdkObjectstoreUpdateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkObjectstoreUpdateResponse.DiscardUnknown(m) + return "" } -var xxx_messageInfo_SdkObjectstoreUpdateResponse proto.InternalMessageInfo - -// Defines a request to create a backup of a volume to the cloud -type SdkCloudBackupCreateRequest struct { - // VolumeID of the volume for which cloudbackup is requested - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Credential id refers to the cloud credentials needed to backup - CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - // Full indicates if full backup is desired even though incremental is possible - Full bool `protobuf:"varint,3,opt,name=full" json:"full,omitempty"` - // TaskId of the task performing this backup. This value can be used for - // idempotency. - TaskId string `protobuf:"bytes,4,opt,name=task_id,json=taskId" json:"task_id,omitempty"` - // Labels are list of key value pairs to tag the cloud backup. These labels - // are stored in the metadata associated with the backup. - Labels map[string]string `protobuf:"bytes,5,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // FullBackupFrequency indicates number of incremental backup after whcih - // a fullbackup must be created. This is to override the default value for - // manual/user triggerred backups and not applicable for scheduled backups - // Value of 0 retains the default behavior. - FullBackupFrequency uint32 `protobuf:"varint,6,opt,name=full_backup_frequency,json=fullBackupFrequency" json:"full_backup_frequency,omitempty"` +// Defines a response containing the contents of a backup stored by a cloud provider +type SdkCloudBackupCatalogResponse struct { + // Contents is listing of backup contents + Contents []string `protobuf:"bytes,1,rep,name=contents" json:"contents,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupCreateRequest) Reset() { *m = SdkCloudBackupCreateRequest{} } -func (m *SdkCloudBackupCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupCreateRequest) ProtoMessage() {} -func (*SdkCloudBackupCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{168} +func (m *SdkCloudBackupCatalogResponse) Reset() { *m = SdkCloudBackupCatalogResponse{} } +func (m *SdkCloudBackupCatalogResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupCatalogResponse) ProtoMessage() {} +func (*SdkCloudBackupCatalogResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{237} } -func (m *SdkCloudBackupCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupCreateRequest.Unmarshal(m, b) +func (m *SdkCloudBackupCatalogResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupCatalogResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupCreateRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupCatalogResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupCatalogResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupCreateRequest.Merge(dst, src) +func (dst *SdkCloudBackupCatalogResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupCatalogResponse.Merge(dst, src) } -func (m *SdkCloudBackupCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupCreateRequest.Size(m) +func (m *SdkCloudBackupCatalogResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupCatalogResponse.Size(m) } -func (m *SdkCloudBackupCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupCreateRequest.DiscardUnknown(m) +func (m *SdkCloudBackupCatalogResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupCatalogResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupCatalogResponse proto.InternalMessageInfo -func (m *SdkCloudBackupCreateRequest) GetVolumeId() string { +func (m *SdkCloudBackupCatalogResponse) GetContents() []string { if m != nil { - return m.VolumeId + return m.Contents } - return "" + return nil } -func (m *SdkCloudBackupCreateRequest) GetCredentialId() string { - if m != nil { - return m.CredentialId - } - return "" +// SdkCloudBackupHistoryItem contains information about a backup for a +// specific volume +type SdkCloudBackupHistoryItem struct { + // SrcVolumeID is volume ID which was backedup + SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` + // TimeStamp is the time at which either backup completed/failed + Timestamp *timestamp.Timestamp `protobuf:"bytes,2,opt,name=timestamp" json:"timestamp,omitempty"` + // Status indicates whether backup was completed/failed + Status SdkCloudBackupStatusType `protobuf:"varint,3,opt,name=status,enum=openstorage.api.SdkCloudBackupStatusType" json:"status,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupCreateRequest) GetFull() bool { - if m != nil { - return m.Full - } - return false +func (m *SdkCloudBackupHistoryItem) Reset() { *m = SdkCloudBackupHistoryItem{} } +func (m *SdkCloudBackupHistoryItem) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupHistoryItem) ProtoMessage() {} +func (*SdkCloudBackupHistoryItem) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{238} +} +func (m *SdkCloudBackupHistoryItem) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupHistoryItem.Unmarshal(m, b) +} +func (m *SdkCloudBackupHistoryItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupHistoryItem.Marshal(b, m, deterministic) +} +func (dst *SdkCloudBackupHistoryItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupHistoryItem.Merge(dst, src) +} +func (m *SdkCloudBackupHistoryItem) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupHistoryItem.Size(m) +} +func (m *SdkCloudBackupHistoryItem) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupHistoryItem.DiscardUnknown(m) } -func (m *SdkCloudBackupCreateRequest) GetTaskId() string { +var xxx_messageInfo_SdkCloudBackupHistoryItem proto.InternalMessageInfo + +func (m *SdkCloudBackupHistoryItem) GetSrcVolumeId() string { if m != nil { - return m.TaskId + return m.SrcVolumeId } return "" } -func (m *SdkCloudBackupCreateRequest) GetLabels() map[string]string { +func (m *SdkCloudBackupHistoryItem) GetTimestamp() *timestamp.Timestamp { if m != nil { - return m.Labels + return m.Timestamp } return nil } -func (m *SdkCloudBackupCreateRequest) GetFullBackupFrequency() uint32 { +func (m *SdkCloudBackupHistoryItem) GetStatus() SdkCloudBackupStatusType { if m != nil { - return m.FullBackupFrequency + return m.Status } - return 0 + return SdkCloudBackupStatusType_SdkCloudBackupStatusTypeUnknown } -// Empty response -type SdkCloudBackupCreateResponse struct { - // TaskId of the task performing the backup - TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` +// Defines a request to retreive the history of the backups for +// a specific volume to a cloud provider +type SdkCloudBackupHistoryRequest struct { + // This optional value defines which history of backups is being + // requested. If not provided, it will return the history for all volumes. + SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupCreateResponse) Reset() { *m = SdkCloudBackupCreateResponse{} } -func (m *SdkCloudBackupCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupCreateResponse) ProtoMessage() {} -func (*SdkCloudBackupCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{169} +func (m *SdkCloudBackupHistoryRequest) Reset() { *m = SdkCloudBackupHistoryRequest{} } +func (m *SdkCloudBackupHistoryRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupHistoryRequest) ProtoMessage() {} +func (*SdkCloudBackupHistoryRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{239} } -func (m *SdkCloudBackupCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupCreateResponse.Unmarshal(m, b) +func (m *SdkCloudBackupHistoryRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupHistoryRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupCreateResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupHistoryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupHistoryRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupCreateResponse.Merge(dst, src) +func (dst *SdkCloudBackupHistoryRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupHistoryRequest.Merge(dst, src) } -func (m *SdkCloudBackupCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupCreateResponse.Size(m) +func (m *SdkCloudBackupHistoryRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupHistoryRequest.Size(m) } -func (m *SdkCloudBackupCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupCreateResponse.DiscardUnknown(m) +func (m *SdkCloudBackupHistoryRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupHistoryRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupHistoryRequest proto.InternalMessageInfo -func (m *SdkCloudBackupCreateResponse) GetTaskId() string { +func (m *SdkCloudBackupHistoryRequest) GetSrcVolumeId() string { if m != nil { - return m.TaskId + return m.SrcVolumeId } return "" } -// Defines a request to create a group backup of a group to the cloud -type SdkCloudBackupGroupCreateRequest struct { - // GroupID of the volume for which cloudbackup is requested - GroupId string `protobuf:"bytes,1,opt,name=group_id,json=groupId" json:"group_id,omitempty"` - // VolumeIds are a list of volume IDs to use for the backup request. - // If multiple of GroupID, Labels or VolumeIDs are specified, volumes matching - // all of them are backed uup - VolumeIds []string `protobuf:"bytes,2,rep,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"` - // Credential id refers to the cloud credentials needed to backup - CredentialId string `protobuf:"bytes,3,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - // Full indicates if full backup is desired even though incremental is possible - Full bool `protobuf:"varint,4,opt,name=full" json:"full,omitempty"` - // Labels are list of key value pairs to tag the cloud backup. These labels - // are stored in the metadata associated with the backup. - Labels map[string]string `protobuf:"bytes,5,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response containing a list of history of backups to a cloud provider +type SdkCloudBackupHistoryResponse struct { + // HistoryList is list of past backups on this volume + HistoryList []*SdkCloudBackupHistoryItem `protobuf:"bytes,1,rep,name=history_list,json=historyList" json:"history_list,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupGroupCreateRequest) Reset() { *m = SdkCloudBackupGroupCreateRequest{} } -func (m *SdkCloudBackupGroupCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupGroupCreateRequest) ProtoMessage() {} -func (*SdkCloudBackupGroupCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{170} -} -func (m *SdkCloudBackupGroupCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupGroupCreateRequest.Unmarshal(m, b) -} -func (m *SdkCloudBackupGroupCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupGroupCreateRequest.Marshal(b, m, deterministic) -} -func (dst *SdkCloudBackupGroupCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupGroupCreateRequest.Merge(dst, src) +func (m *SdkCloudBackupHistoryResponse) Reset() { *m = SdkCloudBackupHistoryResponse{} } +func (m *SdkCloudBackupHistoryResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupHistoryResponse) ProtoMessage() {} +func (*SdkCloudBackupHistoryResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{240} } -func (m *SdkCloudBackupGroupCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupGroupCreateRequest.Size(m) +func (m *SdkCloudBackupHistoryResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupHistoryResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupGroupCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupGroupCreateRequest.DiscardUnknown(m) +func (m *SdkCloudBackupHistoryResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupHistoryResponse.Marshal(b, m, deterministic) } - -var xxx_messageInfo_SdkCloudBackupGroupCreateRequest proto.InternalMessageInfo - -func (m *SdkCloudBackupGroupCreateRequest) GetGroupId() string { - if m != nil { - return m.GroupId - } - return "" +func (dst *SdkCloudBackupHistoryResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupHistoryResponse.Merge(dst, src) } - -func (m *SdkCloudBackupGroupCreateRequest) GetVolumeIds() []string { - if m != nil { - return m.VolumeIds - } - return nil +func (m *SdkCloudBackupHistoryResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupHistoryResponse.Size(m) } - -func (m *SdkCloudBackupGroupCreateRequest) GetCredentialId() string { - if m != nil { - return m.CredentialId - } - return "" +func (m *SdkCloudBackupHistoryResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupHistoryResponse.DiscardUnknown(m) } -func (m *SdkCloudBackupGroupCreateRequest) GetFull() bool { - if m != nil { - return m.Full - } - return false -} +var xxx_messageInfo_SdkCloudBackupHistoryResponse proto.InternalMessageInfo -func (m *SdkCloudBackupGroupCreateRequest) GetLabels() map[string]string { +func (m *SdkCloudBackupHistoryResponse) GetHistoryList() []*SdkCloudBackupHistoryItem { if m != nil { - return m.Labels + return m.HistoryList } return nil } -// Empty response -type SdkCloudBackupGroupCreateResponse struct { - // ID for this group of backups - GroupCloudBackupId string `protobuf:"bytes,1,opt,name=group_cloud_backup_id,json=groupCloudBackupId" json:"group_cloud_backup_id,omitempty"` - // TaskIds of the tasks performing the group backup - TaskIds []string `protobuf:"bytes,2,rep,name=task_ids,json=taskIds" json:"task_ids,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to change the state of a backup or restore to or +// from a cloud provider +type SdkCloudBackupStateChangeRequest struct { + // Describes the backup/restore task + // state change is being requested + TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` + // The desired state of the operation + RequestedState SdkCloudBackupRequestedState `protobuf:"varint,2,opt,name=requested_state,json=requestedState,enum=openstorage.api.SdkCloudBackupRequestedState" json:"requested_state,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupGroupCreateResponse) Reset() { *m = SdkCloudBackupGroupCreateResponse{} } -func (m *SdkCloudBackupGroupCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupGroupCreateResponse) ProtoMessage() {} -func (*SdkCloudBackupGroupCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{171} +func (m *SdkCloudBackupStateChangeRequest) Reset() { *m = SdkCloudBackupStateChangeRequest{} } +func (m *SdkCloudBackupStateChangeRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupStateChangeRequest) ProtoMessage() {} +func (*SdkCloudBackupStateChangeRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{241} } -func (m *SdkCloudBackupGroupCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupGroupCreateResponse.Unmarshal(m, b) +func (m *SdkCloudBackupStateChangeRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupStateChangeRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupGroupCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupGroupCreateResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupStateChangeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupStateChangeRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupGroupCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupGroupCreateResponse.Merge(dst, src) +func (dst *SdkCloudBackupStateChangeRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupStateChangeRequest.Merge(dst, src) } -func (m *SdkCloudBackupGroupCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupGroupCreateResponse.Size(m) +func (m *SdkCloudBackupStateChangeRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupStateChangeRequest.Size(m) } -func (m *SdkCloudBackupGroupCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupGroupCreateResponse.DiscardUnknown(m) +func (m *SdkCloudBackupStateChangeRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupStateChangeRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupGroupCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupStateChangeRequest proto.InternalMessageInfo -func (m *SdkCloudBackupGroupCreateResponse) GetGroupCloudBackupId() string { +func (m *SdkCloudBackupStateChangeRequest) GetTaskId() string { if m != nil { - return m.GroupCloudBackupId + return m.TaskId } return "" } -func (m *SdkCloudBackupGroupCreateResponse) GetTaskIds() []string { +func (m *SdkCloudBackupStateChangeRequest) GetRequestedState() SdkCloudBackupRequestedState { if m != nil { - return m.TaskIds + return m.RequestedState } - return nil + return SdkCloudBackupRequestedState_SdkCloudBackupRequestedStateUnknown } -// Defines a request to restore a volume from an existing backup stored by -// a cloud provider -type SdkCloudBackupRestoreRequest struct { - // Backup ID being restored - BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` - // Optional volume Name of the new volume to be created - // in the cluster for restoring the cloudbackup - RestoreVolumeName string `protobuf:"bytes,2,opt,name=restore_volume_name,json=restoreVolumeName" json:"restore_volume_name,omitempty"` - // The credential to be used for restore operation - CredentialId string `protobuf:"bytes,3,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - // Optional for provisioning restore - // volume (ResoreVolumeName should not be specified) - NodeId string `protobuf:"bytes,4,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` - // TaskId of the task performing this restore - TaskId string `protobuf:"bytes,5,opt,name=task_id,json=taskId" json:"task_id,omitempty"` +// Empty response +type SdkCloudBackupStateChangeResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupRestoreRequest) Reset() { *m = SdkCloudBackupRestoreRequest{} } -func (m *SdkCloudBackupRestoreRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupRestoreRequest) ProtoMessage() {} -func (*SdkCloudBackupRestoreRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{172} +func (m *SdkCloudBackupStateChangeResponse) Reset() { *m = SdkCloudBackupStateChangeResponse{} } +func (m *SdkCloudBackupStateChangeResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupStateChangeResponse) ProtoMessage() {} +func (*SdkCloudBackupStateChangeResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{242} } -func (m *SdkCloudBackupRestoreRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupRestoreRequest.Unmarshal(m, b) +func (m *SdkCloudBackupStateChangeResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupStateChangeResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupRestoreRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupRestoreRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupStateChangeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupStateChangeResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupRestoreRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupRestoreRequest.Merge(dst, src) +func (dst *SdkCloudBackupStateChangeResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupStateChangeResponse.Merge(dst, src) } -func (m *SdkCloudBackupRestoreRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupRestoreRequest.Size(m) +func (m *SdkCloudBackupStateChangeResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupStateChangeResponse.Size(m) } -func (m *SdkCloudBackupRestoreRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupRestoreRequest.DiscardUnknown(m) +func (m *SdkCloudBackupStateChangeResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupStateChangeResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupRestoreRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupStateChangeResponse proto.InternalMessageInfo -func (m *SdkCloudBackupRestoreRequest) GetBackupId() string { - if m != nil { - return m.BackupId - } - return "" +// SdkCloudBackupScheduleInfo describes a schedule for volume backups to +// a cloud provider +type SdkCloudBackupScheduleInfo struct { + // The schedule's source volume + SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` + // The cloud credential used with this schedule + CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + // Schedules are the frequencies of the backup + Schedules []*SdkSchedulePolicyInterval `protobuf:"bytes,3,rep,name=schedules" json:"schedules,omitempty"` + // MaxBackups indicates when to force full backup to cloud. If RetentionDays + // is not specified or is 0 (older scheme), this is also the maximum number + // of scheduled backups retained in the cloud. Older backups are deleted + MaxBackups uint64 `protobuf:"varint,4,opt,name=max_backups,json=maxBackups" json:"max_backups,omitempty"` + // Full indicates if scheduled backups should always be full and never incremental. + Full bool `protobuf:"varint,5,opt,name=full" json:"full,omitempty"` + // Number of days that Scheduled CloudBackups will be kept after which they + // are deleted + RetentionDays uint32 `protobuf:"varint,6,opt,name=retention_days,json=retentionDays" json:"retention_days,omitempty"` + // GroupId indicates the group of volumes for which this schedule applies + GroupId string `protobuf:"bytes,7,opt,name=group_id,json=groupId" json:"group_id,omitempty"` + // labels indicates group of volumes with similar labels for which this schedule applies + Labels map[string]string `protobuf:"bytes,8,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupRestoreRequest) GetRestoreVolumeName() string { +func (m *SdkCloudBackupScheduleInfo) Reset() { *m = SdkCloudBackupScheduleInfo{} } +func (m *SdkCloudBackupScheduleInfo) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupScheduleInfo) ProtoMessage() {} +func (*SdkCloudBackupScheduleInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{243} +} +func (m *SdkCloudBackupScheduleInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupScheduleInfo.Unmarshal(m, b) +} +func (m *SdkCloudBackupScheduleInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupScheduleInfo.Marshal(b, m, deterministic) +} +func (dst *SdkCloudBackupScheduleInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupScheduleInfo.Merge(dst, src) +} +func (m *SdkCloudBackupScheduleInfo) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupScheduleInfo.Size(m) +} +func (m *SdkCloudBackupScheduleInfo) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupScheduleInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkCloudBackupScheduleInfo proto.InternalMessageInfo + +func (m *SdkCloudBackupScheduleInfo) GetSrcVolumeId() string { if m != nil { - return m.RestoreVolumeName + return m.SrcVolumeId } return "" } -func (m *SdkCloudBackupRestoreRequest) GetCredentialId() string { +func (m *SdkCloudBackupScheduleInfo) GetCredentialId() string { if m != nil { return m.CredentialId } return "" } -func (m *SdkCloudBackupRestoreRequest) GetNodeId() string { +func (m *SdkCloudBackupScheduleInfo) GetSchedules() []*SdkSchedulePolicyInterval { if m != nil { - return m.NodeId + return m.Schedules } - return "" + return nil } -func (m *SdkCloudBackupRestoreRequest) GetTaskId() string { +func (m *SdkCloudBackupScheduleInfo) GetMaxBackups() uint64 { if m != nil { - return m.TaskId + return m.MaxBackups } - return "" + return 0 } -// Defines a response when restoring a volume from a backup stored by -// a cloud provider -type SdkCloudBackupRestoreResponse struct { - // VolumeID to which the backup is being restored - RestoreVolumeId string `protobuf:"bytes,1,opt,name=restore_volume_id,json=restoreVolumeId" json:"restore_volume_id,omitempty"` - // TaskId of the task performing the restore - TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId" json:"task_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupScheduleInfo) GetFull() bool { + if m != nil { + return m.Full + } + return false } -func (m *SdkCloudBackupRestoreResponse) Reset() { *m = SdkCloudBackupRestoreResponse{} } -func (m *SdkCloudBackupRestoreResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupRestoreResponse) ProtoMessage() {} -func (*SdkCloudBackupRestoreResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{173} -} -func (m *SdkCloudBackupRestoreResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupRestoreResponse.Unmarshal(m, b) -} -func (m *SdkCloudBackupRestoreResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupRestoreResponse.Marshal(b, m, deterministic) -} -func (dst *SdkCloudBackupRestoreResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupRestoreResponse.Merge(dst, src) -} -func (m *SdkCloudBackupRestoreResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupRestoreResponse.Size(m) -} -func (m *SdkCloudBackupRestoreResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupRestoreResponse.DiscardUnknown(m) +func (m *SdkCloudBackupScheduleInfo) GetRetentionDays() uint32 { + if m != nil { + return m.RetentionDays + } + return 0 } -var xxx_messageInfo_SdkCloudBackupRestoreResponse proto.InternalMessageInfo - -func (m *SdkCloudBackupRestoreResponse) GetRestoreVolumeId() string { +func (m *SdkCloudBackupScheduleInfo) GetGroupId() string { if m != nil { - return m.RestoreVolumeId + return m.GroupId } return "" } -func (m *SdkCloudBackupRestoreResponse) GetTaskId() string { +func (m *SdkCloudBackupScheduleInfo) GetLabels() map[string]string { if m != nil { - return m.TaskId + return m.Labels } - return "" + return nil } -// Defines a request to delete a single backup stored by a cloud provider -type SdkCloudBackupDeleteRequest struct { - // ID is the ID of the cloud backup - BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` - // Credential id is the credential for cloud to be used for the request - CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - // Force Delete cloudbackup even if there are dependencies. This may be - // needed if the backup is an incremental backup and subsequent backups - // depend on this backup specified by `backup_id`. - Force bool `protobuf:"varint,3,opt,name=force" json:"force,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to create a schedule for volume backups to a +// cloud provider +type SdkCloudBackupSchedCreateRequest struct { + // Cloud Backup Schedule info + CloudSchedInfo *SdkCloudBackupScheduleInfo `protobuf:"bytes,1,opt,name=cloud_sched_info,json=cloudSchedInfo" json:"cloud_sched_info,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupDeleteRequest) Reset() { *m = SdkCloudBackupDeleteRequest{} } -func (m *SdkCloudBackupDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupDeleteRequest) ProtoMessage() {} -func (*SdkCloudBackupDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{174} -} -func (m *SdkCloudBackupDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupDeleteRequest.Unmarshal(m, b) +func (m *SdkCloudBackupSchedCreateRequest) Reset() { *m = SdkCloudBackupSchedCreateRequest{} } +func (m *SdkCloudBackupSchedCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSchedCreateRequest) ProtoMessage() {} +func (*SdkCloudBackupSchedCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{244} } -func (m *SdkCloudBackupDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupDeleteRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupSchedCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSchedCreateRequest.Unmarshal(m, b) } -func (dst *SdkCloudBackupDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupDeleteRequest.Merge(dst, src) +func (m *SdkCloudBackupSchedCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSchedCreateRequest.Marshal(b, m, deterministic) } -func (m *SdkCloudBackupDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupDeleteRequest.Size(m) +func (dst *SdkCloudBackupSchedCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSchedCreateRequest.Merge(dst, src) } -func (m *SdkCloudBackupDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupDeleteRequest.DiscardUnknown(m) +func (m *SdkCloudBackupSchedCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSchedCreateRequest.Size(m) } - -var xxx_messageInfo_SdkCloudBackupDeleteRequest proto.InternalMessageInfo - -func (m *SdkCloudBackupDeleteRequest) GetBackupId() string { - if m != nil { - return m.BackupId - } - return "" +func (m *SdkCloudBackupSchedCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSchedCreateRequest.DiscardUnknown(m) } -func (m *SdkCloudBackupDeleteRequest) GetCredentialId() string { - if m != nil { - return m.CredentialId - } - return "" -} +var xxx_messageInfo_SdkCloudBackupSchedCreateRequest proto.InternalMessageInfo -func (m *SdkCloudBackupDeleteRequest) GetForce() bool { +func (m *SdkCloudBackupSchedCreateRequest) GetCloudSchedInfo() *SdkCloudBackupScheduleInfo { if m != nil { - return m.Force + return m.CloudSchedInfo } - return false + return nil } -// Empty response -type SdkCloudBackupDeleteResponse struct { +// Defines a response containing the id of a schedule for a volume backup +// to a cloud provider +type SdkCloudBackupSchedCreateResponse struct { + // Id of newly created backup schedule + BackupScheduleId string `protobuf:"bytes,1,opt,name=backup_schedule_id,json=backupScheduleId" json:"backup_schedule_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupDeleteResponse) Reset() { *m = SdkCloudBackupDeleteResponse{} } -func (m *SdkCloudBackupDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupDeleteResponse) ProtoMessage() {} -func (*SdkCloudBackupDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{175} +func (m *SdkCloudBackupSchedCreateResponse) Reset() { *m = SdkCloudBackupSchedCreateResponse{} } +func (m *SdkCloudBackupSchedCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSchedCreateResponse) ProtoMessage() {} +func (*SdkCloudBackupSchedCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{245} } -func (m *SdkCloudBackupDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupDeleteResponse.Unmarshal(m, b) +func (m *SdkCloudBackupSchedCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSchedCreateResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupDeleteResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupSchedCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSchedCreateResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupDeleteResponse.Merge(dst, src) +func (dst *SdkCloudBackupSchedCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSchedCreateResponse.Merge(dst, src) } -func (m *SdkCloudBackupDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupDeleteResponse.Size(m) +func (m *SdkCloudBackupSchedCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSchedCreateResponse.Size(m) } -func (m *SdkCloudBackupDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupDeleteResponse.DiscardUnknown(m) +func (m *SdkCloudBackupSchedCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSchedCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupDeleteResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupSchedCreateResponse proto.InternalMessageInfo -// Defines a request to delete all the backups stored by a cloud provider -// for a specified volume -type SdkCloudBackupDeleteAllRequest struct { - // id of the volume for the request - SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` - // Credential id is the credential for cloud to be used for the request - CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkCloudBackupSchedCreateResponse) GetBackupScheduleId() string { + if m != nil { + return m.BackupScheduleId + } + return "" } -func (m *SdkCloudBackupDeleteAllRequest) Reset() { *m = SdkCloudBackupDeleteAllRequest{} } -func (m *SdkCloudBackupDeleteAllRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupDeleteAllRequest) ProtoMessage() {} -func (*SdkCloudBackupDeleteAllRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{176} +// Defines a request to update a schedule for volume backups to a +// cloud provider +type SdkCloudBackupSchedUpdateRequest struct { + // Cloud Backup Schedule info + CloudSchedInfo *SdkCloudBackupScheduleInfo `protobuf:"bytes,1,opt,name=cloud_sched_info,json=cloudSchedInfo" json:"cloud_sched_info,omitempty"` + SchedUuid string `protobuf:"bytes,2,opt,name=sched_uuid,json=schedUuid" json:"sched_uuid,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupDeleteAllRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupDeleteAllRequest.Unmarshal(m, b) + +func (m *SdkCloudBackupSchedUpdateRequest) Reset() { *m = SdkCloudBackupSchedUpdateRequest{} } +func (m *SdkCloudBackupSchedUpdateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSchedUpdateRequest) ProtoMessage() {} +func (*SdkCloudBackupSchedUpdateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{246} } -func (m *SdkCloudBackupDeleteAllRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupDeleteAllRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupSchedUpdateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.Unmarshal(m, b) } -func (dst *SdkCloudBackupDeleteAllRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupDeleteAllRequest.Merge(dst, src) +func (m *SdkCloudBackupSchedUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.Marshal(b, m, deterministic) } -func (m *SdkCloudBackupDeleteAllRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupDeleteAllRequest.Size(m) +func (dst *SdkCloudBackupSchedUpdateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.Merge(dst, src) } -func (m *SdkCloudBackupDeleteAllRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupDeleteAllRequest.DiscardUnknown(m) +func (m *SdkCloudBackupSchedUpdateRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.Size(m) +} +func (m *SdkCloudBackupSchedUpdateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupDeleteAllRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupSchedUpdateRequest proto.InternalMessageInfo -func (m *SdkCloudBackupDeleteAllRequest) GetSrcVolumeId() string { +func (m *SdkCloudBackupSchedUpdateRequest) GetCloudSchedInfo() *SdkCloudBackupScheduleInfo { if m != nil { - return m.SrcVolumeId + return m.CloudSchedInfo } - return "" + return nil } -func (m *SdkCloudBackupDeleteAllRequest) GetCredentialId() string { +func (m *SdkCloudBackupSchedUpdateRequest) GetSchedUuid() string { if m != nil { - return m.CredentialId + return m.SchedUuid } return "" } // Empty response -type SdkCloudBackupDeleteAllResponse struct { +type SdkCloudBackupSchedUpdateResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupDeleteAllResponse) Reset() { *m = SdkCloudBackupDeleteAllResponse{} } -func (m *SdkCloudBackupDeleteAllResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupDeleteAllResponse) ProtoMessage() {} -func (*SdkCloudBackupDeleteAllResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{177} +func (m *SdkCloudBackupSchedUpdateResponse) Reset() { *m = SdkCloudBackupSchedUpdateResponse{} } +func (m *SdkCloudBackupSchedUpdateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSchedUpdateResponse) ProtoMessage() {} +func (*SdkCloudBackupSchedUpdateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{247} } -func (m *SdkCloudBackupDeleteAllResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupDeleteAllResponse.Unmarshal(m, b) +func (m *SdkCloudBackupSchedUpdateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupDeleteAllResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupDeleteAllResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupSchedUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupDeleteAllResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupDeleteAllResponse.Merge(dst, src) +func (dst *SdkCloudBackupSchedUpdateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.Merge(dst, src) } -func (m *SdkCloudBackupDeleteAllResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupDeleteAllResponse.Size(m) +func (m *SdkCloudBackupSchedUpdateResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.Size(m) } -func (m *SdkCloudBackupDeleteAllResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupDeleteAllResponse.DiscardUnknown(m) +func (m *SdkCloudBackupSchedUpdateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupDeleteAllResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupSchedUpdateResponse proto.InternalMessageInfo -// Defines a request to list the backups stored by a cloud provider. -// The following combinations can be used to get cloud backup information: -// -// * For a specific volume in current cluster: Set `src_volume_id` to your desired volume id -// and do not provide `cluster_id` and `all`. -// * For a specific volume in a specific cluster: Set `src_volume_id` to your desired volume id -// and specify `cluster_id`. -// * For a specific volume in all clusters: Set `src_volume_id` to your desired volume id -// and set `all` to true, do not provide `cluster_id`. -// * For all volumes in current cluster: do not provide `cluster_id`, `volume_id` and `all`. -// * For all volumes in a specific cluster: Set `cluster_id` to your desired cluster id -// and do not provide `volume_id` and `all`. -// * For all volumes in all clusters: Set `all` to true do not provide `volume_id` and `cluster_id`. -type SdkCloudBackupEnumerateWithFiltersRequest struct { - // (optional) Source id of the volume for the request. - SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` - // (optional) Cluster id specifies the cluster for the request - ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` - // Credential id is the credential for cloud to be used for the request - CredentialId string `protobuf:"bytes,3,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - // (optional) All indicates if the request should show cloud backups for all clusters or the current cluster. - All bool `protobuf:"varint,4,opt,name=all" json:"all,omitempty"` - // (optional) enumerates backups that have status specified by this type - StatusFilter SdkCloudBackupStatusType `protobuf:"varint,5,opt,name=status_filter,json=statusFilter,enum=openstorage.api.SdkCloudBackupStatusType" json:"status_filter,omitempty"` - // (optional) Enumerates backups that have tags of this type - MetadataFilter map[string]string `protobuf:"bytes,6,rep,name=metadata_filter,json=metadataFilter" json:"metadata_filter,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // (optional) if caller wished to limit number of backups returned by enumerate - MaxBackups uint64 `protobuf:"varint,7,opt,name=max_backups,json=maxBackups" json:"max_backups,omitempty"` - // Returned in the enumerate response if not all of the backups could be returned in the - // response. - ContinuationToken string `protobuf:"bytes,8,opt,name=continuation_token,json=continuationToken" json:"continuation_token,omitempty"` - // If one wants to enumerate known backup, set this field to the backup ID - // naming format :clusteruuidORbicketname/srcVolId-snapId(-incr) - CloudBackupId string `protobuf:"bytes,9,opt,name=cloud_backup_id,json=cloudBackupId" json:"cloud_backup_id,omitempty"` +// Defines a request to delete a backup schedule +type SdkCloudBackupSchedDeleteRequest struct { + // Id of cloud backup to delete + BackupScheduleId string `protobuf:"bytes,1,opt,name=backup_schedule_id,json=backupScheduleId" json:"backup_schedule_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) Reset() { - *m = SdkCloudBackupEnumerateWithFiltersRequest{} -} -func (m *SdkCloudBackupEnumerateWithFiltersRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupEnumerateWithFiltersRequest) ProtoMessage() {} -func (*SdkCloudBackupEnumerateWithFiltersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{178} +func (m *SdkCloudBackupSchedDeleteRequest) Reset() { *m = SdkCloudBackupSchedDeleteRequest{} } +func (m *SdkCloudBackupSchedDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSchedDeleteRequest) ProtoMessage() {} +func (*SdkCloudBackupSchedDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{248} } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.Unmarshal(m, b) +func (m *SdkCloudBackupSchedDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.Marshal(b, m, deterministic) +func (m *SdkCloudBackupSchedDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupEnumerateWithFiltersRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.Merge(dst, src) +func (dst *SdkCloudBackupSchedDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.Merge(dst, src) } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.Size(m) +func (m *SdkCloudBackupSchedDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.Size(m) } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest.DiscardUnknown(m) +func (m *SdkCloudBackupSchedDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupSchedDeleteRequest proto.InternalMessageInfo -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetSrcVolumeId() string { +func (m *SdkCloudBackupSchedDeleteRequest) GetBackupScheduleId() string { if m != nil { - return m.SrcVolumeId + return m.BackupScheduleId } return "" } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetClusterId() string { - if m != nil { - return m.ClusterId - } - return "" +// Empty response +type SdkCloudBackupSchedDeleteResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetCredentialId() string { - if m != nil { - return m.CredentialId - } - return "" +func (m *SdkCloudBackupSchedDeleteResponse) Reset() { *m = SdkCloudBackupSchedDeleteResponse{} } +func (m *SdkCloudBackupSchedDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSchedDeleteResponse) ProtoMessage() {} +func (*SdkCloudBackupSchedDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{249} } - -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetAll() bool { - if m != nil { - return m.All - } - return false +func (m *SdkCloudBackupSchedDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.Unmarshal(m, b) } - -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetStatusFilter() SdkCloudBackupStatusType { - if m != nil { - return m.StatusFilter - } - return SdkCloudBackupStatusType_SdkCloudBackupStatusTypeUnknown +func (m *SdkCloudBackupSchedDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.Marshal(b, m, deterministic) +} +func (dst *SdkCloudBackupSchedDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.Merge(dst, src) +} +func (m *SdkCloudBackupSchedDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.Size(m) +} +func (m *SdkCloudBackupSchedDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.DiscardUnknown(m) } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetMetadataFilter() map[string]string { - if m != nil { - return m.MetadataFilter - } - return nil -} +var xxx_messageInfo_SdkCloudBackupSchedDeleteResponse proto.InternalMessageInfo -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetMaxBackups() uint64 { - if m != nil { - return m.MaxBackups - } - return 0 +// Empty request +type SdkCloudBackupSchedEnumerateRequest struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetContinuationToken() string { - if m != nil { - return m.ContinuationToken - } - return "" +func (m *SdkCloudBackupSchedEnumerateRequest) Reset() { *m = SdkCloudBackupSchedEnumerateRequest{} } +func (m *SdkCloudBackupSchedEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSchedEnumerateRequest) ProtoMessage() {} +func (*SdkCloudBackupSchedEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{250} } - -func (m *SdkCloudBackupEnumerateWithFiltersRequest) GetCloudBackupId() string { - if m != nil { - return m.CloudBackupId - } - return "" +func (m *SdkCloudBackupSchedEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.Unmarshal(m, b) +} +func (m *SdkCloudBackupSchedEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkCloudBackupSchedEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.Merge(dst, src) +} +func (m *SdkCloudBackupSchedEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.Size(m) +} +func (m *SdkCloudBackupSchedEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.DiscardUnknown(m) } -// SdkCloudBackupInfo has information about a backup stored by a cloud provider -type SdkCloudBackupInfo struct { - // This is the id as represented by the cloud provider - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - // Source volumeID of the backup - SrcVolumeId string `protobuf:"bytes,2,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` - // Name of the sourceVolume of the backup - SrcVolumeName string `protobuf:"bytes,3,opt,name=src_volume_name,json=srcVolumeName" json:"src_volume_name,omitempty"` - // Timestamp is the timestamp at which the source volume - // was backed up to cloud - Timestamp *timestamp.Timestamp `protobuf:"bytes,4,opt,name=timestamp" json:"timestamp,omitempty"` - // Metadata associated with the backup - Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // Status indicates the status of the backup - Status SdkCloudBackupStatusType `protobuf:"varint,6,opt,name=status,enum=openstorage.api.SdkCloudBackupStatusType" json:"status,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +var xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest proto.InternalMessageInfo + +// Defines a response containing a map listing the schedules for volume +// backups to a cloud provider +type SdkCloudBackupSchedEnumerateResponse struct { + // Returns list of backup schedules + CloudSchedList map[string]*SdkCloudBackupScheduleInfo `protobuf:"bytes,1,rep,name=cloud_sched_list,json=cloudSchedList" json:"cloud_sched_list,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupInfo) Reset() { *m = SdkCloudBackupInfo{} } -func (m *SdkCloudBackupInfo) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupInfo) ProtoMessage() {} -func (*SdkCloudBackupInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{179} +func (m *SdkCloudBackupSchedEnumerateResponse) Reset() { *m = SdkCloudBackupSchedEnumerateResponse{} } +func (m *SdkCloudBackupSchedEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSchedEnumerateResponse) ProtoMessage() {} +func (*SdkCloudBackupSchedEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{251} } -func (m *SdkCloudBackupInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupInfo.Unmarshal(m, b) +func (m *SdkCloudBackupSchedEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupInfo.Marshal(b, m, deterministic) +func (m *SdkCloudBackupSchedEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupInfo.Merge(dst, src) +func (dst *SdkCloudBackupSchedEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.Merge(dst, src) } -func (m *SdkCloudBackupInfo) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupInfo.Size(m) +func (m *SdkCloudBackupSchedEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.Size(m) } -func (m *SdkCloudBackupInfo) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupInfo.DiscardUnknown(m) +func (m *SdkCloudBackupSchedEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupInfo proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse proto.InternalMessageInfo -func (m *SdkCloudBackupInfo) GetId() string { +func (m *SdkCloudBackupSchedEnumerateResponse) GetCloudSchedList() map[string]*SdkCloudBackupScheduleInfo { if m != nil { - return m.Id + return m.CloudSchedList } - return "" + return nil } -func (m *SdkCloudBackupInfo) GetSrcVolumeId() string { - if m != nil { - return m.SrcVolumeId - } - return "" +// Defines a request to retrieve the size of the volume for the +// specificed volume +type SdkCloudBackupSizeRequest struct { + // BackupId is a value which is used to get information on the + // size of the specified backup. + BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` + // Credential id describe the credentials for the cloud + CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupInfo) GetSrcVolumeName() string { - if m != nil { - return m.SrcVolumeName - } - return "" +func (m *SdkCloudBackupSizeRequest) Reset() { *m = SdkCloudBackupSizeRequest{} } +func (m *SdkCloudBackupSizeRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSizeRequest) ProtoMessage() {} +func (*SdkCloudBackupSizeRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{252} } - -func (m *SdkCloudBackupInfo) GetTimestamp() *timestamp.Timestamp { - if m != nil { - return m.Timestamp - } - return nil +func (m *SdkCloudBackupSizeRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSizeRequest.Unmarshal(m, b) +} +func (m *SdkCloudBackupSizeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSizeRequest.Marshal(b, m, deterministic) +} +func (dst *SdkCloudBackupSizeRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSizeRequest.Merge(dst, src) +} +func (m *SdkCloudBackupSizeRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSizeRequest.Size(m) +} +func (m *SdkCloudBackupSizeRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSizeRequest.DiscardUnknown(m) } -func (m *SdkCloudBackupInfo) GetMetadata() map[string]string { +var xxx_messageInfo_SdkCloudBackupSizeRequest proto.InternalMessageInfo + +func (m *SdkCloudBackupSizeRequest) GetBackupId() string { if m != nil { - return m.Metadata + return m.BackupId } - return nil + return "" } -func (m *SdkCloudBackupInfo) GetStatus() SdkCloudBackupStatusType { +func (m *SdkCloudBackupSizeRequest) GetCredentialId() string { if m != nil { - return m.Status + return m.CredentialId } - return SdkCloudBackupStatusType_SdkCloudBackupStatusTypeUnknown + return "" } -// Defines a response which lists all the backups stored by a cloud provider -type SdkCloudBackupEnumerateWithFiltersResponse struct { - Backups []*SdkCloudBackupInfo `protobuf:"bytes,1,rep,name=backups" json:"backups,omitempty"` - // if this is not an empty string, callers must pass this to get next list of - // backups - ContinuationToken string `protobuf:"bytes,2,opt,name=continuation_token,json=continuationToken" json:"continuation_token,omitempty"` +// Defines a response containing the size of the volume +type SdkCloudBackupSizeResponse struct { + // Size is the size of the volume in bytes + Size uint64 `protobuf:"varint,1,opt,name=size" json:"size,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupEnumerateWithFiltersResponse) Reset() { - *m = SdkCloudBackupEnumerateWithFiltersResponse{} -} -func (m *SdkCloudBackupEnumerateWithFiltersResponse) String() string { - return proto.CompactTextString(m) -} -func (*SdkCloudBackupEnumerateWithFiltersResponse) ProtoMessage() {} -func (*SdkCloudBackupEnumerateWithFiltersResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{180} +func (m *SdkCloudBackupSizeResponse) Reset() { *m = SdkCloudBackupSizeResponse{} } +func (m *SdkCloudBackupSizeResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudBackupSizeResponse) ProtoMessage() {} +func (*SdkCloudBackupSizeResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{253} } -func (m *SdkCloudBackupEnumerateWithFiltersResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.Unmarshal(m, b) +func (m *SdkCloudBackupSizeResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudBackupSizeResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupEnumerateWithFiltersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.Marshal(b, m, deterministic) +func (m *SdkCloudBackupSizeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudBackupSizeResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupEnumerateWithFiltersResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.Merge(dst, src) +func (dst *SdkCloudBackupSizeResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudBackupSizeResponse.Merge(dst, src) } -func (m *SdkCloudBackupEnumerateWithFiltersResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.Size(m) +func (m *SdkCloudBackupSizeResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudBackupSizeResponse.Size(m) } -func (m *SdkCloudBackupEnumerateWithFiltersResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse.DiscardUnknown(m) +func (m *SdkCloudBackupSizeResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudBackupSizeResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupEnumerateWithFiltersResponse proto.InternalMessageInfo - -func (m *SdkCloudBackupEnumerateWithFiltersResponse) GetBackups() []*SdkCloudBackupInfo { - if m != nil { - return m.Backups - } - return nil -} +var xxx_messageInfo_SdkCloudBackupSizeResponse proto.InternalMessageInfo -func (m *SdkCloudBackupEnumerateWithFiltersResponse) GetContinuationToken() string { +func (m *SdkCloudBackupSizeResponse) GetSize() uint64 { if m != nil { - return m.ContinuationToken + return m.Size } - return "" + return 0 } -// SdkCloudBackupStatus defines the status of a backup stored by a cloud provider -type SdkCloudBackupStatus struct { - // This is the id as represented by the cloud provider - BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` - // OpType indicates if this is a backup or restore - Optype SdkCloudBackupOpType `protobuf:"varint,2,opt,name=optype,enum=openstorage.api.SdkCloudBackupOpType" json:"optype,omitempty"` - // State indicates if the op is currently active/done/failed - Status SdkCloudBackupStatusType `protobuf:"varint,3,opt,name=status,enum=openstorage.api.SdkCloudBackupStatusType" json:"status,omitempty"` - // BytesDone indicates total Bytes uploaded/downloaded - BytesDone uint64 `protobuf:"varint,4,opt,name=bytes_done,json=bytesDone" json:"bytes_done,omitempty"` - // StartTime indicates Op's start time - StartTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=start_time,json=startTime" json:"start_time,omitempty"` - // CompletedTime indicates Op's completed time - CompletedTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=completed_time,json=completedTime" json:"completed_time,omitempty"` - // NodeID is the ID of the node where this Op is active - NodeId string `protobuf:"bytes,7,opt,name=node_id,json=nodeId" json:"node_id,omitempty"` - // SourceVolumeID is the the volume that is either being backed up to cloud - // or target volume to which a backup is being restored - SrcVolumeId string `protobuf:"bytes,8,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` - // Info currently indicates the failure cause for failed backup/restore - Info []string `protobuf:"bytes,9,rep,name=info" json:"info,omitempty"` - // CredentialId is the credential used for cloud with this backup/restore op - CredentialId string `protobuf:"bytes,10,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - // BytesTotal is the total number of bytes being transferred - BytesTotal uint64 `protobuf:"varint,11,opt,name=bytes_total,json=bytesTotal" json:"bytes_total,omitempty"` - // ETASeconds is the number of seconds for cloud backup completion - EtaSeconds int64 `protobuf:"varint,12,opt,name=eta_seconds,json=etaSeconds" json:"eta_seconds,omitempty"` - // string group_id volume's group id if this was group cloud backup - GroupId string `protobuf:"bytes,13,opt,name=group_id,json=groupId" json:"group_id,omitempty"` +// +// SdkRule is the message used to construct custom roles in the OpenStorage SDK. +// +// ### Format +// The following shows the supported format for SdkRule: +// +// * Services: Is the gRPC service name in `OpenStorage` in lowercase +// * Apis: Is the API name in the service in lowercase +// +// Values can also be set to `*`, or start or end with `*` to allow multiple matches in services or apis. +// +// Services and APIs can also be denied by prefixing the value with a `!`. Note that on rule conflicts, +// denial will always be chosen. +// +// ### Examples +// +// * Allow any call: +// +// ```yaml +// SdkRule: +// - Services: ["*"] +// Apis: ["*"] +// ``` +// +// * Allow only cluster operations: +// +// ```yaml +// SdkRule: +// - services: ["cluster"] +// apis: ["*"] +// ``` +// +// * Allow inspection of any object and listings of only volumes +// +// ```yaml +// SdkRule: +// - Services: ["volumes"] +// Apis: ["*enumerate*"] +// - Services: ["*"] +// Apis: ["inspect*"] +// ``` +// +// * Allow all volume call except create +// +// ```yaml +// SdkRule: +// - Services: ["volumes"] +// Apis: ["*", "!create"] +// ``` +// +type SdkRule struct { + // The gRPC service name in `OpenStorage` in lowercase + Services []string `protobuf:"bytes,1,rep,name=services" json:"services,omitempty"` + // The API name in the service in lowercase + Apis []string `protobuf:"bytes,2,rep,name=apis" json:"apis,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupStatus) Reset() { *m = SdkCloudBackupStatus{} } -func (m *SdkCloudBackupStatus) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupStatus) ProtoMessage() {} -func (*SdkCloudBackupStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{181} +func (m *SdkRule) Reset() { *m = SdkRule{} } +func (m *SdkRule) String() string { return proto.CompactTextString(m) } +func (*SdkRule) ProtoMessage() {} +func (*SdkRule) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{254} } -func (m *SdkCloudBackupStatus) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupStatus.Unmarshal(m, b) +func (m *SdkRule) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRule.Unmarshal(m, b) } -func (m *SdkCloudBackupStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupStatus.Marshal(b, m, deterministic) +func (m *SdkRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRule.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupStatus) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupStatus.Merge(dst, src) +func (dst *SdkRule) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRule.Merge(dst, src) } -func (m *SdkCloudBackupStatus) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupStatus.Size(m) +func (m *SdkRule) XXX_Size() int { + return xxx_messageInfo_SdkRule.Size(m) } -func (m *SdkCloudBackupStatus) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupStatus.DiscardUnknown(m) +func (m *SdkRule) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRule.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupStatus proto.InternalMessageInfo +var xxx_messageInfo_SdkRule proto.InternalMessageInfo -func (m *SdkCloudBackupStatus) GetBackupId() string { +func (m *SdkRule) GetServices() []string { if m != nil { - return m.BackupId + return m.Services } - return "" + return nil } -func (m *SdkCloudBackupStatus) GetOptype() SdkCloudBackupOpType { +func (m *SdkRule) GetApis() []string { if m != nil { - return m.Optype + return m.Apis } - return SdkCloudBackupOpType_SdkCloudBackupOpTypeUnknown + return nil } -func (m *SdkCloudBackupStatus) GetStatus() SdkCloudBackupStatusType { - if m != nil { - return m.Status - } - return SdkCloudBackupStatusType_SdkCloudBackupStatusTypeUnknown +type SdkRole struct { + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + Rules []*SdkRule `protobuf:"bytes,2,rep,name=rules" json:"rules,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupStatus) GetBytesDone() uint64 { - if m != nil { - return m.BytesDone - } - return 0 +func (m *SdkRole) Reset() { *m = SdkRole{} } +func (m *SdkRole) String() string { return proto.CompactTextString(m) } +func (*SdkRole) ProtoMessage() {} +func (*SdkRole) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{255} } - -func (m *SdkCloudBackupStatus) GetStartTime() *timestamp.Timestamp { - if m != nil { - return m.StartTime - } - return nil +func (m *SdkRole) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRole.Unmarshal(m, b) } - -func (m *SdkCloudBackupStatus) GetCompletedTime() *timestamp.Timestamp { - if m != nil { - return m.CompletedTime - } - return nil +func (m *SdkRole) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRole.Marshal(b, m, deterministic) } - -func (m *SdkCloudBackupStatus) GetNodeId() string { - if m != nil { - return m.NodeId - } - return "" +func (dst *SdkRole) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRole.Merge(dst, src) +} +func (m *SdkRole) XXX_Size() int { + return xxx_messageInfo_SdkRole.Size(m) +} +func (m *SdkRole) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRole.DiscardUnknown(m) } -func (m *SdkCloudBackupStatus) GetSrcVolumeId() string { +var xxx_messageInfo_SdkRole proto.InternalMessageInfo + +func (m *SdkRole) GetName() string { if m != nil { - return m.SrcVolumeId + return m.Name } return "" } -func (m *SdkCloudBackupStatus) GetInfo() []string { +func (m *SdkRole) GetRules() []*SdkRule { if m != nil { - return m.Info + return m.Rules } return nil } -func (m *SdkCloudBackupStatus) GetCredentialId() string { - if m != nil { - return m.CredentialId - } - return "" +// Defines a request for creating a role +type SdkRoleCreateRequest struct { + // Role + Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupStatus) GetBytesTotal() uint64 { - if m != nil { - return m.BytesTotal - } - return 0 +func (m *SdkRoleCreateRequest) Reset() { *m = SdkRoleCreateRequest{} } +func (m *SdkRoleCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkRoleCreateRequest) ProtoMessage() {} +func (*SdkRoleCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{256} } - -func (m *SdkCloudBackupStatus) GetEtaSeconds() int64 { - if m != nil { - return m.EtaSeconds - } - return 0 +func (m *SdkRoleCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleCreateRequest.Unmarshal(m, b) +} +func (m *SdkRoleCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleCreateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkRoleCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleCreateRequest.Merge(dst, src) +} +func (m *SdkRoleCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkRoleCreateRequest.Size(m) +} +func (m *SdkRoleCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleCreateRequest.DiscardUnknown(m) } -func (m *SdkCloudBackupStatus) GetGroupId() string { +var xxx_messageInfo_SdkRoleCreateRequest proto.InternalMessageInfo + +func (m *SdkRoleCreateRequest) GetRole() *SdkRole { if m != nil { - return m.GroupId + return m.Role } - return "" + return nil } -// Defines a request to retreive the status of a backup or restore for a -// specified volume -type SdkCloudBackupStatusRequest struct { - // (optional) VolumeId is a value which is used to get information on the - // status of a backup for the specified volume. If no volume id and task_id - // is provided, then status for all volumes is returned. - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` - // Local indicates if only those backups/restores that are - // active on current node must be returned - Local bool `protobuf:"varint,2,opt,name=local" json:"local,omitempty"` - // TaskId of the backup/restore task, if this is specified, - // volume_id is ignored. - TaskId string `protobuf:"bytes,3,opt,name=task_id,json=taskId" json:"task_id,omitempty"` +// Response contains informaiton about the creation of the role +type SdkRoleCreateResponse struct { + // Role created + Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupStatusRequest) Reset() { *m = SdkCloudBackupStatusRequest{} } -func (m *SdkCloudBackupStatusRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupStatusRequest) ProtoMessage() {} -func (*SdkCloudBackupStatusRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{182} +func (m *SdkRoleCreateResponse) Reset() { *m = SdkRoleCreateResponse{} } +func (m *SdkRoleCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkRoleCreateResponse) ProtoMessage() {} +func (*SdkRoleCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{257} } -func (m *SdkCloudBackupStatusRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupStatusRequest.Unmarshal(m, b) +func (m *SdkRoleCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleCreateResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupStatusRequest.Marshal(b, m, deterministic) +func (m *SdkRoleCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleCreateResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupStatusRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupStatusRequest.Merge(dst, src) +func (dst *SdkRoleCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleCreateResponse.Merge(dst, src) } -func (m *SdkCloudBackupStatusRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupStatusRequest.Size(m) +func (m *SdkRoleCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkRoleCreateResponse.Size(m) } -func (m *SdkCloudBackupStatusRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupStatusRequest.DiscardUnknown(m) +func (m *SdkRoleCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupStatusRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkRoleCreateResponse proto.InternalMessageInfo -func (m *SdkCloudBackupStatusRequest) GetVolumeId() string { +func (m *SdkRoleCreateResponse) GetRole() *SdkRole { if m != nil { - return m.VolumeId + return m.Role } - return "" + return nil } -func (m *SdkCloudBackupStatusRequest) GetLocal() bool { - if m != nil { - return m.Local - } - return false +// Empty request +type SdkRoleEnumerateRequest struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupStatusRequest) GetTaskId() string { - if m != nil { - return m.TaskId - } - return "" +func (m *SdkRoleEnumerateRequest) Reset() { *m = SdkRoleEnumerateRequest{} } +func (m *SdkRoleEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkRoleEnumerateRequest) ProtoMessage() {} +func (*SdkRoleEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{258} +} +func (m *SdkRoleEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleEnumerateRequest.Unmarshal(m, b) +} +func (m *SdkRoleEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleEnumerateRequest.Marshal(b, m, deterministic) +} +func (dst *SdkRoleEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleEnumerateRequest.Merge(dst, src) +} +func (m *SdkRoleEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkRoleEnumerateRequest.Size(m) +} +func (m *SdkRoleEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleEnumerateRequest.DiscardUnknown(m) } -// Defines a response containing the status of the backups for a specified volume -type SdkCloudBackupStatusResponse struct { - // Statuses is list of currently active/failed/done backup/restores where - // the key is the id of the task performing backup/restore. - Statuses map[string]*SdkCloudBackupStatus `protobuf:"bytes,1,rep,name=statuses" json:"statuses,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +var xxx_messageInfo_SdkRoleEnumerateRequest proto.InternalMessageInfo + +// Respose to enumerate all roles +type SdkRoleEnumerateResponse struct { + // List of role names + Names []string `protobuf:"bytes,1,rep,name=names" json:"names,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupStatusResponse) Reset() { *m = SdkCloudBackupStatusResponse{} } -func (m *SdkCloudBackupStatusResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupStatusResponse) ProtoMessage() {} -func (*SdkCloudBackupStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{183} +func (m *SdkRoleEnumerateResponse) Reset() { *m = SdkRoleEnumerateResponse{} } +func (m *SdkRoleEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkRoleEnumerateResponse) ProtoMessage() {} +func (*SdkRoleEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{259} } -func (m *SdkCloudBackupStatusResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupStatusResponse.Unmarshal(m, b) +func (m *SdkRoleEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleEnumerateResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupStatusResponse.Marshal(b, m, deterministic) +func (m *SdkRoleEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleEnumerateResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupStatusResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupStatusResponse.Merge(dst, src) +func (dst *SdkRoleEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleEnumerateResponse.Merge(dst, src) } -func (m *SdkCloudBackupStatusResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupStatusResponse.Size(m) +func (m *SdkRoleEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkRoleEnumerateResponse.Size(m) } -func (m *SdkCloudBackupStatusResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupStatusResponse.DiscardUnknown(m) +func (m *SdkRoleEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleEnumerateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupStatusResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkRoleEnumerateResponse proto.InternalMessageInfo -func (m *SdkCloudBackupStatusResponse) GetStatuses() map[string]*SdkCloudBackupStatus { +func (m *SdkRoleEnumerateResponse) GetNames() []string { if m != nil { - return m.Statuses + return m.Names } return nil } -// Defines a request to get catalog of a backup stored by a cloud provider -type SdkCloudBackupCatalogRequest struct { - // Id of the backup - BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId" json:"backup_id,omitempty"` - // Credential id describe the credentials for the cloud - CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` +// Defines a request to inspect a role +type SdkRoleInspectRequest struct { + // Name of role + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupCatalogRequest) Reset() { *m = SdkCloudBackupCatalogRequest{} } -func (m *SdkCloudBackupCatalogRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupCatalogRequest) ProtoMessage() {} -func (*SdkCloudBackupCatalogRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{184} +func (m *SdkRoleInspectRequest) Reset() { *m = SdkRoleInspectRequest{} } +func (m *SdkRoleInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkRoleInspectRequest) ProtoMessage() {} +func (*SdkRoleInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{260} } -func (m *SdkCloudBackupCatalogRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupCatalogRequest.Unmarshal(m, b) +func (m *SdkRoleInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleInspectRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupCatalogRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupCatalogRequest.Marshal(b, m, deterministic) +func (m *SdkRoleInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleInspectRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupCatalogRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupCatalogRequest.Merge(dst, src) +func (dst *SdkRoleInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleInspectRequest.Merge(dst, src) } -func (m *SdkCloudBackupCatalogRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupCatalogRequest.Size(m) +func (m *SdkRoleInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkRoleInspectRequest.Size(m) } -func (m *SdkCloudBackupCatalogRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupCatalogRequest.DiscardUnknown(m) +func (m *SdkRoleInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupCatalogRequest proto.InternalMessageInfo - -func (m *SdkCloudBackupCatalogRequest) GetBackupId() string { - if m != nil { - return m.BackupId - } - return "" -} +var xxx_messageInfo_SdkRoleInspectRequest proto.InternalMessageInfo -func (m *SdkCloudBackupCatalogRequest) GetCredentialId() string { +func (m *SdkRoleInspectRequest) GetName() string { if m != nil { - return m.CredentialId + return m.Name } return "" } -// Defines a response containing the contents of a backup stored by a cloud provider -type SdkCloudBackupCatalogResponse struct { - // Contents is listing of backup contents - Contents []string `protobuf:"bytes,1,rep,name=contents" json:"contents,omitempty"` +// Response to inspection request +type SdkRoleInspectResponse struct { + // Role requested + Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupCatalogResponse) Reset() { *m = SdkCloudBackupCatalogResponse{} } -func (m *SdkCloudBackupCatalogResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupCatalogResponse) ProtoMessage() {} -func (*SdkCloudBackupCatalogResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{185} +func (m *SdkRoleInspectResponse) Reset() { *m = SdkRoleInspectResponse{} } +func (m *SdkRoleInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkRoleInspectResponse) ProtoMessage() {} +func (*SdkRoleInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{261} } -func (m *SdkCloudBackupCatalogResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupCatalogResponse.Unmarshal(m, b) +func (m *SdkRoleInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleInspectResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupCatalogResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupCatalogResponse.Marshal(b, m, deterministic) +func (m *SdkRoleInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleInspectResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupCatalogResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupCatalogResponse.Merge(dst, src) +func (dst *SdkRoleInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleInspectResponse.Merge(dst, src) } -func (m *SdkCloudBackupCatalogResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupCatalogResponse.Size(m) +func (m *SdkRoleInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkRoleInspectResponse.Size(m) } -func (m *SdkCloudBackupCatalogResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupCatalogResponse.DiscardUnknown(m) +func (m *SdkRoleInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleInspectResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupCatalogResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkRoleInspectResponse proto.InternalMessageInfo -func (m *SdkCloudBackupCatalogResponse) GetContents() []string { +func (m *SdkRoleInspectResponse) GetRole() *SdkRole { if m != nil { - return m.Contents + return m.Role } return nil } -// SdkCloudBackupHistoryItem contains information about a backup for a -// specific volume -type SdkCloudBackupHistoryItem struct { - // SrcVolumeID is volume ID which was backedup - SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` - // TimeStamp is the time at which either backup completed/failed - Timestamp *timestamp.Timestamp `protobuf:"bytes,2,opt,name=timestamp" json:"timestamp,omitempty"` - // Status indicates whether backup was completed/failed - Status SdkCloudBackupStatusType `protobuf:"varint,3,opt,name=status,enum=openstorage.api.SdkCloudBackupStatusType" json:"status,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to delete a role +type SdkRoleDeleteRequest struct { + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupHistoryItem) Reset() { *m = SdkCloudBackupHistoryItem{} } -func (m *SdkCloudBackupHistoryItem) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupHistoryItem) ProtoMessage() {} -func (*SdkCloudBackupHistoryItem) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{186} +func (m *SdkRoleDeleteRequest) Reset() { *m = SdkRoleDeleteRequest{} } +func (m *SdkRoleDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkRoleDeleteRequest) ProtoMessage() {} +func (*SdkRoleDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{262} } -func (m *SdkCloudBackupHistoryItem) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupHistoryItem.Unmarshal(m, b) +func (m *SdkRoleDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleDeleteRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupHistoryItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupHistoryItem.Marshal(b, m, deterministic) +func (m *SdkRoleDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleDeleteRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupHistoryItem) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupHistoryItem.Merge(dst, src) +func (dst *SdkRoleDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleDeleteRequest.Merge(dst, src) } -func (m *SdkCloudBackupHistoryItem) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupHistoryItem.Size(m) +func (m *SdkRoleDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkRoleDeleteRequest.Size(m) } -func (m *SdkCloudBackupHistoryItem) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupHistoryItem.DiscardUnknown(m) +func (m *SdkRoleDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleDeleteRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupHistoryItem proto.InternalMessageInfo +var xxx_messageInfo_SdkRoleDeleteRequest proto.InternalMessageInfo -func (m *SdkCloudBackupHistoryItem) GetSrcVolumeId() string { +func (m *SdkRoleDeleteRequest) GetName() string { if m != nil { - return m.SrcVolumeId + return m.Name } return "" } -func (m *SdkCloudBackupHistoryItem) GetTimestamp() *timestamp.Timestamp { - if m != nil { - return m.Timestamp - } - return nil -} - -func (m *SdkCloudBackupHistoryItem) GetStatus() SdkCloudBackupStatusType { - if m != nil { - return m.Status - } - return SdkCloudBackupStatusType_SdkCloudBackupStatusTypeUnknown -} - -// Defines a request to retreive the history of the backups for -// a specific volume to a cloud provider -type SdkCloudBackupHistoryRequest struct { - // This optional value defines which history of backups is being - // requested. If not provided, it will return the history for all volumes. - SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` +// Empty response +type SdkRoleDeleteResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupHistoryRequest) Reset() { *m = SdkCloudBackupHistoryRequest{} } -func (m *SdkCloudBackupHistoryRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupHistoryRequest) ProtoMessage() {} -func (*SdkCloudBackupHistoryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{187} +func (m *SdkRoleDeleteResponse) Reset() { *m = SdkRoleDeleteResponse{} } +func (m *SdkRoleDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkRoleDeleteResponse) ProtoMessage() {} +func (*SdkRoleDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{263} } -func (m *SdkCloudBackupHistoryRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupHistoryRequest.Unmarshal(m, b) +func (m *SdkRoleDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleDeleteResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupHistoryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupHistoryRequest.Marshal(b, m, deterministic) +func (m *SdkRoleDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleDeleteResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupHistoryRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupHistoryRequest.Merge(dst, src) +func (dst *SdkRoleDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleDeleteResponse.Merge(dst, src) } -func (m *SdkCloudBackupHistoryRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupHistoryRequest.Size(m) +func (m *SdkRoleDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkRoleDeleteResponse.Size(m) } -func (m *SdkCloudBackupHistoryRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupHistoryRequest.DiscardUnknown(m) +func (m *SdkRoleDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleDeleteResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupHistoryRequest proto.InternalMessageInfo - -func (m *SdkCloudBackupHistoryRequest) GetSrcVolumeId() string { - if m != nil { - return m.SrcVolumeId - } - return "" -} +var xxx_messageInfo_SdkRoleDeleteResponse proto.InternalMessageInfo -// Defines a response containing a list of history of backups to a cloud provider -type SdkCloudBackupHistoryResponse struct { - // HistoryList is list of past backups on this volume - HistoryList []*SdkCloudBackupHistoryItem `protobuf:"bytes,1,rep,name=history_list,json=historyList" json:"history_list,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request to update an existing role +type SdkRoleUpdateRequest struct { + // New role update + Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupHistoryResponse) Reset() { *m = SdkCloudBackupHistoryResponse{} } -func (m *SdkCloudBackupHistoryResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupHistoryResponse) ProtoMessage() {} -func (*SdkCloudBackupHistoryResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{188} +func (m *SdkRoleUpdateRequest) Reset() { *m = SdkRoleUpdateRequest{} } +func (m *SdkRoleUpdateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkRoleUpdateRequest) ProtoMessage() {} +func (*SdkRoleUpdateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{264} } -func (m *SdkCloudBackupHistoryResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupHistoryResponse.Unmarshal(m, b) +func (m *SdkRoleUpdateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleUpdateRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupHistoryResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupHistoryResponse.Marshal(b, m, deterministic) +func (m *SdkRoleUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleUpdateRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupHistoryResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupHistoryResponse.Merge(dst, src) +func (dst *SdkRoleUpdateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleUpdateRequest.Merge(dst, src) } -func (m *SdkCloudBackupHistoryResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupHistoryResponse.Size(m) +func (m *SdkRoleUpdateRequest) XXX_Size() int { + return xxx_messageInfo_SdkRoleUpdateRequest.Size(m) } -func (m *SdkCloudBackupHistoryResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupHistoryResponse.DiscardUnknown(m) +func (m *SdkRoleUpdateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleUpdateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupHistoryResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkRoleUpdateRequest proto.InternalMessageInfo -func (m *SdkCloudBackupHistoryResponse) GetHistoryList() []*SdkCloudBackupHistoryItem { +func (m *SdkRoleUpdateRequest) GetRole() *SdkRole { if m != nil { - return m.HistoryList + return m.Role } return nil } -// Defines a request to change the state of a backup or restore to or -// from a cloud provider -type SdkCloudBackupStateChangeRequest struct { - // Describes the backup/restore task - // state change is being requested - TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` - // The desired state of the operation - RequestedState SdkCloudBackupRequestedState `protobuf:"varint,2,opt,name=requested_state,json=requestedState,enum=openstorage.api.SdkCloudBackupRequestedState" json:"requested_state,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Response contains information about the updated role +type SdkRoleUpdateResponse struct { + // Role updated + Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupStateChangeRequest) Reset() { *m = SdkCloudBackupStateChangeRequest{} } -func (m *SdkCloudBackupStateChangeRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupStateChangeRequest) ProtoMessage() {} -func (*SdkCloudBackupStateChangeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{189} +func (m *SdkRoleUpdateResponse) Reset() { *m = SdkRoleUpdateResponse{} } +func (m *SdkRoleUpdateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkRoleUpdateResponse) ProtoMessage() {} +func (*SdkRoleUpdateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{265} } -func (m *SdkCloudBackupStateChangeRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupStateChangeRequest.Unmarshal(m, b) +func (m *SdkRoleUpdateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkRoleUpdateResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupStateChangeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupStateChangeRequest.Marshal(b, m, deterministic) +func (m *SdkRoleUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkRoleUpdateResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupStateChangeRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupStateChangeRequest.Merge(dst, src) +func (dst *SdkRoleUpdateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkRoleUpdateResponse.Merge(dst, src) } -func (m *SdkCloudBackupStateChangeRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupStateChangeRequest.Size(m) +func (m *SdkRoleUpdateResponse) XXX_Size() int { + return xxx_messageInfo_SdkRoleUpdateResponse.Size(m) } -func (m *SdkCloudBackupStateChangeRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupStateChangeRequest.DiscardUnknown(m) +func (m *SdkRoleUpdateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkRoleUpdateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupStateChangeRequest proto.InternalMessageInfo - -func (m *SdkCloudBackupStateChangeRequest) GetTaskId() string { - if m != nil { - return m.TaskId - } - return "" -} +var xxx_messageInfo_SdkRoleUpdateResponse proto.InternalMessageInfo -func (m *SdkCloudBackupStateChangeRequest) GetRequestedState() SdkCloudBackupRequestedState { +func (m *SdkRoleUpdateResponse) GetRole() *SdkRole { if m != nil { - return m.RequestedState + return m.Role } - return SdkCloudBackupRequestedState_SdkCloudBackupRequestedStateUnknown + return nil } -// Empty response -type SdkCloudBackupStateChangeResponse struct { +type FilesystemTrim struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupStateChangeResponse) Reset() { *m = SdkCloudBackupStateChangeResponse{} } -func (m *SdkCloudBackupStateChangeResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupStateChangeResponse) ProtoMessage() {} -func (*SdkCloudBackupStateChangeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{190} +func (m *FilesystemTrim) Reset() { *m = FilesystemTrim{} } +func (m *FilesystemTrim) String() string { return proto.CompactTextString(m) } +func (*FilesystemTrim) ProtoMessage() {} +func (*FilesystemTrim) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{266} } -func (m *SdkCloudBackupStateChangeResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupStateChangeResponse.Unmarshal(m, b) +func (m *FilesystemTrim) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FilesystemTrim.Unmarshal(m, b) } -func (m *SdkCloudBackupStateChangeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupStateChangeResponse.Marshal(b, m, deterministic) +func (m *FilesystemTrim) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FilesystemTrim.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupStateChangeResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupStateChangeResponse.Merge(dst, src) +func (dst *FilesystemTrim) XXX_Merge(src proto.Message) { + xxx_messageInfo_FilesystemTrim.Merge(dst, src) } -func (m *SdkCloudBackupStateChangeResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupStateChangeResponse.Size(m) +func (m *FilesystemTrim) XXX_Size() int { + return xxx_messageInfo_FilesystemTrim.Size(m) } -func (m *SdkCloudBackupStateChangeResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupStateChangeResponse.DiscardUnknown(m) +func (m *FilesystemTrim) XXX_DiscardUnknown() { + xxx_messageInfo_FilesystemTrim.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupStateChangeResponse proto.InternalMessageInfo +var xxx_messageInfo_FilesystemTrim proto.InternalMessageInfo -// SdkCloudBackupScheduleInfo describes a schedule for volume backups to -// a cloud provider -type SdkCloudBackupScheduleInfo struct { - // The schedule's source volume - SrcVolumeId string `protobuf:"bytes,1,opt,name=src_volume_id,json=srcVolumeId" json:"src_volume_id,omitempty"` - // The cloud credential used with this schedule - CredentialId string `protobuf:"bytes,2,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` - // Schedules are the frequencies of the backup - Schedules []*SdkSchedulePolicyInterval `protobuf:"bytes,3,rep,name=schedules" json:"schedules,omitempty"` - // MaxBackups indicates when to force full backup to cloud. If RetentionDays - // is not specified or is 0 (older scheme), this is also the maximum number - // of scheduled backups retained in the cloud. Older backups are deleted - MaxBackups uint64 `protobuf:"varint,4,opt,name=max_backups,json=maxBackups" json:"max_backups,omitempty"` - // Full indicates if scheduled backups should always be full and never incremental. - Full bool `protobuf:"varint,5,opt,name=full" json:"full,omitempty"` - // Number of days that Scheduled CloudBackups will be kept after which they - // are deleted - RetentionDays uint32 `protobuf:"varint,6,opt,name=retention_days,json=retentionDays" json:"retention_days,omitempty"` - // GroupId indicates the group of volumes for which this schedule applies - GroupId string `protobuf:"bytes,7,opt,name=group_id,json=groupId" json:"group_id,omitempty"` - // labels indicates group of volumes with similar labels for which this schedule applies - Labels map[string]string `protobuf:"bytes,8,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// SdkFilesystemTrimStartRequest defines a request to start a background filesystem trim operation +type SdkFilesystemTrimStartRequest struct { + // Id of the volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Path where the volume is mounted + MountPath string `protobuf:"bytes,2,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupScheduleInfo) Reset() { *m = SdkCloudBackupScheduleInfo{} } -func (m *SdkCloudBackupScheduleInfo) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupScheduleInfo) ProtoMessage() {} -func (*SdkCloudBackupScheduleInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{191} +func (m *SdkFilesystemTrimStartRequest) Reset() { *m = SdkFilesystemTrimStartRequest{} } +func (m *SdkFilesystemTrimStartRequest) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemTrimStartRequest) ProtoMessage() {} +func (*SdkFilesystemTrimStartRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{267} } -func (m *SdkCloudBackupScheduleInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupScheduleInfo.Unmarshal(m, b) +func (m *SdkFilesystemTrimStartRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemTrimStartRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupScheduleInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupScheduleInfo.Marshal(b, m, deterministic) +func (m *SdkFilesystemTrimStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemTrimStartRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupScheduleInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupScheduleInfo.Merge(dst, src) +func (dst *SdkFilesystemTrimStartRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemTrimStartRequest.Merge(dst, src) } -func (m *SdkCloudBackupScheduleInfo) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupScheduleInfo.Size(m) +func (m *SdkFilesystemTrimStartRequest) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemTrimStartRequest.Size(m) } -func (m *SdkCloudBackupScheduleInfo) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupScheduleInfo.DiscardUnknown(m) +func (m *SdkFilesystemTrimStartRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemTrimStartRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupScheduleInfo proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemTrimStartRequest proto.InternalMessageInfo -func (m *SdkCloudBackupScheduleInfo) GetSrcVolumeId() string { +func (m *SdkFilesystemTrimStartRequest) GetVolumeId() string { if m != nil { - return m.SrcVolumeId + return m.VolumeId } return "" } -func (m *SdkCloudBackupScheduleInfo) GetCredentialId() string { +func (m *SdkFilesystemTrimStartRequest) GetMountPath() string { if m != nil { - return m.CredentialId + return m.MountPath } return "" } -func (m *SdkCloudBackupScheduleInfo) GetSchedules() []*SdkSchedulePolicyInterval { - if m != nil { - return m.Schedules - } - return nil +// SdkFilesystemTrimStartResponse defines the response for a +// SdkFilesystemTrimStartRequest. +type SdkFilesystemTrimStartResponse struct { + // Status code representing the state of the filesystem trim operation + Status FilesystemTrim_FilesystemTrimStatus `protobuf:"varint,1,opt,name=status,enum=openstorage.api.FilesystemTrim_FilesystemTrimStatus" json:"status,omitempty"` + // Text blob containing ASCII text providing details of the operation + Message string `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupScheduleInfo) GetMaxBackups() uint64 { - if m != nil { - return m.MaxBackups - } - return 0 +func (m *SdkFilesystemTrimStartResponse) Reset() { *m = SdkFilesystemTrimStartResponse{} } +func (m *SdkFilesystemTrimStartResponse) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemTrimStartResponse) ProtoMessage() {} +func (*SdkFilesystemTrimStartResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{268} } - -func (m *SdkCloudBackupScheduleInfo) GetFull() bool { - if m != nil { - return m.Full - } - return false +func (m *SdkFilesystemTrimStartResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemTrimStartResponse.Unmarshal(m, b) } - -func (m *SdkCloudBackupScheduleInfo) GetRetentionDays() uint32 { - if m != nil { - return m.RetentionDays - } - return 0 +func (m *SdkFilesystemTrimStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemTrimStartResponse.Marshal(b, m, deterministic) +} +func (dst *SdkFilesystemTrimStartResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemTrimStartResponse.Merge(dst, src) +} +func (m *SdkFilesystemTrimStartResponse) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemTrimStartResponse.Size(m) +} +func (m *SdkFilesystemTrimStartResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemTrimStartResponse.DiscardUnknown(m) } -func (m *SdkCloudBackupScheduleInfo) GetGroupId() string { +var xxx_messageInfo_SdkFilesystemTrimStartResponse proto.InternalMessageInfo + +func (m *SdkFilesystemTrimStartResponse) GetStatus() FilesystemTrim_FilesystemTrimStatus { if m != nil { - return m.GroupId + return m.Status } - return "" + return FilesystemTrim_FS_TRIM_UNKNOWN } -func (m *SdkCloudBackupScheduleInfo) GetLabels() map[string]string { +func (m *SdkFilesystemTrimStartResponse) GetMessage() string { if m != nil { - return m.Labels + return m.Message } - return nil + return "" } -// Defines a request to create a schedule for volume backups to a -// cloud provider -type SdkCloudBackupSchedCreateRequest struct { - // Cloud Backup Schedule info - CloudSchedInfo *SdkCloudBackupScheduleInfo `protobuf:"bytes,1,opt,name=cloud_sched_info,json=cloudSchedInfo" json:"cloud_sched_info,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// SdkFilesystemTrimStatusRequest defines a request to get status of a +// background filesystem trim operation +type SdkFilesystemTrimStatusRequest struct { + // Id of the volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Path where the volume is mounted + MountPath string `protobuf:"bytes,2,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupSchedCreateRequest) Reset() { *m = SdkCloudBackupSchedCreateRequest{} } -func (m *SdkCloudBackupSchedCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupSchedCreateRequest) ProtoMessage() {} -func (*SdkCloudBackupSchedCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{192} +func (m *SdkFilesystemTrimStatusRequest) Reset() { *m = SdkFilesystemTrimStatusRequest{} } +func (m *SdkFilesystemTrimStatusRequest) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemTrimStatusRequest) ProtoMessage() {} +func (*SdkFilesystemTrimStatusRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{269} } -func (m *SdkCloudBackupSchedCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupSchedCreateRequest.Unmarshal(m, b) +func (m *SdkFilesystemTrimStatusRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemTrimStatusRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupSchedCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupSchedCreateRequest.Marshal(b, m, deterministic) +func (m *SdkFilesystemTrimStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemTrimStatusRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupSchedCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupSchedCreateRequest.Merge(dst, src) +func (dst *SdkFilesystemTrimStatusRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemTrimStatusRequest.Merge(dst, src) } -func (m *SdkCloudBackupSchedCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupSchedCreateRequest.Size(m) +func (m *SdkFilesystemTrimStatusRequest) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemTrimStatusRequest.Size(m) } -func (m *SdkCloudBackupSchedCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupSchedCreateRequest.DiscardUnknown(m) +func (m *SdkFilesystemTrimStatusRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemTrimStatusRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupSchedCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemTrimStatusRequest proto.InternalMessageInfo -func (m *SdkCloudBackupSchedCreateRequest) GetCloudSchedInfo() *SdkCloudBackupScheduleInfo { +func (m *SdkFilesystemTrimStatusRequest) GetVolumeId() string { if m != nil { - return m.CloudSchedInfo + return m.VolumeId } - return nil + return "" } -// Defines a response containing the id of a schedule for a volume backup -// to a cloud provider -type SdkCloudBackupSchedCreateResponse struct { - // Id of newly created backup schedule - BackupScheduleId string `protobuf:"bytes,1,opt,name=backup_schedule_id,json=backupScheduleId" json:"backup_schedule_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkFilesystemTrimStatusRequest) GetMountPath() string { + if m != nil { + return m.MountPath + } + return "" } -func (m *SdkCloudBackupSchedCreateResponse) Reset() { *m = SdkCloudBackupSchedCreateResponse{} } -func (m *SdkCloudBackupSchedCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupSchedCreateResponse) ProtoMessage() {} -func (*SdkCloudBackupSchedCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{193} +// SdkFilesystemTrimStatusResponse defines the response for a +// SdkFilesystemTrimStatusRequest. +type SdkFilesystemTrimStatusResponse struct { + // Status code representing the state of the filesystem trim operation + Status FilesystemTrim_FilesystemTrimStatus `protobuf:"varint,1,opt,name=status,enum=openstorage.api.FilesystemTrim_FilesystemTrimStatus" json:"status,omitempty"` + // Text blob containing ASCII text providing details of the operation + Message string `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupSchedCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupSchedCreateResponse.Unmarshal(m, b) + +func (m *SdkFilesystemTrimStatusResponse) Reset() { *m = SdkFilesystemTrimStatusResponse{} } +func (m *SdkFilesystemTrimStatusResponse) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemTrimStatusResponse) ProtoMessage() {} +func (*SdkFilesystemTrimStatusResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{270} } -func (m *SdkCloudBackupSchedCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupSchedCreateResponse.Marshal(b, m, deterministic) +func (m *SdkFilesystemTrimStatusResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemTrimStatusResponse.Unmarshal(m, b) } -func (dst *SdkCloudBackupSchedCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupSchedCreateResponse.Merge(dst, src) +func (m *SdkFilesystemTrimStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemTrimStatusResponse.Marshal(b, m, deterministic) } -func (m *SdkCloudBackupSchedCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupSchedCreateResponse.Size(m) +func (dst *SdkFilesystemTrimStatusResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemTrimStatusResponse.Merge(dst, src) } -func (m *SdkCloudBackupSchedCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupSchedCreateResponse.DiscardUnknown(m) +func (m *SdkFilesystemTrimStatusResponse) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemTrimStatusResponse.Size(m) +} +func (m *SdkFilesystemTrimStatusResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemTrimStatusResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupSchedCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemTrimStatusResponse proto.InternalMessageInfo -func (m *SdkCloudBackupSchedCreateResponse) GetBackupScheduleId() string { +func (m *SdkFilesystemTrimStatusResponse) GetStatus() FilesystemTrim_FilesystemTrimStatus { if m != nil { - return m.BackupScheduleId + return m.Status + } + return FilesystemTrim_FS_TRIM_UNKNOWN +} + +func (m *SdkFilesystemTrimStatusResponse) GetMessage() string { + if m != nil { + return m.Message } return "" } -// Defines a request to update a schedule for volume backups to a -// cloud provider -type SdkCloudBackupSchedUpdateRequest struct { - // Cloud Backup Schedule info - CloudSchedInfo *SdkCloudBackupScheduleInfo `protobuf:"bytes,1,opt,name=cloud_sched_info,json=cloudSchedInfo" json:"cloud_sched_info,omitempty"` - SchedUuid string `protobuf:"bytes,2,opt,name=sched_uuid,json=schedUuid" json:"sched_uuid,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// SdkFilesystemTrimStopRequest defines a request to stop a background +// filesystem trim operation +type SdkFilesystemTrimStopRequest struct { + // Id of the volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Path where the volume is mounted + MountPath string `protobuf:"bytes,2,opt,name=mount_path,json=mountPath" json:"mount_path,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupSchedUpdateRequest) Reset() { *m = SdkCloudBackupSchedUpdateRequest{} } -func (m *SdkCloudBackupSchedUpdateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupSchedUpdateRequest) ProtoMessage() {} -func (*SdkCloudBackupSchedUpdateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{194} +func (m *SdkFilesystemTrimStopRequest) Reset() { *m = SdkFilesystemTrimStopRequest{} } +func (m *SdkFilesystemTrimStopRequest) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemTrimStopRequest) ProtoMessage() {} +func (*SdkFilesystemTrimStopRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{271} } -func (m *SdkCloudBackupSchedUpdateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.Unmarshal(m, b) +func (m *SdkFilesystemTrimStopRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemTrimStopRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupSchedUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.Marshal(b, m, deterministic) +func (m *SdkFilesystemTrimStopRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemTrimStopRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupSchedUpdateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.Merge(dst, src) +func (dst *SdkFilesystemTrimStopRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemTrimStopRequest.Merge(dst, src) } -func (m *SdkCloudBackupSchedUpdateRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.Size(m) +func (m *SdkFilesystemTrimStopRequest) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemTrimStopRequest.Size(m) } -func (m *SdkCloudBackupSchedUpdateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupSchedUpdateRequest.DiscardUnknown(m) +func (m *SdkFilesystemTrimStopRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemTrimStopRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupSchedUpdateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemTrimStopRequest proto.InternalMessageInfo -func (m *SdkCloudBackupSchedUpdateRequest) GetCloudSchedInfo() *SdkCloudBackupScheduleInfo { +func (m *SdkFilesystemTrimStopRequest) GetVolumeId() string { if m != nil { - return m.CloudSchedInfo + return m.VolumeId } - return nil + return "" } -func (m *SdkCloudBackupSchedUpdateRequest) GetSchedUuid() string { +func (m *SdkFilesystemTrimStopRequest) GetMountPath() string { if m != nil { - return m.SchedUuid + return m.MountPath } return "" } // Empty response -type SdkCloudBackupSchedUpdateResponse struct { +type SdkFilesystemTrimStopResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupSchedUpdateResponse) Reset() { *m = SdkCloudBackupSchedUpdateResponse{} } -func (m *SdkCloudBackupSchedUpdateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupSchedUpdateResponse) ProtoMessage() {} -func (*SdkCloudBackupSchedUpdateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{195} +func (m *SdkFilesystemTrimStopResponse) Reset() { *m = SdkFilesystemTrimStopResponse{} } +func (m *SdkFilesystemTrimStopResponse) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemTrimStopResponse) ProtoMessage() {} +func (*SdkFilesystemTrimStopResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{272} } -func (m *SdkCloudBackupSchedUpdateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.Unmarshal(m, b) +func (m *SdkFilesystemTrimStopResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemTrimStopResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupSchedUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.Marshal(b, m, deterministic) +func (m *SdkFilesystemTrimStopResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemTrimStopResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupSchedUpdateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.Merge(dst, src) +func (dst *SdkFilesystemTrimStopResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemTrimStopResponse.Merge(dst, src) } -func (m *SdkCloudBackupSchedUpdateResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.Size(m) +func (m *SdkFilesystemTrimStopResponse) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemTrimStopResponse.Size(m) } -func (m *SdkCloudBackupSchedUpdateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupSchedUpdateResponse.DiscardUnknown(m) +func (m *SdkFilesystemTrimStopResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemTrimStopResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupSchedUpdateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemTrimStopResponse proto.InternalMessageInfo -// Defines a request to delete a backup schedule -type SdkCloudBackupSchedDeleteRequest struct { - // Id of cloud backup to delete - BackupScheduleId string `protobuf:"bytes,1,opt,name=backup_schedule_id,json=backupScheduleId" json:"backup_schedule_id,omitempty"` +type FilesystemCheck struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupSchedDeleteRequest) Reset() { *m = SdkCloudBackupSchedDeleteRequest{} } -func (m *SdkCloudBackupSchedDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupSchedDeleteRequest) ProtoMessage() {} -func (*SdkCloudBackupSchedDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{196} +func (m *FilesystemCheck) Reset() { *m = FilesystemCheck{} } +func (m *FilesystemCheck) String() string { return proto.CompactTextString(m) } +func (*FilesystemCheck) ProtoMessage() {} +func (*FilesystemCheck) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{273} } -func (m *SdkCloudBackupSchedDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.Unmarshal(m, b) +func (m *FilesystemCheck) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FilesystemCheck.Unmarshal(m, b) } -func (m *SdkCloudBackupSchedDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.Marshal(b, m, deterministic) +func (m *FilesystemCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FilesystemCheck.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupSchedDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.Merge(dst, src) +func (dst *FilesystemCheck) XXX_Merge(src proto.Message) { + xxx_messageInfo_FilesystemCheck.Merge(dst, src) } -func (m *SdkCloudBackupSchedDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.Size(m) +func (m *FilesystemCheck) XXX_Size() int { + return xxx_messageInfo_FilesystemCheck.Size(m) } -func (m *SdkCloudBackupSchedDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupSchedDeleteRequest.DiscardUnknown(m) +func (m *FilesystemCheck) XXX_DiscardUnknown() { + xxx_messageInfo_FilesystemCheck.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupSchedDeleteRequest proto.InternalMessageInfo - -func (m *SdkCloudBackupSchedDeleteRequest) GetBackupScheduleId() string { - if m != nil { - return m.BackupScheduleId - } - return "" -} +var xxx_messageInfo_FilesystemCheck proto.InternalMessageInfo -// Empty response -type SdkCloudBackupSchedDeleteResponse struct { +// SdkFilesystemCheckStartRequest defines a request to start a background +// filesystem consistency check operation +type SdkFilesystemCheckStartRequest struct { + // Id of the volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Mode of operation + Mode string `protobuf:"bytes,2,opt,name=mode" json:"mode,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupSchedDeleteResponse) Reset() { *m = SdkCloudBackupSchedDeleteResponse{} } -func (m *SdkCloudBackupSchedDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupSchedDeleteResponse) ProtoMessage() {} -func (*SdkCloudBackupSchedDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{197} +func (m *SdkFilesystemCheckStartRequest) Reset() { *m = SdkFilesystemCheckStartRequest{} } +func (m *SdkFilesystemCheckStartRequest) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemCheckStartRequest) ProtoMessage() {} +func (*SdkFilesystemCheckStartRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{274} } -func (m *SdkCloudBackupSchedDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.Unmarshal(m, b) +func (m *SdkFilesystemCheckStartRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemCheckStartRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupSchedDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.Marshal(b, m, deterministic) +func (m *SdkFilesystemCheckStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemCheckStartRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupSchedDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.Merge(dst, src) +func (dst *SdkFilesystemCheckStartRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemCheckStartRequest.Merge(dst, src) } -func (m *SdkCloudBackupSchedDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.Size(m) +func (m *SdkFilesystemCheckStartRequest) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemCheckStartRequest.Size(m) } -func (m *SdkCloudBackupSchedDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupSchedDeleteResponse.DiscardUnknown(m) +func (m *SdkFilesystemCheckStartRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemCheckStartRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupSchedDeleteResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemCheckStartRequest proto.InternalMessageInfo -// Empty request -type SdkCloudBackupSchedEnumerateRequest struct { +func (m *SdkFilesystemCheckStartRequest) GetVolumeId() string { + if m != nil { + return m.VolumeId + } + return "" +} + +func (m *SdkFilesystemCheckStartRequest) GetMode() string { + if m != nil { + return m.Mode + } + return "" +} + +// SdkFilesystemCheckStartResponse defines the response for a +// SdkFilesystemCheckStartRequest. +type SdkFilesystemCheckStartResponse struct { + // Status code representing the state of the filesystem check operation + Status FilesystemCheck_FilesystemCheckStatus `protobuf:"varint,1,opt,name=status,enum=openstorage.api.FilesystemCheck_FilesystemCheckStatus" json:"status,omitempty"` + // Text blob containing ASCII text providing details of the operation + Message string `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupSchedEnumerateRequest) Reset() { *m = SdkCloudBackupSchedEnumerateRequest{} } -func (m *SdkCloudBackupSchedEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupSchedEnumerateRequest) ProtoMessage() {} -func (*SdkCloudBackupSchedEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{198} +func (m *SdkFilesystemCheckStartResponse) Reset() { *m = SdkFilesystemCheckStartResponse{} } +func (m *SdkFilesystemCheckStartResponse) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemCheckStartResponse) ProtoMessage() {} +func (*SdkFilesystemCheckStartResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{275} } -func (m *SdkCloudBackupSchedEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.Unmarshal(m, b) +func (m *SdkFilesystemCheckStartResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemCheckStartResponse.Unmarshal(m, b) } -func (m *SdkCloudBackupSchedEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkFilesystemCheckStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemCheckStartResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudBackupSchedEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.Merge(dst, src) +func (dst *SdkFilesystemCheckStartResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemCheckStartResponse.Merge(dst, src) } -func (m *SdkCloudBackupSchedEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.Size(m) +func (m *SdkFilesystemCheckStartResponse) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemCheckStartResponse.Size(m) } -func (m *SdkCloudBackupSchedEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest.DiscardUnknown(m) +func (m *SdkFilesystemCheckStartResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemCheckStartResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupSchedEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemCheckStartResponse proto.InternalMessageInfo -// Defines a response containing a map listing the schedules for volume -// backups to a cloud provider -type SdkCloudBackupSchedEnumerateResponse struct { - // Returns list of backup schedules - CloudSchedList map[string]*SdkCloudBackupScheduleInfo `protobuf:"bytes,1,rep,name=cloud_sched_list,json=cloudSchedList" json:"cloud_sched_list,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkFilesystemCheckStartResponse) GetStatus() FilesystemCheck_FilesystemCheckStatus { + if m != nil { + return m.Status + } + return FilesystemCheck_FS_CHECK_UNKNOWN } -func (m *SdkCloudBackupSchedEnumerateResponse) Reset() { *m = SdkCloudBackupSchedEnumerateResponse{} } -func (m *SdkCloudBackupSchedEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudBackupSchedEnumerateResponse) ProtoMessage() {} -func (*SdkCloudBackupSchedEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{199} +func (m *SdkFilesystemCheckStartResponse) GetMessage() string { + if m != nil { + return m.Message + } + return "" } -func (m *SdkCloudBackupSchedEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.Unmarshal(m, b) + +// SdkFilesystemCheckStatusRequest defines a request to get status of a +// background filesystem check operation +type SdkFilesystemCheckStatusRequest struct { + // Id of the volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudBackupSchedEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.Marshal(b, m, deterministic) + +func (m *SdkFilesystemCheckStatusRequest) Reset() { *m = SdkFilesystemCheckStatusRequest{} } +func (m *SdkFilesystemCheckStatusRequest) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemCheckStatusRequest) ProtoMessage() {} +func (*SdkFilesystemCheckStatusRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{276} } -func (dst *SdkCloudBackupSchedEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.Merge(dst, src) +func (m *SdkFilesystemCheckStatusRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemCheckStatusRequest.Unmarshal(m, b) } -func (m *SdkCloudBackupSchedEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.Size(m) +func (m *SdkFilesystemCheckStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemCheckStatusRequest.Marshal(b, m, deterministic) } -func (m *SdkCloudBackupSchedEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse.DiscardUnknown(m) +func (dst *SdkFilesystemCheckStatusRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemCheckStatusRequest.Merge(dst, src) +} +func (m *SdkFilesystemCheckStatusRequest) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemCheckStatusRequest.Size(m) +} +func (m *SdkFilesystemCheckStatusRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemCheckStatusRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudBackupSchedEnumerateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemCheckStatusRequest proto.InternalMessageInfo -func (m *SdkCloudBackupSchedEnumerateResponse) GetCloudSchedList() map[string]*SdkCloudBackupScheduleInfo { +func (m *SdkFilesystemCheckStatusRequest) GetVolumeId() string { if m != nil { - return m.CloudSchedList + return m.VolumeId } - return nil + return "" } -// -// SdkRule is the message used to construct custom roles in the OpenStorage SDK. -// -// ### Format -// The following shows the supported format for SdkRule: -// -// * Services: Is the gRPC service name in `OpenStorage` in lowercase -// * Apis: Is the API name in the service in lowercase -// -// Values can also be set to `*`, or start or end with `*` to allow multiple matches in services or apis. -// -// ### Examples -// -// * Allow any call: -// -// ```yaml -// SdkRule: -// - Services: ["*"] -// Apis: ["*"] -// ``` -// -// * Allow only cluster operations: -// -// ```yaml -// SdkRule: -// - services: ["cluster"] -// apis: ["*"] -// ``` -// -// * Allow inspection of any object and listings of only volumes -// -// ```yaml -// SdkRule: -// - Services: ["volumes"] -// Apis: ["*enumerate*"] -// - Services: ["*"] -// Apis: ["inspect*"] -// ``` -// -type SdkRule struct { - // The gRPC service name in `OpenStorage` in lowercase - Services []string `protobuf:"bytes,1,rep,name=services" json:"services,omitempty"` - // The API name in the service in lowercase - Apis []string `protobuf:"bytes,2,rep,name=apis" json:"apis,omitempty"` +// SdkFilesystemCheckStatusResponse defines the response for a +// SdkFilesystemCheckStatusRequest. +type SdkFilesystemCheckStatusResponse struct { + // Status code representing the state of the filesystem check operation + Status FilesystemCheck_FilesystemCheckStatus `protobuf:"varint,1,opt,name=status,enum=openstorage.api.FilesystemCheck_FilesystemCheckStatus" json:"status,omitempty"` + // Status code representing the health of the filesystem after a checkHealth + // operation + HealthStatus FilesystemHealthStatus `protobuf:"varint,2,opt,name=health_status,json=healthStatus,enum=openstorage.api.FilesystemHealthStatus" json:"health_status,omitempty"` + // Text string representing the mode of filesystem check operation + Mode string `protobuf:"bytes,3,opt,name=mode" json:"mode,omitempty"` + // Text blob containing ASCII text providing details of the operation + Message string `protobuf:"bytes,4,opt,name=message" json:"message,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkRule) Reset() { *m = SdkRule{} } -func (m *SdkRule) String() string { return proto.CompactTextString(m) } -func (*SdkRule) ProtoMessage() {} -func (*SdkRule) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{200} +func (m *SdkFilesystemCheckStatusResponse) Reset() { *m = SdkFilesystemCheckStatusResponse{} } +func (m *SdkFilesystemCheckStatusResponse) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemCheckStatusResponse) ProtoMessage() {} +func (*SdkFilesystemCheckStatusResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{277} } -func (m *SdkRule) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRule.Unmarshal(m, b) +func (m *SdkFilesystemCheckStatusResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemCheckStatusResponse.Unmarshal(m, b) } -func (m *SdkRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRule.Marshal(b, m, deterministic) +func (m *SdkFilesystemCheckStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemCheckStatusResponse.Marshal(b, m, deterministic) } -func (dst *SdkRule) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRule.Merge(dst, src) +func (dst *SdkFilesystemCheckStatusResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemCheckStatusResponse.Merge(dst, src) } -func (m *SdkRule) XXX_Size() int { - return xxx_messageInfo_SdkRule.Size(m) +func (m *SdkFilesystemCheckStatusResponse) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemCheckStatusResponse.Size(m) } -func (m *SdkRule) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRule.DiscardUnknown(m) +func (m *SdkFilesystemCheckStatusResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemCheckStatusResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkFilesystemCheckStatusResponse proto.InternalMessageInfo + +func (m *SdkFilesystemCheckStatusResponse) GetStatus() FilesystemCheck_FilesystemCheckStatus { + if m != nil { + return m.Status + } + return FilesystemCheck_FS_CHECK_UNKNOWN } -var xxx_messageInfo_SdkRule proto.InternalMessageInfo +func (m *SdkFilesystemCheckStatusResponse) GetHealthStatus() FilesystemHealthStatus { + if m != nil { + return m.HealthStatus + } + return FilesystemHealthStatus_FS_HEALTH_STATUS_UNKNOWN +} -func (m *SdkRule) GetServices() []string { +func (m *SdkFilesystemCheckStatusResponse) GetMode() string { if m != nil { - return m.Services + return m.Mode } - return nil + return "" } -func (m *SdkRule) GetApis() []string { +func (m *SdkFilesystemCheckStatusResponse) GetMessage() string { if m != nil { - return m.Apis + return m.Message } - return nil + return "" } -type SdkRole struct { - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - Rules []*SdkRule `protobuf:"bytes,2,rep,name=rules" json:"rules,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// SdkFilesystemCheckStopRequest defines a request to stop a background +// filesystem check operation +type SdkFilesystemCheckStopRequest struct { + // Id of the volume + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkRole) Reset() { *m = SdkRole{} } -func (m *SdkRole) String() string { return proto.CompactTextString(m) } -func (*SdkRole) ProtoMessage() {} -func (*SdkRole) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{201} +func (m *SdkFilesystemCheckStopRequest) Reset() { *m = SdkFilesystemCheckStopRequest{} } +func (m *SdkFilesystemCheckStopRequest) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemCheckStopRequest) ProtoMessage() {} +func (*SdkFilesystemCheckStopRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{278} } -func (m *SdkRole) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRole.Unmarshal(m, b) +func (m *SdkFilesystemCheckStopRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemCheckStopRequest.Unmarshal(m, b) } -func (m *SdkRole) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRole.Marshal(b, m, deterministic) +func (m *SdkFilesystemCheckStopRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemCheckStopRequest.Marshal(b, m, deterministic) } -func (dst *SdkRole) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRole.Merge(dst, src) +func (dst *SdkFilesystemCheckStopRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemCheckStopRequest.Merge(dst, src) } -func (m *SdkRole) XXX_Size() int { - return xxx_messageInfo_SdkRole.Size(m) +func (m *SdkFilesystemCheckStopRequest) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemCheckStopRequest.Size(m) } -func (m *SdkRole) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRole.DiscardUnknown(m) +func (m *SdkFilesystemCheckStopRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemCheckStopRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkRole proto.InternalMessageInfo +var xxx_messageInfo_SdkFilesystemCheckStopRequest proto.InternalMessageInfo -func (m *SdkRole) GetName() string { +func (m *SdkFilesystemCheckStopRequest) GetVolumeId() string { if m != nil { - return m.Name + return m.VolumeId } return "" } -func (m *SdkRole) GetRules() []*SdkRule { - if m != nil { - return m.Rules - } - return nil -} - -// Defines a request for creating a role -type SdkRoleCreateRequest struct { - // Role - Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` +// Empty response +type SdkFilesystemCheckStopResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkRoleCreateRequest) Reset() { *m = SdkRoleCreateRequest{} } -func (m *SdkRoleCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkRoleCreateRequest) ProtoMessage() {} -func (*SdkRoleCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{202} +func (m *SdkFilesystemCheckStopResponse) Reset() { *m = SdkFilesystemCheckStopResponse{} } +func (m *SdkFilesystemCheckStopResponse) String() string { return proto.CompactTextString(m) } +func (*SdkFilesystemCheckStopResponse) ProtoMessage() {} +func (*SdkFilesystemCheckStopResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{279} } -func (m *SdkRoleCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleCreateRequest.Unmarshal(m, b) +func (m *SdkFilesystemCheckStopResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkFilesystemCheckStopResponse.Unmarshal(m, b) } -func (m *SdkRoleCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleCreateRequest.Marshal(b, m, deterministic) +func (m *SdkFilesystemCheckStopResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkFilesystemCheckStopResponse.Marshal(b, m, deterministic) } -func (dst *SdkRoleCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleCreateRequest.Merge(dst, src) +func (dst *SdkFilesystemCheckStopResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkFilesystemCheckStopResponse.Merge(dst, src) } -func (m *SdkRoleCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkRoleCreateRequest.Size(m) +func (m *SdkFilesystemCheckStopResponse) XXX_Size() int { + return xxx_messageInfo_SdkFilesystemCheckStopResponse.Size(m) } -func (m *SdkRoleCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleCreateRequest.DiscardUnknown(m) +func (m *SdkFilesystemCheckStopResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkFilesystemCheckStopResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkRoleCreateRequest proto.InternalMessageInfo - -func (m *SdkRoleCreateRequest) GetRole() *SdkRole { - if m != nil { - return m.Role - } - return nil -} +var xxx_messageInfo_SdkFilesystemCheckStopResponse proto.InternalMessageInfo -// Response contains informaiton about the creation of the role -type SdkRoleCreateResponse struct { - // Role created - Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` +// Empty request +type SdkIdentityCapabilitiesRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkRoleCreateResponse) Reset() { *m = SdkRoleCreateResponse{} } -func (m *SdkRoleCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkRoleCreateResponse) ProtoMessage() {} -func (*SdkRoleCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{203} +func (m *SdkIdentityCapabilitiesRequest) Reset() { *m = SdkIdentityCapabilitiesRequest{} } +func (m *SdkIdentityCapabilitiesRequest) String() string { return proto.CompactTextString(m) } +func (*SdkIdentityCapabilitiesRequest) ProtoMessage() {} +func (*SdkIdentityCapabilitiesRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{280} } -func (m *SdkRoleCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleCreateResponse.Unmarshal(m, b) +func (m *SdkIdentityCapabilitiesRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkIdentityCapabilitiesRequest.Unmarshal(m, b) } -func (m *SdkRoleCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleCreateResponse.Marshal(b, m, deterministic) +func (m *SdkIdentityCapabilitiesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkIdentityCapabilitiesRequest.Marshal(b, m, deterministic) } -func (dst *SdkRoleCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleCreateResponse.Merge(dst, src) +func (dst *SdkIdentityCapabilitiesRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkIdentityCapabilitiesRequest.Merge(dst, src) } -func (m *SdkRoleCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkRoleCreateResponse.Size(m) +func (m *SdkIdentityCapabilitiesRequest) XXX_Size() int { + return xxx_messageInfo_SdkIdentityCapabilitiesRequest.Size(m) } -func (m *SdkRoleCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleCreateResponse.DiscardUnknown(m) +func (m *SdkIdentityCapabilitiesRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkIdentityCapabilitiesRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkRoleCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkIdentityCapabilitiesRequest proto.InternalMessageInfo -func (m *SdkRoleCreateResponse) GetRole() *SdkRole { +// Defines a response containing the capabilites of the cluster +type SdkIdentityCapabilitiesResponse struct { + // Provides all the capabilites supported by the cluster + Capabilities []*SdkServiceCapability `protobuf:"bytes,1,rep,name=capabilities" json:"capabilities,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkIdentityCapabilitiesResponse) Reset() { *m = SdkIdentityCapabilitiesResponse{} } +func (m *SdkIdentityCapabilitiesResponse) String() string { return proto.CompactTextString(m) } +func (*SdkIdentityCapabilitiesResponse) ProtoMessage() {} +func (*SdkIdentityCapabilitiesResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{281} +} +func (m *SdkIdentityCapabilitiesResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkIdentityCapabilitiesResponse.Unmarshal(m, b) +} +func (m *SdkIdentityCapabilitiesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkIdentityCapabilitiesResponse.Marshal(b, m, deterministic) +} +func (dst *SdkIdentityCapabilitiesResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkIdentityCapabilitiesResponse.Merge(dst, src) +} +func (m *SdkIdentityCapabilitiesResponse) XXX_Size() int { + return xxx_messageInfo_SdkIdentityCapabilitiesResponse.Size(m) +} +func (m *SdkIdentityCapabilitiesResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkIdentityCapabilitiesResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkIdentityCapabilitiesResponse proto.InternalMessageInfo + +func (m *SdkIdentityCapabilitiesResponse) GetCapabilities() []*SdkServiceCapability { if m != nil { - return m.Role + return m.Capabilities } return nil } // Empty request -type SdkRoleEnumerateRequest struct { +type SdkIdentityVersionRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkRoleEnumerateRequest) Reset() { *m = SdkRoleEnumerateRequest{} } -func (m *SdkRoleEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkRoleEnumerateRequest) ProtoMessage() {} -func (*SdkRoleEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{204} +func (m *SdkIdentityVersionRequest) Reset() { *m = SdkIdentityVersionRequest{} } +func (m *SdkIdentityVersionRequest) String() string { return proto.CompactTextString(m) } +func (*SdkIdentityVersionRequest) ProtoMessage() {} +func (*SdkIdentityVersionRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{282} } -func (m *SdkRoleEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleEnumerateRequest.Unmarshal(m, b) +func (m *SdkIdentityVersionRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkIdentityVersionRequest.Unmarshal(m, b) } -func (m *SdkRoleEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleEnumerateRequest.Marshal(b, m, deterministic) +func (m *SdkIdentityVersionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkIdentityVersionRequest.Marshal(b, m, deterministic) } -func (dst *SdkRoleEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleEnumerateRequest.Merge(dst, src) +func (dst *SdkIdentityVersionRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkIdentityVersionRequest.Merge(dst, src) } -func (m *SdkRoleEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkRoleEnumerateRequest.Size(m) +func (m *SdkIdentityVersionRequest) XXX_Size() int { + return xxx_messageInfo_SdkIdentityVersionRequest.Size(m) } -func (m *SdkRoleEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleEnumerateRequest.DiscardUnknown(m) +func (m *SdkIdentityVersionRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkIdentityVersionRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkRoleEnumerateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkIdentityVersionRequest proto.InternalMessageInfo -// Respose to enumerate all roles -type SdkRoleEnumerateResponse struct { - // List of role names - Names []string `protobuf:"bytes,1,rep,name=names" json:"names,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response containing version information +type SdkIdentityVersionResponse struct { + // OpenStorage SDK version used by the server + SdkVersion *SdkVersion `protobuf:"bytes,1,opt,name=sdk_version,json=sdkVersion" json:"sdk_version,omitempty"` + // Version information about the storage system + Version *StorageVersion `protobuf:"bytes,2,opt,name=version" json:"version,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkIdentityVersionResponse) Reset() { *m = SdkIdentityVersionResponse{} } +func (m *SdkIdentityVersionResponse) String() string { return proto.CompactTextString(m) } +func (*SdkIdentityVersionResponse) ProtoMessage() {} +func (*SdkIdentityVersionResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{283} +} +func (m *SdkIdentityVersionResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkIdentityVersionResponse.Unmarshal(m, b) +} +func (m *SdkIdentityVersionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkIdentityVersionResponse.Marshal(b, m, deterministic) +} +func (dst *SdkIdentityVersionResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkIdentityVersionResponse.Merge(dst, src) +} +func (m *SdkIdentityVersionResponse) XXX_Size() int { + return xxx_messageInfo_SdkIdentityVersionResponse.Size(m) +} +func (m *SdkIdentityVersionResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkIdentityVersionResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkIdentityVersionResponse proto.InternalMessageInfo + +func (m *SdkIdentityVersionResponse) GetSdkVersion() *SdkVersion { + if m != nil { + return m.SdkVersion + } + return nil +} + +func (m *SdkIdentityVersionResponse) GetVersion() *StorageVersion { + if m != nil { + return m.Version + } + return nil +} + +// Defines a capability of he cluster +type SdkServiceCapability struct { + // Use oneof to have only one type of service defined making it + // future proof to add other types. + // + // Types that are valid to be assigned to Type: + // *SdkServiceCapability_Service + Type isSdkServiceCapability_Type `protobuf_oneof:"type"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkServiceCapability) Reset() { *m = SdkServiceCapability{} } +func (m *SdkServiceCapability) String() string { return proto.CompactTextString(m) } +func (*SdkServiceCapability) ProtoMessage() {} +func (*SdkServiceCapability) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{284} +} +func (m *SdkServiceCapability) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkServiceCapability.Unmarshal(m, b) } - -func (m *SdkRoleEnumerateResponse) Reset() { *m = SdkRoleEnumerateResponse{} } -func (m *SdkRoleEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkRoleEnumerateResponse) ProtoMessage() {} -func (*SdkRoleEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{205} +func (m *SdkServiceCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkServiceCapability.Marshal(b, m, deterministic) } -func (m *SdkRoleEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleEnumerateResponse.Unmarshal(m, b) +func (dst *SdkServiceCapability) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkServiceCapability.Merge(dst, src) } -func (m *SdkRoleEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleEnumerateResponse.Marshal(b, m, deterministic) +func (m *SdkServiceCapability) XXX_Size() int { + return xxx_messageInfo_SdkServiceCapability.Size(m) } -func (dst *SdkRoleEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleEnumerateResponse.Merge(dst, src) +func (m *SdkServiceCapability) XXX_DiscardUnknown() { + xxx_messageInfo_SdkServiceCapability.DiscardUnknown(m) } -func (m *SdkRoleEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkRoleEnumerateResponse.Size(m) + +var xxx_messageInfo_SdkServiceCapability proto.InternalMessageInfo + +type isSdkServiceCapability_Type interface { + isSdkServiceCapability_Type() } -func (m *SdkRoleEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleEnumerateResponse.DiscardUnknown(m) + +type SdkServiceCapability_Service struct { + Service *SdkServiceCapability_OpenStorageService `protobuf:"bytes,1,opt,name=service,oneof"` } -var xxx_messageInfo_SdkRoleEnumerateResponse proto.InternalMessageInfo +func (*SdkServiceCapability_Service) isSdkServiceCapability_Type() {} -func (m *SdkRoleEnumerateResponse) GetNames() []string { +func (m *SdkServiceCapability) GetType() isSdkServiceCapability_Type { if m != nil { - return m.Names + return m.Type } return nil } -// Defines a request to inspect a role -type SdkRoleInspectRequest struct { - // Name of role - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *SdkServiceCapability) GetService() *SdkServiceCapability_OpenStorageService { + if x, ok := m.GetType().(*SdkServiceCapability_Service); ok { + return x.Service + } + return nil } -func (m *SdkRoleInspectRequest) Reset() { *m = SdkRoleInspectRequest{} } -func (m *SdkRoleInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkRoleInspectRequest) ProtoMessage() {} -func (*SdkRoleInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{206} -} -func (m *SdkRoleInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleInspectRequest.Unmarshal(m, b) -} -func (m *SdkRoleInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleInspectRequest.Marshal(b, m, deterministic) -} -func (dst *SdkRoleInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleInspectRequest.Merge(dst, src) -} -func (m *SdkRoleInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkRoleInspectRequest.Size(m) +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SdkServiceCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SdkServiceCapability_OneofMarshaler, _SdkServiceCapability_OneofUnmarshaler, _SdkServiceCapability_OneofSizer, []interface{}{ + (*SdkServiceCapability_Service)(nil), + } } -func (m *SdkRoleInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleInspectRequest.DiscardUnknown(m) + +func _SdkServiceCapability_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SdkServiceCapability) + // type + switch x := m.Type.(type) { + case *SdkServiceCapability_Service: + b.EncodeVarint(1<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Service); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("SdkServiceCapability.Type has unexpected type %T", x) + } + return nil } -var xxx_messageInfo_SdkRoleInspectRequest proto.InternalMessageInfo +func _SdkServiceCapability_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SdkServiceCapability) + switch tag { + case 1: // type.service + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkServiceCapability_OpenStorageService) + err := b.DecodeMessage(msg) + m.Type = &SdkServiceCapability_Service{msg} + return true, err + default: + return false, nil + } +} -func (m *SdkRoleInspectRequest) GetName() string { - if m != nil { - return m.Name +func _SdkServiceCapability_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SdkServiceCapability) + // type + switch x := m.Type.(type) { + case *SdkServiceCapability_Service: + s := proto.Size(x.Service) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) } - return "" + return n } -// Response to inspection request -type SdkRoleInspectResponse struct { - // Role requested - Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type SdkServiceCapability_OpenStorageService struct { + // Type of service supported + Type SdkServiceCapability_OpenStorageService_Type `protobuf:"varint,1,opt,name=type,enum=openstorage.api.SdkServiceCapability_OpenStorageService_Type" json:"type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkRoleInspectResponse) Reset() { *m = SdkRoleInspectResponse{} } -func (m *SdkRoleInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkRoleInspectResponse) ProtoMessage() {} -func (*SdkRoleInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{207} +func (m *SdkServiceCapability_OpenStorageService) Reset() { + *m = SdkServiceCapability_OpenStorageService{} } -func (m *SdkRoleInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleInspectResponse.Unmarshal(m, b) +func (m *SdkServiceCapability_OpenStorageService) String() string { return proto.CompactTextString(m) } +func (*SdkServiceCapability_OpenStorageService) ProtoMessage() {} +func (*SdkServiceCapability_OpenStorageService) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{284, 0} } -func (m *SdkRoleInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleInspectResponse.Marshal(b, m, deterministic) +func (m *SdkServiceCapability_OpenStorageService) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkServiceCapability_OpenStorageService.Unmarshal(m, b) } -func (dst *SdkRoleInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleInspectResponse.Merge(dst, src) +func (m *SdkServiceCapability_OpenStorageService) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkServiceCapability_OpenStorageService.Marshal(b, m, deterministic) } -func (m *SdkRoleInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkRoleInspectResponse.Size(m) +func (dst *SdkServiceCapability_OpenStorageService) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkServiceCapability_OpenStorageService.Merge(dst, src) } -func (m *SdkRoleInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleInspectResponse.DiscardUnknown(m) +func (m *SdkServiceCapability_OpenStorageService) XXX_Size() int { + return xxx_messageInfo_SdkServiceCapability_OpenStorageService.Size(m) +} +func (m *SdkServiceCapability_OpenStorageService) XXX_DiscardUnknown() { + xxx_messageInfo_SdkServiceCapability_OpenStorageService.DiscardUnknown(m) } -var xxx_messageInfo_SdkRoleInspectResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkServiceCapability_OpenStorageService proto.InternalMessageInfo -func (m *SdkRoleInspectResponse) GetRole() *SdkRole { +func (m *SdkServiceCapability_OpenStorageService) GetType() SdkServiceCapability_OpenStorageService_Type { if m != nil { - return m.Role + return m.Type } - return nil + return SdkServiceCapability_OpenStorageService_UNKNOWN } -// Defines a request to delete a role -type SdkRoleDeleteRequest struct { - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` +// SDK version in Major.Minor.Patch format. The goal of this +// message is to provide clients a method to determine the SDK +// version run by an SDK server. +type SdkVersion struct { + // SDK version major number + Major int32 `protobuf:"varint,1,opt,name=major" json:"major,omitempty"` + // SDK version minor number + Minor int32 `protobuf:"varint,2,opt,name=minor" json:"minor,omitempty"` + // SDK version patch number + Patch int32 `protobuf:"varint,3,opt,name=patch" json:"patch,omitempty"` + // String representation of the SDK version. Must be + // in `major.minor.patch` format. + Version string `protobuf:"bytes,4,opt,name=version" json:"version,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkRoleDeleteRequest) Reset() { *m = SdkRoleDeleteRequest{} } -func (m *SdkRoleDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkRoleDeleteRequest) ProtoMessage() {} -func (*SdkRoleDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{208} +func (m *SdkVersion) Reset() { *m = SdkVersion{} } +func (m *SdkVersion) String() string { return proto.CompactTextString(m) } +func (*SdkVersion) ProtoMessage() {} +func (*SdkVersion) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{285} } -func (m *SdkRoleDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleDeleteRequest.Unmarshal(m, b) +func (m *SdkVersion) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVersion.Unmarshal(m, b) } -func (m *SdkRoleDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleDeleteRequest.Marshal(b, m, deterministic) +func (m *SdkVersion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVersion.Marshal(b, m, deterministic) } -func (dst *SdkRoleDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleDeleteRequest.Merge(dst, src) +func (dst *SdkVersion) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVersion.Merge(dst, src) } -func (m *SdkRoleDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkRoleDeleteRequest.Size(m) +func (m *SdkVersion) XXX_Size() int { + return xxx_messageInfo_SdkVersion.Size(m) } -func (m *SdkRoleDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleDeleteRequest.DiscardUnknown(m) +func (m *SdkVersion) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVersion.DiscardUnknown(m) } -var xxx_messageInfo_SdkRoleDeleteRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkVersion proto.InternalMessageInfo -func (m *SdkRoleDeleteRequest) GetName() string { +func (m *SdkVersion) GetMajor() int32 { if m != nil { - return m.Name + return m.Major + } + return 0 +} + +func (m *SdkVersion) GetMinor() int32 { + if m != nil { + return m.Minor + } + return 0 +} + +func (m *SdkVersion) GetPatch() int32 { + if m != nil { + return m.Patch + } + return 0 +} + +func (m *SdkVersion) GetVersion() string { + if m != nil { + return m.Version } return "" } -// Empty response -type SdkRoleDeleteResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Version information about the storage system +type StorageVersion struct { + // OpenStorage driver name + Driver string `protobuf:"bytes,1,opt,name=driver" json:"driver,omitempty"` + // Version of the server + Version string `protobuf:"bytes,2,opt,name=version" json:"version,omitempty"` + // Extra information provided by the storage system + Details map[string]string `protobuf:"bytes,3,rep,name=details" json:"details,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkRoleDeleteResponse) Reset() { *m = SdkRoleDeleteResponse{} } -func (m *SdkRoleDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkRoleDeleteResponse) ProtoMessage() {} -func (*SdkRoleDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{209} +func (m *StorageVersion) Reset() { *m = StorageVersion{} } +func (m *StorageVersion) String() string { return proto.CompactTextString(m) } +func (*StorageVersion) ProtoMessage() {} +func (*StorageVersion) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{286} } -func (m *SdkRoleDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleDeleteResponse.Unmarshal(m, b) +func (m *StorageVersion) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_StorageVersion.Unmarshal(m, b) } -func (m *SdkRoleDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleDeleteResponse.Marshal(b, m, deterministic) +func (m *StorageVersion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_StorageVersion.Marshal(b, m, deterministic) } -func (dst *SdkRoleDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleDeleteResponse.Merge(dst, src) +func (dst *StorageVersion) XXX_Merge(src proto.Message) { + xxx_messageInfo_StorageVersion.Merge(dst, src) } -func (m *SdkRoleDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkRoleDeleteResponse.Size(m) +func (m *StorageVersion) XXX_Size() int { + return xxx_messageInfo_StorageVersion.Size(m) } -func (m *SdkRoleDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleDeleteResponse.DiscardUnknown(m) +func (m *StorageVersion) XXX_DiscardUnknown() { + xxx_messageInfo_StorageVersion.DiscardUnknown(m) } -var xxx_messageInfo_SdkRoleDeleteResponse proto.InternalMessageInfo +var xxx_messageInfo_StorageVersion proto.InternalMessageInfo -// Defines a request to update an existing role -type SdkRoleUpdateRequest struct { - // New role update - Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *StorageVersion) GetDriver() string { + if m != nil { + return m.Driver + } + return "" } -func (m *SdkRoleUpdateRequest) Reset() { *m = SdkRoleUpdateRequest{} } -func (m *SdkRoleUpdateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkRoleUpdateRequest) ProtoMessage() {} -func (*SdkRoleUpdateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{210} -} -func (m *SdkRoleUpdateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleUpdateRequest.Unmarshal(m, b) -} -func (m *SdkRoleUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleUpdateRequest.Marshal(b, m, deterministic) -} -func (dst *SdkRoleUpdateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleUpdateRequest.Merge(dst, src) -} -func (m *SdkRoleUpdateRequest) XXX_Size() int { - return xxx_messageInfo_SdkRoleUpdateRequest.Size(m) -} -func (m *SdkRoleUpdateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleUpdateRequest.DiscardUnknown(m) +func (m *StorageVersion) GetVersion() string { + if m != nil { + return m.Version + } + return "" } -var xxx_messageInfo_SdkRoleUpdateRequest proto.InternalMessageInfo - -func (m *SdkRoleUpdateRequest) GetRole() *SdkRole { +func (m *StorageVersion) GetDetails() map[string]string { if m != nil { - return m.Role + return m.Details } return nil } -// Response contains information about the updated role -type SdkRoleUpdateResponse struct { - // Role updated - Role *SdkRole `protobuf:"bytes,1,opt,name=role" json:"role,omitempty"` +type CloudMigrate struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkRoleUpdateResponse) Reset() { *m = SdkRoleUpdateResponse{} } -func (m *SdkRoleUpdateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkRoleUpdateResponse) ProtoMessage() {} -func (*SdkRoleUpdateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{211} +func (m *CloudMigrate) Reset() { *m = CloudMigrate{} } +func (m *CloudMigrate) String() string { return proto.CompactTextString(m) } +func (*CloudMigrate) ProtoMessage() {} +func (*CloudMigrate) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{287} } -func (m *SdkRoleUpdateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkRoleUpdateResponse.Unmarshal(m, b) +func (m *CloudMigrate) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudMigrate.Unmarshal(m, b) } -func (m *SdkRoleUpdateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkRoleUpdateResponse.Marshal(b, m, deterministic) +func (m *CloudMigrate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudMigrate.Marshal(b, m, deterministic) } -func (dst *SdkRoleUpdateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkRoleUpdateResponse.Merge(dst, src) +func (dst *CloudMigrate) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudMigrate.Merge(dst, src) } -func (m *SdkRoleUpdateResponse) XXX_Size() int { - return xxx_messageInfo_SdkRoleUpdateResponse.Size(m) +func (m *CloudMigrate) XXX_Size() int { + return xxx_messageInfo_CloudMigrate.Size(m) } -func (m *SdkRoleUpdateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkRoleUpdateResponse.DiscardUnknown(m) +func (m *CloudMigrate) XXX_DiscardUnknown() { + xxx_messageInfo_CloudMigrate.DiscardUnknown(m) } -var xxx_messageInfo_SdkRoleUpdateResponse proto.InternalMessageInfo - -func (m *SdkRoleUpdateResponse) GetRole() *SdkRole { - if m != nil { - return m.Role - } - return nil -} +var xxx_messageInfo_CloudMigrate proto.InternalMessageInfo -// Empty request -type SdkIdentityCapabilitiesRequest struct { +// Request to start a cloud migration +type CloudMigrateStartRequest struct { + // The type of operation to start + Operation CloudMigrate_OperationType `protobuf:"varint,1,opt,name=operation,enum=openstorage.api.CloudMigrate_OperationType" json:"operation,omitempty"` + // ID of the cluster to which volumes are to be migrated + ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` + // Depending on the operation type this can be a VolumeID or VolumeGroupID + TargetId string `protobuf:"bytes,3,opt,name=target_id,json=targetId" json:"target_id,omitempty"` + // (Optional) Unique TaskId assocaiated with this migration. If not provided one will + // be generated and returned in the response + TaskId string `protobuf:"bytes,4,opt,name=task_id,json=taskId" json:"task_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkIdentityCapabilitiesRequest) Reset() { *m = SdkIdentityCapabilitiesRequest{} } -func (m *SdkIdentityCapabilitiesRequest) String() string { return proto.CompactTextString(m) } -func (*SdkIdentityCapabilitiesRequest) ProtoMessage() {} -func (*SdkIdentityCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{212} +func (m *CloudMigrateStartRequest) Reset() { *m = CloudMigrateStartRequest{} } +func (m *CloudMigrateStartRequest) String() string { return proto.CompactTextString(m) } +func (*CloudMigrateStartRequest) ProtoMessage() {} +func (*CloudMigrateStartRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{288} } -func (m *SdkIdentityCapabilitiesRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkIdentityCapabilitiesRequest.Unmarshal(m, b) +func (m *CloudMigrateStartRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudMigrateStartRequest.Unmarshal(m, b) } -func (m *SdkIdentityCapabilitiesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkIdentityCapabilitiesRequest.Marshal(b, m, deterministic) +func (m *CloudMigrateStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudMigrateStartRequest.Marshal(b, m, deterministic) } -func (dst *SdkIdentityCapabilitiesRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkIdentityCapabilitiesRequest.Merge(dst, src) +func (dst *CloudMigrateStartRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudMigrateStartRequest.Merge(dst, src) } -func (m *SdkIdentityCapabilitiesRequest) XXX_Size() int { - return xxx_messageInfo_SdkIdentityCapabilitiesRequest.Size(m) +func (m *CloudMigrateStartRequest) XXX_Size() int { + return xxx_messageInfo_CloudMigrateStartRequest.Size(m) } -func (m *SdkIdentityCapabilitiesRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkIdentityCapabilitiesRequest.DiscardUnknown(m) +func (m *CloudMigrateStartRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CloudMigrateStartRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkIdentityCapabilitiesRequest proto.InternalMessageInfo +var xxx_messageInfo_CloudMigrateStartRequest proto.InternalMessageInfo -// Defines a response containing the capabilites of the cluster -type SdkIdentityCapabilitiesResponse struct { - // Provides all the capabilites supported by the cluster - Capabilities []*SdkServiceCapability `protobuf:"bytes,1,rep,name=capabilities" json:"capabilities,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *CloudMigrateStartRequest) GetOperation() CloudMigrate_OperationType { + if m != nil { + return m.Operation + } + return CloudMigrate_InvalidType } -func (m *SdkIdentityCapabilitiesResponse) Reset() { *m = SdkIdentityCapabilitiesResponse{} } -func (m *SdkIdentityCapabilitiesResponse) String() string { return proto.CompactTextString(m) } -func (*SdkIdentityCapabilitiesResponse) ProtoMessage() {} -func (*SdkIdentityCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{213} -} -func (m *SdkIdentityCapabilitiesResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkIdentityCapabilitiesResponse.Unmarshal(m, b) -} -func (m *SdkIdentityCapabilitiesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkIdentityCapabilitiesResponse.Marshal(b, m, deterministic) -} -func (dst *SdkIdentityCapabilitiesResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkIdentityCapabilitiesResponse.Merge(dst, src) -} -func (m *SdkIdentityCapabilitiesResponse) XXX_Size() int { - return xxx_messageInfo_SdkIdentityCapabilitiesResponse.Size(m) -} -func (m *SdkIdentityCapabilitiesResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkIdentityCapabilitiesResponse.DiscardUnknown(m) +func (m *CloudMigrateStartRequest) GetClusterId() string { + if m != nil { + return m.ClusterId + } + return "" } -var xxx_messageInfo_SdkIdentityCapabilitiesResponse proto.InternalMessageInfo - -func (m *SdkIdentityCapabilitiesResponse) GetCapabilities() []*SdkServiceCapability { +func (m *CloudMigrateStartRequest) GetTargetId() string { if m != nil { - return m.Capabilities + return m.TargetId } - return nil + return "" } -// Empty request -type SdkIdentityVersionRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *CloudMigrateStartRequest) GetTaskId() string { + if m != nil { + return m.TaskId + } + return "" } -func (m *SdkIdentityVersionRequest) Reset() { *m = SdkIdentityVersionRequest{} } -func (m *SdkIdentityVersionRequest) String() string { return proto.CompactTextString(m) } -func (*SdkIdentityVersionRequest) ProtoMessage() {} -func (*SdkIdentityVersionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{214} +// Defines a migration request +type SdkCloudMigrateStartRequest struct { + // ID of the cluster to which volumes are to be migrated + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` + // Unique name assocaiated with this migration. + // This is a Optional field for idempotency + TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId" json:"task_id,omitempty"` + // Types that are valid to be assigned to Opt: + // *SdkCloudMigrateStartRequest_Volume + // *SdkCloudMigrateStartRequest_VolumeGroup + // *SdkCloudMigrateStartRequest_AllVolumes + Opt isSdkCloudMigrateStartRequest_Opt `protobuf_oneof:"opt"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkIdentityVersionRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkIdentityVersionRequest.Unmarshal(m, b) + +func (m *SdkCloudMigrateStartRequest) Reset() { *m = SdkCloudMigrateStartRequest{} } +func (m *SdkCloudMigrateStartRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudMigrateStartRequest) ProtoMessage() {} +func (*SdkCloudMigrateStartRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{289} } -func (m *SdkIdentityVersionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkIdentityVersionRequest.Marshal(b, m, deterministic) +func (m *SdkCloudMigrateStartRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateStartRequest.Unmarshal(m, b) } -func (dst *SdkIdentityVersionRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkIdentityVersionRequest.Merge(dst, src) +func (m *SdkCloudMigrateStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateStartRequest.Marshal(b, m, deterministic) } -func (m *SdkIdentityVersionRequest) XXX_Size() int { - return xxx_messageInfo_SdkIdentityVersionRequest.Size(m) +func (dst *SdkCloudMigrateStartRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateStartRequest.Merge(dst, src) } -func (m *SdkIdentityVersionRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkIdentityVersionRequest.DiscardUnknown(m) +func (m *SdkCloudMigrateStartRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateStartRequest.Size(m) +} +func (m *SdkCloudMigrateStartRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateStartRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkIdentityVersionRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudMigrateStartRequest proto.InternalMessageInfo -// Defines a response containing version information -type SdkIdentityVersionResponse struct { - // OpenStorage SDK version used by the server - SdkVersion *SdkVersion `protobuf:"bytes,1,opt,name=sdk_version,json=sdkVersion" json:"sdk_version,omitempty"` - // Version information about the storage system - Version *StorageVersion `protobuf:"bytes,2,opt,name=version" json:"version,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type isSdkCloudMigrateStartRequest_Opt interface { + isSdkCloudMigrateStartRequest_Opt() } -func (m *SdkIdentityVersionResponse) Reset() { *m = SdkIdentityVersionResponse{} } -func (m *SdkIdentityVersionResponse) String() string { return proto.CompactTextString(m) } -func (*SdkIdentityVersionResponse) ProtoMessage() {} -func (*SdkIdentityVersionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{215} -} -func (m *SdkIdentityVersionResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkIdentityVersionResponse.Unmarshal(m, b) -} -func (m *SdkIdentityVersionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkIdentityVersionResponse.Marshal(b, m, deterministic) -} -func (dst *SdkIdentityVersionResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkIdentityVersionResponse.Merge(dst, src) +type SdkCloudMigrateStartRequest_Volume struct { + Volume *SdkCloudMigrateStartRequest_MigrateVolume `protobuf:"bytes,200,opt,name=volume,oneof"` } -func (m *SdkIdentityVersionResponse) XXX_Size() int { - return xxx_messageInfo_SdkIdentityVersionResponse.Size(m) +type SdkCloudMigrateStartRequest_VolumeGroup struct { + VolumeGroup *SdkCloudMigrateStartRequest_MigrateVolumeGroup `protobuf:"bytes,201,opt,name=volume_group,json=volumeGroup,oneof"` } -func (m *SdkIdentityVersionResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkIdentityVersionResponse.DiscardUnknown(m) +type SdkCloudMigrateStartRequest_AllVolumes struct { + AllVolumes *SdkCloudMigrateStartRequest_MigrateAllVolumes `protobuf:"bytes,202,opt,name=all_volumes,json=allVolumes,oneof"` } -var xxx_messageInfo_SdkIdentityVersionResponse proto.InternalMessageInfo +func (*SdkCloudMigrateStartRequest_Volume) isSdkCloudMigrateStartRequest_Opt() {} +func (*SdkCloudMigrateStartRequest_VolumeGroup) isSdkCloudMigrateStartRequest_Opt() {} +func (*SdkCloudMigrateStartRequest_AllVolumes) isSdkCloudMigrateStartRequest_Opt() {} -func (m *SdkIdentityVersionResponse) GetSdkVersion() *SdkVersion { +func (m *SdkCloudMigrateStartRequest) GetOpt() isSdkCloudMigrateStartRequest_Opt { if m != nil { - return m.SdkVersion + return m.Opt } return nil } -func (m *SdkIdentityVersionResponse) GetVersion() *StorageVersion { +func (m *SdkCloudMigrateStartRequest) GetClusterId() string { if m != nil { - return m.Version + return m.ClusterId } - return nil -} - -// Defines a capability of he cluster -type SdkServiceCapability struct { - // Use oneof to have only one type of service defined making it - // future proof to add other types. - // - // Types that are valid to be assigned to Type: - // *SdkServiceCapability_Service - Type isSdkServiceCapability_Type `protobuf_oneof:"type"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *SdkServiceCapability) Reset() { *m = SdkServiceCapability{} } -func (m *SdkServiceCapability) String() string { return proto.CompactTextString(m) } -func (*SdkServiceCapability) ProtoMessage() {} -func (*SdkServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{216} -} -func (m *SdkServiceCapability) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkServiceCapability.Unmarshal(m, b) -} -func (m *SdkServiceCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkServiceCapability.Marshal(b, m, deterministic) -} -func (dst *SdkServiceCapability) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkServiceCapability.Merge(dst, src) -} -func (m *SdkServiceCapability) XXX_Size() int { - return xxx_messageInfo_SdkServiceCapability.Size(m) -} -func (m *SdkServiceCapability) XXX_DiscardUnknown() { - xxx_messageInfo_SdkServiceCapability.DiscardUnknown(m) + return "" } -var xxx_messageInfo_SdkServiceCapability proto.InternalMessageInfo - -type isSdkServiceCapability_Type interface { - isSdkServiceCapability_Type() +func (m *SdkCloudMigrateStartRequest) GetTaskId() string { + if m != nil { + return m.TaskId + } + return "" } -type SdkServiceCapability_Service struct { - Service *SdkServiceCapability_OpenStorageService `protobuf:"bytes,1,opt,name=service,oneof"` +func (m *SdkCloudMigrateStartRequest) GetVolume() *SdkCloudMigrateStartRequest_MigrateVolume { + if x, ok := m.GetOpt().(*SdkCloudMigrateStartRequest_Volume); ok { + return x.Volume + } + return nil } -func (*SdkServiceCapability_Service) isSdkServiceCapability_Type() {} - -func (m *SdkServiceCapability) GetType() isSdkServiceCapability_Type { - if m != nil { - return m.Type +func (m *SdkCloudMigrateStartRequest) GetVolumeGroup() *SdkCloudMigrateStartRequest_MigrateVolumeGroup { + if x, ok := m.GetOpt().(*SdkCloudMigrateStartRequest_VolumeGroup); ok { + return x.VolumeGroup } return nil } -func (m *SdkServiceCapability) GetService() *SdkServiceCapability_OpenStorageService { - if x, ok := m.GetType().(*SdkServiceCapability_Service); ok { - return x.Service +func (m *SdkCloudMigrateStartRequest) GetAllVolumes() *SdkCloudMigrateStartRequest_MigrateAllVolumes { + if x, ok := m.GetOpt().(*SdkCloudMigrateStartRequest_AllVolumes); ok { + return x.AllVolumes } return nil } // XXX_OneofFuncs is for the internal use of the proto package. -func (*SdkServiceCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _SdkServiceCapability_OneofMarshaler, _SdkServiceCapability_OneofUnmarshaler, _SdkServiceCapability_OneofSizer, []interface{}{ - (*SdkServiceCapability_Service)(nil), +func (*SdkCloudMigrateStartRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SdkCloudMigrateStartRequest_OneofMarshaler, _SdkCloudMigrateStartRequest_OneofUnmarshaler, _SdkCloudMigrateStartRequest_OneofSizer, []interface{}{ + (*SdkCloudMigrateStartRequest_Volume)(nil), + (*SdkCloudMigrateStartRequest_VolumeGroup)(nil), + (*SdkCloudMigrateStartRequest_AllVolumes)(nil), } } -func _SdkServiceCapability_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*SdkServiceCapability) - // type - switch x := m.Type.(type) { - case *SdkServiceCapability_Service: - b.EncodeVarint(1<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.Service); err != nil { +func _SdkCloudMigrateStartRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SdkCloudMigrateStartRequest) + // opt + switch x := m.Opt.(type) { + case *SdkCloudMigrateStartRequest_Volume: + b.EncodeVarint(200<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Volume); err != nil { + return err + } + case *SdkCloudMigrateStartRequest_VolumeGroup: + b.EncodeVarint(201<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.VolumeGroup); err != nil { + return err + } + case *SdkCloudMigrateStartRequest_AllVolumes: + b.EncodeVarint(202<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AllVolumes); err != nil { return err } case nil: default: - return fmt.Errorf("SdkServiceCapability.Type has unexpected type %T", x) + return fmt.Errorf("SdkCloudMigrateStartRequest.Opt has unexpected type %T", x) } return nil } -func _SdkServiceCapability_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*SdkServiceCapability) +func _SdkCloudMigrateStartRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SdkCloudMigrateStartRequest) switch tag { - case 1: // type.service + case 200: // opt.volume if wire != proto.WireBytes { return true, proto.ErrInternalBadWireType } - msg := new(SdkServiceCapability_OpenStorageService) + msg := new(SdkCloudMigrateStartRequest_MigrateVolume) err := b.DecodeMessage(msg) - m.Type = &SdkServiceCapability_Service{msg} + m.Opt = &SdkCloudMigrateStartRequest_Volume{msg} + return true, err + case 201: // opt.volume_group + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkCloudMigrateStartRequest_MigrateVolumeGroup) + err := b.DecodeMessage(msg) + m.Opt = &SdkCloudMigrateStartRequest_VolumeGroup{msg} + return true, err + case 202: // opt.all_volumes + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SdkCloudMigrateStartRequest_MigrateAllVolumes) + err := b.DecodeMessage(msg) + m.Opt = &SdkCloudMigrateStartRequest_AllVolumes{msg} return true, err default: return false, nil } } -func _SdkServiceCapability_OneofSizer(msg proto.Message) (n int) { - m := msg.(*SdkServiceCapability) - // type - switch x := m.Type.(type) { - case *SdkServiceCapability_Service: - s := proto.Size(x.Service) - n += 1 // tag and wire +func _SdkCloudMigrateStartRequest_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SdkCloudMigrateStartRequest) + // opt + switch x := m.Opt.(type) { + case *SdkCloudMigrateStartRequest_Volume: + s := proto.Size(x.Volume) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkCloudMigrateStartRequest_VolumeGroup: + s := proto.Size(x.VolumeGroup) + n += 2 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SdkCloudMigrateStartRequest_AllVolumes: + s := proto.Size(x.AllVolumes) + n += 2 // tag and wire n += proto.SizeVarint(uint64(s)) n += s case nil: @@ -15256,2623 +21088,2626 @@ func _SdkServiceCapability_OneofSizer(msg proto.Message) (n int) { panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) } return n -} - -type SdkServiceCapability_OpenStorageService struct { - // Type of service supported - Type SdkServiceCapability_OpenStorageService_Type `protobuf:"varint,1,opt,name=type,enum=openstorage.api.SdkServiceCapability_OpenStorageService_Type" json:"type,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *SdkServiceCapability_OpenStorageService) Reset() { - *m = SdkServiceCapability_OpenStorageService{} -} -func (m *SdkServiceCapability_OpenStorageService) String() string { return proto.CompactTextString(m) } -func (*SdkServiceCapability_OpenStorageService) ProtoMessage() {} -func (*SdkServiceCapability_OpenStorageService) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{216, 0} -} -func (m *SdkServiceCapability_OpenStorageService) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkServiceCapability_OpenStorageService.Unmarshal(m, b) -} -func (m *SdkServiceCapability_OpenStorageService) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkServiceCapability_OpenStorageService.Marshal(b, m, deterministic) -} -func (dst *SdkServiceCapability_OpenStorageService) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkServiceCapability_OpenStorageService.Merge(dst, src) -} -func (m *SdkServiceCapability_OpenStorageService) XXX_Size() int { - return xxx_messageInfo_SdkServiceCapability_OpenStorageService.Size(m) -} -func (m *SdkServiceCapability_OpenStorageService) XXX_DiscardUnknown() { - xxx_messageInfo_SdkServiceCapability_OpenStorageService.DiscardUnknown(m) -} - -var xxx_messageInfo_SdkServiceCapability_OpenStorageService proto.InternalMessageInfo - -func (m *SdkServiceCapability_OpenStorageService) GetType() SdkServiceCapability_OpenStorageService_Type { - if m != nil { - return m.Type - } - return SdkServiceCapability_OpenStorageService_UNKNOWN -} - -// SDK version in Major.Minor.Patch format. The goal of this -// message is to provide clients a method to determine the SDK -// version run by an SDK server. -type SdkVersion struct { - // SDK version major number - Major int32 `protobuf:"varint,1,opt,name=major" json:"major,omitempty"` - // SDK version minor number - Minor int32 `protobuf:"varint,2,opt,name=minor" json:"minor,omitempty"` - // SDK version patch number - Patch int32 `protobuf:"varint,3,opt,name=patch" json:"patch,omitempty"` - // String representation of the SDK version. Must be - // in `major.minor.patch` format. - Version string `protobuf:"bytes,4,opt,name=version" json:"version,omitempty"` +} + +// Defines a migration request for a volume +type SdkCloudMigrateStartRequest_MigrateVolume struct { + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkVersion) Reset() { *m = SdkVersion{} } -func (m *SdkVersion) String() string { return proto.CompactTextString(m) } -func (*SdkVersion) ProtoMessage() {} -func (*SdkVersion) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{217} -} -func (m *SdkVersion) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkVersion.Unmarshal(m, b) +func (m *SdkCloudMigrateStartRequest_MigrateVolume) Reset() { + *m = SdkCloudMigrateStartRequest_MigrateVolume{} } -func (m *SdkVersion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkVersion.Marshal(b, m, deterministic) +func (m *SdkCloudMigrateStartRequest_MigrateVolume) String() string { return proto.CompactTextString(m) } +func (*SdkCloudMigrateStartRequest_MigrateVolume) ProtoMessage() {} +func (*SdkCloudMigrateStartRequest_MigrateVolume) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{289, 0} } -func (dst *SdkVersion) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkVersion.Merge(dst, src) +func (m *SdkCloudMigrateStartRequest_MigrateVolume) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.Unmarshal(m, b) } -func (m *SdkVersion) XXX_Size() int { - return xxx_messageInfo_SdkVersion.Size(m) +func (m *SdkCloudMigrateStartRequest_MigrateVolume) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.Marshal(b, m, deterministic) } -func (m *SdkVersion) XXX_DiscardUnknown() { - xxx_messageInfo_SdkVersion.DiscardUnknown(m) +func (dst *SdkCloudMigrateStartRequest_MigrateVolume) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.Merge(dst, src) } - -var xxx_messageInfo_SdkVersion proto.InternalMessageInfo - -func (m *SdkVersion) GetMajor() int32 { - if m != nil { - return m.Major - } - return 0 +func (m *SdkCloudMigrateStartRequest_MigrateVolume) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.Size(m) } - -func (m *SdkVersion) GetMinor() int32 { - if m != nil { - return m.Minor - } - return 0 +func (m *SdkCloudMigrateStartRequest_MigrateVolume) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.DiscardUnknown(m) } -func (m *SdkVersion) GetPatch() int32 { - if m != nil { - return m.Patch - } - return 0 -} +var xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume proto.InternalMessageInfo -func (m *SdkVersion) GetVersion() string { +func (m *SdkCloudMigrateStartRequest_MigrateVolume) GetVolumeId() string { if m != nil { - return m.Version + return m.VolumeId } return "" } -// Version information about the storage system -type StorageVersion struct { - // OpenStorage driver name - Driver string `protobuf:"bytes,1,opt,name=driver" json:"driver,omitempty"` - // Version of the server - Version string `protobuf:"bytes,2,opt,name=version" json:"version,omitempty"` - // Extra information provided by the storage system - Details map[string]string `protobuf:"bytes,3,rep,name=details" json:"details,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a migration request for a volume group +type SdkCloudMigrateStartRequest_MigrateVolumeGroup struct { + GroupId string `protobuf:"bytes,1,opt,name=group_id,json=groupId" json:"group_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *StorageVersion) Reset() { *m = StorageVersion{} } -func (m *StorageVersion) String() string { return proto.CompactTextString(m) } -func (*StorageVersion) ProtoMessage() {} -func (*StorageVersion) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{218} +func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) Reset() { + *m = SdkCloudMigrateStartRequest_MigrateVolumeGroup{} } -func (m *StorageVersion) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_StorageVersion.Unmarshal(m, b) +func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) String() string { + return proto.CompactTextString(m) } -func (m *StorageVersion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_StorageVersion.Marshal(b, m, deterministic) +func (*SdkCloudMigrateStartRequest_MigrateVolumeGroup) ProtoMessage() {} +func (*SdkCloudMigrateStartRequest_MigrateVolumeGroup) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{289, 1} } -func (dst *StorageVersion) XXX_Merge(src proto.Message) { - xxx_messageInfo_StorageVersion.Merge(dst, src) +func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.Unmarshal(m, b) } -func (m *StorageVersion) XXX_Size() int { - return xxx_messageInfo_StorageVersion.Size(m) +func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.Marshal(b, m, deterministic) } -func (m *StorageVersion) XXX_DiscardUnknown() { - xxx_messageInfo_StorageVersion.DiscardUnknown(m) +func (dst *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.Merge(dst, src) } - -var xxx_messageInfo_StorageVersion proto.InternalMessageInfo - -func (m *StorageVersion) GetDriver() string { - if m != nil { - return m.Driver - } - return "" +func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.Size(m) } - -func (m *StorageVersion) GetVersion() string { - if m != nil { - return m.Version - } - return "" +func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.DiscardUnknown(m) } -func (m *StorageVersion) GetDetails() map[string]string { +var xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup proto.InternalMessageInfo + +func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) GetGroupId() string { if m != nil { - return m.Details + return m.GroupId } - return nil + return "" } -type CloudMigrate struct { +// Defines a migration request for all volumes in a cluster +type SdkCloudMigrateStartRequest_MigrateAllVolumes struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrate) Reset() { *m = CloudMigrate{} } -func (m *CloudMigrate) String() string { return proto.CompactTextString(m) } -func (*CloudMigrate) ProtoMessage() {} -func (*CloudMigrate) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{219} +func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) Reset() { + *m = SdkCloudMigrateStartRequest_MigrateAllVolumes{} } -func (m *CloudMigrate) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CloudMigrate.Unmarshal(m, b) +func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) String() string { + return proto.CompactTextString(m) } -func (m *CloudMigrate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CloudMigrate.Marshal(b, m, deterministic) +func (*SdkCloudMigrateStartRequest_MigrateAllVolumes) ProtoMessage() {} +func (*SdkCloudMigrateStartRequest_MigrateAllVolumes) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{289, 2} } -func (dst *CloudMigrate) XXX_Merge(src proto.Message) { - xxx_messageInfo_CloudMigrate.Merge(dst, src) +func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.Unmarshal(m, b) } -func (m *CloudMigrate) XXX_Size() int { - return xxx_messageInfo_CloudMigrate.Size(m) +func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.Marshal(b, m, deterministic) } -func (m *CloudMigrate) XXX_DiscardUnknown() { - xxx_messageInfo_CloudMigrate.DiscardUnknown(m) +func (dst *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.Merge(dst, src) +} +func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.Size(m) +} +func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.DiscardUnknown(m) } -var xxx_messageInfo_CloudMigrate proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes proto.InternalMessageInfo -// Request to start a cloud migration -type CloudMigrateStartRequest struct { - // The type of operation to start - Operation CloudMigrate_OperationType `protobuf:"varint,1,opt,name=operation,enum=openstorage.api.CloudMigrate_OperationType" json:"operation,omitempty"` - // ID of the cluster to which volumes are to be migrated - ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` - // Depending on the operation type this can be a VolumeID or VolumeGroupID - TargetId string `protobuf:"bytes,3,opt,name=target_id,json=targetId" json:"target_id,omitempty"` - // (Optional) Unique TaskId assocaiated with this migration. If not provided one will - // be generated and returned in the response - TaskId string `protobuf:"bytes,4,opt,name=task_id,json=taskId" json:"task_id,omitempty"` +// Response to start a cloud migration +type CloudMigrateStartResponse struct { + // TaskId assocaiated with the migration that was started + TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrateStartRequest) Reset() { *m = CloudMigrateStartRequest{} } -func (m *CloudMigrateStartRequest) String() string { return proto.CompactTextString(m) } -func (*CloudMigrateStartRequest) ProtoMessage() {} -func (*CloudMigrateStartRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{220} -} -func (m *CloudMigrateStartRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CloudMigrateStartRequest.Unmarshal(m, b) -} -func (m *CloudMigrateStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CloudMigrateStartRequest.Marshal(b, m, deterministic) +func (m *CloudMigrateStartResponse) Reset() { *m = CloudMigrateStartResponse{} } +func (m *CloudMigrateStartResponse) String() string { return proto.CompactTextString(m) } +func (*CloudMigrateStartResponse) ProtoMessage() {} +func (*CloudMigrateStartResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{290} } -func (dst *CloudMigrateStartRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_CloudMigrateStartRequest.Merge(dst, src) +func (m *CloudMigrateStartResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudMigrateStartResponse.Unmarshal(m, b) } -func (m *CloudMigrateStartRequest) XXX_Size() int { - return xxx_messageInfo_CloudMigrateStartRequest.Size(m) +func (m *CloudMigrateStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudMigrateStartResponse.Marshal(b, m, deterministic) } -func (m *CloudMigrateStartRequest) XXX_DiscardUnknown() { - xxx_messageInfo_CloudMigrateStartRequest.DiscardUnknown(m) +func (dst *CloudMigrateStartResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudMigrateStartResponse.Merge(dst, src) } - -var xxx_messageInfo_CloudMigrateStartRequest proto.InternalMessageInfo - -func (m *CloudMigrateStartRequest) GetOperation() CloudMigrate_OperationType { - if m != nil { - return m.Operation - } - return CloudMigrate_InvalidType +func (m *CloudMigrateStartResponse) XXX_Size() int { + return xxx_messageInfo_CloudMigrateStartResponse.Size(m) } - -func (m *CloudMigrateStartRequest) GetClusterId() string { - if m != nil { - return m.ClusterId - } - return "" +func (m *CloudMigrateStartResponse) XXX_DiscardUnknown() { + xxx_messageInfo_CloudMigrateStartResponse.DiscardUnknown(m) } -func (m *CloudMigrateStartRequest) GetTargetId() string { - if m != nil { - return m.TargetId - } - return "" -} +var xxx_messageInfo_CloudMigrateStartResponse proto.InternalMessageInfo -func (m *CloudMigrateStartRequest) GetTaskId() string { +func (m *CloudMigrateStartResponse) GetTaskId() string { if m != nil { return m.TaskId } return "" } -// Defines a migration request -type SdkCloudMigrateStartRequest struct { - // ID of the cluster to which volumes are to be migrated - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` - // Unique name assocaiated with this migration. - // This is a Optional field for idempotency - TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId" json:"task_id,omitempty"` - // Types that are valid to be assigned to Opt: - // *SdkCloudMigrateStartRequest_Volume - // *SdkCloudMigrateStartRequest_VolumeGroup - // *SdkCloudMigrateStartRequest_AllVolumes - Opt isSdkCloudMigrateStartRequest_Opt `protobuf_oneof:"opt"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response for the migration that was started +type SdkCloudMigrateStartResponse struct { + // Result assocaiated with the migration that was started + Result *CloudMigrateStartResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudMigrateStartRequest) Reset() { *m = SdkCloudMigrateStartRequest{} } -func (m *SdkCloudMigrateStartRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudMigrateStartRequest) ProtoMessage() {} -func (*SdkCloudMigrateStartRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{221} +func (m *SdkCloudMigrateStartResponse) Reset() { *m = SdkCloudMigrateStartResponse{} } +func (m *SdkCloudMigrateStartResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudMigrateStartResponse) ProtoMessage() {} +func (*SdkCloudMigrateStartResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{291} } -func (m *SdkCloudMigrateStartRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateStartRequest.Unmarshal(m, b) +func (m *SdkCloudMigrateStartResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateStartResponse.Unmarshal(m, b) } -func (m *SdkCloudMigrateStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateStartRequest.Marshal(b, m, deterministic) +func (m *SdkCloudMigrateStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateStartResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudMigrateStartRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateStartRequest.Merge(dst, src) +func (dst *SdkCloudMigrateStartResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateStartResponse.Merge(dst, src) } -func (m *SdkCloudMigrateStartRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateStartRequest.Size(m) +func (m *SdkCloudMigrateStartResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateStartResponse.Size(m) } -func (m *SdkCloudMigrateStartRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateStartRequest.DiscardUnknown(m) +func (m *SdkCloudMigrateStartResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateStartResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudMigrateStartRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudMigrateStartResponse proto.InternalMessageInfo -type isSdkCloudMigrateStartRequest_Opt interface { - isSdkCloudMigrateStartRequest_Opt() +func (m *SdkCloudMigrateStartResponse) GetResult() *CloudMigrateStartResponse { + if m != nil { + return m.Result + } + return nil } -type SdkCloudMigrateStartRequest_Volume struct { - Volume *SdkCloudMigrateStartRequest_MigrateVolume `protobuf:"bytes,200,opt,name=volume,oneof"` +// Request to stop a cloud migration +type CloudMigrateCancelRequest struct { + // The id of the task to cancel + TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -type SdkCloudMigrateStartRequest_VolumeGroup struct { - VolumeGroup *SdkCloudMigrateStartRequest_MigrateVolumeGroup `protobuf:"bytes,201,opt,name=volume_group,json=volumeGroup,oneof"` + +func (m *CloudMigrateCancelRequest) Reset() { *m = CloudMigrateCancelRequest{} } +func (m *CloudMigrateCancelRequest) String() string { return proto.CompactTextString(m) } +func (*CloudMigrateCancelRequest) ProtoMessage() {} +func (*CloudMigrateCancelRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{292} } -type SdkCloudMigrateStartRequest_AllVolumes struct { - AllVolumes *SdkCloudMigrateStartRequest_MigrateAllVolumes `protobuf:"bytes,202,opt,name=all_volumes,json=allVolumes,oneof"` +func (m *CloudMigrateCancelRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudMigrateCancelRequest.Unmarshal(m, b) } - -func (*SdkCloudMigrateStartRequest_Volume) isSdkCloudMigrateStartRequest_Opt() {} -func (*SdkCloudMigrateStartRequest_VolumeGroup) isSdkCloudMigrateStartRequest_Opt() {} -func (*SdkCloudMigrateStartRequest_AllVolumes) isSdkCloudMigrateStartRequest_Opt() {} - -func (m *SdkCloudMigrateStartRequest) GetOpt() isSdkCloudMigrateStartRequest_Opt { - if m != nil { - return m.Opt - } - return nil +func (m *CloudMigrateCancelRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudMigrateCancelRequest.Marshal(b, m, deterministic) } - -func (m *SdkCloudMigrateStartRequest) GetClusterId() string { - if m != nil { - return m.ClusterId - } - return "" +func (dst *CloudMigrateCancelRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudMigrateCancelRequest.Merge(dst, src) +} +func (m *CloudMigrateCancelRequest) XXX_Size() int { + return xxx_messageInfo_CloudMigrateCancelRequest.Size(m) +} +func (m *CloudMigrateCancelRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CloudMigrateCancelRequest.DiscardUnknown(m) } -func (m *SdkCloudMigrateStartRequest) GetTaskId() string { +var xxx_messageInfo_CloudMigrateCancelRequest proto.InternalMessageInfo + +func (m *CloudMigrateCancelRequest) GetTaskId() string { if m != nil { return m.TaskId } return "" } -func (m *SdkCloudMigrateStartRequest) GetVolume() *SdkCloudMigrateStartRequest_MigrateVolume { - if x, ok := m.GetOpt().(*SdkCloudMigrateStartRequest_Volume); ok { - return x.Volume - } - return nil +// Defines a request to stop a cloud migration +type SdkCloudMigrateCancelRequest struct { + // Request containing the task id to be cancelled + Request *CloudMigrateCancelRequest `protobuf:"bytes,1,opt,name=request" json:"request,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudMigrateStartRequest) GetVolumeGroup() *SdkCloudMigrateStartRequest_MigrateVolumeGroup { - if x, ok := m.GetOpt().(*SdkCloudMigrateStartRequest_VolumeGroup); ok { - return x.VolumeGroup - } - return nil +func (m *SdkCloudMigrateCancelRequest) Reset() { *m = SdkCloudMigrateCancelRequest{} } +func (m *SdkCloudMigrateCancelRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudMigrateCancelRequest) ProtoMessage() {} +func (*SdkCloudMigrateCancelRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{293} } - -func (m *SdkCloudMigrateStartRequest) GetAllVolumes() *SdkCloudMigrateStartRequest_MigrateAllVolumes { - if x, ok := m.GetOpt().(*SdkCloudMigrateStartRequest_AllVolumes); ok { - return x.AllVolumes - } - return nil +func (m *SdkCloudMigrateCancelRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateCancelRequest.Unmarshal(m, b) } - -// XXX_OneofFuncs is for the internal use of the proto package. -func (*SdkCloudMigrateStartRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { - return _SdkCloudMigrateStartRequest_OneofMarshaler, _SdkCloudMigrateStartRequest_OneofUnmarshaler, _SdkCloudMigrateStartRequest_OneofSizer, []interface{}{ - (*SdkCloudMigrateStartRequest_Volume)(nil), - (*SdkCloudMigrateStartRequest_VolumeGroup)(nil), - (*SdkCloudMigrateStartRequest_AllVolumes)(nil), - } +func (m *SdkCloudMigrateCancelRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateCancelRequest.Marshal(b, m, deterministic) +} +func (dst *SdkCloudMigrateCancelRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateCancelRequest.Merge(dst, src) +} +func (m *SdkCloudMigrateCancelRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateCancelRequest.Size(m) +} +func (m *SdkCloudMigrateCancelRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateCancelRequest.DiscardUnknown(m) } -func _SdkCloudMigrateStartRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { - m := msg.(*SdkCloudMigrateStartRequest) - // opt - switch x := m.Opt.(type) { - case *SdkCloudMigrateStartRequest_Volume: - b.EncodeVarint(200<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.Volume); err != nil { - return err - } - case *SdkCloudMigrateStartRequest_VolumeGroup: - b.EncodeVarint(201<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.VolumeGroup); err != nil { - return err - } - case *SdkCloudMigrateStartRequest_AllVolumes: - b.EncodeVarint(202<<3 | proto.WireBytes) - if err := b.EncodeMessage(x.AllVolumes); err != nil { - return err - } - case nil: - default: - return fmt.Errorf("SdkCloudMigrateStartRequest.Opt has unexpected type %T", x) +var xxx_messageInfo_SdkCloudMigrateCancelRequest proto.InternalMessageInfo + +func (m *SdkCloudMigrateCancelRequest) GetRequest() *CloudMigrateCancelRequest { + if m != nil { + return m.Request } return nil } -func _SdkCloudMigrateStartRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { - m := msg.(*SdkCloudMigrateStartRequest) - switch tag { - case 200: // opt.volume - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkCloudMigrateStartRequest_MigrateVolume) - err := b.DecodeMessage(msg) - m.Opt = &SdkCloudMigrateStartRequest_Volume{msg} - return true, err - case 201: // opt.volume_group - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkCloudMigrateStartRequest_MigrateVolumeGroup) - err := b.DecodeMessage(msg) - m.Opt = &SdkCloudMigrateStartRequest_VolumeGroup{msg} - return true, err - case 202: // opt.all_volumes - if wire != proto.WireBytes { - return true, proto.ErrInternalBadWireType - } - msg := new(SdkCloudMigrateStartRequest_MigrateAllVolumes) - err := b.DecodeMessage(msg) - m.Opt = &SdkCloudMigrateStartRequest_AllVolumes{msg} - return true, err - default: - return false, nil - } +// Empty Response +type SdkCloudMigrateCancelResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func _SdkCloudMigrateStartRequest_OneofSizer(msg proto.Message) (n int) { - m := msg.(*SdkCloudMigrateStartRequest) - // opt - switch x := m.Opt.(type) { - case *SdkCloudMigrateStartRequest_Volume: - s := proto.Size(x.Volume) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkCloudMigrateStartRequest_VolumeGroup: - s := proto.Size(x.VolumeGroup) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case *SdkCloudMigrateStartRequest_AllVolumes: - s := proto.Size(x.AllVolumes) - n += 2 // tag and wire - n += proto.SizeVarint(uint64(s)) - n += s - case nil: - default: - panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) - } - return n +func (m *SdkCloudMigrateCancelResponse) Reset() { *m = SdkCloudMigrateCancelResponse{} } +func (m *SdkCloudMigrateCancelResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudMigrateCancelResponse) ProtoMessage() {} +func (*SdkCloudMigrateCancelResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{294} +} +func (m *SdkCloudMigrateCancelResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateCancelResponse.Unmarshal(m, b) +} +func (m *SdkCloudMigrateCancelResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateCancelResponse.Marshal(b, m, deterministic) +} +func (dst *SdkCloudMigrateCancelResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateCancelResponse.Merge(dst, src) +} +func (m *SdkCloudMigrateCancelResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateCancelResponse.Size(m) +} +func (m *SdkCloudMigrateCancelResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateCancelResponse.DiscardUnknown(m) } -// Defines a migration request for a volume -type SdkCloudMigrateStartRequest_MigrateVolume struct { - VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` +var xxx_messageInfo_SdkCloudMigrateCancelResponse proto.InternalMessageInfo + +type CloudMigrateInfo struct { + // Task id associated with this migration + TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` + // ID of the cluster where the volume is being migrated + ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` + // ID of the volume on the local cluster + LocalVolumeId string `protobuf:"bytes,3,opt,name=local_volume_id,json=localVolumeId" json:"local_volume_id,omitempty"` + // Name of the volume on the local cluster + LocalVolumeName string `protobuf:"bytes,4,opt,name=local_volume_name,json=localVolumeName" json:"local_volume_name,omitempty"` + // ID of the volume on the remote cluster + RemoteVolumeId string `protobuf:"bytes,5,opt,name=remote_volume_id,json=remoteVolumeId" json:"remote_volume_id,omitempty"` + // ID of the cloudbackup used for the migration + CloudbackupId string `protobuf:"bytes,6,opt,name=cloudbackup_id,json=cloudbackupId" json:"cloudbackup_id,omitempty"` + // Current stage of the volume migration + CurrentStage CloudMigrate_Stage `protobuf:"varint,7,opt,name=current_stage,json=currentStage,enum=openstorage.api.CloudMigrate_Stage" json:"current_stage,omitempty"` + // Status of the current stage + Status CloudMigrate_Status `protobuf:"varint,8,opt,name=status,enum=openstorage.api.CloudMigrate_Status" json:"status,omitempty"` + // Last time the status was updated + LastUpdate *timestamp.Timestamp `protobuf:"bytes,9,opt,name=last_update,json=lastUpdate" json:"last_update,omitempty"` + // Contains the reason for the migration error + ErrorReason string `protobuf:"bytes,10,opt,name=error_reason,json=errorReason" json:"error_reason,omitempty"` + // StartTime indicates Op's start time + StartTime *timestamp.Timestamp `protobuf:"bytes,11,opt,name=start_time,json=startTime" json:"start_time,omitempty"` + // CompletedTime indicates Op's completed time + CompletedTime *timestamp.Timestamp `protobuf:"bytes,12,opt,name=completed_time,json=completedTime" json:"completed_time,omitempty"` + // BytesTotal is the number of bytes being transferred + BytesTotal uint64 `protobuf:"varint,13,opt,name=bytes_total,json=bytesTotal" json:"bytes_total,omitempty"` + // BytesDone is the number of bytes already transferred + BytesDone uint64 `protobuf:"varint,14,opt,name=bytes_done,json=bytesDone" json:"bytes_done,omitempty"` + // ETASeconds the time duration in seconds for cloud migration completion + EtaSeconds int64 `protobuf:"varint,15,opt,name=eta_seconds,json=etaSeconds" json:"eta_seconds,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudMigrateStartRequest_MigrateVolume) Reset() { - *m = SdkCloudMigrateStartRequest_MigrateVolume{} -} -func (m *SdkCloudMigrateStartRequest_MigrateVolume) String() string { return proto.CompactTextString(m) } -func (*SdkCloudMigrateStartRequest_MigrateVolume) ProtoMessage() {} -func (*SdkCloudMigrateStartRequest_MigrateVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{221, 0} +func (m *CloudMigrateInfo) Reset() { *m = CloudMigrateInfo{} } +func (m *CloudMigrateInfo) String() string { return proto.CompactTextString(m) } +func (*CloudMigrateInfo) ProtoMessage() {} +func (*CloudMigrateInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{295} } -func (m *SdkCloudMigrateStartRequest_MigrateVolume) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.Unmarshal(m, b) +func (m *CloudMigrateInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudMigrateInfo.Unmarshal(m, b) } -func (m *SdkCloudMigrateStartRequest_MigrateVolume) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.Marshal(b, m, deterministic) +func (m *CloudMigrateInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudMigrateInfo.Marshal(b, m, deterministic) } -func (dst *SdkCloudMigrateStartRequest_MigrateVolume) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.Merge(dst, src) +func (dst *CloudMigrateInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudMigrateInfo.Merge(dst, src) } -func (m *SdkCloudMigrateStartRequest_MigrateVolume) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.Size(m) +func (m *CloudMigrateInfo) XXX_Size() int { + return xxx_messageInfo_CloudMigrateInfo.Size(m) } -func (m *SdkCloudMigrateStartRequest_MigrateVolume) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume.DiscardUnknown(m) +func (m *CloudMigrateInfo) XXX_DiscardUnknown() { + xxx_messageInfo_CloudMigrateInfo.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolume proto.InternalMessageInfo +var xxx_messageInfo_CloudMigrateInfo proto.InternalMessageInfo -func (m *SdkCloudMigrateStartRequest_MigrateVolume) GetVolumeId() string { +func (m *CloudMigrateInfo) GetTaskId() string { if m != nil { - return m.VolumeId + return m.TaskId } return "" } -// Defines a migration request for a volume group -type SdkCloudMigrateStartRequest_MigrateVolumeGroup struct { - GroupId string `protobuf:"bytes,1,opt,name=group_id,json=groupId" json:"group_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *CloudMigrateInfo) GetClusterId() string { + if m != nil { + return m.ClusterId + } + return "" } -func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) Reset() { - *m = SdkCloudMigrateStartRequest_MigrateVolumeGroup{} +func (m *CloudMigrateInfo) GetLocalVolumeId() string { + if m != nil { + return m.LocalVolumeId + } + return "" } -func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) String() string { - return proto.CompactTextString(m) + +func (m *CloudMigrateInfo) GetLocalVolumeName() string { + if m != nil { + return m.LocalVolumeName + } + return "" } -func (*SdkCloudMigrateStartRequest_MigrateVolumeGroup) ProtoMessage() {} -func (*SdkCloudMigrateStartRequest_MigrateVolumeGroup) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{221, 1} + +func (m *CloudMigrateInfo) GetRemoteVolumeId() string { + if m != nil { + return m.RemoteVolumeId + } + return "" } -func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.Unmarshal(m, b) + +func (m *CloudMigrateInfo) GetCloudbackupId() string { + if m != nil { + return m.CloudbackupId + } + return "" } -func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.Marshal(b, m, deterministic) + +func (m *CloudMigrateInfo) GetCurrentStage() CloudMigrate_Stage { + if m != nil { + return m.CurrentStage + } + return CloudMigrate_InvalidStage } -func (dst *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.Merge(dst, src) + +func (m *CloudMigrateInfo) GetStatus() CloudMigrate_Status { + if m != nil { + return m.Status + } + return CloudMigrate_InvalidStatus } -func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.Size(m) + +func (m *CloudMigrateInfo) GetLastUpdate() *timestamp.Timestamp { + if m != nil { + return m.LastUpdate + } + return nil } -func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup.DiscardUnknown(m) + +func (m *CloudMigrateInfo) GetErrorReason() string { + if m != nil { + return m.ErrorReason + } + return "" } -var xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateVolumeGroup proto.InternalMessageInfo +func (m *CloudMigrateInfo) GetStartTime() *timestamp.Timestamp { + if m != nil { + return m.StartTime + } + return nil +} -func (m *SdkCloudMigrateStartRequest_MigrateVolumeGroup) GetGroupId() string { +func (m *CloudMigrateInfo) GetCompletedTime() *timestamp.Timestamp { if m != nil { - return m.GroupId + return m.CompletedTime } - return "" + return nil } -// Defines a migration request for all volumes in a cluster -type SdkCloudMigrateStartRequest_MigrateAllVolumes struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *CloudMigrateInfo) GetBytesTotal() uint64 { + if m != nil { + return m.BytesTotal + } + return 0 } -func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) Reset() { - *m = SdkCloudMigrateStartRequest_MigrateAllVolumes{} +func (m *CloudMigrateInfo) GetBytesDone() uint64 { + if m != nil { + return m.BytesDone + } + return 0 } -func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) String() string { - return proto.CompactTextString(m) + +func (m *CloudMigrateInfo) GetEtaSeconds() int64 { + if m != nil { + return m.EtaSeconds + } + return 0 } -func (*SdkCloudMigrateStartRequest_MigrateAllVolumes) ProtoMessage() {} -func (*SdkCloudMigrateStartRequest_MigrateAllVolumes) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{221, 2} + +type CloudMigrateInfoList struct { + List []*CloudMigrateInfo `protobuf:"bytes,1,rep,name=list" json:"list,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.Unmarshal(m, b) + +func (m *CloudMigrateInfoList) Reset() { *m = CloudMigrateInfoList{} } +func (m *CloudMigrateInfoList) String() string { return proto.CompactTextString(m) } +func (*CloudMigrateInfoList) ProtoMessage() {} +func (*CloudMigrateInfoList) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{296} } -func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.Marshal(b, m, deterministic) +func (m *CloudMigrateInfoList) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudMigrateInfoList.Unmarshal(m, b) } -func (dst *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.Merge(dst, src) +func (m *CloudMigrateInfoList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudMigrateInfoList.Marshal(b, m, deterministic) } -func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.Size(m) +func (dst *CloudMigrateInfoList) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudMigrateInfoList.Merge(dst, src) } -func (m *SdkCloudMigrateStartRequest_MigrateAllVolumes) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes.DiscardUnknown(m) +func (m *CloudMigrateInfoList) XXX_Size() int { + return xxx_messageInfo_CloudMigrateInfoList.Size(m) +} +func (m *CloudMigrateInfoList) XXX_DiscardUnknown() { + xxx_messageInfo_CloudMigrateInfoList.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudMigrateStartRequest_MigrateAllVolumes proto.InternalMessageInfo +var xxx_messageInfo_CloudMigrateInfoList proto.InternalMessageInfo -// Response to start a cloud migration -type CloudMigrateStartResponse struct { - // TaskId assocaiated with the migration that was started - TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *CloudMigrateInfoList) GetList() []*CloudMigrateInfo { + if m != nil { + return m.List + } + return nil } -func (m *CloudMigrateStartResponse) Reset() { *m = CloudMigrateStartResponse{} } -func (m *CloudMigrateStartResponse) String() string { return proto.CompactTextString(m) } -func (*CloudMigrateStartResponse) ProtoMessage() {} -func (*CloudMigrateStartResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{222} +// Request for cloud migration operation status +type SdkCloudMigrateStatusRequest struct { + // Request contains the task id and cluster id for which status should be + // returned + Request *CloudMigrateStatusRequest `protobuf:"bytes,1,opt,name=request" json:"request,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrateStartResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CloudMigrateStartResponse.Unmarshal(m, b) + +func (m *SdkCloudMigrateStatusRequest) Reset() { *m = SdkCloudMigrateStatusRequest{} } +func (m *SdkCloudMigrateStatusRequest) String() string { return proto.CompactTextString(m) } +func (*SdkCloudMigrateStatusRequest) ProtoMessage() {} +func (*SdkCloudMigrateStatusRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{297} } -func (m *CloudMigrateStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CloudMigrateStartResponse.Marshal(b, m, deterministic) +func (m *SdkCloudMigrateStatusRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateStatusRequest.Unmarshal(m, b) } -func (dst *CloudMigrateStartResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_CloudMigrateStartResponse.Merge(dst, src) +func (m *SdkCloudMigrateStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateStatusRequest.Marshal(b, m, deterministic) } -func (m *CloudMigrateStartResponse) XXX_Size() int { - return xxx_messageInfo_CloudMigrateStartResponse.Size(m) +func (dst *SdkCloudMigrateStatusRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateStatusRequest.Merge(dst, src) } -func (m *CloudMigrateStartResponse) XXX_DiscardUnknown() { - xxx_messageInfo_CloudMigrateStartResponse.DiscardUnknown(m) +func (m *SdkCloudMigrateStatusRequest) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateStatusRequest.Size(m) +} +func (m *SdkCloudMigrateStatusRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateStatusRequest.DiscardUnknown(m) } -var xxx_messageInfo_CloudMigrateStartResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudMigrateStatusRequest proto.InternalMessageInfo -func (m *CloudMigrateStartResponse) GetTaskId() string { +func (m *SdkCloudMigrateStatusRequest) GetRequest() *CloudMigrateStatusRequest { if m != nil { - return m.TaskId + return m.Request } - return "" + return nil } -// Defines a response for the migration that was started -type SdkCloudMigrateStartResponse struct { - // Result assocaiated with the migration that was started - Result *CloudMigrateStartResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Request for cloud migration operation status +type CloudMigrateStatusRequest struct { + // Task id for which to return status + TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` + // ID of the cluster for which to return migration statuses + ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudMigrateStartResponse) Reset() { *m = SdkCloudMigrateStartResponse{} } -func (m *SdkCloudMigrateStartResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudMigrateStartResponse) ProtoMessage() {} -func (*SdkCloudMigrateStartResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{223} +func (m *CloudMigrateStatusRequest) Reset() { *m = CloudMigrateStatusRequest{} } +func (m *CloudMigrateStatusRequest) String() string { return proto.CompactTextString(m) } +func (*CloudMigrateStatusRequest) ProtoMessage() {} +func (*CloudMigrateStatusRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{298} } -func (m *SdkCloudMigrateStartResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateStartResponse.Unmarshal(m, b) +func (m *CloudMigrateStatusRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudMigrateStatusRequest.Unmarshal(m, b) } -func (m *SdkCloudMigrateStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateStartResponse.Marshal(b, m, deterministic) +func (m *CloudMigrateStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudMigrateStatusRequest.Marshal(b, m, deterministic) } -func (dst *SdkCloudMigrateStartResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateStartResponse.Merge(dst, src) +func (dst *CloudMigrateStatusRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudMigrateStatusRequest.Merge(dst, src) } -func (m *SdkCloudMigrateStartResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateStartResponse.Size(m) +func (m *CloudMigrateStatusRequest) XXX_Size() int { + return xxx_messageInfo_CloudMigrateStatusRequest.Size(m) } -func (m *SdkCloudMigrateStartResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateStartResponse.DiscardUnknown(m) +func (m *CloudMigrateStatusRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CloudMigrateStatusRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudMigrateStartResponse proto.InternalMessageInfo +var xxx_messageInfo_CloudMigrateStatusRequest proto.InternalMessageInfo -func (m *SdkCloudMigrateStartResponse) GetResult() *CloudMigrateStartResponse { +func (m *CloudMigrateStatusRequest) GetTaskId() string { if m != nil { - return m.Result + return m.TaskId } - return nil + return "" } -// Request to stop a cloud migration -type CloudMigrateCancelRequest struct { - // The id of the task to cancel - TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *CloudMigrateStatusRequest) GetClusterId() string { + if m != nil { + return m.ClusterId + } + return "" } -func (m *CloudMigrateCancelRequest) Reset() { *m = CloudMigrateCancelRequest{} } -func (m *CloudMigrateCancelRequest) String() string { return proto.CompactTextString(m) } -func (*CloudMigrateCancelRequest) ProtoMessage() {} -func (*CloudMigrateCancelRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{224} +// Response with a status of the cloud migration operations +type CloudMigrateStatusResponse struct { + // Map of cluster id to the status of volumes being migrated + Info map[string]*CloudMigrateInfoList `protobuf:"bytes,1,rep,name=info" json:"info,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrateCancelRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CloudMigrateCancelRequest.Unmarshal(m, b) + +func (m *CloudMigrateStatusResponse) Reset() { *m = CloudMigrateStatusResponse{} } +func (m *CloudMigrateStatusResponse) String() string { return proto.CompactTextString(m) } +func (*CloudMigrateStatusResponse) ProtoMessage() {} +func (*CloudMigrateStatusResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{299} } -func (m *CloudMigrateCancelRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CloudMigrateCancelRequest.Marshal(b, m, deterministic) +func (m *CloudMigrateStatusResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CloudMigrateStatusResponse.Unmarshal(m, b) } -func (dst *CloudMigrateCancelRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_CloudMigrateCancelRequest.Merge(dst, src) +func (m *CloudMigrateStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CloudMigrateStatusResponse.Marshal(b, m, deterministic) } -func (m *CloudMigrateCancelRequest) XXX_Size() int { - return xxx_messageInfo_CloudMigrateCancelRequest.Size(m) +func (dst *CloudMigrateStatusResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_CloudMigrateStatusResponse.Merge(dst, src) } -func (m *CloudMigrateCancelRequest) XXX_DiscardUnknown() { - xxx_messageInfo_CloudMigrateCancelRequest.DiscardUnknown(m) +func (m *CloudMigrateStatusResponse) XXX_Size() int { + return xxx_messageInfo_CloudMigrateStatusResponse.Size(m) +} +func (m *CloudMigrateStatusResponse) XXX_DiscardUnknown() { + xxx_messageInfo_CloudMigrateStatusResponse.DiscardUnknown(m) } -var xxx_messageInfo_CloudMigrateCancelRequest proto.InternalMessageInfo +var xxx_messageInfo_CloudMigrateStatusResponse proto.InternalMessageInfo -func (m *CloudMigrateCancelRequest) GetTaskId() string { +func (m *CloudMigrateStatusResponse) GetInfo() map[string]*CloudMigrateInfoList { if m != nil { - return m.TaskId + return m.Info } - return "" + return nil } -// Defines a request to stop a cloud migration -type SdkCloudMigrateCancelRequest struct { - // Request containing the task id to be cancelled - Request *CloudMigrateCancelRequest `protobuf:"bytes,1,opt,name=request" json:"request,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response for the status request +type SdkCloudMigrateStatusResponse struct { + // Status of all migration requests + Result *CloudMigrateStatusResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudMigrateCancelRequest) Reset() { *m = SdkCloudMigrateCancelRequest{} } -func (m *SdkCloudMigrateCancelRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudMigrateCancelRequest) ProtoMessage() {} -func (*SdkCloudMigrateCancelRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{225} +func (m *SdkCloudMigrateStatusResponse) Reset() { *m = SdkCloudMigrateStatusResponse{} } +func (m *SdkCloudMigrateStatusResponse) String() string { return proto.CompactTextString(m) } +func (*SdkCloudMigrateStatusResponse) ProtoMessage() {} +func (*SdkCloudMigrateStatusResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{300} } -func (m *SdkCloudMigrateCancelRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateCancelRequest.Unmarshal(m, b) +func (m *SdkCloudMigrateStatusResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkCloudMigrateStatusResponse.Unmarshal(m, b) } -func (m *SdkCloudMigrateCancelRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateCancelRequest.Marshal(b, m, deterministic) +func (m *SdkCloudMigrateStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkCloudMigrateStatusResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudMigrateCancelRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateCancelRequest.Merge(dst, src) +func (dst *SdkCloudMigrateStatusResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkCloudMigrateStatusResponse.Merge(dst, src) } -func (m *SdkCloudMigrateCancelRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateCancelRequest.Size(m) +func (m *SdkCloudMigrateStatusResponse) XXX_Size() int { + return xxx_messageInfo_SdkCloudMigrateStatusResponse.Size(m) } -func (m *SdkCloudMigrateCancelRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateCancelRequest.DiscardUnknown(m) +func (m *SdkCloudMigrateStatusResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkCloudMigrateStatusResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudMigrateCancelRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkCloudMigrateStatusResponse proto.InternalMessageInfo -func (m *SdkCloudMigrateCancelRequest) GetRequest() *CloudMigrateCancelRequest { +func (m *SdkCloudMigrateStatusResponse) GetResult() *CloudMigrateStatusResponse { if m != nil { - return m.Request + return m.Result } return nil } -// Empty Response -type SdkCloudMigrateCancelResponse struct { +type ClusterPairMode struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudMigrateCancelResponse) Reset() { *m = SdkCloudMigrateCancelResponse{} } -func (m *SdkCloudMigrateCancelResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudMigrateCancelResponse) ProtoMessage() {} -func (*SdkCloudMigrateCancelResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{226} +func (m *ClusterPairMode) Reset() { *m = ClusterPairMode{} } +func (m *ClusterPairMode) String() string { return proto.CompactTextString(m) } +func (*ClusterPairMode) ProtoMessage() {} +func (*ClusterPairMode) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{301} } -func (m *SdkCloudMigrateCancelResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateCancelResponse.Unmarshal(m, b) +func (m *ClusterPairMode) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairMode.Unmarshal(m, b) } -func (m *SdkCloudMigrateCancelResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateCancelResponse.Marshal(b, m, deterministic) +func (m *ClusterPairMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairMode.Marshal(b, m, deterministic) } -func (dst *SdkCloudMigrateCancelResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateCancelResponse.Merge(dst, src) +func (dst *ClusterPairMode) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairMode.Merge(dst, src) } -func (m *SdkCloudMigrateCancelResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateCancelResponse.Size(m) +func (m *ClusterPairMode) XXX_Size() int { + return xxx_messageInfo_ClusterPairMode.Size(m) } -func (m *SdkCloudMigrateCancelResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateCancelResponse.DiscardUnknown(m) +func (m *ClusterPairMode) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairMode.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudMigrateCancelResponse proto.InternalMessageInfo +var xxx_messageInfo_ClusterPairMode proto.InternalMessageInfo -type CloudMigrateInfo struct { - // Task id associated with this migration - TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` - // ID of the cluster where the volume is being migrated - ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` - // ID of the volume on the local cluster - LocalVolumeId string `protobuf:"bytes,3,opt,name=local_volume_id,json=localVolumeId" json:"local_volume_id,omitempty"` - // Name of the volume on the local cluster - LocalVolumeName string `protobuf:"bytes,4,opt,name=local_volume_name,json=localVolumeName" json:"local_volume_name,omitempty"` - // ID of the volume on the remote cluster - RemoteVolumeId string `protobuf:"bytes,5,opt,name=remote_volume_id,json=remoteVolumeId" json:"remote_volume_id,omitempty"` - // ID of the cloudbackup used for the migration - CloudbackupId string `protobuf:"bytes,6,opt,name=cloudbackup_id,json=cloudbackupId" json:"cloudbackup_id,omitempty"` - // Current stage of the volume migration - CurrentStage CloudMigrate_Stage `protobuf:"varint,7,opt,name=current_stage,json=currentStage,enum=openstorage.api.CloudMigrate_Stage" json:"current_stage,omitempty"` - // Status of the current stage - Status CloudMigrate_Status `protobuf:"varint,8,opt,name=status,enum=openstorage.api.CloudMigrate_Status" json:"status,omitempty"` - // Last time the status was updated - LastUpdate *timestamp.Timestamp `protobuf:"bytes,9,opt,name=last_update,json=lastUpdate" json:"last_update,omitempty"` - // Contains the reason for the migration error - ErrorReason string `protobuf:"bytes,10,opt,name=error_reason,json=errorReason" json:"error_reason,omitempty"` - // StartTime indicates Op's start time - StartTime *timestamp.Timestamp `protobuf:"bytes,11,opt,name=start_time,json=startTime" json:"start_time,omitempty"` - // CompletedTime indicates Op's completed time - CompletedTime *timestamp.Timestamp `protobuf:"bytes,12,opt,name=completed_time,json=completedTime" json:"completed_time,omitempty"` - // BytesTotal is the number of bytes being transferred - BytesTotal uint64 `protobuf:"varint,13,opt,name=bytes_total,json=bytesTotal" json:"bytes_total,omitempty"` - // BytesDone is the number of bytes already transferred - BytesDone uint64 `protobuf:"varint,14,opt,name=bytes_done,json=bytesDone" json:"bytes_done,omitempty"` - // ETASeconds the time duration in seconds for cloud migration completion - EtaSeconds int64 `protobuf:"varint,15,opt,name=eta_seconds,json=etaSeconds" json:"eta_seconds,omitempty"` +// Used to send a request to create a cluster pair +type ClusterPairCreateRequest struct { + // IP of the remote cluster + RemoteClusterIp string `protobuf:"bytes,1,opt,name=remote_cluster_ip,json=remoteClusterIp" json:"remote_cluster_ip,omitempty"` + // Port for the remote cluster + RemoteClusterPort uint32 `protobuf:"varint,2,opt,name=remote_cluster_port,json=remoteClusterPort" json:"remote_cluster_port,omitempty"` + // Token used to authenticate with the remote cluster + RemoteClusterToken string `protobuf:"bytes,3,opt,name=remote_cluster_token,json=remoteClusterToken" json:"remote_cluster_token,omitempty"` + // Set the new pair as the default + SetDefault bool `protobuf:"varint,4,opt,name=set_default,json=setDefault" json:"set_default,omitempty"` + // The mode to use for the cluster pair + Mode ClusterPairMode_Mode `protobuf:"varint,5,opt,name=mode,enum=openstorage.api.ClusterPairMode_Mode" json:"mode,omitempty"` + // Use for the cluster pairing, if given + // credential id will be used in ClusterPairCreate service + CredentialId string `protobuf:"bytes,6,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrateInfo) Reset() { *m = CloudMigrateInfo{} } -func (m *CloudMigrateInfo) String() string { return proto.CompactTextString(m) } -func (*CloudMigrateInfo) ProtoMessage() {} -func (*CloudMigrateInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{227} +func (m *ClusterPairCreateRequest) Reset() { *m = ClusterPairCreateRequest{} } +func (m *ClusterPairCreateRequest) String() string { return proto.CompactTextString(m) } +func (*ClusterPairCreateRequest) ProtoMessage() {} +func (*ClusterPairCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{302} } -func (m *CloudMigrateInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CloudMigrateInfo.Unmarshal(m, b) +func (m *ClusterPairCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairCreateRequest.Unmarshal(m, b) } -func (m *CloudMigrateInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CloudMigrateInfo.Marshal(b, m, deterministic) +func (m *ClusterPairCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairCreateRequest.Marshal(b, m, deterministic) } -func (dst *CloudMigrateInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_CloudMigrateInfo.Merge(dst, src) +func (dst *ClusterPairCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairCreateRequest.Merge(dst, src) } -func (m *CloudMigrateInfo) XXX_Size() int { - return xxx_messageInfo_CloudMigrateInfo.Size(m) +func (m *ClusterPairCreateRequest) XXX_Size() int { + return xxx_messageInfo_ClusterPairCreateRequest.Size(m) } -func (m *CloudMigrateInfo) XXX_DiscardUnknown() { - xxx_messageInfo_CloudMigrateInfo.DiscardUnknown(m) +func (m *ClusterPairCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairCreateRequest.DiscardUnknown(m) } -var xxx_messageInfo_CloudMigrateInfo proto.InternalMessageInfo +var xxx_messageInfo_ClusterPairCreateRequest proto.InternalMessageInfo -func (m *CloudMigrateInfo) GetTaskId() string { +func (m *ClusterPairCreateRequest) GetRemoteClusterIp() string { if m != nil { - return m.TaskId + return m.RemoteClusterIp } return "" } -func (m *CloudMigrateInfo) GetClusterId() string { +func (m *ClusterPairCreateRequest) GetRemoteClusterPort() uint32 { if m != nil { - return m.ClusterId + return m.RemoteClusterPort } - return "" + return 0 } -func (m *CloudMigrateInfo) GetLocalVolumeId() string { +func (m *ClusterPairCreateRequest) GetRemoteClusterToken() string { if m != nil { - return m.LocalVolumeId + return m.RemoteClusterToken } return "" } -func (m *CloudMigrateInfo) GetLocalVolumeName() string { +func (m *ClusterPairCreateRequest) GetSetDefault() bool { if m != nil { - return m.LocalVolumeName + return m.SetDefault } - return "" + return false } -func (m *CloudMigrateInfo) GetRemoteVolumeId() string { +func (m *ClusterPairCreateRequest) GetMode() ClusterPairMode_Mode { if m != nil { - return m.RemoteVolumeId + return m.Mode } - return "" + return ClusterPairMode_Default } -func (m *CloudMigrateInfo) GetCloudbackupId() string { +func (m *ClusterPairCreateRequest) GetCredentialId() string { if m != nil { - return m.CloudbackupId + return m.CredentialId } return "" } -func (m *CloudMigrateInfo) GetCurrentStage() CloudMigrate_Stage { - if m != nil { - return m.CurrentStage - } - return CloudMigrate_InvalidStage +// Response for a pair request +type ClusterPairCreateResponse struct { + // ID of the remote cluster + RemoteClusterId string `protobuf:"bytes,1,opt,name=remote_cluster_id,json=remoteClusterId" json:"remote_cluster_id,omitempty"` + // Name of the remote cluster + RemoteClusterName string `protobuf:"bytes,2,opt,name=remote_cluster_name,json=remoteClusterName" json:"remote_cluster_name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrateInfo) GetStatus() CloudMigrate_Status { - if m != nil { - return m.Status - } - return CloudMigrate_InvalidStatus +func (m *ClusterPairCreateResponse) Reset() { *m = ClusterPairCreateResponse{} } +func (m *ClusterPairCreateResponse) String() string { return proto.CompactTextString(m) } +func (*ClusterPairCreateResponse) ProtoMessage() {} +func (*ClusterPairCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{303} } - -func (m *CloudMigrateInfo) GetLastUpdate() *timestamp.Timestamp { - if m != nil { - return m.LastUpdate - } - return nil +func (m *ClusterPairCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairCreateResponse.Unmarshal(m, b) } - -func (m *CloudMigrateInfo) GetErrorReason() string { - if m != nil { - return m.ErrorReason - } - return "" +func (m *ClusterPairCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairCreateResponse.Marshal(b, m, deterministic) } - -func (m *CloudMigrateInfo) GetStartTime() *timestamp.Timestamp { - if m != nil { - return m.StartTime - } - return nil +func (dst *ClusterPairCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairCreateResponse.Merge(dst, src) } - -func (m *CloudMigrateInfo) GetCompletedTime() *timestamp.Timestamp { - if m != nil { - return m.CompletedTime - } - return nil +func (m *ClusterPairCreateResponse) XXX_Size() int { + return xxx_messageInfo_ClusterPairCreateResponse.Size(m) } - -func (m *CloudMigrateInfo) GetBytesTotal() uint64 { - if m != nil { - return m.BytesTotal - } - return 0 +func (m *ClusterPairCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairCreateResponse.DiscardUnknown(m) } -func (m *CloudMigrateInfo) GetBytesDone() uint64 { +var xxx_messageInfo_ClusterPairCreateResponse proto.InternalMessageInfo + +func (m *ClusterPairCreateResponse) GetRemoteClusterId() string { if m != nil { - return m.BytesDone + return m.RemoteClusterId } - return 0 + return "" } -func (m *CloudMigrateInfo) GetEtaSeconds() int64 { +func (m *ClusterPairCreateResponse) GetRemoteClusterName() string { if m != nil { - return m.EtaSeconds + return m.RemoteClusterName } - return 0 + return "" } -type CloudMigrateInfoList struct { - List []*CloudMigrateInfo `protobuf:"bytes,1,rep,name=list" json:"list,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a request for creating a cluster pair +type SdkClusterPairCreateRequest struct { + Request *ClusterPairCreateRequest `protobuf:"bytes,1,opt,name=request" json:"request,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrateInfoList) Reset() { *m = CloudMigrateInfoList{} } -func (m *CloudMigrateInfoList) String() string { return proto.CompactTextString(m) } -func (*CloudMigrateInfoList) ProtoMessage() {} -func (*CloudMigrateInfoList) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{228} +func (m *SdkClusterPairCreateRequest) Reset() { *m = SdkClusterPairCreateRequest{} } +func (m *SdkClusterPairCreateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairCreateRequest) ProtoMessage() {} +func (*SdkClusterPairCreateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{304} } -func (m *CloudMigrateInfoList) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CloudMigrateInfoList.Unmarshal(m, b) +func (m *SdkClusterPairCreateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairCreateRequest.Unmarshal(m, b) } -func (m *CloudMigrateInfoList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CloudMigrateInfoList.Marshal(b, m, deterministic) +func (m *SdkClusterPairCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairCreateRequest.Marshal(b, m, deterministic) } -func (dst *CloudMigrateInfoList) XXX_Merge(src proto.Message) { - xxx_messageInfo_CloudMigrateInfoList.Merge(dst, src) +func (dst *SdkClusterPairCreateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairCreateRequest.Merge(dst, src) } -func (m *CloudMigrateInfoList) XXX_Size() int { - return xxx_messageInfo_CloudMigrateInfoList.Size(m) +func (m *SdkClusterPairCreateRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairCreateRequest.Size(m) } -func (m *CloudMigrateInfoList) XXX_DiscardUnknown() { - xxx_messageInfo_CloudMigrateInfoList.DiscardUnknown(m) +func (m *SdkClusterPairCreateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairCreateRequest.DiscardUnknown(m) } -var xxx_messageInfo_CloudMigrateInfoList proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterPairCreateRequest proto.InternalMessageInfo -func (m *CloudMigrateInfoList) GetList() []*CloudMigrateInfo { +func (m *SdkClusterPairCreateRequest) GetRequest() *ClusterPairCreateRequest { if m != nil { - return m.List + return m.Request } return nil } -// Request for cloud migration operation status -type SdkCloudMigrateStatusRequest struct { - // Request contains the task id and cluster id for which status should be - // returned - Request *CloudMigrateStatusRequest `protobuf:"bytes,1,opt,name=request" json:"request,omitempty"` +// Defines a result of the cluster pair +type SdkClusterPairCreateResponse struct { + // Contains the information about cluster pair + Result *ClusterPairCreateResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkCloudMigrateStatusRequest) Reset() { *m = SdkCloudMigrateStatusRequest{} } -func (m *SdkCloudMigrateStatusRequest) String() string { return proto.CompactTextString(m) } -func (*SdkCloudMigrateStatusRequest) ProtoMessage() {} -func (*SdkCloudMigrateStatusRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{229} +func (m *SdkClusterPairCreateResponse) Reset() { *m = SdkClusterPairCreateResponse{} } +func (m *SdkClusterPairCreateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairCreateResponse) ProtoMessage() {} +func (*SdkClusterPairCreateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{305} } -func (m *SdkCloudMigrateStatusRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateStatusRequest.Unmarshal(m, b) +func (m *SdkClusterPairCreateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairCreateResponse.Unmarshal(m, b) } -func (m *SdkCloudMigrateStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateStatusRequest.Marshal(b, m, deterministic) +func (m *SdkClusterPairCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairCreateResponse.Marshal(b, m, deterministic) } -func (dst *SdkCloudMigrateStatusRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateStatusRequest.Merge(dst, src) +func (dst *SdkClusterPairCreateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairCreateResponse.Merge(dst, src) } -func (m *SdkCloudMigrateStatusRequest) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateStatusRequest.Size(m) +func (m *SdkClusterPairCreateResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairCreateResponse.Size(m) } -func (m *SdkCloudMigrateStatusRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateStatusRequest.DiscardUnknown(m) +func (m *SdkClusterPairCreateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairCreateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkCloudMigrateStatusRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterPairCreateResponse proto.InternalMessageInfo -func (m *SdkCloudMigrateStatusRequest) GetRequest() *CloudMigrateStatusRequest { +func (m *SdkClusterPairCreateResponse) GetResult() *ClusterPairCreateResponse { if m != nil { - return m.Request + return m.Result } return nil } -// Request for cloud migration operation status -type CloudMigrateStatusRequest struct { - // Task id for which to return status - TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId" json:"task_id,omitempty"` - // ID of the cluster for which to return migration statuses - ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` +// Used to process a pair request from a remote cluster +type ClusterPairProcessRequest struct { + // ID of the cluster requesting the pairing + SourceClusterId string `protobuf:"bytes,1,opt,name=source_cluster_id,json=sourceClusterId" json:"source_cluster_id,omitempty"` + // Token used to authenticate with the remote cluster + RemoteClusterToken string `protobuf:"bytes,2,opt,name=remote_cluster_token,json=remoteClusterToken" json:"remote_cluster_token,omitempty"` + // The mode to use for the cluster pair + Mode ClusterPairMode_Mode `protobuf:"varint,3,opt,name=mode,enum=openstorage.api.ClusterPairMode_Mode" json:"mode,omitempty"` + // Use for the cluster pairing, if given + // credential id will be used in ClusterPairCreate service + CredentialId string `protobuf:"bytes,4,opt,name=credential_id,json=credentialId" json:"credential_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrateStatusRequest) Reset() { *m = CloudMigrateStatusRequest{} } -func (m *CloudMigrateStatusRequest) String() string { return proto.CompactTextString(m) } -func (*CloudMigrateStatusRequest) ProtoMessage() {} -func (*CloudMigrateStatusRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{230} +func (m *ClusterPairProcessRequest) Reset() { *m = ClusterPairProcessRequest{} } +func (m *ClusterPairProcessRequest) String() string { return proto.CompactTextString(m) } +func (*ClusterPairProcessRequest) ProtoMessage() {} +func (*ClusterPairProcessRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{306} } -func (m *CloudMigrateStatusRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CloudMigrateStatusRequest.Unmarshal(m, b) +func (m *ClusterPairProcessRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairProcessRequest.Unmarshal(m, b) } -func (m *CloudMigrateStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CloudMigrateStatusRequest.Marshal(b, m, deterministic) +func (m *ClusterPairProcessRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairProcessRequest.Marshal(b, m, deterministic) } -func (dst *CloudMigrateStatusRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_CloudMigrateStatusRequest.Merge(dst, src) +func (dst *ClusterPairProcessRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairProcessRequest.Merge(dst, src) } -func (m *CloudMigrateStatusRequest) XXX_Size() int { - return xxx_messageInfo_CloudMigrateStatusRequest.Size(m) +func (m *ClusterPairProcessRequest) XXX_Size() int { + return xxx_messageInfo_ClusterPairProcessRequest.Size(m) } -func (m *CloudMigrateStatusRequest) XXX_DiscardUnknown() { - xxx_messageInfo_CloudMigrateStatusRequest.DiscardUnknown(m) +func (m *ClusterPairProcessRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairProcessRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ClusterPairProcessRequest proto.InternalMessageInfo + +func (m *ClusterPairProcessRequest) GetSourceClusterId() string { + if m != nil { + return m.SourceClusterId + } + return "" } -var xxx_messageInfo_CloudMigrateStatusRequest proto.InternalMessageInfo - -func (m *CloudMigrateStatusRequest) GetTaskId() string { +func (m *ClusterPairProcessRequest) GetRemoteClusterToken() string { if m != nil { - return m.TaskId + return m.RemoteClusterToken } return "" } -func (m *CloudMigrateStatusRequest) GetClusterId() string { +func (m *ClusterPairProcessRequest) GetMode() ClusterPairMode_Mode { if m != nil { - return m.ClusterId + return m.Mode + } + return ClusterPairMode_Default +} + +func (m *ClusterPairProcessRequest) GetCredentialId() string { + if m != nil { + return m.CredentialId } return "" } -// Response with a status of the cloud migration operations -type CloudMigrateStatusResponse struct { - // Map of cluster id to the status of volumes being migrated - Info map[string]*CloudMigrateInfoList `protobuf:"bytes,1,rep,name=info" json:"info,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Response after a pairing has been processed +type ClusterPairProcessResponse struct { + // ID of the cluster which processed the pair request + RemoteClusterId string `protobuf:"bytes,1,opt,name=remote_cluster_id,json=remoteClusterId" json:"remote_cluster_id,omitempty"` + // Name of the cluster which processed the pair request + RemoteClusterName string `protobuf:"bytes,2,opt,name=remote_cluster_name,json=remoteClusterName" json:"remote_cluster_name,omitempty"` + // List of endpoints that can be used to communicate with the cluster + RemoteClusterEndpoints []string `protobuf:"bytes,3,rep,name=remote_cluster_endpoints,json=remoteClusterEndpoints" json:"remote_cluster_endpoints,omitempty"` + // Key/value pair of options returned on successful pairing. + // Opaque to openstorage and interpreted by the drivers + Options map[string]string `protobuf:"bytes,4,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *CloudMigrateStatusResponse) Reset() { *m = CloudMigrateStatusResponse{} } -func (m *CloudMigrateStatusResponse) String() string { return proto.CompactTextString(m) } -func (*CloudMigrateStatusResponse) ProtoMessage() {} -func (*CloudMigrateStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{231} +func (m *ClusterPairProcessResponse) Reset() { *m = ClusterPairProcessResponse{} } +func (m *ClusterPairProcessResponse) String() string { return proto.CompactTextString(m) } +func (*ClusterPairProcessResponse) ProtoMessage() {} +func (*ClusterPairProcessResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{307} } -func (m *CloudMigrateStatusResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CloudMigrateStatusResponse.Unmarshal(m, b) +func (m *ClusterPairProcessResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairProcessResponse.Unmarshal(m, b) } -func (m *CloudMigrateStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CloudMigrateStatusResponse.Marshal(b, m, deterministic) +func (m *ClusterPairProcessResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairProcessResponse.Marshal(b, m, deterministic) } -func (dst *CloudMigrateStatusResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_CloudMigrateStatusResponse.Merge(dst, src) +func (dst *ClusterPairProcessResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairProcessResponse.Merge(dst, src) } -func (m *CloudMigrateStatusResponse) XXX_Size() int { - return xxx_messageInfo_CloudMigrateStatusResponse.Size(m) +func (m *ClusterPairProcessResponse) XXX_Size() int { + return xxx_messageInfo_ClusterPairProcessResponse.Size(m) } -func (m *CloudMigrateStatusResponse) XXX_DiscardUnknown() { - xxx_messageInfo_CloudMigrateStatusResponse.DiscardUnknown(m) +func (m *ClusterPairProcessResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairProcessResponse.DiscardUnknown(m) } -var xxx_messageInfo_CloudMigrateStatusResponse proto.InternalMessageInfo +var xxx_messageInfo_ClusterPairProcessResponse proto.InternalMessageInfo -func (m *CloudMigrateStatusResponse) GetInfo() map[string]*CloudMigrateInfoList { +func (m *ClusterPairProcessResponse) GetRemoteClusterId() string { if m != nil { - return m.Info + return m.RemoteClusterId } - return nil + return "" } -// Defines a response for the status request -type SdkCloudMigrateStatusResponse struct { - // Status of all migration requests - Result *CloudMigrateStatusResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *ClusterPairProcessResponse) GetRemoteClusterName() string { + if m != nil { + return m.RemoteClusterName + } + return "" } -func (m *SdkCloudMigrateStatusResponse) Reset() { *m = SdkCloudMigrateStatusResponse{} } -func (m *SdkCloudMigrateStatusResponse) String() string { return proto.CompactTextString(m) } -func (*SdkCloudMigrateStatusResponse) ProtoMessage() {} -func (*SdkCloudMigrateStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{232} -} -func (m *SdkCloudMigrateStatusResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkCloudMigrateStatusResponse.Unmarshal(m, b) -} -func (m *SdkCloudMigrateStatusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkCloudMigrateStatusResponse.Marshal(b, m, deterministic) -} -func (dst *SdkCloudMigrateStatusResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkCloudMigrateStatusResponse.Merge(dst, src) -} -func (m *SdkCloudMigrateStatusResponse) XXX_Size() int { - return xxx_messageInfo_SdkCloudMigrateStatusResponse.Size(m) -} -func (m *SdkCloudMigrateStatusResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkCloudMigrateStatusResponse.DiscardUnknown(m) +func (m *ClusterPairProcessResponse) GetRemoteClusterEndpoints() []string { + if m != nil { + return m.RemoteClusterEndpoints + } + return nil } -var xxx_messageInfo_SdkCloudMigrateStatusResponse proto.InternalMessageInfo - -func (m *SdkCloudMigrateStatusResponse) GetResult() *CloudMigrateStatusResponse { +func (m *ClusterPairProcessResponse) GetOptions() map[string]string { if m != nil { - return m.Result + return m.Options } return nil } -type ClusterPairMode struct { +// Defines a delete request for a cluster pair +type SdkClusterPairDeleteRequest struct { + // ID of the cluster pair to be deleted + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *ClusterPairMode) Reset() { *m = ClusterPairMode{} } -func (m *ClusterPairMode) String() string { return proto.CompactTextString(m) } -func (*ClusterPairMode) ProtoMessage() {} -func (*ClusterPairMode) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{233} -} -func (m *ClusterPairMode) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairMode.Unmarshal(m, b) -} -func (m *ClusterPairMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairMode.Marshal(b, m, deterministic) -} -func (dst *ClusterPairMode) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairMode.Merge(dst, src) -} -func (m *ClusterPairMode) XXX_Size() int { - return xxx_messageInfo_ClusterPairMode.Size(m) -} -func (m *ClusterPairMode) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairMode.DiscardUnknown(m) -} - -var xxx_messageInfo_ClusterPairMode proto.InternalMessageInfo - -// Used to send a request to create a cluster pair -type ClusterPairCreateRequest struct { - // IP of the remote cluster - RemoteClusterIp string `protobuf:"bytes,1,opt,name=remote_cluster_ip,json=remoteClusterIp" json:"remote_cluster_ip,omitempty"` - // Port for the remote cluster - RemoteClusterPort uint32 `protobuf:"varint,2,opt,name=remote_cluster_port,json=remoteClusterPort" json:"remote_cluster_port,omitempty"` - // Token used to authenticate with the remote cluster - RemoteClusterToken string `protobuf:"bytes,3,opt,name=remote_cluster_token,json=remoteClusterToken" json:"remote_cluster_token,omitempty"` - // Set the new pair as the default - SetDefault bool `protobuf:"varint,4,opt,name=set_default,json=setDefault" json:"set_default,omitempty"` - // The mode to use for the cluster pair - Mode ClusterPairMode_Mode `protobuf:"varint,5,opt,name=mode,enum=openstorage.api.ClusterPairMode_Mode" json:"mode,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *ClusterPairCreateRequest) Reset() { *m = ClusterPairCreateRequest{} } -func (m *ClusterPairCreateRequest) String() string { return proto.CompactTextString(m) } -func (*ClusterPairCreateRequest) ProtoMessage() {} -func (*ClusterPairCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{234} +func (m *SdkClusterPairDeleteRequest) Reset() { *m = SdkClusterPairDeleteRequest{} } +func (m *SdkClusterPairDeleteRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairDeleteRequest) ProtoMessage() {} +func (*SdkClusterPairDeleteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{308} } -func (m *ClusterPairCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairCreateRequest.Unmarshal(m, b) +func (m *SdkClusterPairDeleteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairDeleteRequest.Unmarshal(m, b) } -func (m *ClusterPairCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairCreateRequest.Marshal(b, m, deterministic) +func (m *SdkClusterPairDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairDeleteRequest.Marshal(b, m, deterministic) } -func (dst *ClusterPairCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairCreateRequest.Merge(dst, src) +func (dst *SdkClusterPairDeleteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairDeleteRequest.Merge(dst, src) } -func (m *ClusterPairCreateRequest) XXX_Size() int { - return xxx_messageInfo_ClusterPairCreateRequest.Size(m) +func (m *SdkClusterPairDeleteRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairDeleteRequest.Size(m) } -func (m *ClusterPairCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairCreateRequest.DiscardUnknown(m) +func (m *SdkClusterPairDeleteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairDeleteRequest.DiscardUnknown(m) } -var xxx_messageInfo_ClusterPairCreateRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterPairDeleteRequest proto.InternalMessageInfo -func (m *ClusterPairCreateRequest) GetRemoteClusterIp() string { +func (m *SdkClusterPairDeleteRequest) GetClusterId() string { if m != nil { - return m.RemoteClusterIp + return m.ClusterId } return "" } -func (m *ClusterPairCreateRequest) GetRemoteClusterPort() uint32 { - if m != nil { - return m.RemoteClusterPort - } - return 0 +// Empty response +type SdkClusterPairDeleteResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ClusterPairCreateRequest) GetRemoteClusterToken() string { - if m != nil { - return m.RemoteClusterToken - } - return "" +func (m *SdkClusterPairDeleteResponse) Reset() { *m = SdkClusterPairDeleteResponse{} } +func (m *SdkClusterPairDeleteResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairDeleteResponse) ProtoMessage() {} +func (*SdkClusterPairDeleteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{309} } - -func (m *ClusterPairCreateRequest) GetSetDefault() bool { - if m != nil { - return m.SetDefault - } - return false +func (m *SdkClusterPairDeleteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairDeleteResponse.Unmarshal(m, b) } - -func (m *ClusterPairCreateRequest) GetMode() ClusterPairMode_Mode { - if m != nil { - return m.Mode - } - return ClusterPairMode_Default +func (m *SdkClusterPairDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairDeleteResponse.Marshal(b, m, deterministic) +} +func (dst *SdkClusterPairDeleteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairDeleteResponse.Merge(dst, src) +} +func (m *SdkClusterPairDeleteResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairDeleteResponse.Size(m) +} +func (m *SdkClusterPairDeleteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairDeleteResponse.DiscardUnknown(m) } -// Response for a pair request -type ClusterPairCreateResponse struct { - // ID of the remote cluster - RemoteClusterId string `protobuf:"bytes,1,opt,name=remote_cluster_id,json=remoteClusterId" json:"remote_cluster_id,omitempty"` - // Name of the remote cluster - RemoteClusterName string `protobuf:"bytes,2,opt,name=remote_cluster_name,json=remoteClusterName" json:"remote_cluster_name,omitempty"` +var xxx_messageInfo_SdkClusterPairDeleteResponse proto.InternalMessageInfo + +// Response to get the cluster token +type ClusterPairTokenGetResponse struct { + // Token used to authenticate clusters + Token string `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *ClusterPairCreateResponse) Reset() { *m = ClusterPairCreateResponse{} } -func (m *ClusterPairCreateResponse) String() string { return proto.CompactTextString(m) } -func (*ClusterPairCreateResponse) ProtoMessage() {} -func (*ClusterPairCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{235} +func (m *ClusterPairTokenGetResponse) Reset() { *m = ClusterPairTokenGetResponse{} } +func (m *ClusterPairTokenGetResponse) String() string { return proto.CompactTextString(m) } +func (*ClusterPairTokenGetResponse) ProtoMessage() {} +func (*ClusterPairTokenGetResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{310} } -func (m *ClusterPairCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairCreateResponse.Unmarshal(m, b) +func (m *ClusterPairTokenGetResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairTokenGetResponse.Unmarshal(m, b) } -func (m *ClusterPairCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairCreateResponse.Marshal(b, m, deterministic) +func (m *ClusterPairTokenGetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairTokenGetResponse.Marshal(b, m, deterministic) } -func (dst *ClusterPairCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairCreateResponse.Merge(dst, src) +func (dst *ClusterPairTokenGetResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairTokenGetResponse.Merge(dst, src) } -func (m *ClusterPairCreateResponse) XXX_Size() int { - return xxx_messageInfo_ClusterPairCreateResponse.Size(m) +func (m *ClusterPairTokenGetResponse) XXX_Size() int { + return xxx_messageInfo_ClusterPairTokenGetResponse.Size(m) } -func (m *ClusterPairCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairCreateResponse.DiscardUnknown(m) +func (m *ClusterPairTokenGetResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairTokenGetResponse.DiscardUnknown(m) } -var xxx_messageInfo_ClusterPairCreateResponse proto.InternalMessageInfo - -func (m *ClusterPairCreateResponse) GetRemoteClusterId() string { - if m != nil { - return m.RemoteClusterId - } - return "" -} +var xxx_messageInfo_ClusterPairTokenGetResponse proto.InternalMessageInfo -func (m *ClusterPairCreateResponse) GetRemoteClusterName() string { +func (m *ClusterPairTokenGetResponse) GetToken() string { if m != nil { - return m.RemoteClusterName + return m.Token } return "" } -// Defines a request for creating a cluster pair -type SdkClusterPairCreateRequest struct { - Request *ClusterPairCreateRequest `protobuf:"bytes,1,opt,name=request" json:"request,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Empty request +type SdkClusterPairGetTokenRequest struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterPairCreateRequest) Reset() { *m = SdkClusterPairCreateRequest{} } -func (m *SdkClusterPairCreateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairCreateRequest) ProtoMessage() {} -func (*SdkClusterPairCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{236} +func (m *SdkClusterPairGetTokenRequest) Reset() { *m = SdkClusterPairGetTokenRequest{} } +func (m *SdkClusterPairGetTokenRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairGetTokenRequest) ProtoMessage() {} +func (*SdkClusterPairGetTokenRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{311} } -func (m *SdkClusterPairCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairCreateRequest.Unmarshal(m, b) +func (m *SdkClusterPairGetTokenRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairGetTokenRequest.Unmarshal(m, b) } -func (m *SdkClusterPairCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairCreateRequest.Marshal(b, m, deterministic) +func (m *SdkClusterPairGetTokenRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairGetTokenRequest.Marshal(b, m, deterministic) } -func (dst *SdkClusterPairCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairCreateRequest.Merge(dst, src) +func (dst *SdkClusterPairGetTokenRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairGetTokenRequest.Merge(dst, src) } -func (m *SdkClusterPairCreateRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairCreateRequest.Size(m) +func (m *SdkClusterPairGetTokenRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairGetTokenRequest.Size(m) } -func (m *SdkClusterPairCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairCreateRequest.DiscardUnknown(m) +func (m *SdkClusterPairGetTokenRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairGetTokenRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterPairCreateRequest proto.InternalMessageInfo - -func (m *SdkClusterPairCreateRequest) GetRequest() *ClusterPairCreateRequest { - if m != nil { - return m.Request - } - return nil -} +var xxx_messageInfo_SdkClusterPairGetTokenRequest proto.InternalMessageInfo -// Defines a result of the cluster pair -type SdkClusterPairCreateResponse struct { - // Contains the information about cluster pair - Result *ClusterPairCreateResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Defines a response for the token request +type SdkClusterPairGetTokenResponse struct { + // Contains authentication token for the cluster + Result *ClusterPairTokenGetResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterPairCreateResponse) Reset() { *m = SdkClusterPairCreateResponse{} } -func (m *SdkClusterPairCreateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairCreateResponse) ProtoMessage() {} -func (*SdkClusterPairCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{237} +func (m *SdkClusterPairGetTokenResponse) Reset() { *m = SdkClusterPairGetTokenResponse{} } +func (m *SdkClusterPairGetTokenResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairGetTokenResponse) ProtoMessage() {} +func (*SdkClusterPairGetTokenResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{312} } -func (m *SdkClusterPairCreateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairCreateResponse.Unmarshal(m, b) +func (m *SdkClusterPairGetTokenResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairGetTokenResponse.Unmarshal(m, b) } -func (m *SdkClusterPairCreateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairCreateResponse.Marshal(b, m, deterministic) +func (m *SdkClusterPairGetTokenResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairGetTokenResponse.Marshal(b, m, deterministic) } -func (dst *SdkClusterPairCreateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairCreateResponse.Merge(dst, src) +func (dst *SdkClusterPairGetTokenResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairGetTokenResponse.Merge(dst, src) } -func (m *SdkClusterPairCreateResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairCreateResponse.Size(m) +func (m *SdkClusterPairGetTokenResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairGetTokenResponse.Size(m) } -func (m *SdkClusterPairCreateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairCreateResponse.DiscardUnknown(m) +func (m *SdkClusterPairGetTokenResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairGetTokenResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterPairCreateResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterPairGetTokenResponse proto.InternalMessageInfo -func (m *SdkClusterPairCreateResponse) GetResult() *ClusterPairCreateResponse { +func (m *SdkClusterPairGetTokenResponse) GetResult() *ClusterPairTokenGetResponse { if m != nil { return m.Result } return nil } -// Used to process a pair request from a remote cluster -type ClusterPairProcessRequest struct { - // ID of the cluster requesting the pairing - SourceClusterId string `protobuf:"bytes,1,opt,name=source_cluster_id,json=sourceClusterId" json:"source_cluster_id,omitempty"` - // Token used to authenticate with the remote cluster - RemoteClusterToken string `protobuf:"bytes,2,opt,name=remote_cluster_token,json=remoteClusterToken" json:"remote_cluster_token,omitempty"` - // The mode to use for the cluster pair - Mode ClusterPairMode_Mode `protobuf:"varint,3,opt,name=mode,enum=openstorage.api.ClusterPairMode_Mode" json:"mode,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Empty request +type SdkClusterPairResetTokenRequest struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ClusterPairProcessRequest) Reset() { *m = ClusterPairProcessRequest{} } -func (m *ClusterPairProcessRequest) String() string { return proto.CompactTextString(m) } -func (*ClusterPairProcessRequest) ProtoMessage() {} -func (*ClusterPairProcessRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{238} +func (m *SdkClusterPairResetTokenRequest) Reset() { *m = SdkClusterPairResetTokenRequest{} } +func (m *SdkClusterPairResetTokenRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairResetTokenRequest) ProtoMessage() {} +func (*SdkClusterPairResetTokenRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{313} } -func (m *ClusterPairProcessRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairProcessRequest.Unmarshal(m, b) +func (m *SdkClusterPairResetTokenRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairResetTokenRequest.Unmarshal(m, b) } -func (m *ClusterPairProcessRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairProcessRequest.Marshal(b, m, deterministic) +func (m *SdkClusterPairResetTokenRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairResetTokenRequest.Marshal(b, m, deterministic) } -func (dst *ClusterPairProcessRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairProcessRequest.Merge(dst, src) +func (dst *SdkClusterPairResetTokenRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairResetTokenRequest.Merge(dst, src) } -func (m *ClusterPairProcessRequest) XXX_Size() int { - return xxx_messageInfo_ClusterPairProcessRequest.Size(m) +func (m *SdkClusterPairResetTokenRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairResetTokenRequest.Size(m) } -func (m *ClusterPairProcessRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairProcessRequest.DiscardUnknown(m) +func (m *SdkClusterPairResetTokenRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairResetTokenRequest.DiscardUnknown(m) } -var xxx_messageInfo_ClusterPairProcessRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterPairResetTokenRequest proto.InternalMessageInfo -func (m *ClusterPairProcessRequest) GetSourceClusterId() string { - if m != nil { - return m.SourceClusterId - } - return "" +// Defines a response for the token request +type SdkClusterPairResetTokenResponse struct { + // Contains authentication token for the cluster + Result *ClusterPairTokenGetResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ClusterPairProcessRequest) GetRemoteClusterToken() string { - if m != nil { - return m.RemoteClusterToken - } - return "" +func (m *SdkClusterPairResetTokenResponse) Reset() { *m = SdkClusterPairResetTokenResponse{} } +func (m *SdkClusterPairResetTokenResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairResetTokenResponse) ProtoMessage() {} +func (*SdkClusterPairResetTokenResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{314} +} +func (m *SdkClusterPairResetTokenResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairResetTokenResponse.Unmarshal(m, b) +} +func (m *SdkClusterPairResetTokenResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairResetTokenResponse.Marshal(b, m, deterministic) +} +func (dst *SdkClusterPairResetTokenResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairResetTokenResponse.Merge(dst, src) +} +func (m *SdkClusterPairResetTokenResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairResetTokenResponse.Size(m) +} +func (m *SdkClusterPairResetTokenResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairResetTokenResponse.DiscardUnknown(m) } -func (m *ClusterPairProcessRequest) GetMode() ClusterPairMode_Mode { +var xxx_messageInfo_SdkClusterPairResetTokenResponse proto.InternalMessageInfo + +func (m *SdkClusterPairResetTokenResponse) GetResult() *ClusterPairTokenGetResponse { if m != nil { - return m.Mode + return m.Result } - return ClusterPairMode_Default + return nil } -// Response after a pairing has been processed -type ClusterPairProcessResponse struct { - // ID of the cluster which processed the pair request - RemoteClusterId string `protobuf:"bytes,1,opt,name=remote_cluster_id,json=remoteClusterId" json:"remote_cluster_id,omitempty"` - // Name of the cluster which processed the pair request - RemoteClusterName string `protobuf:"bytes,2,opt,name=remote_cluster_name,json=remoteClusterName" json:"remote_cluster_name,omitempty"` - // List of endpoints that can be used to communicate with the cluster - RemoteClusterEndpoints []string `protobuf:"bytes,3,rep,name=remote_cluster_endpoints,json=remoteClusterEndpoints" json:"remote_cluster_endpoints,omitempty"` - // Key/value pair of options returned on successful pairing. +// Information about a cluster pair +type ClusterPairInfo struct { + // ID of the cluster + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + // Name of the cluster + Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + // The endpoint used for creating the pair + Endpoint string `protobuf:"bytes,3,opt,name=endpoint" json:"endpoint,omitempty"` + // Current endpoints of the cluster + CurrentEndpoints []string `protobuf:"bytes,4,rep,name=current_endpoints,json=currentEndpoints" json:"current_endpoints,omitempty"` + // Flag used to determine if communication is over a secure channel + Secure bool `protobuf:"varint,5,opt,name=secure" json:"secure,omitempty"` + // Token associated with cluster + Token string `protobuf:"bytes,6,opt,name=token" json:"token,omitempty"` + // Key/value pair of options associated with the cluster // Opaque to openstorage and interpreted by the drivers - Options map[string]string `protobuf:"bytes,4,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Options map[string]string `protobuf:"bytes,7,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // Mode for the cluster pair + Mode ClusterPairMode_Mode `protobuf:"varint,8,opt,name=mode,enum=openstorage.api.ClusterPairMode_Mode" json:"mode,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } - -func (m *ClusterPairProcessResponse) Reset() { *m = ClusterPairProcessResponse{} } -func (m *ClusterPairProcessResponse) String() string { return proto.CompactTextString(m) } -func (*ClusterPairProcessResponse) ProtoMessage() {} -func (*ClusterPairProcessResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{239} + +func (m *ClusterPairInfo) Reset() { *m = ClusterPairInfo{} } +func (m *ClusterPairInfo) String() string { return proto.CompactTextString(m) } +func (*ClusterPairInfo) ProtoMessage() {} +func (*ClusterPairInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{315} } -func (m *ClusterPairProcessResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairProcessResponse.Unmarshal(m, b) +func (m *ClusterPairInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairInfo.Unmarshal(m, b) } -func (m *ClusterPairProcessResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairProcessResponse.Marshal(b, m, deterministic) +func (m *ClusterPairInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairInfo.Marshal(b, m, deterministic) } -func (dst *ClusterPairProcessResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairProcessResponse.Merge(dst, src) +func (dst *ClusterPairInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairInfo.Merge(dst, src) } -func (m *ClusterPairProcessResponse) XXX_Size() int { - return xxx_messageInfo_ClusterPairProcessResponse.Size(m) +func (m *ClusterPairInfo) XXX_Size() int { + return xxx_messageInfo_ClusterPairInfo.Size(m) } -func (m *ClusterPairProcessResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairProcessResponse.DiscardUnknown(m) +func (m *ClusterPairInfo) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairInfo.DiscardUnknown(m) } -var xxx_messageInfo_ClusterPairProcessResponse proto.InternalMessageInfo +var xxx_messageInfo_ClusterPairInfo proto.InternalMessageInfo -func (m *ClusterPairProcessResponse) GetRemoteClusterId() string { +func (m *ClusterPairInfo) GetId() string { if m != nil { - return m.RemoteClusterId + return m.Id } return "" } -func (m *ClusterPairProcessResponse) GetRemoteClusterName() string { +func (m *ClusterPairInfo) GetName() string { if m != nil { - return m.RemoteClusterName + return m.Name } return "" } -func (m *ClusterPairProcessResponse) GetRemoteClusterEndpoints() []string { +func (m *ClusterPairInfo) GetEndpoint() string { if m != nil { - return m.RemoteClusterEndpoints + return m.Endpoint } - return nil + return "" } -func (m *ClusterPairProcessResponse) GetOptions() map[string]string { +func (m *ClusterPairInfo) GetCurrentEndpoints() []string { if m != nil { - return m.Options + return m.CurrentEndpoints } return nil } -// Defines a delete request for a cluster pair -type SdkClusterPairDeleteRequest struct { - // ID of the cluster pair to be deleted - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *SdkClusterPairDeleteRequest) Reset() { *m = SdkClusterPairDeleteRequest{} } -func (m *SdkClusterPairDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairDeleteRequest) ProtoMessage() {} -func (*SdkClusterPairDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{240} -} -func (m *SdkClusterPairDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairDeleteRequest.Unmarshal(m, b) -} -func (m *SdkClusterPairDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairDeleteRequest.Marshal(b, m, deterministic) -} -func (dst *SdkClusterPairDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairDeleteRequest.Merge(dst, src) -} -func (m *SdkClusterPairDeleteRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairDeleteRequest.Size(m) -} -func (m *SdkClusterPairDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairDeleteRequest.DiscardUnknown(m) +func (m *ClusterPairInfo) GetSecure() bool { + if m != nil { + return m.Secure + } + return false } -var xxx_messageInfo_SdkClusterPairDeleteRequest proto.InternalMessageInfo - -func (m *SdkClusterPairDeleteRequest) GetClusterId() string { +func (m *ClusterPairInfo) GetToken() string { if m != nil { - return m.ClusterId + return m.Token } return "" } -// Empty response -type SdkClusterPairDeleteResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *ClusterPairInfo) GetOptions() map[string]string { + if m != nil { + return m.Options + } + return nil } -func (m *SdkClusterPairDeleteResponse) Reset() { *m = SdkClusterPairDeleteResponse{} } -func (m *SdkClusterPairDeleteResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairDeleteResponse) ProtoMessage() {} -func (*SdkClusterPairDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{241} -} -func (m *SdkClusterPairDeleteResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairDeleteResponse.Unmarshal(m, b) -} -func (m *SdkClusterPairDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairDeleteResponse.Marshal(b, m, deterministic) -} -func (dst *SdkClusterPairDeleteResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairDeleteResponse.Merge(dst, src) -} -func (m *SdkClusterPairDeleteResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairDeleteResponse.Size(m) -} -func (m *SdkClusterPairDeleteResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairDeleteResponse.DiscardUnknown(m) +func (m *ClusterPairInfo) GetMode() ClusterPairMode_Mode { + if m != nil { + return m.Mode + } + return ClusterPairMode_Default } -var xxx_messageInfo_SdkClusterPairDeleteResponse proto.InternalMessageInfo - -// Response to get the cluster token -type ClusterPairTokenGetResponse struct { - // Token used to authenticate clusters - Token string `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"` +// Defines a cluster pair inspect request +type SdkClusterPairInspectRequest struct { + // ID of the cluster, if empty gets the default pair + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *ClusterPairTokenGetResponse) Reset() { *m = ClusterPairTokenGetResponse{} } -func (m *ClusterPairTokenGetResponse) String() string { return proto.CompactTextString(m) } -func (*ClusterPairTokenGetResponse) ProtoMessage() {} -func (*ClusterPairTokenGetResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{242} +func (m *SdkClusterPairInspectRequest) Reset() { *m = SdkClusterPairInspectRequest{} } +func (m *SdkClusterPairInspectRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairInspectRequest) ProtoMessage() {} +func (*SdkClusterPairInspectRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{316} } -func (m *ClusterPairTokenGetResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairTokenGetResponse.Unmarshal(m, b) +func (m *SdkClusterPairInspectRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairInspectRequest.Unmarshal(m, b) } -func (m *ClusterPairTokenGetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairTokenGetResponse.Marshal(b, m, deterministic) +func (m *SdkClusterPairInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairInspectRequest.Marshal(b, m, deterministic) } -func (dst *ClusterPairTokenGetResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairTokenGetResponse.Merge(dst, src) +func (dst *SdkClusterPairInspectRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairInspectRequest.Merge(dst, src) } -func (m *ClusterPairTokenGetResponse) XXX_Size() int { - return xxx_messageInfo_ClusterPairTokenGetResponse.Size(m) +func (m *SdkClusterPairInspectRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairInspectRequest.Size(m) } -func (m *ClusterPairTokenGetResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairTokenGetResponse.DiscardUnknown(m) +func (m *SdkClusterPairInspectRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairInspectRequest.DiscardUnknown(m) } -var xxx_messageInfo_ClusterPairTokenGetResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterPairInspectRequest proto.InternalMessageInfo -func (m *ClusterPairTokenGetResponse) GetToken() string { +func (m *SdkClusterPairInspectRequest) GetId() string { if m != nil { - return m.Token + return m.Id } return "" } -// Empty request -type SdkClusterPairGetTokenRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Reponse to get a cluster pair +type ClusterPairGetResponse struct { + // Info about the cluster pair + PairInfo *ClusterPairInfo `protobuf:"bytes,1,opt,name=pair_info,json=pairInfo" json:"pair_info,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterPairGetTokenRequest) Reset() { *m = SdkClusterPairGetTokenRequest{} } -func (m *SdkClusterPairGetTokenRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairGetTokenRequest) ProtoMessage() {} -func (*SdkClusterPairGetTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{243} +func (m *ClusterPairGetResponse) Reset() { *m = ClusterPairGetResponse{} } +func (m *ClusterPairGetResponse) String() string { return proto.CompactTextString(m) } +func (*ClusterPairGetResponse) ProtoMessage() {} +func (*ClusterPairGetResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{317} } -func (m *SdkClusterPairGetTokenRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairGetTokenRequest.Unmarshal(m, b) +func (m *ClusterPairGetResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairGetResponse.Unmarshal(m, b) } -func (m *SdkClusterPairGetTokenRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairGetTokenRequest.Marshal(b, m, deterministic) +func (m *ClusterPairGetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairGetResponse.Marshal(b, m, deterministic) } -func (dst *SdkClusterPairGetTokenRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairGetTokenRequest.Merge(dst, src) +func (dst *ClusterPairGetResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairGetResponse.Merge(dst, src) } -func (m *SdkClusterPairGetTokenRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairGetTokenRequest.Size(m) +func (m *ClusterPairGetResponse) XXX_Size() int { + return xxx_messageInfo_ClusterPairGetResponse.Size(m) } -func (m *SdkClusterPairGetTokenRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairGetTokenRequest.DiscardUnknown(m) +func (m *ClusterPairGetResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairGetResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterPairGetTokenRequest proto.InternalMessageInfo +var xxx_messageInfo_ClusterPairGetResponse proto.InternalMessageInfo -// Defines a response for the token request -type SdkClusterPairGetTokenResponse struct { - // Contains authentication token for the cluster - Result *ClusterPairTokenGetResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *ClusterPairGetResponse) GetPairInfo() *ClusterPairInfo { + if m != nil { + return m.PairInfo + } + return nil } -func (m *SdkClusterPairGetTokenResponse) Reset() { *m = SdkClusterPairGetTokenResponse{} } -func (m *SdkClusterPairGetTokenResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairGetTokenResponse) ProtoMessage() {} -func (*SdkClusterPairGetTokenResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{244} +// Defines a cluster pair inspect response +type SdkClusterPairInspectResponse struct { + // Information about cluster pair + Result *ClusterPairGetResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterPairGetTokenResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairGetTokenResponse.Unmarshal(m, b) + +func (m *SdkClusterPairInspectResponse) Reset() { *m = SdkClusterPairInspectResponse{} } +func (m *SdkClusterPairInspectResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairInspectResponse) ProtoMessage() {} +func (*SdkClusterPairInspectResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{318} } -func (m *SdkClusterPairGetTokenResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairGetTokenResponse.Marshal(b, m, deterministic) +func (m *SdkClusterPairInspectResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairInspectResponse.Unmarshal(m, b) } -func (dst *SdkClusterPairGetTokenResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairGetTokenResponse.Merge(dst, src) +func (m *SdkClusterPairInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairInspectResponse.Marshal(b, m, deterministic) } -func (m *SdkClusterPairGetTokenResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairGetTokenResponse.Size(m) +func (dst *SdkClusterPairInspectResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairInspectResponse.Merge(dst, src) } -func (m *SdkClusterPairGetTokenResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairGetTokenResponse.DiscardUnknown(m) +func (m *SdkClusterPairInspectResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairInspectResponse.Size(m) +} +func (m *SdkClusterPairInspectResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairInspectResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterPairGetTokenResponse proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterPairInspectResponse proto.InternalMessageInfo -func (m *SdkClusterPairGetTokenResponse) GetResult() *ClusterPairTokenGetResponse { +func (m *SdkClusterPairInspectResponse) GetResult() *ClusterPairGetResponse { if m != nil { return m.Result } return nil } -// Empty request -type SdkClusterPairResetTokenRequest struct { +// Empty Request +type SdkClusterPairEnumerateRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterPairResetTokenRequest) Reset() { *m = SdkClusterPairResetTokenRequest{} } -func (m *SdkClusterPairResetTokenRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairResetTokenRequest) ProtoMessage() {} -func (*SdkClusterPairResetTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{245} +func (m *SdkClusterPairEnumerateRequest) Reset() { *m = SdkClusterPairEnumerateRequest{} } +func (m *SdkClusterPairEnumerateRequest) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairEnumerateRequest) ProtoMessage() {} +func (*SdkClusterPairEnumerateRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{319} } -func (m *SdkClusterPairResetTokenRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairResetTokenRequest.Unmarshal(m, b) +func (m *SdkClusterPairEnumerateRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairEnumerateRequest.Unmarshal(m, b) } -func (m *SdkClusterPairResetTokenRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairResetTokenRequest.Marshal(b, m, deterministic) +func (m *SdkClusterPairEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairEnumerateRequest.Marshal(b, m, deterministic) } -func (dst *SdkClusterPairResetTokenRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairResetTokenRequest.Merge(dst, src) +func (dst *SdkClusterPairEnumerateRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairEnumerateRequest.Merge(dst, src) } -func (m *SdkClusterPairResetTokenRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairResetTokenRequest.Size(m) +func (m *SdkClusterPairEnumerateRequest) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairEnumerateRequest.Size(m) } -func (m *SdkClusterPairResetTokenRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairResetTokenRequest.DiscardUnknown(m) +func (m *SdkClusterPairEnumerateRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairEnumerateRequest.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterPairResetTokenRequest proto.InternalMessageInfo +var xxx_messageInfo_SdkClusterPairEnumerateRequest proto.InternalMessageInfo -// Defines a response for the token request -type SdkClusterPairResetTokenResponse struct { - // Contains authentication token for the cluster - Result *ClusterPairTokenGetResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// Response to enumerate all the cluster pairs +type ClusterPairsEnumerateResponse struct { + // ID of the default cluster pair + DefaultId string `protobuf:"bytes,1,opt,name=default_id,json=defaultId" json:"default_id,omitempty"` + // Pairs Info about the cluster pairs + Pairs map[string]*ClusterPairInfo `protobuf:"bytes,2,rep,name=pairs" json:"pairs,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterPairResetTokenResponse) Reset() { *m = SdkClusterPairResetTokenResponse{} } -func (m *SdkClusterPairResetTokenResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairResetTokenResponse) ProtoMessage() {} -func (*SdkClusterPairResetTokenResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{246} +func (m *ClusterPairsEnumerateResponse) Reset() { *m = ClusterPairsEnumerateResponse{} } +func (m *ClusterPairsEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*ClusterPairsEnumerateResponse) ProtoMessage() {} +func (*ClusterPairsEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{320} } -func (m *SdkClusterPairResetTokenResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairResetTokenResponse.Unmarshal(m, b) +func (m *ClusterPairsEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ClusterPairsEnumerateResponse.Unmarshal(m, b) } -func (m *SdkClusterPairResetTokenResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairResetTokenResponse.Marshal(b, m, deterministic) +func (m *ClusterPairsEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ClusterPairsEnumerateResponse.Marshal(b, m, deterministic) } -func (dst *SdkClusterPairResetTokenResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairResetTokenResponse.Merge(dst, src) +func (dst *ClusterPairsEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ClusterPairsEnumerateResponse.Merge(dst, src) } -func (m *SdkClusterPairResetTokenResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairResetTokenResponse.Size(m) +func (m *ClusterPairsEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_ClusterPairsEnumerateResponse.Size(m) } -func (m *SdkClusterPairResetTokenResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairResetTokenResponse.DiscardUnknown(m) +func (m *ClusterPairsEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ClusterPairsEnumerateResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterPairResetTokenResponse proto.InternalMessageInfo +var xxx_messageInfo_ClusterPairsEnumerateResponse proto.InternalMessageInfo -func (m *SdkClusterPairResetTokenResponse) GetResult() *ClusterPairTokenGetResponse { +func (m *ClusterPairsEnumerateResponse) GetDefaultId() string { + if m != nil { + return m.DefaultId + } + return "" +} + +func (m *ClusterPairsEnumerateResponse) GetPairs() map[string]*ClusterPairInfo { + if m != nil { + return m.Pairs + } + return nil +} + +// Defines a list of cluster pair +type SdkClusterPairEnumerateResponse struct { + // List of all the cluster pairs + Result *ClusterPairsEnumerateResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkClusterPairEnumerateResponse) Reset() { *m = SdkClusterPairEnumerateResponse{} } +func (m *SdkClusterPairEnumerateResponse) String() string { return proto.CompactTextString(m) } +func (*SdkClusterPairEnumerateResponse) ProtoMessage() {} +func (*SdkClusterPairEnumerateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{321} +} +func (m *SdkClusterPairEnumerateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkClusterPairEnumerateResponse.Unmarshal(m, b) +} +func (m *SdkClusterPairEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkClusterPairEnumerateResponse.Marshal(b, m, deterministic) +} +func (dst *SdkClusterPairEnumerateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkClusterPairEnumerateResponse.Merge(dst, src) +} +func (m *SdkClusterPairEnumerateResponse) XXX_Size() int { + return xxx_messageInfo_SdkClusterPairEnumerateResponse.Size(m) +} +func (m *SdkClusterPairEnumerateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkClusterPairEnumerateResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkClusterPairEnumerateResponse proto.InternalMessageInfo + +func (m *SdkClusterPairEnumerateResponse) GetResult() *ClusterPairsEnumerateResponse { if m != nil { return m.Result } return nil } -// Information about a cluster pair -type ClusterPairInfo struct { - // ID of the cluster - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - // Name of the cluster - Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - // The endpoint used for creating the pair - Endpoint string `protobuf:"bytes,3,opt,name=endpoint" json:"endpoint,omitempty"` - // Current endpoints of the cluster - CurrentEndpoints []string `protobuf:"bytes,4,rep,name=current_endpoints,json=currentEndpoints" json:"current_endpoints,omitempty"` - // Flag used to determine if communication is over a secure channel - Secure bool `protobuf:"varint,5,opt,name=secure" json:"secure,omitempty"` - // Token associated with cluster - Token string `protobuf:"bytes,6,opt,name=token" json:"token,omitempty"` - // Key/value pair of options associated with the cluster - // Opaque to openstorage and interpreted by the drivers - Options map[string]string `protobuf:"bytes,7,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // Mode for the cluster pair - Mode ClusterPairMode_Mode `protobuf:"varint,8,opt,name=mode,enum=openstorage.api.ClusterPairMode_Mode" json:"mode,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type Catalog struct { + // Name of the Directory/File + Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + // Full Path of the Directory/File + Path string `protobuf:"bytes,2,opt,name=path" json:"path,omitempty"` + // Type Directory or File + Type string `protobuf:"bytes,3,opt,name=type" json:"type,omitempty"` + // File or Directory Size + Size uint64 `protobuf:"varint,4,opt,name=size" json:"size,omitempty"` + // Last Modified + LastModified *timestamp.Timestamp `protobuf:"bytes,5,opt,name=LastModified" json:"LastModified,omitempty"` + // Children + Children []*Catalog `protobuf:"bytes,6,rep,name=children" json:"children,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ClusterPairInfo) Reset() { *m = ClusterPairInfo{} } -func (m *ClusterPairInfo) String() string { return proto.CompactTextString(m) } -func (*ClusterPairInfo) ProtoMessage() {} -func (*ClusterPairInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{247} +func (m *Catalog) Reset() { *m = Catalog{} } +func (m *Catalog) String() string { return proto.CompactTextString(m) } +func (*Catalog) ProtoMessage() {} +func (*Catalog) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{322} } -func (m *ClusterPairInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairInfo.Unmarshal(m, b) +func (m *Catalog) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Catalog.Unmarshal(m, b) } -func (m *ClusterPairInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairInfo.Marshal(b, m, deterministic) +func (m *Catalog) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Catalog.Marshal(b, m, deterministic) } -func (dst *ClusterPairInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairInfo.Merge(dst, src) +func (dst *Catalog) XXX_Merge(src proto.Message) { + xxx_messageInfo_Catalog.Merge(dst, src) } -func (m *ClusterPairInfo) XXX_Size() int { - return xxx_messageInfo_ClusterPairInfo.Size(m) +func (m *Catalog) XXX_Size() int { + return xxx_messageInfo_Catalog.Size(m) } -func (m *ClusterPairInfo) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairInfo.DiscardUnknown(m) +func (m *Catalog) XXX_DiscardUnknown() { + xxx_messageInfo_Catalog.DiscardUnknown(m) } -var xxx_messageInfo_ClusterPairInfo proto.InternalMessageInfo +var xxx_messageInfo_Catalog proto.InternalMessageInfo -func (m *ClusterPairInfo) GetId() string { +func (m *Catalog) GetName() string { if m != nil { - return m.Id + return m.Name } return "" } -func (m *ClusterPairInfo) GetName() string { +func (m *Catalog) GetPath() string { if m != nil { - return m.Name + return m.Path } return "" } -func (m *ClusterPairInfo) GetEndpoint() string { +func (m *Catalog) GetType() string { if m != nil { - return m.Endpoint + return m.Type } return "" } -func (m *ClusterPairInfo) GetCurrentEndpoints() []string { +func (m *Catalog) GetSize() uint64 { if m != nil { - return m.CurrentEndpoints + return m.Size } - return nil + return 0 } -func (m *ClusterPairInfo) GetSecure() bool { +func (m *Catalog) GetLastModified() *timestamp.Timestamp { if m != nil { - return m.Secure + return m.LastModified } - return false + return nil } -func (m *ClusterPairInfo) GetToken() string { +func (m *Catalog) GetChildren() []*Catalog { if m != nil { - return m.Token + return m.Children } - return "" + return nil +} + +type Report struct { + // Directory count + Directories int64 `protobuf:"varint,2,opt,name=directories" json:"directories,omitempty"` + // File count + Files int64 `protobuf:"varint,3,opt,name=files" json:"files,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Report) Reset() { *m = Report{} } +func (m *Report) String() string { return proto.CompactTextString(m) } +func (*Report) ProtoMessage() {} +func (*Report) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{323} +} +func (m *Report) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Report.Unmarshal(m, b) +} +func (m *Report) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Report.Marshal(b, m, deterministic) +} +func (dst *Report) XXX_Merge(src proto.Message) { + xxx_messageInfo_Report.Merge(dst, src) +} +func (m *Report) XXX_Size() int { + return xxx_messageInfo_Report.Size(m) +} +func (m *Report) XXX_DiscardUnknown() { + xxx_messageInfo_Report.DiscardUnknown(m) } -func (m *ClusterPairInfo) GetOptions() map[string]string { +var xxx_messageInfo_Report proto.InternalMessageInfo + +func (m *Report) GetDirectories() int64 { if m != nil { - return m.Options + return m.Directories } - return nil + return 0 } -func (m *ClusterPairInfo) GetMode() ClusterPairMode_Mode { +func (m *Report) GetFiles() int64 { if m != nil { - return m.Mode + return m.Files } - return ClusterPairMode_Default + return 0 } -// Defines a cluster pair inspect request -type SdkClusterPairInspectRequest struct { - // ID of the cluster, if empty gets the default pair - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` +type CatalogResponse struct { + // Root Catalog + Root *Catalog `protobuf:"bytes,1,opt,name=root" json:"root,omitempty"` + // Report of total directories and files count + Report *Report `protobuf:"bytes,2,opt,name=report" json:"report,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterPairInspectRequest) Reset() { *m = SdkClusterPairInspectRequest{} } -func (m *SdkClusterPairInspectRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairInspectRequest) ProtoMessage() {} -func (*SdkClusterPairInspectRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{248} +func (m *CatalogResponse) Reset() { *m = CatalogResponse{} } +func (m *CatalogResponse) String() string { return proto.CompactTextString(m) } +func (*CatalogResponse) ProtoMessage() {} +func (*CatalogResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{324} } -func (m *SdkClusterPairInspectRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairInspectRequest.Unmarshal(m, b) +func (m *CatalogResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CatalogResponse.Unmarshal(m, b) } -func (m *SdkClusterPairInspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairInspectRequest.Marshal(b, m, deterministic) +func (m *CatalogResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CatalogResponse.Marshal(b, m, deterministic) } -func (dst *SdkClusterPairInspectRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairInspectRequest.Merge(dst, src) +func (dst *CatalogResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_CatalogResponse.Merge(dst, src) } -func (m *SdkClusterPairInspectRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairInspectRequest.Size(m) +func (m *CatalogResponse) XXX_Size() int { + return xxx_messageInfo_CatalogResponse.Size(m) } -func (m *SdkClusterPairInspectRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairInspectRequest.DiscardUnknown(m) +func (m *CatalogResponse) XXX_DiscardUnknown() { + xxx_messageInfo_CatalogResponse.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterPairInspectRequest proto.InternalMessageInfo +var xxx_messageInfo_CatalogResponse proto.InternalMessageInfo -func (m *SdkClusterPairInspectRequest) GetId() string { +func (m *CatalogResponse) GetRoot() *Catalog { if m != nil { - return m.Id + return m.Root } - return "" + return nil } -// Reponse to get a cluster pair -type ClusterPairGetResponse struct { - // Info about the cluster pair - PairInfo *ClusterPairInfo `protobuf:"bytes,1,opt,name=pair_info,json=pairInfo" json:"pair_info,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *CatalogResponse) GetReport() *Report { + if m != nil { + return m.Report + } + return nil } -func (m *ClusterPairGetResponse) Reset() { *m = ClusterPairGetResponse{} } -func (m *ClusterPairGetResponse) String() string { return proto.CompactTextString(m) } -func (*ClusterPairGetResponse) ProtoMessage() {} -func (*ClusterPairGetResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{249} +// Locate response would be used to return a set of mounts +// and/or Container IDs and their mount paths +type LocateResponse struct { + // Map of mounts + // : /var/lib/osd/ + Mounts map[string]string `protobuf:"bytes,1,rep,name=mounts" json:"mounts,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + // Map of docker id's and their mounts + // : /var/www + Dockerids map[string]string `protobuf:"bytes,2,rep,name=dockerids" json:"dockerids,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *ClusterPairGetResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairGetResponse.Unmarshal(m, b) + +func (m *LocateResponse) Reset() { *m = LocateResponse{} } +func (m *LocateResponse) String() string { return proto.CompactTextString(m) } +func (*LocateResponse) ProtoMessage() {} +func (*LocateResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{325} } -func (m *ClusterPairGetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairGetResponse.Marshal(b, m, deterministic) +func (m *LocateResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_LocateResponse.Unmarshal(m, b) } -func (dst *ClusterPairGetResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairGetResponse.Merge(dst, src) +func (m *LocateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_LocateResponse.Marshal(b, m, deterministic) } -func (m *ClusterPairGetResponse) XXX_Size() int { - return xxx_messageInfo_ClusterPairGetResponse.Size(m) +func (dst *LocateResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_LocateResponse.Merge(dst, src) } -func (m *ClusterPairGetResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairGetResponse.DiscardUnknown(m) +func (m *LocateResponse) XXX_Size() int { + return xxx_messageInfo_LocateResponse.Size(m) +} +func (m *LocateResponse) XXX_DiscardUnknown() { + xxx_messageInfo_LocateResponse.DiscardUnknown(m) } -var xxx_messageInfo_ClusterPairGetResponse proto.InternalMessageInfo +var xxx_messageInfo_LocateResponse proto.InternalMessageInfo -func (m *ClusterPairGetResponse) GetPairInfo() *ClusterPairInfo { +func (m *LocateResponse) GetMounts() map[string]string { if m != nil { - return m.PairInfo + return m.Mounts } return nil } -// Defines a cluster pair inspect response -type SdkClusterPairInspectResponse struct { - // Information about cluster pair - Result *ClusterPairGetResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *LocateResponse) GetDockerids() map[string]string { + if m != nil { + return m.Dockerids + } + return nil } -func (m *SdkClusterPairInspectResponse) Reset() { *m = SdkClusterPairInspectResponse{} } -func (m *SdkClusterPairInspectResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairInspectResponse) ProtoMessage() {} -func (*SdkClusterPairInspectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{250} +// VolumePlacementStrategy defines a strategy for placing volumes in the cluster which will be a series of rules +// All the rules specified will be applied for volume placement. +// Rules that have enforcement as "required" are strictly enforced while "preferred" are best effort. +// In situations, where 2 or more rules conflict, the weight of the rules will dictate which wins. +type VolumePlacementStrategy struct { + // ReplicaAffinity defines affinity rules between replicas within a volume + ReplicaAffinity []*ReplicaPlacementSpec `protobuf:"bytes,1,rep,name=replica_affinity,json=replicaAffinity" json:"replica_affinity,omitempty"` + // ReplicaAntiAffinity defines anti-affinity rules between replicas within a volume + ReplicaAntiAffinity []*ReplicaPlacementSpec `protobuf:"bytes,2,rep,name=replica_anti_affinity,json=replicaAntiAffinity" json:"replica_anti_affinity,omitempty"` + // VolumeAffinity defines affinity rules between volumes + VolumeAffinity []*VolumePlacementSpec `protobuf:"bytes,3,rep,name=volume_affinity,json=volumeAffinity" json:"volume_affinity,omitempty"` + // VolumeAntiAffinity defines anti-affinity rules between volumes + VolumeAntiAffinity []*VolumePlacementSpec `protobuf:"bytes,4,rep,name=volume_anti_affinity,json=volumeAntiAffinity" json:"volume_anti_affinity,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *SdkClusterPairInspectResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairInspectResponse.Unmarshal(m, b) + +func (m *VolumePlacementStrategy) Reset() { *m = VolumePlacementStrategy{} } +func (m *VolumePlacementStrategy) String() string { return proto.CompactTextString(m) } +func (*VolumePlacementStrategy) ProtoMessage() {} +func (*VolumePlacementStrategy) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{326} } -func (m *SdkClusterPairInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairInspectResponse.Marshal(b, m, deterministic) +func (m *VolumePlacementStrategy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumePlacementStrategy.Unmarshal(m, b) } -func (dst *SdkClusterPairInspectResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairInspectResponse.Merge(dst, src) +func (m *VolumePlacementStrategy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumePlacementStrategy.Marshal(b, m, deterministic) } -func (m *SdkClusterPairInspectResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairInspectResponse.Size(m) +func (dst *VolumePlacementStrategy) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumePlacementStrategy.Merge(dst, src) } -func (m *SdkClusterPairInspectResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairInspectResponse.DiscardUnknown(m) +func (m *VolumePlacementStrategy) XXX_Size() int { + return xxx_messageInfo_VolumePlacementStrategy.Size(m) +} +func (m *VolumePlacementStrategy) XXX_DiscardUnknown() { + xxx_messageInfo_VolumePlacementStrategy.DiscardUnknown(m) } -var xxx_messageInfo_SdkClusterPairInspectResponse proto.InternalMessageInfo +var xxx_messageInfo_VolumePlacementStrategy proto.InternalMessageInfo -func (m *SdkClusterPairInspectResponse) GetResult() *ClusterPairGetResponse { +func (m *VolumePlacementStrategy) GetReplicaAffinity() []*ReplicaPlacementSpec { if m != nil { - return m.Result + return m.ReplicaAffinity } return nil } -// Empty Request -type SdkClusterPairEnumerateRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *VolumePlacementStrategy) GetReplicaAntiAffinity() []*ReplicaPlacementSpec { + if m != nil { + return m.ReplicaAntiAffinity + } + return nil } -func (m *SdkClusterPairEnumerateRequest) Reset() { *m = SdkClusterPairEnumerateRequest{} } -func (m *SdkClusterPairEnumerateRequest) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairEnumerateRequest) ProtoMessage() {} -func (*SdkClusterPairEnumerateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{251} -} -func (m *SdkClusterPairEnumerateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairEnumerateRequest.Unmarshal(m, b) -} -func (m *SdkClusterPairEnumerateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairEnumerateRequest.Marshal(b, m, deterministic) -} -func (dst *SdkClusterPairEnumerateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairEnumerateRequest.Merge(dst, src) -} -func (m *SdkClusterPairEnumerateRequest) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairEnumerateRequest.Size(m) -} -func (m *SdkClusterPairEnumerateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairEnumerateRequest.DiscardUnknown(m) +func (m *VolumePlacementStrategy) GetVolumeAffinity() []*VolumePlacementSpec { + if m != nil { + return m.VolumeAffinity + } + return nil } -var xxx_messageInfo_SdkClusterPairEnumerateRequest proto.InternalMessageInfo +func (m *VolumePlacementStrategy) GetVolumeAntiAffinity() []*VolumePlacementSpec { + if m != nil { + return m.VolumeAntiAffinity + } + return nil +} -// Response to enumerate all the cluster pairs -type ClusterPairsEnumerateResponse struct { - // ID of the default cluster pair - DefaultId string `protobuf:"bytes,1,opt,name=default_id,json=defaultId" json:"default_id,omitempty"` - // Pairs Info about the cluster pairs - Pairs map[string]*ClusterPairInfo `protobuf:"bytes,2,rep,name=pairs" json:"pairs,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` +type ReplicaPlacementSpec struct { + // Weight defines the weight of the rule which allows to break the tie with other matching rules. A rule with + // higher weight wins over a rule with lower weight. + // (optional) + Weight int64 `protobuf:"varint,1,opt,name=weight" json:"weight,omitempty"` + // Enforcement specifies the rule enforcement policy. Can take values: required or preferred. + // (optional) + Enforcement EnforcementType `protobuf:"varint,2,opt,name=enforcement,enum=openstorage.api.EnforcementType" json:"enforcement,omitempty"` + // AffectedReplicas defines the number of volume replicas affected by this rule. If not provided, + // rule would affect all replicas + // (optional) + AffectedReplicas int32 `protobuf:"varint,3,opt,name=affected_replicas,json=affectedReplicas" json:"affected_replicas,omitempty"` + // TopologyKey key for the matching all segments of the cluster topology with the same key + // e.g If the key is failure-domain.beta.kubernetes.io/zone, this should match all nodes with + // the same value for this key (i.e in the same zone) + TopologyKey string `protobuf:"bytes,4,opt,name=topology_key,json=topologyKey" json:"topology_key,omitempty"` + // MatchExpressions is a list of label selector requirements. The requirements are ANDed. + MatchExpressions []*LabelSelectorRequirement `protobuf:"bytes,5,rep,name=match_expressions,json=matchExpressions" json:"match_expressions,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } - -func (m *ClusterPairsEnumerateResponse) Reset() { *m = ClusterPairsEnumerateResponse{} } -func (m *ClusterPairsEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*ClusterPairsEnumerateResponse) ProtoMessage() {} -func (*ClusterPairsEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{252} -} -func (m *ClusterPairsEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ClusterPairsEnumerateResponse.Unmarshal(m, b) + +func (m *ReplicaPlacementSpec) Reset() { *m = ReplicaPlacementSpec{} } +func (m *ReplicaPlacementSpec) String() string { return proto.CompactTextString(m) } +func (*ReplicaPlacementSpec) ProtoMessage() {} +func (*ReplicaPlacementSpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{327} } -func (m *ClusterPairsEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ClusterPairsEnumerateResponse.Marshal(b, m, deterministic) +func (m *ReplicaPlacementSpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ReplicaPlacementSpec.Unmarshal(m, b) } -func (dst *ClusterPairsEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ClusterPairsEnumerateResponse.Merge(dst, src) +func (m *ReplicaPlacementSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ReplicaPlacementSpec.Marshal(b, m, deterministic) } -func (m *ClusterPairsEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_ClusterPairsEnumerateResponse.Size(m) +func (dst *ReplicaPlacementSpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_ReplicaPlacementSpec.Merge(dst, src) } -func (m *ClusterPairsEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ClusterPairsEnumerateResponse.DiscardUnknown(m) +func (m *ReplicaPlacementSpec) XXX_Size() int { + return xxx_messageInfo_ReplicaPlacementSpec.Size(m) +} +func (m *ReplicaPlacementSpec) XXX_DiscardUnknown() { + xxx_messageInfo_ReplicaPlacementSpec.DiscardUnknown(m) } -var xxx_messageInfo_ClusterPairsEnumerateResponse proto.InternalMessageInfo +var xxx_messageInfo_ReplicaPlacementSpec proto.InternalMessageInfo -func (m *ClusterPairsEnumerateResponse) GetDefaultId() string { +func (m *ReplicaPlacementSpec) GetWeight() int64 { if m != nil { - return m.DefaultId + return m.Weight } - return "" + return 0 } -func (m *ClusterPairsEnumerateResponse) GetPairs() map[string]*ClusterPairInfo { +func (m *ReplicaPlacementSpec) GetEnforcement() EnforcementType { if m != nil { - return m.Pairs + return m.Enforcement } - return nil + return EnforcementType_required } -// Defines a list of cluster pair -type SdkClusterPairEnumerateResponse struct { - // List of all the cluster pairs - Result *ClusterPairsEnumerateResponse `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *ReplicaPlacementSpec) GetAffectedReplicas() int32 { + if m != nil { + return m.AffectedReplicas + } + return 0 } -func (m *SdkClusterPairEnumerateResponse) Reset() { *m = SdkClusterPairEnumerateResponse{} } -func (m *SdkClusterPairEnumerateResponse) String() string { return proto.CompactTextString(m) } -func (*SdkClusterPairEnumerateResponse) ProtoMessage() {} -func (*SdkClusterPairEnumerateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{253} -} -func (m *SdkClusterPairEnumerateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SdkClusterPairEnumerateResponse.Unmarshal(m, b) -} -func (m *SdkClusterPairEnumerateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SdkClusterPairEnumerateResponse.Marshal(b, m, deterministic) -} -func (dst *SdkClusterPairEnumerateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_SdkClusterPairEnumerateResponse.Merge(dst, src) -} -func (m *SdkClusterPairEnumerateResponse) XXX_Size() int { - return xxx_messageInfo_SdkClusterPairEnumerateResponse.Size(m) -} -func (m *SdkClusterPairEnumerateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_SdkClusterPairEnumerateResponse.DiscardUnknown(m) +func (m *ReplicaPlacementSpec) GetTopologyKey() string { + if m != nil { + return m.TopologyKey + } + return "" } -var xxx_messageInfo_SdkClusterPairEnumerateResponse proto.InternalMessageInfo - -func (m *SdkClusterPairEnumerateResponse) GetResult() *ClusterPairsEnumerateResponse { +func (m *ReplicaPlacementSpec) GetMatchExpressions() []*LabelSelectorRequirement { if m != nil { - return m.Result + return m.MatchExpressions } return nil } -type Catalog struct { - // Name of the Directory/File - Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - // Full Path of the Directory/File - Path string `protobuf:"bytes,2,opt,name=path" json:"path,omitempty"` - // Type Directory or File - Type string `protobuf:"bytes,3,opt,name=type" json:"type,omitempty"` - // File or Directory Size - Size uint64 `protobuf:"varint,4,opt,name=size" json:"size,omitempty"` - // Last Modified - LastModified *timestamp.Timestamp `protobuf:"bytes,5,opt,name=LastModified" json:"LastModified,omitempty"` - // Children - Children []*Catalog `protobuf:"bytes,6,rep,name=children" json:"children,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +type VolumePlacementSpec struct { + // Weight defines the weight of the rule which allows to break the tie with other matching rules. A rule with + // higher weight wins over a rule with lower weight. + // (optional) + Weight int64 `protobuf:"varint,1,opt,name=weight" json:"weight,omitempty"` + // Enforcement specifies the rule enforcement policy. Can take values: required or preferred. + // (optional) + Enforcement EnforcementType `protobuf:"varint,2,opt,name=enforcement,enum=openstorage.api.EnforcementType" json:"enforcement,omitempty"` + // TopologyKey key for the matching all segments of the cluster topology with the same key + // e.g If the key is failure-domain.beta.kubernetes.io/zone, this should match all nodes with + // the same value for this key (i.e in the same zone) + TopologyKey string `protobuf:"bytes,3,opt,name=topology_key,json=topologyKey" json:"topology_key,omitempty"` + // MatchExpressions is a list of label selector requirements. The requirements are ANDed. + MatchExpressions []*LabelSelectorRequirement `protobuf:"bytes,4,rep,name=match_expressions,json=matchExpressions" json:"match_expressions,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *Catalog) Reset() { *m = Catalog{} } -func (m *Catalog) String() string { return proto.CompactTextString(m) } -func (*Catalog) ProtoMessage() {} -func (*Catalog) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{254} +func (m *VolumePlacementSpec) Reset() { *m = VolumePlacementSpec{} } +func (m *VolumePlacementSpec) String() string { return proto.CompactTextString(m) } +func (*VolumePlacementSpec) ProtoMessage() {} +func (*VolumePlacementSpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{328} } -func (m *Catalog) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Catalog.Unmarshal(m, b) +func (m *VolumePlacementSpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_VolumePlacementSpec.Unmarshal(m, b) } -func (m *Catalog) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Catalog.Marshal(b, m, deterministic) +func (m *VolumePlacementSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_VolumePlacementSpec.Marshal(b, m, deterministic) } -func (dst *Catalog) XXX_Merge(src proto.Message) { - xxx_messageInfo_Catalog.Merge(dst, src) +func (dst *VolumePlacementSpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_VolumePlacementSpec.Merge(dst, src) } -func (m *Catalog) XXX_Size() int { - return xxx_messageInfo_Catalog.Size(m) +func (m *VolumePlacementSpec) XXX_Size() int { + return xxx_messageInfo_VolumePlacementSpec.Size(m) } -func (m *Catalog) XXX_DiscardUnknown() { - xxx_messageInfo_Catalog.DiscardUnknown(m) +func (m *VolumePlacementSpec) XXX_DiscardUnknown() { + xxx_messageInfo_VolumePlacementSpec.DiscardUnknown(m) } -var xxx_messageInfo_Catalog proto.InternalMessageInfo +var xxx_messageInfo_VolumePlacementSpec proto.InternalMessageInfo -func (m *Catalog) GetName() string { +func (m *VolumePlacementSpec) GetWeight() int64 { if m != nil { - return m.Name + return m.Weight } - return "" + return 0 } -func (m *Catalog) GetPath() string { +func (m *VolumePlacementSpec) GetEnforcement() EnforcementType { if m != nil { - return m.Path + return m.Enforcement } - return "" + return EnforcementType_required } -func (m *Catalog) GetType() string { +func (m *VolumePlacementSpec) GetTopologyKey() string { if m != nil { - return m.Type + return m.TopologyKey } return "" } -func (m *Catalog) GetSize() uint64 { +func (m *VolumePlacementSpec) GetMatchExpressions() []*LabelSelectorRequirement { if m != nil { - return m.Size + return m.MatchExpressions } - return 0 + return nil } -func (m *Catalog) GetLastModified() *timestamp.Timestamp { +// LabelSelectorRequirement is a selector that contains values, a key, and an operator that +// relates the key and values. +type LabelSelectorRequirement struct { + // Key is the label key that the selector applies to. + Key string `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"` + // Operator represents a key's relationship to a set of values. + // Valid operators are In, NotIn, Exists and DoesNotExist. + Operator LabelSelectorRequirement_Operator `protobuf:"varint,2,opt,name=operator,enum=openstorage.api.LabelSelectorRequirement_Operator" json:"operator,omitempty"` + // Values is an array of string values. If the operator is In or NotIn, + // the values array must be non-empty. If the operator is Exists or DoesNotExist, + // the values array must be empty. This array is replaced during a strategic + // merge patch. + Values []string `protobuf:"bytes,3,rep,name=values" json:"values,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *LabelSelectorRequirement) Reset() { *m = LabelSelectorRequirement{} } +func (m *LabelSelectorRequirement) String() string { return proto.CompactTextString(m) } +func (*LabelSelectorRequirement) ProtoMessage() {} +func (*LabelSelectorRequirement) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{329} +} +func (m *LabelSelectorRequirement) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_LabelSelectorRequirement.Unmarshal(m, b) +} +func (m *LabelSelectorRequirement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_LabelSelectorRequirement.Marshal(b, m, deterministic) +} +func (dst *LabelSelectorRequirement) XXX_Merge(src proto.Message) { + xxx_messageInfo_LabelSelectorRequirement.Merge(dst, src) +} +func (m *LabelSelectorRequirement) XXX_Size() int { + return xxx_messageInfo_LabelSelectorRequirement.Size(m) +} +func (m *LabelSelectorRequirement) XXX_DiscardUnknown() { + xxx_messageInfo_LabelSelectorRequirement.DiscardUnknown(m) +} + +var xxx_messageInfo_LabelSelectorRequirement proto.InternalMessageInfo + +func (m *LabelSelectorRequirement) GetKey() string { if m != nil { - return m.LastModified + return m.Key } - return nil + return "" } -func (m *Catalog) GetChildren() []*Catalog { +func (m *LabelSelectorRequirement) GetOperator() LabelSelectorRequirement_Operator { if m != nil { - return m.Children + return m.Operator + } + return LabelSelectorRequirement_In +} + +func (m *LabelSelectorRequirement) GetValues() []string { + if m != nil { + return m.Values } return nil } -type Report struct { - // Directory count - Directories int64 `protobuf:"varint,2,opt,name=directories" json:"directories,omitempty"` - // File count - Files int64 `protobuf:"varint,3,opt,name=files" json:"files,omitempty"` +type RestoreVolSnashotSchedule struct { + Schedule string `protobuf:"bytes,1,opt,name=schedule" json:"schedule,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *Report) Reset() { *m = Report{} } -func (m *Report) String() string { return proto.CompactTextString(m) } -func (*Report) ProtoMessage() {} -func (*Report) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{255} +func (m *RestoreVolSnashotSchedule) Reset() { *m = RestoreVolSnashotSchedule{} } +func (m *RestoreVolSnashotSchedule) String() string { return proto.CompactTextString(m) } +func (*RestoreVolSnashotSchedule) ProtoMessage() {} +func (*RestoreVolSnashotSchedule) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{330} } -func (m *Report) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Report.Unmarshal(m, b) +func (m *RestoreVolSnashotSchedule) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RestoreVolSnashotSchedule.Unmarshal(m, b) } -func (m *Report) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Report.Marshal(b, m, deterministic) +func (m *RestoreVolSnashotSchedule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RestoreVolSnashotSchedule.Marshal(b, m, deterministic) } -func (dst *Report) XXX_Merge(src proto.Message) { - xxx_messageInfo_Report.Merge(dst, src) +func (dst *RestoreVolSnashotSchedule) XXX_Merge(src proto.Message) { + xxx_messageInfo_RestoreVolSnashotSchedule.Merge(dst, src) } -func (m *Report) XXX_Size() int { - return xxx_messageInfo_Report.Size(m) +func (m *RestoreVolSnashotSchedule) XXX_Size() int { + return xxx_messageInfo_RestoreVolSnashotSchedule.Size(m) } -func (m *Report) XXX_DiscardUnknown() { - xxx_messageInfo_Report.DiscardUnknown(m) +func (m *RestoreVolSnashotSchedule) XXX_DiscardUnknown() { + xxx_messageInfo_RestoreVolSnashotSchedule.DiscardUnknown(m) } -var xxx_messageInfo_Report proto.InternalMessageInfo - -func (m *Report) GetDirectories() int64 { - if m != nil { - return m.Directories - } - return 0 -} +var xxx_messageInfo_RestoreVolSnashotSchedule proto.InternalMessageInfo -func (m *Report) GetFiles() int64 { +func (m *RestoreVolSnashotSchedule) GetSchedule() string { if m != nil { - return m.Files + return m.Schedule } - return 0 + return "" } -type CatalogResponse struct { - // Root Catalog - Root *Catalog `protobuf:"bytes,1,opt,name=root" json:"root,omitempty"` - // Report of total directories and files count - Report *Report `protobuf:"bytes,2,opt,name=report" json:"report,omitempty"` +type RestoreVolStoragePolicy struct { + Policy string `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *CatalogResponse) Reset() { *m = CatalogResponse{} } -func (m *CatalogResponse) String() string { return proto.CompactTextString(m) } -func (*CatalogResponse) ProtoMessage() {} -func (*CatalogResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{256} +func (m *RestoreVolStoragePolicy) Reset() { *m = RestoreVolStoragePolicy{} } +func (m *RestoreVolStoragePolicy) String() string { return proto.CompactTextString(m) } +func (*RestoreVolStoragePolicy) ProtoMessage() {} +func (*RestoreVolStoragePolicy) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{331} } -func (m *CatalogResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CatalogResponse.Unmarshal(m, b) +func (m *RestoreVolStoragePolicy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RestoreVolStoragePolicy.Unmarshal(m, b) } -func (m *CatalogResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CatalogResponse.Marshal(b, m, deterministic) +func (m *RestoreVolStoragePolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RestoreVolStoragePolicy.Marshal(b, m, deterministic) } -func (dst *CatalogResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_CatalogResponse.Merge(dst, src) +func (dst *RestoreVolStoragePolicy) XXX_Merge(src proto.Message) { + xxx_messageInfo_RestoreVolStoragePolicy.Merge(dst, src) } -func (m *CatalogResponse) XXX_Size() int { - return xxx_messageInfo_CatalogResponse.Size(m) +func (m *RestoreVolStoragePolicy) XXX_Size() int { + return xxx_messageInfo_RestoreVolStoragePolicy.Size(m) } -func (m *CatalogResponse) XXX_DiscardUnknown() { - xxx_messageInfo_CatalogResponse.DiscardUnknown(m) +func (m *RestoreVolStoragePolicy) XXX_DiscardUnknown() { + xxx_messageInfo_RestoreVolStoragePolicy.DiscardUnknown(m) } -var xxx_messageInfo_CatalogResponse proto.InternalMessageInfo - -func (m *CatalogResponse) GetRoot() *Catalog { - if m != nil { - return m.Root - } - return nil -} +var xxx_messageInfo_RestoreVolStoragePolicy proto.InternalMessageInfo -func (m *CatalogResponse) GetReport() *Report { +func (m *RestoreVolStoragePolicy) GetPolicy() string { if m != nil { - return m.Report + return m.Policy } - return nil + return "" } -// Locate response would be used to return a set of mounts -// and/or Container IDs and their mount paths -type LocateResponse struct { - // Map of mounts - // : /var/lib/osd/ - Mounts map[string]string `protobuf:"bytes,1,rep,name=mounts" json:"mounts,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - // Map of docker id's and their mounts - // : /var/www - Dockerids map[string]string `protobuf:"bytes,2,rep,name=dockerids" json:"dockerids,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +// RestoreSpec allows some of the restore volume properties of to be modified +// while restoring the cloud baackup. All pointer fields with nil value will +// inherit corresponding field value from backup's spec. +type RestoreVolumeSpec struct { + // HaLevel specifies the number of copies of data. + HaLevel int64 `protobuf:"varint,1,opt,name=ha_level,json=haLevel" json:"ha_level,omitempty"` + // Cos specifies the relative class of service. + Cos CosType `protobuf:"varint,2,opt,name=cos,enum=openstorage.api.CosType" json:"cos,omitempty"` + // IoProfile provides a hint about application using this volume. This field + // is ignored if IoProfileBkupSrc is set true + IoProfile IoProfile `protobuf:"varint,3,opt,name=io_profile,json=ioProfile,enum=openstorage.api.IoProfile" json:"io_profile,omitempty"` + // SnapshotInterval in minutes, set to 0 to disable snapshots + SnapshotInterval uint32 `protobuf:"varint,4,opt,name=snapshot_interval,json=snapshotInterval" json:"snapshot_interval,omitempty"` + // Shared is true if this volume can be concurrently accessed by multiple users. + Shared RestoreParamBoolType `protobuf:"varint,5,opt,name=shared,enum=openstorage.api.RestoreParamBoolType" json:"shared,omitempty"` + // ReplicaSet is the desired set of nodes for the volume data. + ReplicaSet *ReplicaSet `protobuf:"bytes,6,opt,name=replica_set,json=replicaSet" json:"replica_set,omitempty"` + // Aggregation level Specifies the number of parts the volume can be aggregated from. + AggregationLevel uint32 `protobuf:"varint,7,opt,name=aggregation_level,json=aggregationLevel" json:"aggregation_level,omitempty"` + // SnapshotSchedule a well known string that specifies when snapshots should be taken. + SnapshotSchedule *RestoreVolSnashotSchedule `protobuf:"bytes,8,opt,name=snapshot_schedule,json=snapshotSchedule" json:"snapshot_schedule,omitempty"` + // Sticky volumes cannot be deleted until the flag is removed. + Sticky RestoreParamBoolType `protobuf:"varint,9,opt,name=sticky,enum=openstorage.api.RestoreParamBoolType" json:"sticky,omitempty"` + // Group identifies a consistency group + Group *Group `protobuf:"bytes,10,opt,name=group" json:"group,omitempty"` + // GroupEnforced is true if consistency group creation is enforced. + GroupEnforced bool `protobuf:"varint,11,opt,name=group_enforced,json=groupEnforced" json:"group_enforced,omitempty"` + // Journal is true if data for the volume goes into the journal. + Journal RestoreParamBoolType `protobuf:"varint,12,opt,name=journal,enum=openstorage.api.RestoreParamBoolType" json:"journal,omitempty"` + // Sharedv4 is true if this volume can be accessed via sharedv4. + Sharedv4 RestoreParamBoolType `protobuf:"varint,13,opt,name=sharedv4,enum=openstorage.api.RestoreParamBoolType" json:"sharedv4,omitempty"` + // QueueDepth defines the desired block device queue depth + QueueDepth uint32 `protobuf:"varint,14,opt,name=queue_depth,json=queueDepth" json:"queue_depth,omitempty"` + // Nodiscard specifies if the volume will be mounted with discard support disabled. + // i.e. FS will not release allocated blocks back to the backing storage pool. + Nodiscard RestoreParamBoolType `protobuf:"varint,15,opt,name=nodiscard,enum=openstorage.api.RestoreParamBoolType" json:"nodiscard,omitempty"` + // IoStrategy preferred strategy for I/O. + IoStrategy *IoStrategy `protobuf:"bytes,16,opt,name=io_strategy,json=ioStrategy" json:"io_strategy,omitempty"` + // PlacementStrategy specifies a spec to indicate where to place the volume. + PlacementStrategy *VolumePlacementStrategy `protobuf:"bytes,17,opt,name=placement_strategy,json=placementStrategy" json:"placement_strategy,omitempty"` + // StoragePolicy if applied/specified while creating volume + StoragePolicy *RestoreVolStoragePolicy `protobuf:"bytes,18,opt,name=storage_policy,json=storagePolicy" json:"storage_policy,omitempty"` + // Ownership + Ownership *Ownership `protobuf:"bytes,19,opt,name=ownership" json:"ownership,omitempty"` + // ExportSpec defines how the volume should be exported. + ExportSpec *ExportSpec `protobuf:"bytes,20,opt,name=export_spec,json=exportSpec" json:"export_spec,omitempty"` + // fastpath extensions + FpPreference RestoreParamBoolType `protobuf:"varint,21,opt,name=fp_preference,json=fpPreference,enum=openstorage.api.RestoreParamBoolType" json:"fp_preference,omitempty"` + // MountOptions defines the options that should be used while mounting this volume + MountOptions *MountOptions `protobuf:"bytes,22,opt,name=mount_options,json=mountOptions" json:"mount_options,omitempty"` + // Sharedv4MountOptions defines the options that will be used while mounting a sharedv4 volume + // from a node where the volume replica does not exist + Sharedv4MountOptions *MountOptions `protobuf:"bytes,23,opt,name=sharedv4_mount_options,json=sharedv4MountOptions" json:"sharedv4_mount_options,omitempty"` + // Proxy_write is true if proxy write replication is enabled for the volume + ProxyWrite RestoreParamBoolType `protobuf:"varint,24,opt,name=proxy_write,json=proxyWrite,enum=openstorage.api.RestoreParamBoolType" json:"proxy_write,omitempty"` + // IoProfileBkupSrc indicates to inherit IoProfile from cloudbackup + IoProfileBkupSrc bool `protobuf:"varint,25,opt,name=io_profile_bkup_src,json=ioProfileBkupSrc" json:"io_profile_bkup_src,omitempty"` + // ProxySpec indicates that this volume is used for proxying an external data source + ProxySpec *ProxySpec `protobuf:"bytes,26,opt,name=proxy_spec,json=proxySpec" json:"proxy_spec,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (m *LocateResponse) Reset() { *m = LocateResponse{} } -func (m *LocateResponse) String() string { return proto.CompactTextString(m) } -func (*LocateResponse) ProtoMessage() {} -func (*LocateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{257} +func (m *RestoreVolumeSpec) Reset() { *m = RestoreVolumeSpec{} } +func (m *RestoreVolumeSpec) String() string { return proto.CompactTextString(m) } +func (*RestoreVolumeSpec) ProtoMessage() {} +func (*RestoreVolumeSpec) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{332} } -func (m *LocateResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_LocateResponse.Unmarshal(m, b) +func (m *RestoreVolumeSpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RestoreVolumeSpec.Unmarshal(m, b) } -func (m *LocateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_LocateResponse.Marshal(b, m, deterministic) +func (m *RestoreVolumeSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RestoreVolumeSpec.Marshal(b, m, deterministic) } -func (dst *LocateResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_LocateResponse.Merge(dst, src) +func (dst *RestoreVolumeSpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_RestoreVolumeSpec.Merge(dst, src) } -func (m *LocateResponse) XXX_Size() int { - return xxx_messageInfo_LocateResponse.Size(m) +func (m *RestoreVolumeSpec) XXX_Size() int { + return xxx_messageInfo_RestoreVolumeSpec.Size(m) } -func (m *LocateResponse) XXX_DiscardUnknown() { - xxx_messageInfo_LocateResponse.DiscardUnknown(m) +func (m *RestoreVolumeSpec) XXX_DiscardUnknown() { + xxx_messageInfo_RestoreVolumeSpec.DiscardUnknown(m) } -var xxx_messageInfo_LocateResponse proto.InternalMessageInfo +var xxx_messageInfo_RestoreVolumeSpec proto.InternalMessageInfo -func (m *LocateResponse) GetMounts() map[string]string { +func (m *RestoreVolumeSpec) GetHaLevel() int64 { if m != nil { - return m.Mounts + return m.HaLevel } - return nil + return 0 } -func (m *LocateResponse) GetDockerids() map[string]string { +func (m *RestoreVolumeSpec) GetCos() CosType { if m != nil { - return m.Dockerids + return m.Cos } - return nil + return CosType_NONE } -// VolumePlacementStrategy defines a strategy for placing volumes in the cluster which will be a series of rules -// All the rules specified will be applied for volume placement. -// Rules that have enforcement as "required" are strictly enforced while "preferred" are best effort. -// In situations, where 2 or more rules conflict, the weight of the rules will dictate which wins. -type VolumePlacementStrategy struct { - // ReplicaAffinity defines affinity rules between replicas within a volume - ReplicaAffinity []*ReplicaPlacementSpec `protobuf:"bytes,1,rep,name=replica_affinity,json=replicaAffinity" json:"replica_affinity,omitempty"` - // ReplicaAntiAffinity defines anti-affinity rules between replicas within a volume - ReplicaAntiAffinity []*ReplicaPlacementSpec `protobuf:"bytes,2,rep,name=replica_anti_affinity,json=replicaAntiAffinity" json:"replica_anti_affinity,omitempty"` - // VolumeAffinity defines affinity rules between volumes - VolumeAffinity []*VolumePlacementSpec `protobuf:"bytes,3,rep,name=volume_affinity,json=volumeAffinity" json:"volume_affinity,omitempty"` - // VolumeAntiAffinity defines anti-affinity rules between volumes - VolumeAntiAffinity []*VolumePlacementSpec `protobuf:"bytes,4,rep,name=volume_anti_affinity,json=volumeAntiAffinity" json:"volume_anti_affinity,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *RestoreVolumeSpec) GetIoProfile() IoProfile { + if m != nil { + return m.IoProfile + } + return IoProfile_IO_PROFILE_SEQUENTIAL } -func (m *VolumePlacementStrategy) Reset() { *m = VolumePlacementStrategy{} } -func (m *VolumePlacementStrategy) String() string { return proto.CompactTextString(m) } -func (*VolumePlacementStrategy) ProtoMessage() {} -func (*VolumePlacementStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{258} -} -func (m *VolumePlacementStrategy) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumePlacementStrategy.Unmarshal(m, b) -} -func (m *VolumePlacementStrategy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumePlacementStrategy.Marshal(b, m, deterministic) -} -func (dst *VolumePlacementStrategy) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumePlacementStrategy.Merge(dst, src) -} -func (m *VolumePlacementStrategy) XXX_Size() int { - return xxx_messageInfo_VolumePlacementStrategy.Size(m) -} -func (m *VolumePlacementStrategy) XXX_DiscardUnknown() { - xxx_messageInfo_VolumePlacementStrategy.DiscardUnknown(m) +func (m *RestoreVolumeSpec) GetSnapshotInterval() uint32 { + if m != nil { + return m.SnapshotInterval + } + return 0 } -var xxx_messageInfo_VolumePlacementStrategy proto.InternalMessageInfo - -func (m *VolumePlacementStrategy) GetReplicaAffinity() []*ReplicaPlacementSpec { +func (m *RestoreVolumeSpec) GetShared() RestoreParamBoolType { if m != nil { - return m.ReplicaAffinity + return m.Shared } - return nil + return RestoreParamBoolType_PARAM_BKUPSRC } -func (m *VolumePlacementStrategy) GetReplicaAntiAffinity() []*ReplicaPlacementSpec { +func (m *RestoreVolumeSpec) GetReplicaSet() *ReplicaSet { if m != nil { - return m.ReplicaAntiAffinity + return m.ReplicaSet } return nil } -func (m *VolumePlacementStrategy) GetVolumeAffinity() []*VolumePlacementSpec { +func (m *RestoreVolumeSpec) GetAggregationLevel() uint32 { if m != nil { - return m.VolumeAffinity + return m.AggregationLevel } - return nil + return 0 } -func (m *VolumePlacementStrategy) GetVolumeAntiAffinity() []*VolumePlacementSpec { +func (m *RestoreVolumeSpec) GetSnapshotSchedule() *RestoreVolSnashotSchedule { if m != nil { - return m.VolumeAntiAffinity + return m.SnapshotSchedule } return nil } -type ReplicaPlacementSpec struct { - // Weight defines the weight of the rule which allows to break the tie with other matching rules. A rule with - // higher weight wins over a rule with lower weight. - // (optional) - Weight int64 `protobuf:"varint,1,opt,name=weight" json:"weight,omitempty"` - // Enforcement specifies the rule enforcement policy. Can take values: required or preferred. - // (optional) - Enforcement EnforcementType `protobuf:"varint,2,opt,name=enforcement,enum=openstorage.api.EnforcementType" json:"enforcement,omitempty"` - // AffectedReplicas defines the number of volume replicas affected by this rule. If not provided, - // rule would affect all replicas - // (optional) - AffectedReplicas int32 `protobuf:"varint,3,opt,name=affected_replicas,json=affectedReplicas" json:"affected_replicas,omitempty"` - // TopologyKey key for the matching all segments of the cluster topology with the same key - // e.g If the key is failure-domain.beta.kubernetes.io/zone, this should match all nodes with - // the same value for this key (i.e in the same zone) - TopologyKey string `protobuf:"bytes,4,opt,name=topology_key,json=topologyKey" json:"topology_key,omitempty"` - // MatchExpressions is a list of label selector requirements. The requirements are ANDed. - MatchExpressions []*LabelSelectorRequirement `protobuf:"bytes,5,rep,name=match_expressions,json=matchExpressions" json:"match_expressions,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *RestoreVolumeSpec) GetSticky() RestoreParamBoolType { + if m != nil { + return m.Sticky + } + return RestoreParamBoolType_PARAM_BKUPSRC } -func (m *ReplicaPlacementSpec) Reset() { *m = ReplicaPlacementSpec{} } -func (m *ReplicaPlacementSpec) String() string { return proto.CompactTextString(m) } -func (*ReplicaPlacementSpec) ProtoMessage() {} -func (*ReplicaPlacementSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{259} -} -func (m *ReplicaPlacementSpec) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaPlacementSpec.Unmarshal(m, b) -} -func (m *ReplicaPlacementSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaPlacementSpec.Marshal(b, m, deterministic) -} -func (dst *ReplicaPlacementSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaPlacementSpec.Merge(dst, src) -} -func (m *ReplicaPlacementSpec) XXX_Size() int { - return xxx_messageInfo_ReplicaPlacementSpec.Size(m) -} -func (m *ReplicaPlacementSpec) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaPlacementSpec.DiscardUnknown(m) +func (m *RestoreVolumeSpec) GetGroup() *Group { + if m != nil { + return m.Group + } + return nil } -var xxx_messageInfo_ReplicaPlacementSpec proto.InternalMessageInfo +func (m *RestoreVolumeSpec) GetGroupEnforced() bool { + if m != nil { + return m.GroupEnforced + } + return false +} -func (m *ReplicaPlacementSpec) GetWeight() int64 { +func (m *RestoreVolumeSpec) GetJournal() RestoreParamBoolType { if m != nil { - return m.Weight + return m.Journal } - return 0 + return RestoreParamBoolType_PARAM_BKUPSRC } -func (m *ReplicaPlacementSpec) GetEnforcement() EnforcementType { +func (m *RestoreVolumeSpec) GetSharedv4() RestoreParamBoolType { if m != nil { - return m.Enforcement + return m.Sharedv4 } - return EnforcementType_required + return RestoreParamBoolType_PARAM_BKUPSRC } -func (m *ReplicaPlacementSpec) GetAffectedReplicas() int32 { +func (m *RestoreVolumeSpec) GetQueueDepth() uint32 { if m != nil { - return m.AffectedReplicas + return m.QueueDepth } return 0 } -func (m *ReplicaPlacementSpec) GetTopologyKey() string { +func (m *RestoreVolumeSpec) GetNodiscard() RestoreParamBoolType { if m != nil { - return m.TopologyKey + return m.Nodiscard } - return "" + return RestoreParamBoolType_PARAM_BKUPSRC } -func (m *ReplicaPlacementSpec) GetMatchExpressions() []*LabelSelectorRequirement { +func (m *RestoreVolumeSpec) GetIoStrategy() *IoStrategy { if m != nil { - return m.MatchExpressions + return m.IoStrategy } return nil } -type VolumePlacementSpec struct { - // Weight defines the weight of the rule which allows to break the tie with other matching rules. A rule with - // higher weight wins over a rule with lower weight. - // (optional) - Weight int64 `protobuf:"varint,1,opt,name=weight" json:"weight,omitempty"` - // Enforcement specifies the rule enforcement policy. Can take values: required or preferred. - // (optional) - Enforcement EnforcementType `protobuf:"varint,2,opt,name=enforcement,enum=openstorage.api.EnforcementType" json:"enforcement,omitempty"` - // TopologyKey key for the matching all segments of the cluster topology with the same key - // e.g If the key is failure-domain.beta.kubernetes.io/zone, this should match all nodes with - // the same value for this key (i.e in the same zone) - TopologyKey string `protobuf:"bytes,3,opt,name=topology_key,json=topologyKey" json:"topology_key,omitempty"` - // MatchExpressions is a list of label selector requirements. The requirements are ANDed. - MatchExpressions []*LabelSelectorRequirement `protobuf:"bytes,4,rep,name=match_expressions,json=matchExpressions" json:"match_expressions,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *RestoreVolumeSpec) GetPlacementStrategy() *VolumePlacementStrategy { + if m != nil { + return m.PlacementStrategy + } + return nil } -func (m *VolumePlacementSpec) Reset() { *m = VolumePlacementSpec{} } -func (m *VolumePlacementSpec) String() string { return proto.CompactTextString(m) } -func (*VolumePlacementSpec) ProtoMessage() {} -func (*VolumePlacementSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{260} -} -func (m *VolumePlacementSpec) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VolumePlacementSpec.Unmarshal(m, b) -} -func (m *VolumePlacementSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VolumePlacementSpec.Marshal(b, m, deterministic) +func (m *RestoreVolumeSpec) GetStoragePolicy() *RestoreVolStoragePolicy { + if m != nil { + return m.StoragePolicy + } + return nil } -func (dst *VolumePlacementSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_VolumePlacementSpec.Merge(dst, src) + +func (m *RestoreVolumeSpec) GetOwnership() *Ownership { + if m != nil { + return m.Ownership + } + return nil } -func (m *VolumePlacementSpec) XXX_Size() int { - return xxx_messageInfo_VolumePlacementSpec.Size(m) + +func (m *RestoreVolumeSpec) GetExportSpec() *ExportSpec { + if m != nil { + return m.ExportSpec + } + return nil } -func (m *VolumePlacementSpec) XXX_DiscardUnknown() { - xxx_messageInfo_VolumePlacementSpec.DiscardUnknown(m) + +func (m *RestoreVolumeSpec) GetFpPreference() RestoreParamBoolType { + if m != nil { + return m.FpPreference + } + return RestoreParamBoolType_PARAM_BKUPSRC } -var xxx_messageInfo_VolumePlacementSpec proto.InternalMessageInfo +func (m *RestoreVolumeSpec) GetMountOptions() *MountOptions { + if m != nil { + return m.MountOptions + } + return nil +} -func (m *VolumePlacementSpec) GetWeight() int64 { +func (m *RestoreVolumeSpec) GetSharedv4MountOptions() *MountOptions { if m != nil { - return m.Weight + return m.Sharedv4MountOptions } - return 0 + return nil } -func (m *VolumePlacementSpec) GetEnforcement() EnforcementType { +func (m *RestoreVolumeSpec) GetProxyWrite() RestoreParamBoolType { if m != nil { - return m.Enforcement + return m.ProxyWrite } - return EnforcementType_required + return RestoreParamBoolType_PARAM_BKUPSRC } -func (m *VolumePlacementSpec) GetTopologyKey() string { +func (m *RestoreVolumeSpec) GetIoProfileBkupSrc() bool { if m != nil { - return m.TopologyKey + return m.IoProfileBkupSrc } - return "" + return false } -func (m *VolumePlacementSpec) GetMatchExpressions() []*LabelSelectorRequirement { +func (m *RestoreVolumeSpec) GetProxySpec() *ProxySpec { if m != nil { - return m.MatchExpressions + return m.ProxySpec } return nil } -// LabelSelectorRequirement is a selector that contains values, a key, and an operator that -// relates the key and values. -type LabelSelectorRequirement struct { - // Key is the label key that the selector applies to. - Key string `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"` - // Operator represents a key's relationship to a set of values. - // Valid operators are In, NotIn, Exists and DoesNotExist. - Operator LabelSelectorRequirement_Operator `protobuf:"varint,2,opt,name=operator,enum=openstorage.api.LabelSelectorRequirement_Operator" json:"operator,omitempty"` - // Values is an array of string values. If the operator is In or NotIn, - // the values array must be non-empty. If the operator is Exists or DoesNotExist, - // the values array must be empty. This array is replaced during a strategic - // merge patch. - Values []string `protobuf:"bytes,3,rep,name=values" json:"values,omitempty"` +// Request message to get the volume catalog +type SdkVolumeCatalogRequest struct { + // VolumeId of the volume that is getting it's catalog retrieved. + VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId" json:"volume_id,omitempty"` + // Path which will be used as root (default is the actual root) + Path string `protobuf:"bytes,2,opt,name=path" json:"path,omitempty"` + // Depth of folders/files retrieved (default is all of it, 1 would only return 1 layer) + Depth string `protobuf:"bytes,3,opt,name=depth" json:"depth,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *LabelSelectorRequirement) Reset() { *m = LabelSelectorRequirement{} } -func (m *LabelSelectorRequirement) String() string { return proto.CompactTextString(m) } -func (*LabelSelectorRequirement) ProtoMessage() {} -func (*LabelSelectorRequirement) Descriptor() ([]byte, []int) { - return fileDescriptor_api_428c3290de6913be, []int{261} +func (m *SdkVolumeCatalogRequest) Reset() { *m = SdkVolumeCatalogRequest{} } +func (m *SdkVolumeCatalogRequest) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeCatalogRequest) ProtoMessage() {} +func (*SdkVolumeCatalogRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{333} } -func (m *LabelSelectorRequirement) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_LabelSelectorRequirement.Unmarshal(m, b) +func (m *SdkVolumeCatalogRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeCatalogRequest.Unmarshal(m, b) } -func (m *LabelSelectorRequirement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_LabelSelectorRequirement.Marshal(b, m, deterministic) +func (m *SdkVolumeCatalogRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeCatalogRequest.Marshal(b, m, deterministic) } -func (dst *LabelSelectorRequirement) XXX_Merge(src proto.Message) { - xxx_messageInfo_LabelSelectorRequirement.Merge(dst, src) +func (dst *SdkVolumeCatalogRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeCatalogRequest.Merge(dst, src) } -func (m *LabelSelectorRequirement) XXX_Size() int { - return xxx_messageInfo_LabelSelectorRequirement.Size(m) +func (m *SdkVolumeCatalogRequest) XXX_Size() int { + return xxx_messageInfo_SdkVolumeCatalogRequest.Size(m) } -func (m *LabelSelectorRequirement) XXX_DiscardUnknown() { - xxx_messageInfo_LabelSelectorRequirement.DiscardUnknown(m) +func (m *SdkVolumeCatalogRequest) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeCatalogRequest.DiscardUnknown(m) } -var xxx_messageInfo_LabelSelectorRequirement proto.InternalMessageInfo +var xxx_messageInfo_SdkVolumeCatalogRequest proto.InternalMessageInfo -func (m *LabelSelectorRequirement) GetKey() string { +func (m *SdkVolumeCatalogRequest) GetVolumeId() string { if m != nil { - return m.Key + return m.VolumeId } return "" } -func (m *LabelSelectorRequirement) GetOperator() LabelSelectorRequirement_Operator { +func (m *SdkVolumeCatalogRequest) GetPath() string { if m != nil { - return m.Operator + return m.Path } - return LabelSelectorRequirement_In + return "" } -func (m *LabelSelectorRequirement) GetValues() []string { +func (m *SdkVolumeCatalogRequest) GetDepth() string { if m != nil { - return m.Values + return m.Depth + } + return "" +} + +// Response message to get volume catalog +type SdkVolumeCatalogResponse struct { + // Catalog + Catalog *CatalogResponse `protobuf:"bytes,1,opt,name=catalog" json:"catalog,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SdkVolumeCatalogResponse) Reset() { *m = SdkVolumeCatalogResponse{} } +func (m *SdkVolumeCatalogResponse) String() string { return proto.CompactTextString(m) } +func (*SdkVolumeCatalogResponse) ProtoMessage() {} +func (*SdkVolumeCatalogResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_api_620b9266792d7166, []int{334} +} +func (m *SdkVolumeCatalogResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SdkVolumeCatalogResponse.Unmarshal(m, b) +} +func (m *SdkVolumeCatalogResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SdkVolumeCatalogResponse.Marshal(b, m, deterministic) +} +func (dst *SdkVolumeCatalogResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_SdkVolumeCatalogResponse.Merge(dst, src) +} +func (m *SdkVolumeCatalogResponse) XXX_Size() int { + return xxx_messageInfo_SdkVolumeCatalogResponse.Size(m) +} +func (m *SdkVolumeCatalogResponse) XXX_DiscardUnknown() { + xxx_messageInfo_SdkVolumeCatalogResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_SdkVolumeCatalogResponse proto.InternalMessageInfo + +func (m *SdkVolumeCatalogResponse) GetCatalog() *CatalogResponse { + if m != nil { + return m.Catalog } return nil } @@ -17889,6 +23724,17 @@ func init() { proto.RegisterType((*Source)(nil), "openstorage.api.Source") proto.RegisterType((*Group)(nil), "openstorage.api.Group") proto.RegisterType((*IoStrategy)(nil), "openstorage.api.IoStrategy") + proto.RegisterType((*Xattr)(nil), "openstorage.api.Xattr") + proto.RegisterType((*ExportSpec)(nil), "openstorage.api.ExportSpec") + proto.RegisterType((*NFSProxySpec)(nil), "openstorage.api.NFSProxySpec") + proto.RegisterType((*S3ProxySpec)(nil), "openstorage.api.S3ProxySpec") + proto.RegisterType((*PXDProxySpec)(nil), "openstorage.api.PXDProxySpec") + proto.RegisterType((*ProxySpec)(nil), "openstorage.api.ProxySpec") + proto.RegisterType((*MountOptions)(nil), "openstorage.api.MountOptions") + proto.RegisterMapType((map[string]string)(nil), "openstorage.api.MountOptions.OptionsEntry") + proto.RegisterType((*FastpathReplState)(nil), "openstorage.api.FastpathReplState") + proto.RegisterType((*FastpathConfig)(nil), "openstorage.api.FastpathConfig") + proto.RegisterType((*ScanPolicy)(nil), "openstorage.api.ScanPolicy") proto.RegisterType((*VolumeSpec)(nil), "openstorage.api.VolumeSpec") proto.RegisterMapType((map[string]string)(nil), "openstorage.api.VolumeSpec.VolumeLabelsEntry") proto.RegisterType((*VolumeSpecUpdate)(nil), "openstorage.api.VolumeSpecUpdate") @@ -17898,6 +23744,7 @@ func init() { proto.RegisterType((*RuntimeStateMap)(nil), "openstorage.api.RuntimeStateMap") proto.RegisterMapType((map[string]string)(nil), "openstorage.api.RuntimeStateMap.RuntimeStateEntry") proto.RegisterType((*Ownership)(nil), "openstorage.api.Ownership") + proto.RegisterType((*Ownership_PublicAccessControl)(nil), "openstorage.api.Ownership.PublicAccessControl") proto.RegisterType((*Ownership_AccessControl)(nil), "openstorage.api.Ownership.AccessControl") proto.RegisterMapType((map[string]Ownership_AccessType)(nil), "openstorage.api.Ownership.AccessControl.CollaboratorsEntry") proto.RegisterMapType((map[string]Ownership_AccessType)(nil), "openstorage.api.Ownership.AccessControl.GroupsEntry") @@ -17905,6 +23752,8 @@ func init() { proto.RegisterMapType((map[string]string)(nil), "openstorage.api.Volume.AttachInfoEntry") proto.RegisterType((*Stats)(nil), "openstorage.api.Stats") proto.RegisterType((*CapacityUsageInfo)(nil), "openstorage.api.CapacityUsageInfo") + proto.RegisterType((*VolumeUsage)(nil), "openstorage.api.VolumeUsage") + proto.RegisterType((*VolumeUsageByNode)(nil), "openstorage.api.VolumeUsageByNode") proto.RegisterType((*SdkStoragePolicy)(nil), "openstorage.api.SdkStoragePolicy") proto.RegisterType((*Alert)(nil), "openstorage.api.Alert") proto.RegisterType((*SdkAlertsTimeSpan)(nil), "openstorage.api.SdkAlertsTimeSpan") @@ -17931,6 +23780,11 @@ func init() { proto.RegisterType((*SnapCreateResponse)(nil), "openstorage.api.SnapCreateResponse") proto.RegisterType((*VolumeInfo)(nil), "openstorage.api.VolumeInfo") proto.RegisterType((*VolumeConsumer)(nil), "openstorage.api.VolumeConsumer") + proto.RegisterType((*VolumeServiceRequest)(nil), "openstorage.api.VolumeServiceRequest") + proto.RegisterMapType((map[string]string)(nil), "openstorage.api.VolumeServiceRequest.SrvCmdParamsEntry") + proto.RegisterType((*VolumeServiceInstanceResponse)(nil), "openstorage.api.VolumeServiceInstanceResponse") + proto.RegisterMapType((map[string]string)(nil), "openstorage.api.VolumeServiceInstanceResponse.StatusEntry") + proto.RegisterType((*VolumeServiceResponse)(nil), "openstorage.api.VolumeServiceResponse") proto.RegisterType((*GraphDriverChanges)(nil), "openstorage.api.GraphDriverChanges") proto.RegisterType((*ClusterResponse)(nil), "openstorage.api.ClusterResponse") proto.RegisterType((*ActiveRequest)(nil), "openstorage.api.ActiveRequest") @@ -17992,6 +23846,8 @@ func init() { proto.RegisterType((*SdkCredentialDeleteResponse)(nil), "openstorage.api.SdkCredentialDeleteResponse") proto.RegisterType((*SdkCredentialValidateRequest)(nil), "openstorage.api.SdkCredentialValidateRequest") proto.RegisterType((*SdkCredentialValidateResponse)(nil), "openstorage.api.SdkCredentialValidateResponse") + proto.RegisterType((*SdkCredentialDeleteReferencesRequest)(nil), "openstorage.api.SdkCredentialDeleteReferencesRequest") + proto.RegisterType((*SdkCredentialDeleteReferencesResponse)(nil), "openstorage.api.SdkCredentialDeleteReferencesResponse") proto.RegisterType((*SdkVolumeAttachOptions)(nil), "openstorage.api.SdkVolumeAttachOptions") proto.RegisterType((*SdkVolumeMountRequest)(nil), "openstorage.api.SdkVolumeMountRequest") proto.RegisterMapType((map[string]string)(nil), "openstorage.api.SdkVolumeMountRequest.DriverOptionsEntry") @@ -18044,6 +23900,8 @@ func init() { proto.RegisterType((*SdkVolumeSnapshotEnumerateWithFiltersResponse)(nil), "openstorage.api.SdkVolumeSnapshotEnumerateWithFiltersResponse") proto.RegisterType((*SdkVolumeSnapshotScheduleUpdateRequest)(nil), "openstorage.api.SdkVolumeSnapshotScheduleUpdateRequest") proto.RegisterType((*SdkVolumeSnapshotScheduleUpdateResponse)(nil), "openstorage.api.SdkVolumeSnapshotScheduleUpdateResponse") + proto.RegisterType((*SdkNodeVolumeUsageByNodeRequest)(nil), "openstorage.api.SdkNodeVolumeUsageByNodeRequest") + proto.RegisterType((*SdkNodeVolumeUsageByNodeResponse)(nil), "openstorage.api.SdkNodeVolumeUsageByNodeResponse") proto.RegisterType((*SdkClusterDomainsEnumerateRequest)(nil), "openstorage.api.SdkClusterDomainsEnumerateRequest") proto.RegisterType((*SdkClusterDomainsEnumerateResponse)(nil), "openstorage.api.SdkClusterDomainsEnumerateResponse") proto.RegisterType((*SdkClusterDomainInspectRequest)(nil), "openstorage.api.SdkClusterDomainInspectRequest") @@ -18055,7 +23913,40 @@ func init() { proto.RegisterType((*SdkClusterInspectCurrentRequest)(nil), "openstorage.api.SdkClusterInspectCurrentRequest") proto.RegisterType((*SdkClusterInspectCurrentResponse)(nil), "openstorage.api.SdkClusterInspectCurrentResponse") proto.RegisterType((*SdkNodeInspectRequest)(nil), "openstorage.api.SdkNodeInspectRequest") + proto.RegisterType((*Job)(nil), "openstorage.api.Job") + proto.RegisterType((*SdkJobResponse)(nil), "openstorage.api.SdkJobResponse") + proto.RegisterType((*NodeDrainAttachmentOptions)(nil), "openstorage.api.NodeDrainAttachmentOptions") + proto.RegisterType((*SdkNodeDrainAttachmentsRequest)(nil), "openstorage.api.SdkNodeDrainAttachmentsRequest") + proto.RegisterType((*NodeDrainAttachmentsJob)(nil), "openstorage.api.NodeDrainAttachmentsJob") + proto.RegisterType((*CloudDriveTransferJob)(nil), "openstorage.api.CloudDriveTransferJob") + proto.RegisterType((*SdkEnumerateJobsRequest)(nil), "openstorage.api.SdkEnumerateJobsRequest") + proto.RegisterType((*SdkEnumerateJobsResponse)(nil), "openstorage.api.SdkEnumerateJobsResponse") + proto.RegisterType((*SdkUpdateJobRequest)(nil), "openstorage.api.SdkUpdateJobRequest") + proto.RegisterType((*SdkUpdateJobResponse)(nil), "openstorage.api.SdkUpdateJobResponse") + proto.RegisterType((*SdkGetJobStatusRequest)(nil), "openstorage.api.SdkGetJobStatusRequest") + proto.RegisterType((*JobAudit)(nil), "openstorage.api.JobAudit") + proto.RegisterType((*JobWorkSummary)(nil), "openstorage.api.JobWorkSummary") + proto.RegisterType((*JobSummary)(nil), "openstorage.api.JobSummary") + proto.RegisterType((*SdkGetJobStatusResponse)(nil), "openstorage.api.SdkGetJobStatusResponse") + proto.RegisterType((*DrainAttachmentsSummary)(nil), "openstorage.api.DrainAttachmentsSummary") + proto.RegisterType((*SdkNodeCordonAttachmentsRequest)(nil), "openstorage.api.SdkNodeCordonAttachmentsRequest") + proto.RegisterType((*SdkNodeCordonAttachmentsResponse)(nil), "openstorage.api.SdkNodeCordonAttachmentsResponse") + proto.RegisterType((*SdkNodeUncordonAttachmentsRequest)(nil), "openstorage.api.SdkNodeUncordonAttachmentsRequest") + proto.RegisterType((*SdkNodeUncordonAttachmentsResponse)(nil), "openstorage.api.SdkNodeUncordonAttachmentsResponse") proto.RegisterType((*SdkStoragePoolResizeRequest)(nil), "openstorage.api.SdkStoragePoolResizeRequest") + proto.RegisterType((*StorageRebalanceTriggerThreshold)(nil), "openstorage.api.StorageRebalanceTriggerThreshold") + proto.RegisterType((*SdkStorageRebalanceRequest)(nil), "openstorage.api.SdkStorageRebalanceRequest") + proto.RegisterType((*SdkStorageRebalanceResponse)(nil), "openstorage.api.SdkStorageRebalanceResponse") + proto.RegisterType((*StorageRebalanceJob)(nil), "openstorage.api.StorageRebalanceJob") + proto.RegisterType((*StorageRebalanceSummary)(nil), "openstorage.api.StorageRebalanceSummary") + proto.RegisterType((*StorageRebalanceWorkSummary)(nil), "openstorage.api.StorageRebalanceWorkSummary") + proto.RegisterType((*StorageRebalanceAudit)(nil), "openstorage.api.StorageRebalanceAudit") + proto.RegisterType((*SdkUpdateRebalanceJobRequest)(nil), "openstorage.api.SdkUpdateRebalanceJobRequest") + proto.RegisterType((*SdkUpdateRebalanceJobResponse)(nil), "openstorage.api.SdkUpdateRebalanceJobResponse") + proto.RegisterType((*SdkGetRebalanceJobStatusRequest)(nil), "openstorage.api.SdkGetRebalanceJobStatusRequest") + proto.RegisterType((*SdkGetRebalanceJobStatusResponse)(nil), "openstorage.api.SdkGetRebalanceJobStatusResponse") + proto.RegisterType((*SdkEnumerateRebalanceJobsRequest)(nil), "openstorage.api.SdkEnumerateRebalanceJobsRequest") + proto.RegisterType((*SdkEnumerateRebalanceJobsResponse)(nil), "openstorage.api.SdkEnumerateRebalanceJobsResponse") proto.RegisterType((*SdkStoragePool)(nil), "openstorage.api.SdkStoragePool") proto.RegisterType((*SdkStoragePoolResizeResponse)(nil), "openstorage.api.SdkStoragePoolResizeResponse") proto.RegisterType((*SdkNodeInspectResponse)(nil), "openstorage.api.SdkNodeInspectResponse") @@ -18112,6 +24003,8 @@ func init() { proto.RegisterType((*SdkCloudBackupSchedEnumerateRequest)(nil), "openstorage.api.SdkCloudBackupSchedEnumerateRequest") proto.RegisterType((*SdkCloudBackupSchedEnumerateResponse)(nil), "openstorage.api.SdkCloudBackupSchedEnumerateResponse") proto.RegisterMapType((map[string]*SdkCloudBackupScheduleInfo)(nil), "openstorage.api.SdkCloudBackupSchedEnumerateResponse.CloudSchedListEntry") + proto.RegisterType((*SdkCloudBackupSizeRequest)(nil), "openstorage.api.SdkCloudBackupSizeRequest") + proto.RegisterType((*SdkCloudBackupSizeResponse)(nil), "openstorage.api.SdkCloudBackupSizeResponse") proto.RegisterType((*SdkRule)(nil), "openstorage.api.SdkRule") proto.RegisterType((*SdkRole)(nil), "openstorage.api.SdkRole") proto.RegisterType((*SdkRoleCreateRequest)(nil), "openstorage.api.SdkRoleCreateRequest") @@ -18124,6 +24017,20 @@ func init() { proto.RegisterType((*SdkRoleDeleteResponse)(nil), "openstorage.api.SdkRoleDeleteResponse") proto.RegisterType((*SdkRoleUpdateRequest)(nil), "openstorage.api.SdkRoleUpdateRequest") proto.RegisterType((*SdkRoleUpdateResponse)(nil), "openstorage.api.SdkRoleUpdateResponse") + proto.RegisterType((*FilesystemTrim)(nil), "openstorage.api.FilesystemTrim") + proto.RegisterType((*SdkFilesystemTrimStartRequest)(nil), "openstorage.api.SdkFilesystemTrimStartRequest") + proto.RegisterType((*SdkFilesystemTrimStartResponse)(nil), "openstorage.api.SdkFilesystemTrimStartResponse") + proto.RegisterType((*SdkFilesystemTrimStatusRequest)(nil), "openstorage.api.SdkFilesystemTrimStatusRequest") + proto.RegisterType((*SdkFilesystemTrimStatusResponse)(nil), "openstorage.api.SdkFilesystemTrimStatusResponse") + proto.RegisterType((*SdkFilesystemTrimStopRequest)(nil), "openstorage.api.SdkFilesystemTrimStopRequest") + proto.RegisterType((*SdkFilesystemTrimStopResponse)(nil), "openstorage.api.SdkFilesystemTrimStopResponse") + proto.RegisterType((*FilesystemCheck)(nil), "openstorage.api.FilesystemCheck") + proto.RegisterType((*SdkFilesystemCheckStartRequest)(nil), "openstorage.api.SdkFilesystemCheckStartRequest") + proto.RegisterType((*SdkFilesystemCheckStartResponse)(nil), "openstorage.api.SdkFilesystemCheckStartResponse") + proto.RegisterType((*SdkFilesystemCheckStatusRequest)(nil), "openstorage.api.SdkFilesystemCheckStatusRequest") + proto.RegisterType((*SdkFilesystemCheckStatusResponse)(nil), "openstorage.api.SdkFilesystemCheckStatusResponse") + proto.RegisterType((*SdkFilesystemCheckStopRequest)(nil), "openstorage.api.SdkFilesystemCheckStopRequest") + proto.RegisterType((*SdkFilesystemCheckStopResponse)(nil), "openstorage.api.SdkFilesystemCheckStopResponse") proto.RegisterType((*SdkIdentityCapabilitiesRequest)(nil), "openstorage.api.SdkIdentityCapabilitiesRequest") proto.RegisterType((*SdkIdentityCapabilitiesResponse)(nil), "openstorage.api.SdkIdentityCapabilitiesResponse") proto.RegisterType((*SdkIdentityVersionRequest)(nil), "openstorage.api.SdkIdentityVersionRequest") @@ -18185,6 +24092,11 @@ func init() { proto.RegisterType((*ReplicaPlacementSpec)(nil), "openstorage.api.ReplicaPlacementSpec") proto.RegisterType((*VolumePlacementSpec)(nil), "openstorage.api.VolumePlacementSpec") proto.RegisterType((*LabelSelectorRequirement)(nil), "openstorage.api.LabelSelectorRequirement") + proto.RegisterType((*RestoreVolSnashotSchedule)(nil), "openstorage.api.RestoreVolSnashotSchedule") + proto.RegisterType((*RestoreVolStoragePolicy)(nil), "openstorage.api.RestoreVolStoragePolicy") + proto.RegisterType((*RestoreVolumeSpec)(nil), "openstorage.api.RestoreVolumeSpec") + proto.RegisterType((*SdkVolumeCatalogRequest)(nil), "openstorage.api.SdkVolumeCatalogRequest") + proto.RegisterType((*SdkVolumeCatalogResponse)(nil), "openstorage.api.SdkVolumeCatalogResponse") proto.RegisterEnum("openstorage.api.Status", Status_name, Status_value) proto.RegisterEnum("openstorage.api.DriverType", DriverType_name, DriverType_value) proto.RegisterEnum("openstorage.api.FSType", FSType_name, FSType_value) @@ -18197,20 +24109,38 @@ func init() { proto.RegisterEnum("openstorage.api.IoProfile", IoProfile_name, IoProfile_value) proto.RegisterEnum("openstorage.api.VolumeState", VolumeState_name, VolumeState_value) proto.RegisterEnum("openstorage.api.VolumeStatus", VolumeStatus_name, VolumeStatus_value) + proto.RegisterEnum("openstorage.api.FilesystemHealthStatus", FilesystemHealthStatus_name, FilesystemHealthStatus_value) proto.RegisterEnum("openstorage.api.StorageMedium", StorageMedium_name, StorageMedium_value) proto.RegisterEnum("openstorage.api.AttachState", AttachState_name, AttachState_value) proto.RegisterEnum("openstorage.api.OperationFlags", OperationFlags_name, OperationFlags_value) proto.RegisterEnum("openstorage.api.HardwareType", HardwareType_name, HardwareType_value) + proto.RegisterEnum("openstorage.api.ExportProtocol", ExportProtocol_name, ExportProtocol_value) + proto.RegisterEnum("openstorage.api.ProxyProtocol", ProxyProtocol_name, ProxyProtocol_value) + proto.RegisterEnum("openstorage.api.FastpathStatus", FastpathStatus_name, FastpathStatus_value) + proto.RegisterEnum("openstorage.api.FastpathProtocol", FastpathProtocol_name, FastpathProtocol_value) proto.RegisterEnum("openstorage.api.SdkTimeWeekday", SdkTimeWeekday_name, SdkTimeWeekday_value) + proto.RegisterEnum("openstorage.api.StorageRebalanceJobState", StorageRebalanceJobState_name, StorageRebalanceJobState_value) proto.RegisterEnum("openstorage.api.SdkCloudBackupOpType", SdkCloudBackupOpType_name, SdkCloudBackupOpType_value) proto.RegisterEnum("openstorage.api.SdkCloudBackupStatusType", SdkCloudBackupStatusType_name, SdkCloudBackupStatusType_value) proto.RegisterEnum("openstorage.api.SdkCloudBackupRequestedState", SdkCloudBackupRequestedState_name, SdkCloudBackupRequestedState_value) proto.RegisterEnum("openstorage.api.EnforcementType", EnforcementType_name, EnforcementType_value) + proto.RegisterEnum("openstorage.api.RestoreParamBoolType", RestoreParamBoolType_name, RestoreParamBoolType_value) + proto.RegisterEnum("openstorage.api.Xattr_Value", Xattr_Value_name, Xattr_Value_value) + proto.RegisterEnum("openstorage.api.ScanPolicy_ScanTrigger", ScanPolicy_ScanTrigger_name, ScanPolicy_ScanTrigger_value) + proto.RegisterEnum("openstorage.api.ScanPolicy_ScanAction", ScanPolicy_ScanAction_name, ScanPolicy_ScanAction_value) proto.RegisterEnum("openstorage.api.VolumeSpecPolicy_PolicyOp", VolumeSpecPolicy_PolicyOp_name, VolumeSpecPolicy_PolicyOp_value) proto.RegisterEnum("openstorage.api.Ownership_AccessType", Ownership_AccessType_name, Ownership_AccessType_value) + proto.RegisterEnum("openstorage.api.Job_Type", Job_Type_name, Job_Type_value) + proto.RegisterEnum("openstorage.api.Job_State", Job_State_name, Job_State_value) + proto.RegisterEnum("openstorage.api.StorageRebalanceTriggerThreshold_Type", StorageRebalanceTriggerThreshold_Type_name, StorageRebalanceTriggerThreshold_Type_value) + proto.RegisterEnum("openstorage.api.StorageRebalanceTriggerThreshold_Metric", StorageRebalanceTriggerThreshold_Metric_name, StorageRebalanceTriggerThreshold_Metric_value) + proto.RegisterEnum("openstorage.api.StorageRebalanceWorkSummary_Type", StorageRebalanceWorkSummary_Type_name, StorageRebalanceWorkSummary_Type_value) + proto.RegisterEnum("openstorage.api.StorageRebalanceAudit_StorageRebalanceAction", StorageRebalanceAudit_StorageRebalanceAction_name, StorageRebalanceAudit_StorageRebalanceAction_value) proto.RegisterEnum("openstorage.api.SdkStoragePool_OperationStatus", SdkStoragePool_OperationStatus_name, SdkStoragePool_OperationStatus_value) proto.RegisterEnum("openstorage.api.SdkStoragePool_OperationType", SdkStoragePool_OperationType_name, SdkStoragePool_OperationType_value) proto.RegisterEnum("openstorage.api.SdkStoragePool_ResizeOperationType", SdkStoragePool_ResizeOperationType_name, SdkStoragePool_ResizeOperationType_value) + proto.RegisterEnum("openstorage.api.FilesystemTrim_FilesystemTrimStatus", FilesystemTrim_FilesystemTrimStatus_name, FilesystemTrim_FilesystemTrimStatus_value) + proto.RegisterEnum("openstorage.api.FilesystemCheck_FilesystemCheckStatus", FilesystemCheck_FilesystemCheckStatus_name, FilesystemCheck_FilesystemCheckStatus_value) proto.RegisterEnum("openstorage.api.SdkServiceCapability_OpenStorageService_Type", SdkServiceCapability_OpenStorageService_Type_name, SdkServiceCapability_OpenStorageService_Type_value) proto.RegisterEnum("openstorage.api.SdkVersion_Version", SdkVersion_Version_name, SdkVersion_Version_value) proto.RegisterEnum("openstorage.api.CloudMigrate_OperationType", CloudMigrate_OperationType_name, CloudMigrate_OperationType_value) @@ -18430,7 +24360,7 @@ var _OpenStorageAlerts_serviceDesc = grpc.ServiceDesc{ ServerStreams: true, }, }, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageRole service @@ -18520,123 +24450,399 @@ func RegisterOpenStorageRoleServer(s *grpc.Server, srv OpenStorageRoleServer) { s.RegisterService(&_OpenStorageRole_serviceDesc, srv) } -func _OpenStorageRole_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkRoleCreateRequest) +func _OpenStorageRole_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkRoleCreateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageRoleServer).Create(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageRole/Create", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageRoleServer).Create(ctx, req.(*SdkRoleCreateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageRole_Enumerate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkRoleEnumerateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageRoleServer).Enumerate(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageRole/Enumerate", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageRoleServer).Enumerate(ctx, req.(*SdkRoleEnumerateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageRole_Inspect_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkRoleInspectRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageRoleServer).Inspect(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageRole/Inspect", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageRoleServer).Inspect(ctx, req.(*SdkRoleInspectRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageRole_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkRoleDeleteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageRoleServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageRole/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageRoleServer).Delete(ctx, req.(*SdkRoleDeleteRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageRole_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkRoleUpdateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageRoleServer).Update(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageRole/Update", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageRoleServer).Update(ctx, req.(*SdkRoleUpdateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _OpenStorageRole_serviceDesc = grpc.ServiceDesc{ + ServiceName: "openstorage.api.OpenStorageRole", + HandlerType: (*OpenStorageRoleServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Create", + Handler: _OpenStorageRole_Create_Handler, + }, + { + MethodName: "Enumerate", + Handler: _OpenStorageRole_Enumerate_Handler, + }, + { + MethodName: "Inspect", + Handler: _OpenStorageRole_Inspect_Handler, + }, + { + MethodName: "Delete", + Handler: _OpenStorageRole_Delete_Handler, + }, + { + MethodName: "Update", + Handler: _OpenStorageRole_Update_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "api/api.proto", +} + +// Client API for OpenStorageFilesystemTrim service + +type OpenStorageFilesystemTrimClient interface { + // Start a filesystem Trim background operation on a mounted volume + Start(ctx context.Context, in *SdkFilesystemTrimStartRequest, opts ...grpc.CallOption) (*SdkFilesystemTrimStartResponse, error) + // Status of a filesystem Trim background operation on a mounted + // volume, if any + Status(ctx context.Context, in *SdkFilesystemTrimStatusRequest, opts ...grpc.CallOption) (*SdkFilesystemTrimStatusResponse, error) + // Stop a filesystem Trim background operation on a mounted volume, if any + Stop(ctx context.Context, in *SdkFilesystemTrimStopRequest, opts ...grpc.CallOption) (*SdkFilesystemTrimStopResponse, error) +} + +type openStorageFilesystemTrimClient struct { + cc *grpc.ClientConn +} + +func NewOpenStorageFilesystemTrimClient(cc *grpc.ClientConn) OpenStorageFilesystemTrimClient { + return &openStorageFilesystemTrimClient{cc} +} + +func (c *openStorageFilesystemTrimClient) Start(ctx context.Context, in *SdkFilesystemTrimStartRequest, opts ...grpc.CallOption) (*SdkFilesystemTrimStartResponse, error) { + out := new(SdkFilesystemTrimStartResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageFilesystemTrim/Start", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStorageFilesystemTrimClient) Status(ctx context.Context, in *SdkFilesystemTrimStatusRequest, opts ...grpc.CallOption) (*SdkFilesystemTrimStatusResponse, error) { + out := new(SdkFilesystemTrimStatusResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageFilesystemTrim/Status", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStorageFilesystemTrimClient) Stop(ctx context.Context, in *SdkFilesystemTrimStopRequest, opts ...grpc.CallOption) (*SdkFilesystemTrimStopResponse, error) { + out := new(SdkFilesystemTrimStopResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageFilesystemTrim/Stop", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// Server API for OpenStorageFilesystemTrim service + +type OpenStorageFilesystemTrimServer interface { + // Start a filesystem Trim background operation on a mounted volume + Start(context.Context, *SdkFilesystemTrimStartRequest) (*SdkFilesystemTrimStartResponse, error) + // Status of a filesystem Trim background operation on a mounted + // volume, if any + Status(context.Context, *SdkFilesystemTrimStatusRequest) (*SdkFilesystemTrimStatusResponse, error) + // Stop a filesystem Trim background operation on a mounted volume, if any + Stop(context.Context, *SdkFilesystemTrimStopRequest) (*SdkFilesystemTrimStopResponse, error) +} + +func RegisterOpenStorageFilesystemTrimServer(s *grpc.Server, srv OpenStorageFilesystemTrimServer) { + s.RegisterService(&_OpenStorageFilesystemTrim_serviceDesc, srv) +} + +func _OpenStorageFilesystemTrim_Start_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkFilesystemTrimStartRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageFilesystemTrimServer).Start(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageFilesystemTrim/Start", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageFilesystemTrimServer).Start(ctx, req.(*SdkFilesystemTrimStartRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageFilesystemTrim_Status_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkFilesystemTrimStatusRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageRoleServer).Create(ctx, in) + return srv.(OpenStorageFilesystemTrimServer).Status(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageRole/Create", + FullMethod: "/openstorage.api.OpenStorageFilesystemTrim/Status", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageRoleServer).Create(ctx, req.(*SdkRoleCreateRequest)) + return srv.(OpenStorageFilesystemTrimServer).Status(ctx, req.(*SdkFilesystemTrimStatusRequest)) } return interceptor(ctx, in, info, handler) } -func _OpenStorageRole_Enumerate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkRoleEnumerateRequest) +func _OpenStorageFilesystemTrim_Stop_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkFilesystemTrimStopRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageRoleServer).Enumerate(ctx, in) + return srv.(OpenStorageFilesystemTrimServer).Stop(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageRole/Enumerate", + FullMethod: "/openstorage.api.OpenStorageFilesystemTrim/Stop", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageRoleServer).Enumerate(ctx, req.(*SdkRoleEnumerateRequest)) + return srv.(OpenStorageFilesystemTrimServer).Stop(ctx, req.(*SdkFilesystemTrimStopRequest)) } return interceptor(ctx, in, info, handler) } -func _OpenStorageRole_Inspect_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkRoleInspectRequest) +var _OpenStorageFilesystemTrim_serviceDesc = grpc.ServiceDesc{ + ServiceName: "openstorage.api.OpenStorageFilesystemTrim", + HandlerType: (*OpenStorageFilesystemTrimServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Start", + Handler: _OpenStorageFilesystemTrim_Start_Handler, + }, + { + MethodName: "Status", + Handler: _OpenStorageFilesystemTrim_Status_Handler, + }, + { + MethodName: "Stop", + Handler: _OpenStorageFilesystemTrim_Stop_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "api/api.proto", +} + +// Client API for OpenStorageFilesystemCheck service + +type OpenStorageFilesystemCheckClient interface { + // Start a filesystem-check background operation on a unmounted volume. + Start(ctx context.Context, in *SdkFilesystemCheckStartRequest, opts ...grpc.CallOption) (*SdkFilesystemCheckStartResponse, error) + // Get Status of a filesystem-check background operation on an unmounted + // volume, if any + Status(ctx context.Context, in *SdkFilesystemCheckStatusRequest, opts ...grpc.CallOption) (*SdkFilesystemCheckStatusResponse, error) + // Stop a filesystem check background operation on an unmounted volume, if any + Stop(ctx context.Context, in *SdkFilesystemCheckStopRequest, opts ...grpc.CallOption) (*SdkFilesystemCheckStopResponse, error) +} + +type openStorageFilesystemCheckClient struct { + cc *grpc.ClientConn +} + +func NewOpenStorageFilesystemCheckClient(cc *grpc.ClientConn) OpenStorageFilesystemCheckClient { + return &openStorageFilesystemCheckClient{cc} +} + +func (c *openStorageFilesystemCheckClient) Start(ctx context.Context, in *SdkFilesystemCheckStartRequest, opts ...grpc.CallOption) (*SdkFilesystemCheckStartResponse, error) { + out := new(SdkFilesystemCheckStartResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageFilesystemCheck/Start", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStorageFilesystemCheckClient) Status(ctx context.Context, in *SdkFilesystemCheckStatusRequest, opts ...grpc.CallOption) (*SdkFilesystemCheckStatusResponse, error) { + out := new(SdkFilesystemCheckStatusResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageFilesystemCheck/Status", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStorageFilesystemCheckClient) Stop(ctx context.Context, in *SdkFilesystemCheckStopRequest, opts ...grpc.CallOption) (*SdkFilesystemCheckStopResponse, error) { + out := new(SdkFilesystemCheckStopResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageFilesystemCheck/Stop", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// Server API for OpenStorageFilesystemCheck service + +type OpenStorageFilesystemCheckServer interface { + // Start a filesystem-check background operation on a unmounted volume. + Start(context.Context, *SdkFilesystemCheckStartRequest) (*SdkFilesystemCheckStartResponse, error) + // Get Status of a filesystem-check background operation on an unmounted + // volume, if any + Status(context.Context, *SdkFilesystemCheckStatusRequest) (*SdkFilesystemCheckStatusResponse, error) + // Stop a filesystem check background operation on an unmounted volume, if any + Stop(context.Context, *SdkFilesystemCheckStopRequest) (*SdkFilesystemCheckStopResponse, error) +} + +func RegisterOpenStorageFilesystemCheckServer(s *grpc.Server, srv OpenStorageFilesystemCheckServer) { + s.RegisterService(&_OpenStorageFilesystemCheck_serviceDesc, srv) +} + +func _OpenStorageFilesystemCheck_Start_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkFilesystemCheckStartRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageRoleServer).Inspect(ctx, in) + return srv.(OpenStorageFilesystemCheckServer).Start(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageRole/Inspect", + FullMethod: "/openstorage.api.OpenStorageFilesystemCheck/Start", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageRoleServer).Inspect(ctx, req.(*SdkRoleInspectRequest)) + return srv.(OpenStorageFilesystemCheckServer).Start(ctx, req.(*SdkFilesystemCheckStartRequest)) } return interceptor(ctx, in, info, handler) } -func _OpenStorageRole_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkRoleDeleteRequest) +func _OpenStorageFilesystemCheck_Status_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkFilesystemCheckStatusRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageRoleServer).Delete(ctx, in) + return srv.(OpenStorageFilesystemCheckServer).Status(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageRole/Delete", + FullMethod: "/openstorage.api.OpenStorageFilesystemCheck/Status", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageRoleServer).Delete(ctx, req.(*SdkRoleDeleteRequest)) + return srv.(OpenStorageFilesystemCheckServer).Status(ctx, req.(*SdkFilesystemCheckStatusRequest)) } return interceptor(ctx, in, info, handler) } -func _OpenStorageRole_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkRoleUpdateRequest) +func _OpenStorageFilesystemCheck_Stop_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkFilesystemCheckStopRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageRoleServer).Update(ctx, in) + return srv.(OpenStorageFilesystemCheckServer).Stop(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageRole/Update", + FullMethod: "/openstorage.api.OpenStorageFilesystemCheck/Stop", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageRoleServer).Update(ctx, req.(*SdkRoleUpdateRequest)) + return srv.(OpenStorageFilesystemCheckServer).Stop(ctx, req.(*SdkFilesystemCheckStopRequest)) } return interceptor(ctx, in, info, handler) } -var _OpenStorageRole_serviceDesc = grpc.ServiceDesc{ - ServiceName: "openstorage.api.OpenStorageRole", - HandlerType: (*OpenStorageRoleServer)(nil), +var _OpenStorageFilesystemCheck_serviceDesc = grpc.ServiceDesc{ + ServiceName: "openstorage.api.OpenStorageFilesystemCheck", + HandlerType: (*OpenStorageFilesystemCheckServer)(nil), Methods: []grpc.MethodDesc{ { - MethodName: "Create", - Handler: _OpenStorageRole_Create_Handler, - }, - { - MethodName: "Enumerate", - Handler: _OpenStorageRole_Enumerate_Handler, - }, - { - MethodName: "Inspect", - Handler: _OpenStorageRole_Inspect_Handler, + MethodName: "Start", + Handler: _OpenStorageFilesystemCheck_Start_Handler, }, { - MethodName: "Delete", - Handler: _OpenStorageRole_Delete_Handler, + MethodName: "Status", + Handler: _OpenStorageFilesystemCheck_Status_Handler, }, { - MethodName: "Update", - Handler: _OpenStorageRole_Update_Handler, + MethodName: "Stop", + Handler: _OpenStorageFilesystemCheck_Stop_Handler, }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageIdentity service @@ -18745,7 +24951,7 @@ var _OpenStorageIdentity_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageCluster service @@ -18811,7 +25017,7 @@ var _OpenStorageCluster_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageClusterPair service @@ -19076,7 +25282,7 @@ var _OpenStorageClusterPair_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageClusterDomains service @@ -19163,167 +25369,459 @@ func RegisterOpenStorageClusterDomainsServer(s *grpc.Server, srv OpenStorageClus s.RegisterService(&_OpenStorageClusterDomains_serviceDesc, srv) } -func _OpenStorageClusterDomains_Enumerate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkClusterDomainsEnumerateRequest) +func _OpenStorageClusterDomains_Enumerate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkClusterDomainsEnumerateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageClusterDomainsServer).Enumerate(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageClusterDomains/Enumerate", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageClusterDomainsServer).Enumerate(ctx, req.(*SdkClusterDomainsEnumerateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageClusterDomains_Inspect_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkClusterDomainInspectRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageClusterDomainsServer).Inspect(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageClusterDomains/Inspect", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageClusterDomainsServer).Inspect(ctx, req.(*SdkClusterDomainInspectRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageClusterDomains_Activate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkClusterDomainActivateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageClusterDomainsServer).Activate(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageClusterDomains/Activate", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageClusterDomainsServer).Activate(ctx, req.(*SdkClusterDomainActivateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageClusterDomains_Deactivate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkClusterDomainDeactivateRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageClusterDomainsServer).Deactivate(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageClusterDomains/Deactivate", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageClusterDomainsServer).Deactivate(ctx, req.(*SdkClusterDomainDeactivateRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _OpenStorageClusterDomains_serviceDesc = grpc.ServiceDesc{ + ServiceName: "openstorage.api.OpenStorageClusterDomains", + HandlerType: (*OpenStorageClusterDomainsServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Enumerate", + Handler: _OpenStorageClusterDomains_Enumerate_Handler, + }, + { + MethodName: "Inspect", + Handler: _OpenStorageClusterDomains_Inspect_Handler, + }, + { + MethodName: "Activate", + Handler: _OpenStorageClusterDomains_Activate_Handler, + }, + { + MethodName: "Deactivate", + Handler: _OpenStorageClusterDomains_Deactivate_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "api/api.proto", +} + +// Client API for OpenStoragePool service + +type OpenStoragePoolClient interface { + // Resize expands the specified storage pool based on the request parameters + Resize(ctx context.Context, in *SdkStoragePoolResizeRequest, opts ...grpc.CallOption) (*SdkStoragePoolResizeResponse, error) + // Rebalance creates a new rebalance task + Rebalance(ctx context.Context, in *SdkStorageRebalanceRequest, opts ...grpc.CallOption) (*SdkStorageRebalanceResponse, error) + // UpdateRebalanceJobState updates existing rebalance task state. + // Only acceptable values are + // StorageRebalanceJobState_PAUSED - acceptable only from running state + // StorageRebalanceJobState_CANCELLED - acceptable only from running/pause state + // StorageRebalanceJobState_RUNNING - acceptable only from pause state + UpdateRebalanceJobState(ctx context.Context, in *SdkUpdateRebalanceJobRequest, opts ...grpc.CallOption) (*SdkUpdateRebalanceJobResponse, error) + // GetRebalanceJobStatus returns rebalance status for specified job + GetRebalanceJobStatus(ctx context.Context, in *SdkGetRebalanceJobStatusRequest, opts ...grpc.CallOption) (*SdkGetRebalanceJobStatusResponse, error) + // EnumerateRebalanceJobs returns all rebalance jobs currently known to the system + EnumerateRebalanceJobs(ctx context.Context, in *SdkEnumerateRebalanceJobsRequest, opts ...grpc.CallOption) (*SdkEnumerateRebalanceJobsResponse, error) +} + +type openStoragePoolClient struct { + cc *grpc.ClientConn +} + +func NewOpenStoragePoolClient(cc *grpc.ClientConn) OpenStoragePoolClient { + return &openStoragePoolClient{cc} +} + +func (c *openStoragePoolClient) Resize(ctx context.Context, in *SdkStoragePoolResizeRequest, opts ...grpc.CallOption) (*SdkStoragePoolResizeResponse, error) { + out := new(SdkStoragePoolResizeResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStoragePool/Resize", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStoragePoolClient) Rebalance(ctx context.Context, in *SdkStorageRebalanceRequest, opts ...grpc.CallOption) (*SdkStorageRebalanceResponse, error) { + out := new(SdkStorageRebalanceResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStoragePool/Rebalance", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStoragePoolClient) UpdateRebalanceJobState(ctx context.Context, in *SdkUpdateRebalanceJobRequest, opts ...grpc.CallOption) (*SdkUpdateRebalanceJobResponse, error) { + out := new(SdkUpdateRebalanceJobResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStoragePool/UpdateRebalanceJobState", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStoragePoolClient) GetRebalanceJobStatus(ctx context.Context, in *SdkGetRebalanceJobStatusRequest, opts ...grpc.CallOption) (*SdkGetRebalanceJobStatusResponse, error) { + out := new(SdkGetRebalanceJobStatusResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStoragePool/GetRebalanceJobStatus", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStoragePoolClient) EnumerateRebalanceJobs(ctx context.Context, in *SdkEnumerateRebalanceJobsRequest, opts ...grpc.CallOption) (*SdkEnumerateRebalanceJobsResponse, error) { + out := new(SdkEnumerateRebalanceJobsResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStoragePool/EnumerateRebalanceJobs", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// Server API for OpenStoragePool service + +type OpenStoragePoolServer interface { + // Resize expands the specified storage pool based on the request parameters + Resize(context.Context, *SdkStoragePoolResizeRequest) (*SdkStoragePoolResizeResponse, error) + // Rebalance creates a new rebalance task + Rebalance(context.Context, *SdkStorageRebalanceRequest) (*SdkStorageRebalanceResponse, error) + // UpdateRebalanceJobState updates existing rebalance task state. + // Only acceptable values are + // StorageRebalanceJobState_PAUSED - acceptable only from running state + // StorageRebalanceJobState_CANCELLED - acceptable only from running/pause state + // StorageRebalanceJobState_RUNNING - acceptable only from pause state + UpdateRebalanceJobState(context.Context, *SdkUpdateRebalanceJobRequest) (*SdkUpdateRebalanceJobResponse, error) + // GetRebalanceJobStatus returns rebalance status for specified job + GetRebalanceJobStatus(context.Context, *SdkGetRebalanceJobStatusRequest) (*SdkGetRebalanceJobStatusResponse, error) + // EnumerateRebalanceJobs returns all rebalance jobs currently known to the system + EnumerateRebalanceJobs(context.Context, *SdkEnumerateRebalanceJobsRequest) (*SdkEnumerateRebalanceJobsResponse, error) +} + +func RegisterOpenStoragePoolServer(s *grpc.Server, srv OpenStoragePoolServer) { + s.RegisterService(&_OpenStoragePool_serviceDesc, srv) +} + +func _OpenStoragePool_Resize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkStoragePoolResizeRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStoragePoolServer).Resize(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStoragePool/Resize", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStoragePoolServer).Resize(ctx, req.(*SdkStoragePoolResizeRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStoragePool_Rebalance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkStorageRebalanceRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageClusterDomainsServer).Enumerate(ctx, in) + return srv.(OpenStoragePoolServer).Rebalance(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageClusterDomains/Enumerate", + FullMethod: "/openstorage.api.OpenStoragePool/Rebalance", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageClusterDomainsServer).Enumerate(ctx, req.(*SdkClusterDomainsEnumerateRequest)) + return srv.(OpenStoragePoolServer).Rebalance(ctx, req.(*SdkStorageRebalanceRequest)) } return interceptor(ctx, in, info, handler) } -func _OpenStorageClusterDomains_Inspect_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkClusterDomainInspectRequest) +func _OpenStoragePool_UpdateRebalanceJobState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkUpdateRebalanceJobRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageClusterDomainsServer).Inspect(ctx, in) + return srv.(OpenStoragePoolServer).UpdateRebalanceJobState(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageClusterDomains/Inspect", + FullMethod: "/openstorage.api.OpenStoragePool/UpdateRebalanceJobState", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageClusterDomainsServer).Inspect(ctx, req.(*SdkClusterDomainInspectRequest)) + return srv.(OpenStoragePoolServer).UpdateRebalanceJobState(ctx, req.(*SdkUpdateRebalanceJobRequest)) } return interceptor(ctx, in, info, handler) } -func _OpenStorageClusterDomains_Activate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkClusterDomainActivateRequest) +func _OpenStoragePool_GetRebalanceJobStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkGetRebalanceJobStatusRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageClusterDomainsServer).Activate(ctx, in) + return srv.(OpenStoragePoolServer).GetRebalanceJobStatus(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageClusterDomains/Activate", + FullMethod: "/openstorage.api.OpenStoragePool/GetRebalanceJobStatus", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageClusterDomainsServer).Activate(ctx, req.(*SdkClusterDomainActivateRequest)) + return srv.(OpenStoragePoolServer).GetRebalanceJobStatus(ctx, req.(*SdkGetRebalanceJobStatusRequest)) } return interceptor(ctx, in, info, handler) } -func _OpenStorageClusterDomains_Deactivate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkClusterDomainDeactivateRequest) +func _OpenStoragePool_EnumerateRebalanceJobs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkEnumerateRebalanceJobsRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStorageClusterDomainsServer).Deactivate(ctx, in) + return srv.(OpenStoragePoolServer).EnumerateRebalanceJobs(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStorageClusterDomains/Deactivate", + FullMethod: "/openstorage.api.OpenStoragePool/EnumerateRebalanceJobs", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStorageClusterDomainsServer).Deactivate(ctx, req.(*SdkClusterDomainDeactivateRequest)) + return srv.(OpenStoragePoolServer).EnumerateRebalanceJobs(ctx, req.(*SdkEnumerateRebalanceJobsRequest)) } return interceptor(ctx, in, info, handler) } -var _OpenStorageClusterDomains_serviceDesc = grpc.ServiceDesc{ - ServiceName: "openstorage.api.OpenStorageClusterDomains", - HandlerType: (*OpenStorageClusterDomainsServer)(nil), +var _OpenStoragePool_serviceDesc = grpc.ServiceDesc{ + ServiceName: "openstorage.api.OpenStoragePool", + HandlerType: (*OpenStoragePoolServer)(nil), Methods: []grpc.MethodDesc{ { - MethodName: "Enumerate", - Handler: _OpenStorageClusterDomains_Enumerate_Handler, + MethodName: "Resize", + Handler: _OpenStoragePool_Resize_Handler, }, { - MethodName: "Inspect", - Handler: _OpenStorageClusterDomains_Inspect_Handler, + MethodName: "Rebalance", + Handler: _OpenStoragePool_Rebalance_Handler, }, { - MethodName: "Activate", - Handler: _OpenStorageClusterDomains_Activate_Handler, + MethodName: "UpdateRebalanceJobState", + Handler: _OpenStoragePool_UpdateRebalanceJobState_Handler, }, { - MethodName: "Deactivate", - Handler: _OpenStorageClusterDomains_Deactivate_Handler, + MethodName: "GetRebalanceJobStatus", + Handler: _OpenStoragePool_GetRebalanceJobStatus_Handler, + }, + { + MethodName: "EnumerateRebalanceJobs", + Handler: _OpenStoragePool_EnumerateRebalanceJobs_Handler, }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } -// Client API for OpenStoragePool service +// Client API for OpenStorageJob service -type OpenStoragePoolClient interface { - // Resize resizes the specified storage pool based on the request parameters - Resize(ctx context.Context, in *SdkStoragePoolResizeRequest, opts ...grpc.CallOption) (*SdkStoragePoolResizeResponse, error) +type OpenStorageJobClient interface { + // Update updates an existing job's state + // Only acceptable state values are + // JobState_PAUSED - acceptable only from running state + // JobState_CANCELLED - acceptable only from running/pause state + // JobState_RUNNING - acceptable only from pause state + Update(ctx context.Context, in *SdkUpdateJobRequest, opts ...grpc.CallOption) (*SdkUpdateJobResponse, error) + // GetStatus gets the status of a job + GetStatus(ctx context.Context, in *SdkGetJobStatusRequest, opts ...grpc.CallOption) (*SdkGetJobStatusResponse, error) + // Enumerate returns all the jobs currently known to the system + Enumerate(ctx context.Context, in *SdkEnumerateJobsRequest, opts ...grpc.CallOption) (*SdkEnumerateJobsResponse, error) } -type openStoragePoolClient struct { +type openStorageJobClient struct { cc *grpc.ClientConn } -func NewOpenStoragePoolClient(cc *grpc.ClientConn) OpenStoragePoolClient { - return &openStoragePoolClient{cc} +func NewOpenStorageJobClient(cc *grpc.ClientConn) OpenStorageJobClient { + return &openStorageJobClient{cc} } -func (c *openStoragePoolClient) Resize(ctx context.Context, in *SdkStoragePoolResizeRequest, opts ...grpc.CallOption) (*SdkStoragePoolResizeResponse, error) { - out := new(SdkStoragePoolResizeResponse) - err := grpc.Invoke(ctx, "/openstorage.api.OpenStoragePool/Resize", in, out, c.cc, opts...) +func (c *openStorageJobClient) Update(ctx context.Context, in *SdkUpdateJobRequest, opts ...grpc.CallOption) (*SdkUpdateJobResponse, error) { + out := new(SdkUpdateJobResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageJob/Update", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } -// Server API for OpenStoragePool service +func (c *openStorageJobClient) GetStatus(ctx context.Context, in *SdkGetJobStatusRequest, opts ...grpc.CallOption) (*SdkGetJobStatusResponse, error) { + out := new(SdkGetJobStatusResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageJob/GetStatus", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} -type OpenStoragePoolServer interface { - // Resize resizes the specified storage pool based on the request parameters - Resize(context.Context, *SdkStoragePoolResizeRequest) (*SdkStoragePoolResizeResponse, error) +func (c *openStorageJobClient) Enumerate(ctx context.Context, in *SdkEnumerateJobsRequest, opts ...grpc.CallOption) (*SdkEnumerateJobsResponse, error) { + out := new(SdkEnumerateJobsResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageJob/Enumerate", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil } -func RegisterOpenStoragePoolServer(s *grpc.Server, srv OpenStoragePoolServer) { - s.RegisterService(&_OpenStoragePool_serviceDesc, srv) +// Server API for OpenStorageJob service + +type OpenStorageJobServer interface { + // Update updates an existing job's state + // Only acceptable state values are + // JobState_PAUSED - acceptable only from running state + // JobState_CANCELLED - acceptable only from running/pause state + // JobState_RUNNING - acceptable only from pause state + Update(context.Context, *SdkUpdateJobRequest) (*SdkUpdateJobResponse, error) + // GetStatus gets the status of a job + GetStatus(context.Context, *SdkGetJobStatusRequest) (*SdkGetJobStatusResponse, error) + // Enumerate returns all the jobs currently known to the system + Enumerate(context.Context, *SdkEnumerateJobsRequest) (*SdkEnumerateJobsResponse, error) } -func _OpenStoragePool_Resize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SdkStoragePoolResizeRequest) +func RegisterOpenStorageJobServer(s *grpc.Server, srv OpenStorageJobServer) { + s.RegisterService(&_OpenStorageJob_serviceDesc, srv) +} + +func _OpenStorageJob_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkUpdateJobRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(OpenStoragePoolServer).Resize(ctx, in) + return srv.(OpenStorageJobServer).Update(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/openstorage.api.OpenStoragePool/Resize", + FullMethod: "/openstorage.api.OpenStorageJob/Update", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(OpenStoragePoolServer).Resize(ctx, req.(*SdkStoragePoolResizeRequest)) + return srv.(OpenStorageJobServer).Update(ctx, req.(*SdkUpdateJobRequest)) } return interceptor(ctx, in, info, handler) } -var _OpenStoragePool_serviceDesc = grpc.ServiceDesc{ - ServiceName: "openstorage.api.OpenStoragePool", - HandlerType: (*OpenStoragePoolServer)(nil), +func _OpenStorageJob_GetStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkGetJobStatusRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageJobServer).GetStatus(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageJob/GetStatus", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageJobServer).GetStatus(ctx, req.(*SdkGetJobStatusRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageJob_Enumerate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkEnumerateJobsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageJobServer).Enumerate(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageJob/Enumerate", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageJobServer).Enumerate(ctx, req.(*SdkEnumerateJobsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _OpenStorageJob_serviceDesc = grpc.ServiceDesc{ + ServiceName: "openstorage.api.OpenStorageJob", + HandlerType: (*OpenStorageJobServer)(nil), Methods: []grpc.MethodDesc{ { - MethodName: "Resize", - Handler: _OpenStoragePool_Resize_Handler, + MethodName: "Update", + Handler: _OpenStorageJob_Update_Handler, + }, + { + MethodName: "GetStatus", + Handler: _OpenStorageJob_GetStatus_Handler, + }, + { + MethodName: "Enumerate", + Handler: _OpenStorageJob_Enumerate_Handler, }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageNode service @@ -19338,6 +25836,18 @@ type OpenStorageNodeClient interface { Enumerate(ctx context.Context, in *SdkNodeEnumerateRequest, opts ...grpc.CallOption) (*SdkNodeEnumerateResponse, error) // EnumerateWithFilters returns all the nodes in the current cluster EnumerateWithFilters(ctx context.Context, in *SdkNodeEnumerateWithFiltersRequest, opts ...grpc.CallOption) (*SdkNodeEnumerateWithFiltersResponse, error) + // Returns capacity usage of all volumes/snaps for a give node + VolumeUsageByNode(ctx context.Context, in *SdkNodeVolumeUsageByNodeRequest, opts ...grpc.CallOption) (*SdkNodeVolumeUsageByNodeResponse, error) + // DrainAttachments creates a task to drain volume attachments + // from the provided node in the cluster. + DrainAttachments(ctx context.Context, in *SdkNodeDrainAttachmentsRequest, opts ...grpc.CallOption) (*SdkJobResponse, error) + // CordonAttachments disables any new volume attachments + // from the provided node in the cluster. Existing volume attachments + // will stay on the node. + CordonAttachments(ctx context.Context, in *SdkNodeCordonAttachmentsRequest, opts ...grpc.CallOption) (*SdkNodeCordonAttachmentsResponse, error) + // UncordonAttachments re-enables volume attachments + // on the provided node in the cluster. + UncordonAttachments(ctx context.Context, in *SdkNodeUncordonAttachmentsRequest, opts ...grpc.CallOption) (*SdkNodeUncordonAttachmentsResponse, error) } type openStorageNodeClient struct { @@ -19384,6 +25894,42 @@ func (c *openStorageNodeClient) EnumerateWithFilters(ctx context.Context, in *Sd return out, nil } +func (c *openStorageNodeClient) VolumeUsageByNode(ctx context.Context, in *SdkNodeVolumeUsageByNodeRequest, opts ...grpc.CallOption) (*SdkNodeVolumeUsageByNodeResponse, error) { + out := new(SdkNodeVolumeUsageByNodeResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageNode/VolumeUsageByNode", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStorageNodeClient) DrainAttachments(ctx context.Context, in *SdkNodeDrainAttachmentsRequest, opts ...grpc.CallOption) (*SdkJobResponse, error) { + out := new(SdkJobResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageNode/DrainAttachments", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStorageNodeClient) CordonAttachments(ctx context.Context, in *SdkNodeCordonAttachmentsRequest, opts ...grpc.CallOption) (*SdkNodeCordonAttachmentsResponse, error) { + out := new(SdkNodeCordonAttachmentsResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageNode/CordonAttachments", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *openStorageNodeClient) UncordonAttachments(ctx context.Context, in *SdkNodeUncordonAttachmentsRequest, opts ...grpc.CallOption) (*SdkNodeUncordonAttachmentsResponse, error) { + out := new(SdkNodeUncordonAttachmentsResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageNode/UncordonAttachments", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // Server API for OpenStorageNode service type OpenStorageNodeServer interface { @@ -19396,6 +25942,18 @@ type OpenStorageNodeServer interface { Enumerate(context.Context, *SdkNodeEnumerateRequest) (*SdkNodeEnumerateResponse, error) // EnumerateWithFilters returns all the nodes in the current cluster EnumerateWithFilters(context.Context, *SdkNodeEnumerateWithFiltersRequest) (*SdkNodeEnumerateWithFiltersResponse, error) + // Returns capacity usage of all volumes/snaps for a give node + VolumeUsageByNode(context.Context, *SdkNodeVolumeUsageByNodeRequest) (*SdkNodeVolumeUsageByNodeResponse, error) + // DrainAttachments creates a task to drain volume attachments + // from the provided node in the cluster. + DrainAttachments(context.Context, *SdkNodeDrainAttachmentsRequest) (*SdkJobResponse, error) + // CordonAttachments disables any new volume attachments + // from the provided node in the cluster. Existing volume attachments + // will stay on the node. + CordonAttachments(context.Context, *SdkNodeCordonAttachmentsRequest) (*SdkNodeCordonAttachmentsResponse, error) + // UncordonAttachments re-enables volume attachments + // on the provided node in the cluster. + UncordonAttachments(context.Context, *SdkNodeUncordonAttachmentsRequest) (*SdkNodeUncordonAttachmentsResponse, error) } func RegisterOpenStorageNodeServer(s *grpc.Server, srv OpenStorageNodeServer) { @@ -19474,6 +26032,78 @@ func _OpenStorageNode_EnumerateWithFilters_Handler(srv interface{}, ctx context. return interceptor(ctx, in, info, handler) } +func _OpenStorageNode_VolumeUsageByNode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkNodeVolumeUsageByNodeRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageNodeServer).VolumeUsageByNode(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageNode/VolumeUsageByNode", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageNodeServer).VolumeUsageByNode(ctx, req.(*SdkNodeVolumeUsageByNodeRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageNode_DrainAttachments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkNodeDrainAttachmentsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageNodeServer).DrainAttachments(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageNode/DrainAttachments", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageNodeServer).DrainAttachments(ctx, req.(*SdkNodeDrainAttachmentsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageNode_CordonAttachments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkNodeCordonAttachmentsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageNodeServer).CordonAttachments(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageNode/CordonAttachments", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageNodeServer).CordonAttachments(ctx, req.(*SdkNodeCordonAttachmentsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _OpenStorageNode_UncordonAttachments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkNodeUncordonAttachmentsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageNodeServer).UncordonAttachments(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageNode/UncordonAttachments", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageNodeServer).UncordonAttachments(ctx, req.(*SdkNodeUncordonAttachmentsRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _OpenStorageNode_serviceDesc = grpc.ServiceDesc{ ServiceName: "openstorage.api.OpenStorageNode", HandlerType: (*OpenStorageNodeServer)(nil), @@ -19494,9 +26124,25 @@ var _OpenStorageNode_serviceDesc = grpc.ServiceDesc{ MethodName: "EnumerateWithFilters", Handler: _OpenStorageNode_EnumerateWithFilters_Handler, }, + { + MethodName: "VolumeUsageByNode", + Handler: _OpenStorageNode_VolumeUsageByNode_Handler, + }, + { + MethodName: "DrainAttachments", + Handler: _OpenStorageNode_DrainAttachments_Handler, + }, + { + MethodName: "CordonAttachments", + Handler: _OpenStorageNode_CordonAttachments_Handler, + }, + { + MethodName: "UncordonAttachments", + Handler: _OpenStorageNode_UncordonAttachments_Handler, + }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageVolume service @@ -19588,6 +26234,10 @@ type OpenStorageVolumeClient interface { // // Requires access AccessType.Write of volume SnapshotScheduleUpdate(ctx context.Context, in *SdkVolumeSnapshotScheduleUpdateRequest, opts ...grpc.CallOption) (*SdkVolumeSnapshotScheduleUpdateResponse, error) + // Gets the volume catalog of an attached and mounted volume. + // Returns the entire tree up to "n" depth (default is all of it) + // Takes a path that can be used as the new root for the catalog request. + VolumeCatalog(ctx context.Context, in *SdkVolumeCatalogRequest, opts ...grpc.CallOption) (*SdkVolumeCatalogResponse, error) } type openStorageVolumeClient struct { @@ -19733,6 +26383,15 @@ func (c *openStorageVolumeClient) SnapshotScheduleUpdate(ctx context.Context, in return out, nil } +func (c *openStorageVolumeClient) VolumeCatalog(ctx context.Context, in *SdkVolumeCatalogRequest, opts ...grpc.CallOption) (*SdkVolumeCatalogResponse, error) { + out := new(SdkVolumeCatalogResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageVolume/VolumeCatalog", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // Server API for OpenStorageVolume service type OpenStorageVolumeServer interface { @@ -19822,6 +26481,10 @@ type OpenStorageVolumeServer interface { // // Requires access AccessType.Write of volume SnapshotScheduleUpdate(context.Context, *SdkVolumeSnapshotScheduleUpdateRequest) (*SdkVolumeSnapshotScheduleUpdateResponse, error) + // Gets the volume catalog of an attached and mounted volume. + // Returns the entire tree up to "n" depth (default is all of it) + // Takes a path that can be used as the new root for the catalog request. + VolumeCatalog(context.Context, *SdkVolumeCatalogRequest) (*SdkVolumeCatalogResponse, error) } func RegisterOpenStorageVolumeServer(s *grpc.Server, srv OpenStorageVolumeServer) { @@ -20098,6 +26761,24 @@ func _OpenStorageVolume_SnapshotScheduleUpdate_Handler(srv interface{}, ctx cont return interceptor(ctx, in, info, handler) } +func _OpenStorageVolume_VolumeCatalog_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkVolumeCatalogRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageVolumeServer).VolumeCatalog(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageVolume/VolumeCatalog", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageVolumeServer).VolumeCatalog(ctx, req.(*SdkVolumeCatalogRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _OpenStorageVolume_serviceDesc = grpc.ServiceDesc{ ServiceName: "openstorage.api.OpenStorageVolume", HandlerType: (*OpenStorageVolumeServer)(nil), @@ -20162,9 +26843,13 @@ var _OpenStorageVolume_serviceDesc = grpc.ServiceDesc{ MethodName: "SnapshotScheduleUpdate", Handler: _OpenStorageVolume_SnapshotScheduleUpdate_Handler, }, + { + MethodName: "VolumeCatalog", + Handler: _OpenStorageVolume_VolumeCatalog_Handler, + }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageMountAttach service @@ -20351,7 +27036,7 @@ var _OpenStorageMountAttach_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageMigrate service @@ -20361,7 +27046,8 @@ type OpenStorageMigrateClient interface { Start(ctx context.Context, in *SdkCloudMigrateStartRequest, opts ...grpc.CallOption) (*SdkCloudMigrateStartResponse, error) // Cancel a migration operation Cancel(ctx context.Context, in *SdkCloudMigrateCancelRequest, opts ...grpc.CallOption) (*SdkCloudMigrateCancelResponse, error) - // Inspect the status of migration operation + // Status for migration operation. + // If status request is empty, status for all migration operation will be returned. Status(ctx context.Context, in *SdkCloudMigrateStatusRequest, opts ...grpc.CallOption) (*SdkCloudMigrateStatusResponse, error) } @@ -20407,7 +27093,8 @@ type OpenStorageMigrateServer interface { Start(context.Context, *SdkCloudMigrateStartRequest) (*SdkCloudMigrateStartResponse, error) // Cancel a migration operation Cancel(context.Context, *SdkCloudMigrateCancelRequest) (*SdkCloudMigrateCancelResponse, error) - // Inspect the status of migration operation + // Status for migration operation. + // If status request is empty, status for all migration operation will be returned. Status(context.Context, *SdkCloudMigrateStatusRequest) (*SdkCloudMigrateStatusResponse, error) } @@ -20487,7 +27174,7 @@ var _OpenStorageMigrate_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageObjectstore service @@ -20662,7 +27349,7 @@ var _OpenStorageObjectstore_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageCredentials service @@ -20675,6 +27362,7 @@ type OpenStorageCredentialsClient interface { // {% codetabs name="Golang", type="go" -%} // id, err := client.Create(context.Background(), &api.SdkCredentialCreateRequest{ // Name: "awscred", + // UseProxy: false, // CredentialType: &api.SdkCredentialCreateRequest_AwsCredential{ // AwsCredential: &api.SdkAwsCredentialRequest{ // AccessKey: "dummy-access", @@ -20702,6 +27390,8 @@ type OpenStorageCredentialsClient interface { Delete(ctx context.Context, in *SdkCredentialDeleteRequest, opts ...grpc.CallOption) (*SdkCredentialDeleteResponse, error) // Validate is used to validate credentials Validate(ctx context.Context, in *SdkCredentialValidateRequest, opts ...grpc.CallOption) (*SdkCredentialValidateResponse, error) + // DeleteReferences is used to remove references to credentials + DeleteReferences(ctx context.Context, in *SdkCredentialDeleteReferencesRequest, opts ...grpc.CallOption) (*SdkCredentialDeleteReferencesResponse, error) } type openStorageCredentialsClient struct { @@ -20757,6 +27447,15 @@ func (c *openStorageCredentialsClient) Validate(ctx context.Context, in *SdkCred return out, nil } +func (c *openStorageCredentialsClient) DeleteReferences(ctx context.Context, in *SdkCredentialDeleteReferencesRequest, opts ...grpc.CallOption) (*SdkCredentialDeleteReferencesResponse, error) { + out := new(SdkCredentialDeleteReferencesResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageCredentials/DeleteReferences", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // Server API for OpenStorageCredentials service type OpenStorageCredentialsServer interface { @@ -20767,6 +27466,7 @@ type OpenStorageCredentialsServer interface { // {% codetabs name="Golang", type="go" -%} // id, err := client.Create(context.Background(), &api.SdkCredentialCreateRequest{ // Name: "awscred", + // UseProxy: false, // CredentialType: &api.SdkCredentialCreateRequest_AwsCredential{ // AwsCredential: &api.SdkAwsCredentialRequest{ // AccessKey: "dummy-access", @@ -20794,6 +27494,8 @@ type OpenStorageCredentialsServer interface { Delete(context.Context, *SdkCredentialDeleteRequest) (*SdkCredentialDeleteResponse, error) // Validate is used to validate credentials Validate(context.Context, *SdkCredentialValidateRequest) (*SdkCredentialValidateResponse, error) + // DeleteReferences is used to remove references to credentials + DeleteReferences(context.Context, *SdkCredentialDeleteReferencesRequest) (*SdkCredentialDeleteReferencesResponse, error) } func RegisterOpenStorageCredentialsServer(s *grpc.Server, srv OpenStorageCredentialsServer) { @@ -20890,6 +27592,24 @@ func _OpenStorageCredentials_Validate_Handler(srv interface{}, ctx context.Conte return interceptor(ctx, in, info, handler) } +func _OpenStorageCredentials_DeleteReferences_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkCredentialDeleteReferencesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageCredentialsServer).DeleteReferences(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageCredentials/DeleteReferences", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageCredentialsServer).DeleteReferences(ctx, req.(*SdkCredentialDeleteReferencesRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _OpenStorageCredentials_serviceDesc = grpc.ServiceDesc{ ServiceName: "openstorage.api.OpenStorageCredentials", HandlerType: (*OpenStorageCredentialsServer)(nil), @@ -20914,9 +27634,13 @@ var _OpenStorageCredentials_serviceDesc = grpc.ServiceDesc{ MethodName: "Validate", Handler: _OpenStorageCredentials_Validate_Handler, }, + { + MethodName: "DeleteReferences", + Handler: _OpenStorageCredentials_DeleteReferences_Handler, + }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageSchedulePolicy service @@ -21124,7 +27848,7 @@ var _OpenStorageSchedulePolicy_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStorageCloudBackup service @@ -21169,6 +27893,8 @@ type OpenStorageCloudBackupClient interface { SchedDelete(ctx context.Context, in *SdkCloudBackupSchedDeleteRequest, opts ...grpc.CallOption) (*SdkCloudBackupSchedDeleteResponse, error) // Enumerate cloud backup schedules SchedEnumerate(ctx context.Context, in *SdkCloudBackupSchedEnumerateRequest, opts ...grpc.CallOption) (*SdkCloudBackupSchedEnumerateResponse, error) + // Size returns the size of any cloud backups of a volume + Size(ctx context.Context, in *SdkCloudBackupSizeRequest, opts ...grpc.CallOption) (*SdkCloudBackupSizeResponse, error) } type openStorageCloudBackupClient struct { @@ -21305,6 +28031,15 @@ func (c *openStorageCloudBackupClient) SchedEnumerate(ctx context.Context, in *S return out, nil } +func (c *openStorageCloudBackupClient) Size(ctx context.Context, in *SdkCloudBackupSizeRequest, opts ...grpc.CallOption) (*SdkCloudBackupSizeResponse, error) { + out := new(SdkCloudBackupSizeResponse) + err := grpc.Invoke(ctx, "/openstorage.api.OpenStorageCloudBackup/Size", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // Server API for OpenStorageCloudBackup service type OpenStorageCloudBackupServer interface { @@ -21347,6 +28082,8 @@ type OpenStorageCloudBackupServer interface { SchedDelete(context.Context, *SdkCloudBackupSchedDeleteRequest) (*SdkCloudBackupSchedDeleteResponse, error) // Enumerate cloud backup schedules SchedEnumerate(context.Context, *SdkCloudBackupSchedEnumerateRequest) (*SdkCloudBackupSchedEnumerateResponse, error) + // Size returns the size of any cloud backups of a volume + Size(context.Context, *SdkCloudBackupSizeRequest) (*SdkCloudBackupSizeResponse, error) } func RegisterOpenStorageCloudBackupServer(s *grpc.Server, srv OpenStorageCloudBackupServer) { @@ -21605,6 +28342,24 @@ func _OpenStorageCloudBackup_SchedEnumerate_Handler(srv interface{}, ctx context return interceptor(ctx, in, info, handler) } +func _OpenStorageCloudBackup_Size_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SdkCloudBackupSizeRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OpenStorageCloudBackupServer).Size(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/openstorage.api.OpenStorageCloudBackup/Size", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OpenStorageCloudBackupServer).Size(ctx, req.(*SdkCloudBackupSizeRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _OpenStorageCloudBackup_serviceDesc = grpc.ServiceDesc{ ServiceName: "openstorage.api.OpenStorageCloudBackup", HandlerType: (*OpenStorageCloudBackupServer)(nil), @@ -21665,9 +28420,13 @@ var _OpenStorageCloudBackup_serviceDesc = grpc.ServiceDesc{ MethodName: "SchedEnumerate", Handler: _OpenStorageCloudBackup_SchedEnumerate_Handler, }, + { + MethodName: "Size", + Handler: _OpenStorageCloudBackup_Size_Handler, + }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", + Metadata: "api/api.proto", } // Client API for OpenStoragePolicy service @@ -21982,884 +28741,1193 @@ var _OpenStoragePolicy_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "api.proto", -} - -func init() { proto.RegisterFile("api.proto", fileDescriptor_api_428c3290de6913be) } - -var fileDescriptor_api_428c3290de6913be = []byte{ - // 13959 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0xbd, 0x6b, 0x8c, 0x1c, 0x49, - 0x72, 0x18, 0xcc, 0xea, 0x9e, 0xe9, 0xe9, 0x8e, 0x99, 0xe9, 0xa9, 0x49, 0x92, 0xc3, 0x66, 0x93, - 0xcb, 0x47, 0xed, 0x72, 0xc9, 0x9d, 0x25, 0x67, 0xb8, 0xb3, 0xcb, 0xdd, 0x25, 0x77, 0xf7, 0xee, - 0x9a, 0x33, 0x3d, 0x9c, 0x16, 0xe7, 0xb5, 0xd5, 0x33, 0xe4, 0xed, 0xe9, 0xd1, 0x57, 0xec, 0x2e, - 0xce, 0xd4, 0xb1, 0xbb, 0xab, 0xb7, 0xaa, 0x7a, 0x76, 0xe7, 0xee, 0x56, 0x12, 0x84, 0x4f, 0x90, - 0x3e, 0x9c, 0xf4, 0x9d, 0x5e, 0x27, 0x7d, 0x3a, 0x3d, 0x2c, 0xc1, 0x90, 0x6c, 0x4b, 0x96, 0x21, - 0xc9, 0x86, 0x61, 0x1f, 0x64, 0x09, 0xb8, 0x1f, 0xd6, 0xc3, 0x0f, 0xfd, 0x90, 0x0d, 0x18, 0x36, - 0x04, 0x58, 0x80, 0x0c, 0x48, 0xb0, 0xac, 0x1f, 0x86, 0xfd, 0xc3, 0x80, 0x0d, 0x1b, 0x19, 0x99, - 0x55, 0x95, 0x59, 0x8f, 0x7e, 0x90, 0xbc, 0xb3, 0x01, 0xff, 0x99, 0xe9, 0xca, 0x8c, 0x8c, 0x8c, - 0x8c, 0x88, 0x8c, 0x8c, 0xcc, 0xc8, 0x07, 0x14, 0x8c, 0x9e, 0xb5, 0xd4, 0x73, 0x6c, 0xcf, 0x26, - 0x73, 0x76, 0xcf, 0xec, 0xba, 0x9e, 0xed, 0x18, 0x07, 0xe6, 0x92, 0xd1, 0xb3, 0xca, 0x17, 0x0f, - 0x6c, 0xfb, 0xa0, 0x6d, 0x2e, 0x63, 0xf6, 0xa3, 0xfe, 0xe3, 0x65, 0xcf, 0xea, 0x98, 0xae, 0x67, - 0x74, 0x7a, 0xac, 0x44, 0xf9, 0x3c, 0x07, 0x30, 0x7a, 0xd6, 0xb2, 0xd1, 0xed, 0xda, 0x9e, 0xe1, - 0x59, 0x76, 0xd7, 0x65, 0xb9, 0xda, 0xdf, 0xcc, 0xc2, 0x5c, 0x9d, 0xa1, 0xd3, 0x4d, 0xd7, 0xee, - 0x3b, 0x4d, 0x93, 0x14, 0x21, 0x63, 0xb5, 0x4a, 0xca, 0x25, 0xe5, 0x5a, 0x41, 0xcf, 0x58, 0x2d, - 0x42, 0x60, 0xa2, 0x67, 0x78, 0x87, 0xa5, 0x0c, 0xa6, 0xe0, 0x6f, 0xf2, 0x26, 0xe4, 0x3a, 0x66, - 0xcb, 0xea, 0x77, 0x4a, 0xd9, 0x4b, 0xca, 0xb5, 0xe2, 0xca, 0x85, 0xa5, 0x08, 0x61, 0x4b, 0x1c, - 0xeb, 0x16, 0x42, 0xe9, 0x1c, 0x9a, 0x2c, 0x40, 0xce, 0xee, 0xb6, 0xad, 0xae, 0x59, 0x9a, 0xb8, - 0xa4, 0x5c, 0xcb, 0xeb, 0xfc, 0x8b, 0xd6, 0x61, 0xd9, 0x3d, 0xb7, 0x34, 0x79, 0x49, 0xb9, 0x36, - 0xa1, 0xe3, 0x6f, 0x72, 0x0e, 0x0a, 0xae, 0xf9, 0x61, 0xe3, 0x23, 0xc7, 0xf2, 0xcc, 0x52, 0xee, - 0x92, 0x72, 0x4d, 0xd1, 0xf3, 0xae, 0xf9, 0xe1, 0x43, 0xfa, 0x4d, 0xce, 0x02, 0xfd, 0xdd, 0x70, - 0x4c, 0xa3, 0x55, 0x9a, 0xc2, 0xbc, 0x29, 0xd7, 0xfc, 0x50, 0x37, 0x8d, 0x16, 0xad, 0xc3, 0x31, - 0xba, 0x2d, 0xfd, 0x61, 0x29, 0x8f, 0x19, 0xfc, 0x8b, 0xd6, 0xe1, 0x5a, 0x5f, 0x34, 0x4b, 0x05, - 0x56, 0x07, 0xfd, 0x4d, 0xd3, 0xfa, 0xae, 0xd9, 0x2a, 0x01, 0x4b, 0xa3, 0xbf, 0xc9, 0x15, 0x28, - 0x3a, 0x9c, 0x4d, 0x0d, 0xb7, 0x67, 0x9a, 0xad, 0xd2, 0x34, 0xb6, 0x7c, 0xd6, 0x4f, 0xad, 0xd3, - 0x44, 0xf2, 0x16, 0x14, 0xda, 0x86, 0xeb, 0x35, 0xdc, 0xa6, 0xd1, 0x2d, 0xcd, 0x5c, 0x52, 0xae, - 0x4d, 0xaf, 0x94, 0x97, 0x18, 0xb3, 0x97, 0x7c, 0x69, 0x2c, 0xed, 0xf9, 0xd2, 0xd0, 0xf3, 0x14, - 0xb8, 0xde, 0x34, 0xba, 0xa4, 0x0c, 0xf9, 0x8e, 0xe9, 0x19, 0x2d, 0xc3, 0x33, 0x4a, 0xb3, 0xc8, - 0x85, 0xe0, 0x9b, 0x9c, 0x82, 0xc9, 0xa6, 0xd1, 0x3c, 0x34, 0x4b, 0x45, 0xcc, 0x60, 0x1f, 0xda, - 0x6f, 0x66, 0x61, 0x9a, 0xf3, 0x73, 0xd7, 0xb6, 0xdb, 0x54, 0x42, 0xb5, 0x35, 0x94, 0xd0, 0xa4, - 0x9e, 0xa9, 0xad, 0x91, 0x45, 0xc8, 0xae, 0xda, 0x2e, 0x0a, 0xa8, 0xb8, 0x52, 0x8a, 0x89, 0x62, - 0xd5, 0x76, 0xf7, 0x8e, 0x7b, 0xa6, 0x4e, 0x81, 0xa8, 0xe4, 0xb6, 0xc6, 0x92, 0x1c, 0xfb, 0x4f, - 0xce, 0x43, 0x41, 0x37, 0xac, 0xd6, 0xa6, 0x79, 0x64, 0xb6, 0x51, 0x78, 0x05, 0x3d, 0x4c, 0xa0, - 0xb9, 0x7b, 0xb6, 0x67, 0xb4, 0xeb, 0x94, 0xc1, 0x53, 0xc8, 0xcc, 0x30, 0x81, 0x72, 0x79, 0x9f, - 0x72, 0x39, 0xcf, 0xb8, 0x4c, 0x7f, 0x93, 0xcf, 0x40, 0xae, 0x6d, 0x3c, 0x32, 0xdb, 0x6e, 0xa9, - 0x70, 0x29, 0x7b, 0x6d, 0x7a, 0xe5, 0x5a, 0x1a, 0x1d, 0xb4, 0xc5, 0x4b, 0x9b, 0x08, 0x5a, 0xed, - 0x7a, 0xce, 0xb1, 0xce, 0xcb, 0xa1, 0xec, 0xfa, 0x16, 0x93, 0x5d, 0x41, 0xc7, 0xdf, 0x64, 0x13, - 0x8a, 0x28, 0x14, 0xbb, 0x67, 0x3a, 0x28, 0x2b, 0x94, 0xdd, 0xf4, 0xca, 0x95, 0x41, 0xd8, 0x77, - 0x7c, 0x60, 0x7d, 0x96, 0x16, 0x0e, 0x3e, 0xcb, 0xb7, 0x61, 0x5a, 0xa8, 0x98, 0xa8, 0x90, 0x7d, - 0x62, 0x1e, 0xf3, 0x9e, 0x41, 0x7f, 0x52, 0x71, 0x1d, 0x19, 0xed, 0xbe, 0xc9, 0xfb, 0x06, 0xfb, - 0xb8, 0x93, 0x79, 0x5b, 0xd1, 0xbe, 0x91, 0x81, 0x53, 0x49, 0x55, 0x90, 0x0a, 0x4c, 0x78, 0xc7, - 0x3d, 0x13, 0xb1, 0x14, 0x57, 0x6e, 0xc4, 0xe9, 0x6a, 0x3d, 0x11, 0x1b, 0x1e, 0x14, 0x44, 0x09, - 0x62, 0x51, 0x4a, 0x47, 0xc7, 0x3d, 0xe0, 0x75, 0xd2, 0x9f, 0xa4, 0x06, 0xb9, 0x9e, 0xe1, 0x18, - 0x1d, 0xb7, 0x94, 0x45, 0x66, 0xbe, 0x36, 0x52, 0x73, 0x97, 0x76, 0xb1, 0x0c, 0xe7, 0x2a, 0x43, - 0x40, 0xee, 0x41, 0xce, 0xf5, 0x0c, 0xaf, 0xef, 0xa2, 0x90, 0x8b, 0x2b, 0xcb, 0x23, 0x53, 0x58, - 0xc7, 0x62, 0x3a, 0x2f, 0x4e, 0x99, 0x27, 0xe0, 0x1f, 0x8b, 0x79, 0xdf, 0xcc, 0xc0, 0xec, 0x03, - 0xbb, 0xdd, 0xef, 0x98, 0x9b, 0x76, 0xd3, 0xf0, 0x6c, 0x87, 0xca, 0xba, 0x6b, 0x74, 0x4c, 0x5e, - 0x1c, 0x7f, 0x93, 0x7d, 0x98, 0x3d, 0x42, 0xa0, 0x06, 0x57, 0xa4, 0x0c, 0xb6, 0xfd, 0x66, 0x8c, - 0x60, 0x09, 0x95, 0xff, 0x25, 0x28, 0xd4, 0xcc, 0x91, 0x90, 0x44, 0xde, 0x86, 0x82, 0xfd, 0x51, - 0xd7, 0x74, 0xdc, 0x43, 0xab, 0x87, 0x7d, 0x84, 0xf6, 0xeb, 0x28, 0xca, 0x1d, 0x1f, 0x42, 0x0f, - 0x81, 0xc9, 0x75, 0x98, 0x3c, 0x70, 0xec, 0x7e, 0x0f, 0x39, 0x37, 0xbd, 0xb2, 0x10, 0x2b, 0x75, - 0x8f, 0xe6, 0xea, 0x0c, 0x88, 0xbc, 0x00, 0xc0, 0xc9, 0xb7, 0x5a, 0xd4, 0xf0, 0x65, 0x69, 0x8f, - 0x62, 0x29, 0xb5, 0x96, 0x5b, 0xfe, 0x34, 0xcc, 0xc7, 0x28, 0x1d, 0x8b, 0x89, 0x8b, 0x70, 0x8a, - 0x21, 0xa8, 0x75, 0xdd, 0x9e, 0xd9, 0xf4, 0x76, 0x7a, 0x68, 0xf8, 0x29, 0x2b, 0x5b, 0xa6, 0xd9, - 0x43, 0x24, 0x79, 0x1d, 0x7f, 0x6b, 0x6f, 0x40, 0xae, 0xce, 0x8c, 0xff, 0x02, 0x6a, 0x92, 0xd9, - 0xf5, 0x78, 0x25, 0xfc, 0x0b, 0x8d, 0x27, 0x35, 0x85, 0x7c, 0x10, 0xa0, 0xbf, 0xb5, 0x33, 0x30, - 0x89, 0x2d, 0x8a, 0x8e, 0x18, 0xda, 0x1a, 0x40, 0xcd, 0xae, 0x7b, 0x8e, 0xe1, 0x99, 0x07, 0xc7, - 0xd4, 0x54, 0x1b, 0xee, 0x71, 0xb7, 0xd9, 0xb0, 0x6c, 0x5e, 0xe9, 0x14, 0x7e, 0xd7, 0x6c, 0x6a, - 0xe2, 0x4d, 0xc3, 0x69, 0x1f, 0x37, 0x8c, 0xe6, 0x13, 0x44, 0x9d, 0xd7, 0xf3, 0x98, 0x50, 0x69, - 0x3e, 0xd1, 0x7e, 0x0f, 0x00, 0x58, 0x0b, 0xea, 0x3d, 0xb3, 0x49, 0x4d, 0x8c, 0xd9, 0x3b, 0x34, - 0x3b, 0xa6, 0x63, 0xb4, 0x39, 0x9e, 0x30, 0x21, 0x30, 0xee, 0x19, 0xc1, 0xb8, 0x2f, 0x43, 0xee, - 0xb1, 0xed, 0x74, 0x0c, 0x8f, 0x9b, 0xba, 0x33, 0x31, 0x81, 0xac, 0xd7, 0xb1, 0x5b, 0x71, 0x30, - 0x2a, 0x92, 0x47, 0x6d, 0xbb, 0xf9, 0xa4, 0x81, 0xa8, 0xa8, 0x14, 0xb3, 0x7a, 0x01, 0x53, 0xd0, - 0x8c, 0x9d, 0x85, 0xfc, 0xa1, 0xd1, 0x68, 0xa3, 0x05, 0x9c, 0xc4, 0xcc, 0xa9, 0x43, 0x83, 0xd9, - 0xbf, 0x45, 0xc8, 0x36, 0x6d, 0x17, 0x47, 0xa9, 0x81, 0x16, 0xb8, 0x69, 0xbb, 0xe4, 0x36, 0x80, - 0x65, 0x37, 0x7a, 0x8e, 0xfd, 0xd8, 0x6a, 0x33, 0x63, 0x59, 0x4c, 0xd0, 0xb0, 0x9a, 0xbd, 0xcb, - 0x20, 0xf4, 0x82, 0xe5, 0xff, 0xa4, 0xd2, 0x69, 0x99, 0xad, 0x7e, 0xcf, 0x44, 0x53, 0x9a, 0xd7, - 0xf9, 0x17, 0x79, 0x15, 0xe6, 0xdd, 0xae, 0xd1, 0x73, 0x0f, 0x6d, 0xaf, 0x61, 0x75, 0x3d, 0xd3, - 0x39, 0x32, 0xda, 0x38, 0xce, 0xcd, 0xea, 0xaa, 0x9f, 0x51, 0xe3, 0xe9, 0x44, 0x8f, 0xf6, 0x1b, - 0xc0, 0x7e, 0x73, 0x23, 0xa5, 0xdf, 0x50, 0xe6, 0x0f, 0xed, 0x34, 0x0b, 0x90, 0x73, 0x0f, 0x0d, - 0x87, 0x8f, 0x95, 0x79, 0x9d, 0x7f, 0x91, 0x77, 0x61, 0xda, 0x31, 0x7b, 0x6d, 0xab, 0x69, 0x34, - 0x5c, 0xd3, 0xe3, 0xc3, 0xe4, 0xb9, 0x58, 0x4d, 0x3a, 0x83, 0xa9, 0x9b, 0x9e, 0x0e, 0x4e, 0xf0, - 0x9b, 0x36, 0xcb, 0x38, 0x38, 0x70, 0xcc, 0x03, 0x36, 0x18, 0x33, 0xce, 0xcf, 0xb2, 0x66, 0x09, - 0x19, 0xc1, 0x10, 0x64, 0x76, 0x9b, 0xce, 0x71, 0xcf, 0x33, 0x5b, 0x7c, 0xf8, 0x0c, 0x13, 0xc8, - 0x05, 0x80, 0x9e, 0xe1, 0xba, 0xbd, 0x43, 0xc7, 0x70, 0xcd, 0xd2, 0x1c, 0xaa, 0xaa, 0x90, 0x22, - 0x71, 0xd0, 0x6d, 0x1e, 0x9a, 0xad, 0x7e, 0xdb, 0x2c, 0xa9, 0x08, 0x16, 0x70, 0xb0, 0xce, 0xd3, - 0x69, 0xa7, 0x73, 0x9b, 0x46, 0xdb, 0x2c, 0xcd, 0x23, 0x2d, 0xec, 0x03, 0x79, 0xe0, 0x59, 0xcd, - 0x27, 0xc7, 0x25, 0xc2, 0x79, 0x80, 0x5f, 0xa1, 0x59, 0x38, 0x3d, 0x8a, 0x59, 0xb8, 0x02, 0x45, - 0xfc, 0xd1, 0x30, 0xbb, 0x8f, 0x6d, 0xa7, 0x69, 0xb6, 0x4a, 0x0b, 0x88, 0x6d, 0x16, 0x53, 0xab, - 0x3c, 0x91, 0xb6, 0xa7, 0x69, 0x77, 0x7a, 0x8e, 0xe9, 0xd2, 0x81, 0xf5, 0x0c, 0x82, 0x08, 0x29, - 0xd4, 0xc9, 0x68, 0x1a, 0x6e, 0xd3, 0x68, 0x99, 0xad, 0x52, 0x89, 0x75, 0x2c, 0xff, 0x9b, 0x94, - 0x60, 0xea, 0x0b, 0x76, 0xdf, 0xe9, 0x1a, 0xed, 0xd2, 0x59, 0xd6, 0x1f, 0xf9, 0x27, 0x2d, 0xc5, - 0x04, 0x77, 0xf4, 0x46, 0xa9, 0xcc, 0x4a, 0xf9, 0xdf, 0xe4, 0x22, 0x4c, 0x7f, 0xd8, 0x37, 0xfb, - 0x66, 0xa3, 0x65, 0xf6, 0xbc, 0xc3, 0xd2, 0x39, 0x6c, 0x3a, 0x60, 0xd2, 0x1a, 0x4d, 0x21, 0xb7, - 0xe1, 0x2c, 0x12, 0xd7, 0xe8, 0x77, 0xdd, 0x7e, 0xaf, 0x67, 0x3b, 0x9e, 0xd9, 0x6a, 0x3c, 0x76, - 0x1b, 0x38, 0xdc, 0x9d, 0x47, 0x6c, 0x0b, 0x08, 0xb0, 0x1f, 0xe6, 0xaf, 0x63, 0xbf, 0xa0, 0xb2, - 0xeb, 0xda, 0x2d, 0xcb, 0x6d, 0x1a, 0x4e, 0xab, 0xf4, 0x02, 0x93, 0x5d, 0x90, 0x40, 0x95, 0xc8, - 0xb2, 0x1b, 0x2e, 0xb7, 0x27, 0xa5, 0x0b, 0x29, 0x4a, 0x14, 0x9a, 0x1c, 0x1d, 0xac, 0xd0, 0xfc, - 0x3c, 0x04, 0xd2, 0x6b, 0x1b, 0x4d, 0xb3, 0x63, 0x76, 0xbd, 0x10, 0xc9, 0x45, 0x44, 0x72, 0x2d, - 0x45, 0xe7, 0x77, 0xfd, 0x02, 0x01, 0xc6, 0xf9, 0x5e, 0x34, 0x89, 0x4a, 0x8a, 0x97, 0x6c, 0xf4, - 0xec, 0xb6, 0xd5, 0x3c, 0x2e, 0x5d, 0x62, 0x7e, 0xa2, 0xeb, 0x8f, 0x8e, 0x34, 0x51, 0x1e, 0x4f, - 0x2e, 0x8f, 0x31, 0x9e, 0x3c, 0xfb, 0x10, 0xf0, 0x3f, 0xa6, 0x40, 0x0d, 0x3b, 0xf1, 0x7e, 0xaf, - 0x65, 0x78, 0x54, 0x79, 0x05, 0x4b, 0xb9, 0x71, 0x82, 0xdb, 0xca, 0x73, 0x51, 0xdb, 0xb6, 0xa1, - 0x84, 0xd6, 0xed, 0xfa, 0x48, 0xd6, 0x6d, 0x23, 0xc3, 0xec, 0xdb, 0x3b, 0xe3, 0xd9, 0xb7, 0x8d, - 0xac, 0x68, 0xe1, 0x4a, 0xb2, 0x85, 0xdb, 0x98, 0x08, 0x6c, 0xdc, 0x8d, 0x54, 0x1b, 0xb7, 0x31, - 0x99, 0x60, 0xe5, 0x4a, 0xb2, 0x45, 0xda, 0xc8, 0x3d, 0x27, 0x9b, 0x74, 0x29, 0x6e, 0x48, 0x36, - 0xa6, 0x24, 0x53, 0x72, 0x23, 0xd5, 0x94, 0x6c, 0xe4, 0x13, 0x8c, 0xc9, 0x82, 0x64, 0x4c, 0x36, - 0x0a, 0xbe, 0x39, 0x29, 0xc9, 0xe6, 0x64, 0x03, 0x02, 0x83, 0xb2, 0xe4, 0x1b, 0x94, 0x93, 0x83, - 0x0c, 0xca, 0xc6, 0xb4, 0x6f, 0x52, 0xca, 0x61, 0x7f, 0x47, 0x43, 0xb1, 0x31, 0x13, 0xf6, 0xf8, - 0xf3, 0x42, 0x8f, 0x47, 0x3b, 0xb1, 0x31, 0x2b, 0xf4, 0xf9, 0xcb, 0x72, 0x9f, 0x3f, 0x8b, 0x14, - 0x16, 0xa5, 0x5e, 0x2f, 0xa9, 0x77, 0x79, 0x1c, 0x77, 0xe9, 0x82, 0xd8, 0xe9, 0xcf, 0x61, 0xdd, - 0x73, 0x03, 0xba, 0xfd, 0xf9, 0xb1, 0xba, 0xfd, 0x5d, 0x80, 0x3c, 0x55, 0xec, 0x86, 0xdd, 0xf3, - 0xee, 0x16, 0x61, 0xc6, 0x57, 0x6e, 0xfc, 0x2e, 0xc0, 0x54, 0xd3, 0x76, 0xf1, 0xa7, 0x0a, 0xc5, - 0x50, 0x59, 0x31, 0x65, 0x06, 0x80, 0x69, 0x1c, 0x7e, 0x9d, 0x81, 0xd3, 0x31, 0xad, 0xf3, 0xc1, - 0x18, 0x9b, 0x7c, 0x34, 0xa1, 0x06, 0xc4, 0x0a, 0xfa, 0x5a, 0x80, 0x19, 0xd3, 0x50, 0x40, 0x01, - 0x07, 0x58, 0x50, 0xa8, 0x7e, 0x16, 0xb3, 0xfd, 0xf4, 0x63, 0x16, 0xa6, 0xb9, 0x90, 0xfc, 0x36, - 0xf8, 0x62, 0xc1, 0xef, 0x79, 0x98, 0x13, 0x44, 0x83, 0x49, 0x73, 0x30, 0x1b, 0x70, 0x8f, 0x26, - 0x68, 0x7f, 0x3d, 0x23, 0xf6, 0x7f, 0x6e, 0x8f, 0xfc, 0xfe, 0xaf, 0xa4, 0xf6, 0xff, 0x4c, 0x4a, - 0xff, 0xcf, 0x3e, 0x4d, 0xff, 0x9f, 0x78, 0xda, 0xfe, 0x3f, 0x39, 0x4a, 0xff, 0xcf, 0xa5, 0xf6, - 0xff, 0xcf, 0x46, 0xbd, 0x9c, 0x29, 0xf4, 0x72, 0x5e, 0x1f, 0xe0, 0xe5, 0x30, 0x06, 0x0d, 0xf5, - 0x75, 0x42, 0xcb, 0x92, 0x1f, 0x6c, 0x59, 0x0a, 0xcf, 0x62, 0x59, 0x60, 0x54, 0xcb, 0x32, 0x3d, - 0xdc, 0xb2, 0xcc, 0xa4, 0x59, 0x96, 0xd9, 0x34, 0xcb, 0x52, 0x1c, 0xdb, 0xb2, 0xcc, 0x0d, 0xb2, - 0x2c, 0xea, 0x30, 0xcb, 0x32, 0x9f, 0x60, 0x59, 0x2e, 0x88, 0x0e, 0x1d, 0xf1, 0xed, 0x43, 0xe8, - 0xd2, 0xdd, 0x48, 0xf2, 0x0e, 0x4f, 0x22, 0x22, 0x35, 0xc1, 0x3f, 0xdc, 0x81, 0x59, 0x6e, 0x10, - 0xe8, 0x7c, 0xd5, 0x76, 0x4a, 0x2b, 0xa8, 0x99, 0x8b, 0xc3, 0x15, 0x82, 0xfd, 0xdb, 0xe9, 0xe9, - 0x33, 0x14, 0xc1, 0x0e, 0x2f, 0x4f, 0x1e, 0xc0, 0xbc, 0x60, 0x55, 0x38, 0xd2, 0xd7, 0xc7, 0x46, - 0x3a, 0xc7, 0x7b, 0x59, 0x80, 0xf7, 0x7d, 0x28, 0xfa, 0x06, 0x82, 0x23, 0x7d, 0x63, 0x6c, 0xa4, - 0xb3, 0x88, 0x21, 0x40, 0x79, 0x08, 0xe5, 0x24, 0x2b, 0xc6, 0xd1, 0xdf, 0x1a, 0x1b, 0x7d, 0x29, - 0xda, 0xdd, 0x82, 0x9a, 0x24, 0xa3, 0xfe, 0x26, 0x0a, 0x6d, 0x7e, 0x80, 0x51, 0x7f, 0x6b, 0x2c, - 0xa3, 0xfe, 0xec, 0x1e, 0xd1, 0x32, 0xe4, 0xfd, 0x46, 0x90, 0x02, 0x4c, 0x56, 0x3f, 0xec, 0x1b, - 0x6d, 0xf5, 0x04, 0x99, 0x86, 0xa9, 0x2d, 0xab, 0x6b, 0x75, 0xfa, 0x1d, 0x55, 0xc1, 0x0f, 0xe3, - 0x63, 0xfc, 0xc8, 0xfc, 0x5f, 0x3a, 0x8c, 0x04, 0x9d, 0xcc, 0xa7, 0x21, 0xd6, 0xd1, 0x92, 0x07, - 0x9c, 0x0a, 0x40, 0x68, 0xdc, 0xa8, 0x18, 0xba, 0x76, 0xcb, 0x74, 0x4b, 0x0a, 0x2e, 0x6e, 0xb0, - 0x0f, 0x3a, 0xc9, 0xee, 0xd9, 0x76, 0xbb, 0xd1, 0xef, 0x5b, 0x2d, 0xb6, 0x66, 0x53, 0xd0, 0x0b, - 0x34, 0x65, 0x9f, 0x26, 0x68, 0xbf, 0xae, 0xc0, 0x9c, 0xde, 0xef, 0x7a, 0x56, 0xc7, 0xac, 0x7b, - 0x86, 0x67, 0x6e, 0x19, 0x3d, 0xf2, 0x10, 0x66, 0x1d, 0x96, 0xd4, 0x70, 0x69, 0x1a, 0x22, 0x9c, - 0x5e, 0x59, 0x89, 0x5b, 0x56, 0xb9, 0xa0, 0xf4, 0xcd, 0x4d, 0xb9, 0x23, 0x24, 0x51, 0x7d, 0x8a, - 0x81, 0x8c, 0xa5, 0x4f, 0x3f, 0x37, 0x01, 0x85, 0xc0, 0xb9, 0xa1, 0x70, 0xe8, 0xde, 0xf0, 0xb2, - 0xec, 0x83, 0xbc, 0x0b, 0x13, 0x46, 0xb3, 0xcd, 0x96, 0x67, 0x93, 0xa6, 0x1c, 0x41, 0xf9, 0xa5, - 0x4a, 0xb3, 0x69, 0xba, 0xee, 0xaa, 0xdd, 0xf5, 0x1c, 0xbb, 0xad, 0x63, 0xa9, 0xf2, 0x57, 0xb2, - 0x30, 0x2b, 0xa5, 0x93, 0x4d, 0xc8, 0xa1, 0x78, 0x5d, 0xce, 0x86, 0x37, 0x46, 0xc5, 0xc8, 0xac, - 0xb7, 0xbf, 0xde, 0xc7, 0x70, 0x10, 0x03, 0x66, 0x9b, 0x76, 0xbb, 0x6d, 0x3c, 0xb2, 0xb1, 0x03, - 0xfb, 0xab, 0x68, 0xef, 0x8c, 0x8c, 0x74, 0x55, 0x2c, 0xcd, 0x70, 0xcb, 0x18, 0xcb, 0x9f, 0x87, - 0x69, 0xa1, 0xe6, 0x04, 0xfe, 0xbe, 0x23, 0xf2, 0xb7, 0x98, 0xb0, 0x58, 0x1b, 0xad, 0x1b, 0x17, - 0x53, 0x42, 0x31, 0x94, 0x0f, 0x80, 0xc4, 0xc9, 0xf8, 0x16, 0x54, 0xa4, 0x5d, 0x07, 0x08, 0x33, - 0x48, 0x1e, 0x26, 0x74, 0xd3, 0x68, 0xa9, 0x27, 0xa8, 0x2d, 0xc1, 0xb8, 0x84, 0xaa, 0xd0, 0x9f, - 0x95, 0x56, 0xc7, 0xea, 0xaa, 0x19, 0xed, 0x2b, 0x00, 0x39, 0x66, 0xaf, 0x62, 0x41, 0x95, 0x65, - 0xc8, 0xb1, 0x70, 0x0b, 0x57, 0x8b, 0xf8, 0xda, 0x14, 0x5b, 0x90, 0xd3, 0x39, 0x58, 0xb8, 0x8a, - 0x90, 0x1d, 0x65, 0x15, 0xa1, 0x0c, 0x79, 0xc7, 0x34, 0x5a, 0x76, 0xb7, 0x7d, 0xcc, 0x23, 0x2d, - 0xc1, 0x37, 0x79, 0x1b, 0xa6, 0xda, 0x6c, 0x2d, 0x14, 0x7d, 0xac, 0xe9, 0x84, 0x10, 0x80, 0xb4, - 0x62, 0xaa, 0xfb, 0xe0, 0xe4, 0x26, 0x4c, 0x36, 0x69, 0x67, 0x41, 0xb7, 0x6b, 0x70, 0xb8, 0x83, - 0x01, 0x92, 0x65, 0x98, 0x70, 0x7b, 0x66, 0x13, 0x67, 0x81, 0x49, 0x76, 0x3e, 0x1c, 0x62, 0x74, - 0x04, 0xa4, 0x5d, 0xa8, 0xef, 0x1a, 0x07, 0x26, 0x8f, 0x15, 0xb0, 0x0f, 0x39, 0xd6, 0x52, 0x18, - 0x23, 0xd6, 0x12, 0x2e, 0x01, 0xc2, 0x68, 0x4b, 0x80, 0xb7, 0x82, 0xe5, 0xef, 0x69, 0x2c, 0xf0, - 0x42, 0x1a, 0xc9, 0xd2, 0x62, 0x37, 0x59, 0x81, 0x49, 0x66, 0x99, 0x66, 0xb0, 0xd4, 0xf9, 0x01, - 0xa5, 0x4c, 0x9d, 0x81, 0x92, 0x8b, 0x30, 0x6d, 0x78, 0x9e, 0x41, 0x8d, 0x7a, 0xc3, 0xee, 0xa2, - 0x2f, 0x56, 0xd0, 0xc1, 0x4f, 0xda, 0xe9, 0x92, 0x55, 0x28, 0x06, 0x00, 0x0c, 0x7b, 0x31, 0x05, - 0x7b, 0x05, 0xc1, 0x18, 0xf6, 0x59, 0xbf, 0x4c, 0xdd, 0xaf, 0xa5, 0x65, 0x1e, 0x59, 0x4d, 0xb3, - 0x81, 0x41, 0x3c, 0xbe, 0xf2, 0xc5, 0x92, 0x76, 0x0d, 0xef, 0x90, 0x5c, 0x07, 0xe2, 0x9a, 0xcd, - 0xbe, 0x43, 0x87, 0x80, 0x10, 0xce, 0x5f, 0xfa, 0xc2, 0x9c, 0xb5, 0x10, 0x3a, 0x20, 0x9a, 0x81, - 0xcd, 0xa3, 0xf9, 0xe6, 0x44, 0x23, 0xc0, 0x46, 0x00, 0x60, 0x75, 0x1f, 0xdb, 0x25, 0x82, 0xd6, - 0xe4, 0x6a, 0x0a, 0x3f, 0x38, 0xe1, 0xb5, 0xee, 0x63, 0x9b, 0x59, 0x0e, 0x8e, 0x89, 0x26, 0x90, - 0x4f, 0xc1, 0x8c, 0xe0, 0x4d, 0xbb, 0xa5, 0x93, 0x88, 0x6a, 0xa0, 0x3b, 0x3d, 0x1d, 0xba, 0xd3, - 0x2e, 0xa9, 0x46, 0x47, 0x8d, 0x53, 0x88, 0xe0, 0xd2, 0xb0, 0x51, 0x43, 0x1e, 0x23, 0xa8, 0x46, - 0x9a, 0x8e, 0x63, 0x3b, 0xb8, 0x7c, 0x57, 0xd0, 0xd9, 0x07, 0xf9, 0x0e, 0x50, 0xf9, 0xf4, 0xa2, - 0x69, 0x77, 0xdd, 0x7e, 0xc7, 0x74, 0xdc, 0xd2, 0x02, 0xe2, 0xbf, 0x98, 0xd2, 0xd6, 0x55, 0x0e, - 0xa7, 0xcf, 0x1d, 0x49, 0xdf, 0x2e, 0x95, 0xc0, 0x63, 0xb7, 0xe1, 0x98, 0xe8, 0x68, 0x38, 0xe6, - 0x87, 0x7d, 0xcb, 0x09, 0xd6, 0xf4, 0xd4, 0xc7, 0xae, 0x8e, 0x19, 0x3a, 0x4f, 0x27, 0xef, 0x04, - 0x0c, 0xc6, 0xae, 0x58, 0x1a, 0xda, 0x1b, 0x38, 0x4f, 0x69, 0x02, 0x2d, 0xdc, 0x32, 0xc3, 0xc2, - 0x67, 0x87, 0x17, 0x66, 0xe0, 0x34, 0xa1, 0xfc, 0x1e, 0xcc, 0x45, 0xe4, 0x35, 0xd6, 0x58, 0xf9, - 0x37, 0x32, 0x30, 0x49, 0x59, 0xea, 0x52, 0x18, 0x6a, 0x8d, 0x5c, 0x36, 0x07, 0xd5, 0xd9, 0x07, - 0x39, 0x03, 0x53, 0xf4, 0x47, 0xa3, 0xe3, 0xf2, 0x55, 0xfc, 0x1c, 0xfd, 0xdc, 0x42, 0x8f, 0x01, - 0x33, 0x1e, 0x1d, 0x7b, 0x26, 0x9b, 0x85, 0x4e, 0xe8, 0x05, 0x9a, 0x72, 0x97, 0x26, 0x90, 0x05, - 0xc8, 0x61, 0x8c, 0x98, 0x45, 0xac, 0x26, 0x74, 0xfe, 0x45, 0xce, 0x42, 0x1e, 0x7f, 0x51, 0x84, - 0x2c, 0xae, 0x3c, 0x85, 0xdf, 0x5b, 0x2e, 0xd5, 0x62, 0x96, 0xc5, 0x50, 0xe6, 0x30, 0x17, 0x30, - 0x89, 0xe1, 0xbc, 0x88, 0x6e, 0x6a, 0xcf, 0xb1, 0x0f, 0x1c, 0xd3, 0x75, 0x79, 0x44, 0x13, 0x70, - 0x9a, 0x8a, 0x29, 0xe4, 0x24, 0x4c, 0x5a, 0x36, 0xc5, 0x9c, 0xf7, 0x23, 0xd6, 0x8c, 0x50, 0x44, - 0xd8, 0xc0, 0x98, 0x32, 0x8b, 0x33, 0x17, 0x30, 0x05, 0x43, 0x9e, 0x14, 0xa9, 0xef, 0xfb, 0x75, - 0x5c, 0x1e, 0x73, 0x06, 0x3f, 0x69, 0xcb, 0xd5, 0xbe, 0x5f, 0x81, 0xf9, 0x55, 0xa3, 0x67, 0x34, - 0x2d, 0xef, 0x78, 0x9f, 0x1a, 0x3e, 0xec, 0x07, 0x57, 0x61, 0xce, 0xfc, 0xb8, 0xd9, 0xee, 0xbb, - 0xd6, 0x91, 0x4f, 0xb0, 0x82, 0xd1, 0x87, 0x62, 0x90, 0xcc, 0x88, 0xbe, 0xec, 0xfb, 0x76, 0x1c, - 0x0a, 0xe7, 0xf1, 0xfa, 0x34, 0x4b, 0x0b, 0xda, 0xe5, 0xd9, 0x9e, 0xd1, 0x16, 0x78, 0x99, 0xd5, - 0x01, 0x93, 0x10, 0x40, 0xfb, 0x57, 0x0a, 0xa8, 0x62, 0x80, 0x0f, 0x97, 0x0c, 0x92, 0xa2, 0x6f, - 0xb7, 0x21, 0xc7, 0x57, 0x3d, 0xd9, 0x00, 0x76, 0x79, 0xe8, 0xf4, 0x41, 0xe7, 0x05, 0xa8, 0xf8, - 0x71, 0x1d, 0x18, 0xab, 0xcf, 0xeb, 0xec, 0x83, 0x52, 0x6f, 0xb4, 0xdb, 0xf6, 0x47, 0x8d, 0x3e, - 0xae, 0x53, 0xf2, 0x61, 0x6b, 0x1a, 0xd3, 0xf8, 0xd2, 0xa5, 0xb4, 0xd6, 0x34, 0x39, 0xc6, 0x5a, - 0x93, 0xf6, 0x4f, 0xb2, 0x30, 0x59, 0x69, 0x9b, 0x8e, 0x27, 0x0c, 0xc4, 0x59, 0x1c, 0x88, 0x6f, - 0x43, 0xde, 0x35, 0x8f, 0x4c, 0xc7, 0xf2, 0x8e, 0xb9, 0x57, 0x10, 0x37, 0xf9, 0x75, 0x0e, 0x80, - 0x23, 0x45, 0x00, 0x4e, 0xc5, 0x6d, 0x50, 0x9c, 0x6c, 0x85, 0x9b, 0xf1, 0xb2, 0x80, 0x29, 0xe8, - 0x1d, 0x94, 0x60, 0xaa, 0x63, 0xba, 0x38, 0x98, 0xb1, 0x78, 0xb9, 0xff, 0x49, 0xdb, 0x11, 0x6c, - 0xd3, 0x08, 0xda, 0x91, 0xde, 0x07, 0x43, 0x60, 0x2a, 0x3f, 0x87, 0xef, 0xd3, 0x68, 0x58, 0x2d, - 0x54, 0xdc, 0x82, 0x0e, 0x7e, 0x52, 0x0d, 0x9b, 0xe3, 0x7f, 0xf1, 0xa5, 0xd7, 0x17, 0x12, 0x0c, - 0x26, 0x03, 0x60, 0xcd, 0xf1, 0xc1, 0x29, 0xbd, 0xcd, 0xb6, 0x19, 0x2e, 0x6c, 0xe8, 0xfe, 0x27, - 0xed, 0xe5, 0x9e, 0xd7, 0xe6, 0x0a, 0x4d, 0x7f, 0xd2, 0xa6, 0xf7, 0xbb, 0xd6, 0x87, 0x7d, 0xb3, - 0xe1, 0x19, 0x07, 0x3c, 0x02, 0x5f, 0x60, 0x29, 0x7b, 0xc6, 0x01, 0x6e, 0x63, 0xb0, 0xfb, 0x5d, - 0x0f, 0x07, 0xd1, 0xac, 0xce, 0x3e, 0xc8, 0x6d, 0x80, 0xc7, 0x96, 0x43, 0x87, 0x71, 0xd3, 0x1c, - 0x65, 0xcb, 0x44, 0x01, 0xa1, 0xeb, 0xa6, 0xd9, 0xd5, 0x7e, 0x50, 0x81, 0xf9, 0x7a, 0xeb, 0x09, - 0x8a, 0xd0, 0xa5, 0x10, 0xf5, 0x9e, 0xd1, 0xa5, 0x08, 0x5d, 0xcf, 0xa0, 0x02, 0xb0, 0xb8, 0x76, - 0x0e, 0x41, 0x88, 0xd0, 0x68, 0x08, 0x6f, 0x41, 0xde, 0xec, 0xb6, 0x58, 0xc1, 0xcc, 0xd0, 0x82, - 0x53, 0x66, 0xb7, 0x45, 0xbf, 0xb4, 0x6d, 0x20, 0x01, 0x19, 0xab, 0xb4, 0x51, 0x48, 0xc7, 0x39, - 0x28, 0x74, 0xac, 0x6e, 0x83, 0x35, 0x99, 0xa9, 0x56, 0xbe, 0x63, 0x75, 0x11, 0x00, 0x33, 0x8d, - 0x8f, 0x79, 0x66, 0x86, 0x67, 0x1a, 0x1f, 0x63, 0xa6, 0xf6, 0xd5, 0x0c, 0xcc, 0x05, 0x08, 0x59, - 0x84, 0x96, 0xdc, 0x87, 0x79, 0x8a, 0xcd, 0x57, 0xb3, 0x86, 0xb0, 0x5d, 0x60, 0xb0, 0x6a, 0x6e, - 0x9c, 0xd0, 0xe7, 0x3a, 0x56, 0x57, 0x4c, 0x22, 0x17, 0x01, 0x2c, 0xb7, 0xe1, 0xcb, 0x15, 0x43, - 0xac, 0x1b, 0x27, 0xf4, 0x82, 0xe5, 0xae, 0x72, 0xd9, 0x56, 0x98, 0x2e, 0x36, 0xdc, 0x9e, 0xd1, - 0xe5, 0xbe, 0xa5, 0x96, 0x14, 0xf2, 0x97, 0x59, 0xbf, 0x71, 0x42, 0xcf, 0x7b, 0xbe, 0x18, 0xd6, - 0x00, 0xb0, 0x75, 0x0c, 0x07, 0x0b, 0x7e, 0xbf, 0x98, 0x8e, 0x23, 0xe0, 0x1b, 0x25, 0xa4, 0xe9, - 0x7f, 0xdc, 0x9d, 0x84, 0x2c, 0x9d, 0x42, 0x7e, 0x1e, 0xca, 0x01, 0xa4, 0xa8, 0xa8, 0xef, 0xf7, - 0x4d, 0xe7, 0x98, 0xdc, 0x85, 0xd9, 0x40, 0xff, 0x07, 0xf2, 0x45, 0xd2, 0xf1, 0x19, 0x47, 0xf8, - 0xd2, 0xbe, 0x0c, 0x67, 0x82, 0x1a, 0x2a, 0x7e, 0x6f, 0x7d, 0x6e, 0xe8, 0x23, 0x56, 0x21, 0x13, - 0xb1, 0x0a, 0xda, 0x2f, 0x2a, 0x50, 0x8a, 0x35, 0xb0, 0xd6, 0xfa, 0x76, 0xd5, 0x1f, 0xb5, 0x20, - 0xd9, 0xa8, 0x05, 0xd1, 0xfe, 0x34, 0x03, 0xc5, 0x80, 0x40, 0x46, 0xd6, 0x77, 0xc3, 0x49, 0x89, - 0xac, 0xc6, 0x87, 0x34, 0x99, 0x77, 0xb8, 0x57, 0xd3, 0x25, 0x1d, 0x93, 0xdf, 0xc6, 0x09, 0x7d, - 0xde, 0x89, 0x09, 0x75, 0x0f, 0xd4, 0x90, 0x62, 0x8e, 0x3b, 0x6d, 0xb2, 0x9c, 0x22, 0xb9, 0x8d, - 0x13, 0x7a, 0xd1, 0x90, 0x65, 0xf9, 0x10, 0xe6, 0x85, 0x86, 0x72, 0xb4, 0x4c, 0xc1, 0x5f, 0x19, - 0x4e, 0x32, 0x97, 0x08, 0xed, 0x52, 0x4e, 0x44, 0x48, 0x6f, 0xc0, 0x84, 0xdd, 0xf3, 0xa8, 0xb7, - 0x91, 0xec, 0x4e, 0x46, 0xfa, 0xb3, 0x8e, 0xd0, 0x77, 0xa7, 0x60, 0x12, 0x49, 0xd0, 0x0c, 0x78, - 0x29, 0x80, 0xa8, 0x76, 0xa9, 0x07, 0x68, 0x78, 0xe6, 0x43, 0xcb, 0x3b, 0x5c, 0xb7, 0xda, 0x9e, - 0xe9, 0xb8, 0xd4, 0xd1, 0x33, 0x5d, 0x6a, 0x2d, 0xa7, 0x68, 0x01, 0xcb, 0xf4, 0xe7, 0xf9, 0x17, - 0xd3, 0x6b, 0x42, 0xc2, 0x74, 0x1f, 0x5e, 0x7b, 0x08, 0x57, 0x86, 0x54, 0xe1, 0xf6, 0xec, 0xae, - 0x6b, 0x92, 0x25, 0xc8, 0x21, 0xd7, 0xfc, 0x2a, 0xe2, 0xb3, 0x4a, 0x44, 0xa2, 0x73, 0x28, 0xad, - 0x0e, 0x0b, 0x01, 0xe2, 0x35, 0xb3, 0x6d, 0x7a, 0xe6, 0x73, 0xa0, 0xf6, 0xac, 0xd0, 0x1f, 0x7d, - 0xa4, 0x8c, 0x3e, 0xed, 0x4d, 0xc8, 0xb1, 0x74, 0x3a, 0xfd, 0x45, 0x1a, 0x86, 0x10, 0xca, 0x80, - 0xb4, 0x7f, 0x9e, 0x81, 0xb9, 0x9d, 0x47, 0x5f, 0x30, 0x9b, 0x1e, 0x05, 0x61, 0x6e, 0x94, 0xbf, - 0x5d, 0x4c, 0x11, 0xb6, 0x8b, 0x9d, 0x83, 0x42, 0xb0, 0x07, 0x87, 0x3b, 0xac, 0x79, 0x7f, 0x0b, - 0x0e, 0x1d, 0x0f, 0xcd, 0xae, 0xf1, 0xa8, 0x6d, 0xb6, 0xb8, 0xa3, 0xe2, 0x7f, 0xb2, 0x48, 0x7f, - 0xb0, 0x47, 0xaa, 0x10, 0xcc, 0x02, 0x17, 0x20, 0x67, 0x34, 0x71, 0xd7, 0x19, 0xdb, 0x1e, 0xc2, - 0xbf, 0xb0, 0x4b, 0xe2, 0xaa, 0x41, 0x83, 0x3a, 0xcb, 0x6c, 0xd0, 0x2e, 0xb0, 0x94, 0xfb, 0x26, - 0xfa, 0x11, 0xae, 0xd9, 0x74, 0x4c, 0x0f, 0xb3, 0xa7, 0x58, 0x36, 0x4b, 0xa1, 0xd9, 0xb8, 0xb1, - 0xa1, 0xd5, 0xb3, 0xad, 0xae, 0x47, 0xdd, 0x4d, 0x5c, 0x2f, 0x0b, 0x12, 0xc8, 0x2b, 0xa0, 0x36, - 0xfb, 0x8e, 0x63, 0x76, 0xbd, 0x86, 0x9f, 0x88, 0x03, 0x75, 0x41, 0x9f, 0xe3, 0xe9, 0x55, 0x9e, - 0x8c, 0x73, 0x37, 0x46, 0x46, 0xcf, 0x76, 0xd8, 0x8c, 0x38, 0xab, 0x73, 0xca, 0x76, 0x6d, 0xc7, - 0xc3, 0x9d, 0x93, 0xe6, 0x81, 0xbf, 0x6b, 0xae, 0xa0, 0xf3, 0x2f, 0xed, 0xb7, 0x14, 0x38, 0xc9, - 0x27, 0x31, 0x8e, 0x69, 0x84, 0x42, 0x17, 0x56, 0x12, 0x94, 0xf1, 0x56, 0x12, 0xc6, 0x5e, 0xfe, - 0xf0, 0x17, 0x12, 0xb2, 0x23, 0x2e, 0x24, 0x68, 0x2f, 0x43, 0x91, 0xa5, 0x05, 0xca, 0x1e, 0x4c, - 0xe4, 0x14, 0x61, 0x22, 0xa7, 0xf5, 0xfc, 0x6d, 0x52, 0x7e, 0xd3, 0x38, 0x74, 0x74, 0xc1, 0x66, - 0x03, 0xf8, 0xbc, 0x8d, 0x4e, 0xd4, 0x10, 0x84, 0x93, 0x9e, 0x36, 0xdf, 0xf3, 0x31, 0xe9, 0xc5, - 0x23, 0xe9, 0x5b, 0xfb, 0x43, 0xc5, 0x5f, 0xc5, 0xc6, 0x09, 0x66, 0x85, 0xe9, 0xc8, 0x1d, 0xc8, - 0xb1, 0x79, 0x1a, 0xb7, 0xf9, 0x5a, 0x0a, 0x5a, 0x06, 0x8e, 0x3b, 0xeb, 0x74, 0x5e, 0x82, 0xbc, - 0x0d, 0x93, 0x9d, 0xc0, 0xbd, 0x18, 0xad, 0x28, 0x2b, 0x40, 0x55, 0x0f, 0x7f, 0xb0, 0xd9, 0x3c, - 0x1b, 0x0c, 0x0a, 0x98, 0xe2, 0xcf, 0xf6, 0xc5, 0x45, 0x81, 0x89, 0xe8, 0xe2, 0x81, 0xf6, 0x7b, - 0x99, 0x20, 0xc2, 0x68, 0x7a, 0xcf, 0x43, 0x2d, 0x98, 0x94, 0x33, 0xa3, 0x2e, 0x17, 0xdd, 0x09, - 0x7a, 0x5c, 0x9a, 0xeb, 0x12, 0xe3, 0x74, 0xd0, 0x2b, 0x37, 0x60, 0xca, 0x66, 0x7b, 0xe2, 0xb8, - 0x29, 0x5f, 0x4a, 0x2b, 0x1c, 0x34, 0x6d, 0x89, 0x6f, 0xa2, 0x63, 0x8b, 0x15, 0x7e, 0xf1, 0xf2, - 0x1d, 0x98, 0x11, 0x33, 0xc6, 0x9a, 0x15, 0xff, 0x7f, 0xa1, 0x36, 0xd0, 0x6a, 0xb8, 0xf6, 0x2d, - 0x43, 0x8e, 0x69, 0x0d, 0xe7, 0xe0, 0x99, 0x34, 0x25, 0xe3, 0x60, 0xcf, 0x51, 0x3d, 0x7f, 0x8a, - 0xba, 0xda, 0x5d, 0xa3, 0x27, 0x77, 0xf5, 0x68, 0x77, 0x10, 0x64, 0x9c, 0x19, 0x4f, 0xc6, 0xe2, - 0xd2, 0x64, 0x36, 0xb2, 0x34, 0x79, 0x16, 0xf2, 0x5d, 0xbb, 0xe1, 0x98, 0x9e, 0xe3, 0x2f, 0x5b, - 0x4e, 0x75, 0x6d, 0x9d, 0x7e, 0x6a, 0x1f, 0x02, 0x11, 0xa9, 0xe2, 0x7c, 0xfa, 0x4e, 0x58, 0xf0, - 0x97, 0x61, 0x30, 0x23, 0x6c, 0xbd, 0x92, 0xb2, 0xef, 0x37, 0xa9, 0xb3, 0xeb, 0xa7, 0x8e, 0x12, - 0x52, 0x35, 0xcf, 0xdf, 0x7f, 0x88, 0xe3, 0x87, 0x34, 0x56, 0x28, 0x91, 0xb1, 0x22, 0x69, 0x8f, - 0xfc, 0x2d, 0x98, 0xe2, 0x15, 0x8f, 0x62, 0xb5, 0x7c, 0x58, 0xed, 0x37, 0x14, 0xdf, 0x72, 0xf9, - 0x2b, 0x44, 0x89, 0xf3, 0xef, 0xf3, 0x50, 0xa0, 0xff, 0xdd, 0x9e, 0xd1, 0xf4, 0xb5, 0x2a, 0x4c, - 0xa0, 0x25, 0x82, 0x49, 0x69, 0x81, 0x6f, 0x1b, 0x3e, 0x03, 0x53, 0x5d, 0xbb, 0x85, 0xe4, 0xf3, - 0x61, 0x8b, 0x7e, 0xd6, 0x5a, 0xd4, 0x08, 0xe0, 0x4c, 0xb9, 0x81, 0x95, 0x4c, 0x32, 0x5c, 0x98, - 0xb2, 0x4d, 0x6b, 0x0a, 0xb2, 0x11, 0x63, 0x4e, 0xc8, 0x46, 0x87, 0xb6, 0x05, 0xe4, 0x9e, 0x63, - 0xf4, 0x0e, 0xd7, 0x1c, 0xeb, 0xc8, 0x74, 0x56, 0x0f, 0x8d, 0xee, 0x81, 0xe9, 0x06, 0x0c, 0x51, - 0x04, 0x86, 0xdc, 0x81, 0x89, 0x27, 0x56, 0xb7, 0xc5, 0xad, 0xd4, 0xcb, 0x09, 0x2b, 0xd8, 0x11, - 0x34, 0x6c, 0xcf, 0x33, 0x2d, 0xa3, 0x5d, 0x85, 0xb9, 0xd5, 0x76, 0xdf, 0xf5, 0x4c, 0x67, 0x88, - 0x3d, 0xff, 0x69, 0x05, 0x66, 0x69, 0x47, 0x3f, 0x0a, 0x54, 0x77, 0x03, 0xf2, 0xba, 0xf9, 0xa1, - 0xe9, 0x7a, 0xf7, 0x1f, 0x70, 0xef, 0xe1, 0x7a, 0xdc, 0x7b, 0x10, 0x4b, 0x2c, 0xf9, 0xe0, 0xac, - 0x9b, 0x07, 0xa5, 0xcb, 0xef, 0xc0, 0xac, 0x94, 0x25, 0x76, 0xf4, 0xec, 0xb0, 0x8e, 0xfe, 0x45, - 0x28, 0x4a, 0xb5, 0xb8, 0x44, 0x83, 0x19, 0xfe, 0x7b, 0x55, 0x98, 0x39, 0x4a, 0x69, 0x64, 0x2d, - 0xd2, 0x1a, 0x1e, 0x9e, 0xb9, 0x30, 0xb8, 0x05, 0xba, 0x5c, 0x48, 0xfb, 0x63, 0x05, 0x16, 0x30, - 0x3e, 0x30, 0xbc, 0x63, 0xdf, 0x87, 0xdc, 0xa6, 0xb8, 0x9d, 0xfa, 0xf5, 0xe4, 0x40, 0x43, 0x0c, - 0x91, 0xbc, 0x45, 0x9f, 0x6f, 0x95, 0x90, 0xf7, 0x38, 0x67, 0xa3, 0x7b, 0x9c, 0x9f, 0x61, 0x7f, - 0xfd, 0x5f, 0x2a, 0x70, 0x26, 0x46, 0x08, 0x57, 0x8c, 0x7d, 0x28, 0xf8, 0x31, 0x53, 0xdf, 0x1b, - 0x7d, 0x6b, 0x78, 0x2b, 0x58, 0xe1, 0xa5, 0xba, 0x5f, 0x92, 0xb5, 0x24, 0xc4, 0x14, 0xea, 0x5b, - 0x46, 0xd0, 0xb7, 0xb2, 0x01, 0x45, 0xb9, 0x48, 0x42, 0x33, 0x6e, 0x8b, 0xcd, 0x48, 0x9c, 0x1b, - 0xc7, 0xe8, 0x10, 0xdb, 0xfa, 0xef, 0x27, 0x83, 0xe3, 0x1f, 0xdb, 0x76, 0x2b, 0xee, 0x9a, 0xa8, - 0x90, 0x6d, 0xf6, 0xfa, 0x88, 0x5c, 0xd1, 0xe9, 0x4f, 0x5c, 0x73, 0x30, 0x3b, 0x0d, 0x5c, 0xd7, - 0xe3, 0x0b, 0xa6, 0xf9, 0x8e, 0xd9, 0xc1, 0x13, 0x19, 0xd4, 0xc8, 0xd2, 0x4c, 0x5c, 0xa3, 0x64, - 0x2b, 0xa6, 0x53, 0x1d, 0xb3, 0x83, 0x2b, 0x94, 0x3c, 0xeb, 0xb1, 0x63, 0x9a, 0xfe, 0x92, 0x69, - 0xc7, 0xec, 0xac, 0x3b, 0x26, 0x6e, 0x7e, 0x36, 0x8e, 0x0e, 0x1a, 0x6d, 0xdb, 0x60, 0xcb, 0x4e, - 0x59, 0x7d, 0xca, 0x38, 0x3a, 0xd8, 0xb4, 0x0d, 0x16, 0xcb, 0x62, 0xee, 0xf0, 0x54, 0x4a, 0x90, - 0x25, 0x12, 0x2d, 0x79, 0x0f, 0x26, 0x5b, 0x96, 0xfb, 0xc4, 0x3f, 0xfa, 0x71, 0x35, 0xed, 0xb4, - 0x02, 0x6d, 0xed, 0xd2, 0x1a, 0x85, 0x64, 0xc2, 0x60, 0xa5, 0xc8, 0x0a, 0x4c, 0xf6, 0x6c, 0x3b, - 0xd8, 0xb8, 0x7c, 0x7e, 0xd0, 0x61, 0x07, 0x9d, 0x81, 0x52, 0xe3, 0xd7, 0x39, 0xe8, 0x78, 0x0d, - 0xab, 0xe7, 0xfb, 0xb6, 0xf4, 0xb3, 0xd6, 0xa3, 0x19, 0x2d, 0xc3, 0x33, 0x68, 0xc6, 0x0c, 0xcb, - 0xa0, 0x9f, 0x35, 0x0c, 0xa1, 0x1d, 0xda, 0xae, 0x87, 0x36, 0x91, 0x45, 0x4d, 0x82, 0x6f, 0xb2, - 0x05, 0xd3, 0x68, 0x4a, 0xf9, 0xd6, 0x22, 0x35, 0xc5, 0xaa, 0x88, 0xcd, 0xa0, 0x7f, 0xc4, 0x2e, - 0x02, 0xdd, 0x20, 0x81, 0x2c, 0xc1, 0x49, 0x3f, 0xb6, 0xef, 0x34, 0x10, 0x31, 0xd6, 0x3a, 0x8f, - 0xb5, 0xce, 0x07, 0x59, 0x14, 0x05, 0x5a, 0xe4, 0x5b, 0x90, 0xdb, 0x78, 0x48, 0x8d, 0x23, 0x6e, - 0x8b, 0x49, 0x5a, 0x1f, 0xd8, 0x30, 0x9c, 0xd6, 0x47, 0x86, 0xc3, 0x2c, 0x28, 0x07, 0x2e, 0x7f, - 0x0e, 0x20, 0x64, 0x66, 0x82, 0x9a, 0xbe, 0x29, 0xab, 0xe9, 0xa5, 0xb4, 0xf6, 0xf8, 0x73, 0x64, - 0x31, 0x02, 0xfb, 0x1e, 0xcc, 0x45, 0x5a, 0x38, 0x56, 0x77, 0x36, 0xa1, 0xc8, 0x91, 0x73, 0x2b, - 0x2f, 0x28, 0x95, 0x32, 0x9a, 0x52, 0xb1, 0x5e, 0x91, 0x11, 0x8f, 0xad, 0x21, 0x17, 0xb3, 0xe1, - 0xa0, 0xa9, 0x75, 0xe0, 0x72, 0xbd, 0xf5, 0x64, 0xa7, 0x67, 0x76, 0xa5, 0x05, 0x6e, 0xd9, 0x22, - 0x6e, 0xc4, 0xf6, 0xf5, 0x2a, 0x29, 0x2b, 0xdc, 0xd1, 0x85, 0xf2, 0xc8, 0xd6, 0x5f, 0xed, 0x25, - 0xd0, 0x06, 0x55, 0xc7, 0xdd, 0x8c, 0x97, 0x71, 0x41, 0x20, 0x06, 0x15, 0x4c, 0xdc, 0x7d, 0x23, - 0xde, 0xc7, 0x59, 0xfd, 0x20, 0x38, 0x6e, 0xff, 0x36, 0x41, 0x95, 0x1a, 0x10, 0x4e, 0xca, 0x47, - 0x68, 0xc2, 0x9c, 0xd8, 0x04, 0x3a, 0x3d, 0x7f, 0x3b, 0xb9, 0x11, 0xfc, 0x54, 0x89, 0xcf, 0xb4, - 0x04, 0x17, 0x45, 0xb3, 0xe1, 0xc5, 0x81, 0x25, 0x39, 0xb9, 0xcf, 0x8f, 0xdf, 0x6f, 0x25, 0x8b, - 0x57, 0x5e, 0xa9, 0x48, 0xa2, 0x34, 0x45, 0x50, 0x91, 0xd5, 0x88, 0x14, 0xed, 0x61, 0xc1, 0x89, - 0x6f, 0x9b, 0xf6, 0xf8, 0xd5, 0x71, 0xa2, 0xde, 0x49, 0xd6, 0x8a, 0xba, 0xe9, 0xad, 0x99, 0x8f, - 0x8d, 0x7e, 0x7b, 0xa0, 0x84, 0xae, 0xc1, 0xcb, 0xc3, 0x0a, 0xf3, 0x6a, 0x52, 0x88, 0xd1, 0xcd, - 0xb6, 0x69, 0xb8, 0x81, 0x8a, 0x5e, 0x49, 0x96, 0x78, 0x00, 0xc5, 0x91, 0xbd, 0x0a, 0xaf, 0x24, - 0xb3, 0x1b, 0xeb, 0x94, 0x35, 0x4b, 0x3b, 0x82, 0xc5, 0x51, 0x80, 0x9f, 0xbb, 0x32, 0x75, 0xe0, - 0x02, 0x05, 0xe1, 0xc6, 0x37, 0xc9, 0x50, 0xdc, 0x87, 0xb9, 0x60, 0x4b, 0x96, 0x54, 0x59, 0xe2, - 0x02, 0xba, 0x8c, 0x49, 0x2f, 0xba, 0xd2, 0xb7, 0x76, 0x19, 0x2e, 0xa6, 0x56, 0x17, 0xe8, 0x5f, - 0x9c, 0x22, 0x59, 0xf9, 0xbe, 0xe5, 0x14, 0x45, 0x94, 0xef, 0x45, 0xec, 0x11, 0x32, 0x48, 0xcc, - 0x6e, 0xb5, 0x50, 0x75, 0x52, 0x81, 0xb8, 0xe0, 0x3e, 0x05, 0xf9, 0x88, 0xb1, 0x1a, 0x85, 0xe6, - 0xa0, 0x8c, 0x76, 0x2b, 0x81, 0xda, 0x11, 0x6c, 0xd4, 0xf7, 0xc0, 0xa5, 0xf4, 0x62, 0x9c, 0xb4, - 0x3b, 0x41, 0xa8, 0x73, 0x74, 0x66, 0xf2, 0x12, 0xda, 0x1b, 0x09, 0x32, 0x1b, 0x6e, 0x8f, 0x92, - 0x58, 0x1f, 0x31, 0x46, 0x9b, 0x09, 0x88, 0xfd, 0xdd, 0x98, 0x6b, 0x86, 0xd5, 0xc6, 0xa8, 0xed, - 0xa1, 0xdd, 0x77, 0xf8, 0x39, 0x61, 0xfc, 0x4d, 0x16, 0x20, 0xd7, 0xb1, 0xba, 0x7d, 0x8f, 0x0d, - 0xc1, 0x93, 0x3a, 0xff, 0xd2, 0xbe, 0x5f, 0x49, 0x64, 0x1f, 0x43, 0xf7, 0xd0, 0x34, 0x9f, 0xb4, - 0x8f, 0xc9, 0x6b, 0x90, 0x6d, 0x19, 0xc7, 0x7c, 0x38, 0x4e, 0x5c, 0xde, 0xdd, 0xb3, 0x3a, 0x26, - 0x05, 0x6e, 0x19, 0xc7, 0x3a, 0x85, 0x0d, 0x48, 0xc8, 0x24, 0x92, 0x90, 0x95, 0x48, 0xf8, 0x7c, - 0xa2, 0x24, 0x78, 0x6c, 0xdc, 0xee, 0x7a, 0x87, 0x6d, 0x74, 0x29, 0x7c, 0x12, 0x26, 0xc7, 0xaf, - 0xe1, 0xbd, 0x04, 0x6d, 0xf5, 0x6b, 0xd8, 0x35, 0x1d, 0xcb, 0x6e, 0x59, 0x4d, 0x52, 0x82, 0x29, - 0xd7, 0x6c, 0xda, 0xdd, 0x96, 0x1f, 0x65, 0xf7, 0x3f, 0xb5, 0xff, 0x9e, 0x81, 0xb3, 0xa9, 0xe5, - 0xd9, 0xda, 0xa9, 0x67, 0x58, 0x5d, 0x5e, 0x8c, 0x7f, 0x91, 0x0d, 0x98, 0x6c, 0x51, 0x71, 0x94, - 0xfe, 0x80, 0x29, 0xcf, 0xf2, 0x70, 0xe5, 0x91, 0xc4, 0xb8, 0x71, 0x42, 0x67, 0x08, 0xe8, 0xcc, - 0xec, 0x23, 0x94, 0x44, 0xe9, 0x0f, 0x19, 0xaa, 0x9b, 0xa3, 0xa3, 0x62, 0x22, 0xdc, 0x38, 0xa1, - 0x73, 0x14, 0x64, 0x1b, 0xa6, 0x3a, 0x8c, 0xa9, 0xa5, 0x3f, 0x62, 0xd8, 0x5e, 0x1b, 0x1d, 0x1b, - 0x17, 0xc7, 0xc6, 0x09, 0xdd, 0x47, 0x42, 0xde, 0x87, 0x7c, 0x8f, 0xb3, 0xb0, 0xf4, 0xcf, 0x18, - 0xc2, 0x95, 0xd1, 0x11, 0xfa, 0xdc, 0xdf, 0x38, 0xa1, 0x07, 0x68, 0xee, 0xce, 0xc2, 0x34, 0xfb, - 0x8d, 0x0b, 0x0f, 0xda, 0x87, 0x18, 0x01, 0x96, 0xcb, 0x27, 0xae, 0x8c, 0x6c, 0x40, 0xc1, 0xb7, - 0x64, 0xfe, 0x24, 0x76, 0x71, 0x74, 0x52, 0xf4, 0xb0, 0xb0, 0xf6, 0xfb, 0x59, 0x0c, 0x46, 0xae, - 0x3a, 0x66, 0xcb, 0xec, 0x7a, 0x96, 0xd1, 0x96, 0xed, 0x7f, 0x52, 0xe5, 0x0b, 0x90, 0x7b, 0xd4, - 0x6f, 0x3e, 0x31, 0x3d, 0xee, 0x89, 0xf2, 0x2f, 0x72, 0x05, 0x8a, 0x7c, 0x53, 0xad, 0x65, 0x77, - 0x71, 0x9d, 0x9f, 0xf9, 0xa5, 0xb3, 0x61, 0xea, 0x7d, 0x33, 0x72, 0x58, 0x6c, 0x62, 0x9c, 0xd3, - 0x34, 0x3a, 0x14, 0x8d, 0x8f, 0xdc, 0x46, 0x33, 0xa0, 0xd5, 0x57, 0xb8, 0xe4, 0x18, 0xda, 0x47, - 0x6e, 0xd8, 0x2a, 0xde, 0x9e, 0x8d, 0x13, 0xfa, 0xac, 0x21, 0xa6, 0x93, 0xcf, 0x82, 0x6a, 0x7c, - 0xb1, 0xef, 0x98, 0x22, 0x56, 0xae, 0x7b, 0x89, 0x1c, 0xad, 0x50, 0xe0, 0x24, 0xbc, 0x73, 0x86, - 0x9c, 0x43, 0xbe, 0x13, 0xe6, 0x59, 0xb4, 0x5d, 0x44, 0xfd, 0x47, 0x03, 0x02, 0x8a, 0xf7, 0x10, - 0x3a, 0x09, 0xb7, 0x7a, 0x10, 0xc9, 0xba, 0x3b, 0x0f, 0x73, 0x21, 0x56, 0xa6, 0x3c, 0x77, 0xe1, - 0x5c, 0xa2, 0x20, 0xb9, 0x85, 0x7f, 0x11, 0x66, 0x85, 0x12, 0xc1, 0xe4, 0x7a, 0x26, 0x4c, 0xac, - 0xb5, 0xb4, 0x7f, 0xab, 0xb0, 0x40, 0x55, 0x02, 0xeb, 0x22, 0x11, 0x1e, 0x65, 0x70, 0x84, 0x27, - 0x13, 0x8d, 0xf0, 0x94, 0x71, 0x33, 0x02, 0x8b, 0xdd, 0x30, 0xb5, 0x08, 0xbe, 0x85, 0x98, 0xcc, - 0x84, 0x18, 0x93, 0xc1, 0xa5, 0x79, 0xcb, 0x35, 0x1e, 0xb5, 0xcd, 0x86, 0xeb, 0xb2, 0x33, 0x7b, - 0x79, 0x1d, 0x78, 0x52, 0xdd, 0x6d, 0x93, 0xeb, 0x40, 0x7c, 0x80, 0x9e, 0xe1, 0x1d, 0x36, 0x5c, - 0xef, 0xb8, 0xcd, 0x96, 0xef, 0xf2, 0xba, 0xca, 0x73, 0x76, 0x0d, 0xef, 0xb0, 0x4e, 0xd3, 0xb5, - 0x06, 0xda, 0xb6, 0x64, 0x01, 0xe2, 0xd6, 0x9c, 0x26, 0x0b, 0xf1, 0x0b, 0x0a, 0x3f, 0xcd, 0xd3, - 0x70, 0x4a, 0xca, 0x62, 0x4b, 0x08, 0x12, 0x36, 0x11, 0x78, 0xd2, 0x7d, 0xf3, 0x58, 0x7b, 0x80, - 0x5d, 0x29, 0x45, 0x8c, 0xb8, 0x29, 0xdc, 0xb1, 0xbf, 0x60, 0x36, 0xbd, 0x90, 0xfb, 0x05, 0x9e, - 0x52, 0xc3, 0x75, 0x89, 0x2f, 0xb8, 0xbc, 0xdf, 0x30, 0xd4, 0x53, 0xf4, 0x9b, 0xe2, 0xfd, 0x1d, - 0x1e, 0x4f, 0x97, 0xa5, 0xc2, 0xe5, 0x2a, 0x8b, 0x25, 0x13, 0x15, 0xcb, 0xff, 0x01, 0x7c, 0xff, - 0x34, 0xdb, 0xee, 0x10, 0xe5, 0x3b, 0xa7, 0x3f, 0xca, 0xf8, 0x4c, 0x8c, 0xf1, 0xda, 0xbb, 0xa8, - 0xd9, 0x71, 0xbe, 0x86, 0x1c, 0x10, 0x18, 0x9b, 0x89, 0x30, 0x56, 0xbb, 0x08, 0x2f, 0x48, 0xfd, - 0x22, 0xe6, 0xbc, 0xdd, 0x43, 0x37, 0x23, 0x11, 0x80, 0xd7, 0x70, 0x05, 0x8a, 0x52, 0xdf, 0xf1, - 0xb7, 0xfb, 0xcf, 0x8a, 0x9d, 0xc7, 0x8d, 0xf5, 0xc0, 0x88, 0x6f, 0x36, 0x52, 0x0f, 0xfc, 0xa3, - 0x2c, 0x9c, 0x4f, 0x46, 0x32, 0x46, 0x3f, 0x0e, 0xcc, 0x76, 0x26, 0xd1, 0x6c, 0x67, 0x25, 0xb3, - 0xfd, 0xf4, 0xf6, 0xb8, 0x9e, 0x66, 0x8f, 0x5f, 0x19, 0xc1, 0x1e, 0xb3, 0xe6, 0xc4, 0x0d, 0xf2, - 0x07, 0xe9, 0x06, 0xf9, 0xd5, 0x91, 0x0c, 0x72, 0x80, 0x38, 0x66, 0x91, 0xbf, 0x6b, 0x80, 0x45, - 0xbe, 0x3e, 0x9a, 0x45, 0x0e, 0x90, 0x8f, 0x64, 0x92, 0x2b, 0x91, 0xb1, 0x55, 0xf6, 0x8a, 0x47, - 0xd2, 0x87, 0x17, 0x22, 0x3a, 0x15, 0x71, 0x91, 0x57, 0x23, 0xda, 0xf2, 0xc0, 0x68, 0x5b, 0xe2, - 0x6c, 0x69, 0xa4, 0x3a, 0xa2, 0x3d, 0x24, 0x44, 0xc2, 0x6b, 0xf9, 0x3e, 0xdc, 0x13, 0xc1, 0x23, - 0xac, 0x18, 0x8f, 0xf5, 0x6f, 0xda, 0xb8, 0x08, 0xd3, 0xdc, 0xea, 0x0b, 0x56, 0x93, 0x0f, 0x04, - 0x7e, 0x64, 0x65, 0xd0, 0xb0, 0x70, 0x05, 0x8a, 0x3c, 0xbb, 0x69, 0x77, 0x3d, 0xf3, 0x63, 0x5f, - 0x39, 0x67, 0x59, 0xea, 0x2a, 0x4b, 0xd4, 0xbe, 0x91, 0x81, 0xd3, 0x01, 0x05, 0x5b, 0xd4, 0x30, - 0xf8, 0x0d, 0x1c, 0x18, 0xb2, 0x92, 0x43, 0xbf, 0x99, 0x68, 0xe8, 0xb7, 0x12, 0x46, 0x47, 0x59, - 0xf4, 0xea, 0x6a, 0x92, 0x12, 0x24, 0x34, 0x3b, 0x08, 0x8b, 0x92, 0xcf, 0x43, 0xb1, 0x85, 0xd1, - 0x9c, 0x86, 0x1c, 0x67, 0xbd, 0x9d, 0x8e, 0x49, 0x24, 0x7f, 0x89, 0x85, 0x82, 0xa4, 0x90, 0xeb, - 0x6c, 0x4b, 0x4c, 0x2b, 0x7f, 0x06, 0x48, 0x1c, 0x68, 0xac, 0x85, 0xc7, 0x92, 0x20, 0x3d, 0x5e, - 0x39, 0x97, 0xeb, 0x4f, 0xb0, 0xe1, 0x9e, 0x65, 0xed, 0x77, 0x91, 0x33, 0xbe, 0x64, 0x17, 0x61, - 0xbe, 0x85, 0xba, 0xd6, 0x10, 0x58, 0xc8, 0xee, 0x24, 0x99, 0x63, 0x19, 0x5b, 0x01, 0x23, 0xef, - 0xc3, 0x8b, 0x5d, 0xbb, 0xd1, 0x32, 0xdb, 0xc6, 0x71, 0xe3, 0x91, 0xf9, 0xd8, 0xc6, 0x8d, 0xf6, - 0x6d, 0xd3, 0xb3, 0xba, 0x07, 0x8d, 0x88, 0x00, 0xf2, 0xfa, 0x85, 0xae, 0xbd, 0x46, 0x21, 0xef, - 0x22, 0xe0, 0x1a, 0x87, 0x0b, 0x90, 0x69, 0xbf, 0x97, 0x89, 0x13, 0xf5, 0x3c, 0xa4, 0x7d, 0x37, - 0x2a, 0xed, 0x6b, 0xe9, 0x32, 0x92, 0x79, 0x11, 0x8a, 0xfb, 0x51, 0x8a, 0xb8, 0xdf, 0x19, 0x8a, - 0xea, 0xdb, 0x29, 0xf0, 0x32, 0xba, 0x0b, 0x91, 0xea, 0xb9, 0xc8, 0x7f, 0x21, 0x13, 0xeb, 0xcb, - 0x23, 0x31, 0x57, 0xe8, 0x2b, 0x99, 0xa7, 0xec, 0x2b, 0x46, 0x8c, 0x79, 0xec, 0x26, 0xa7, 0x3b, - 0xc3, 0x30, 0x7d, 0x3b, 0x79, 0x77, 0x47, 0x50, 0x3e, 0xbf, 0x76, 0x3e, 0xf2, 0x46, 0x76, 0x8a, - 0x28, 0xb1, 0x9d, 0x22, 0xdf, 0x2b, 0xb0, 0x76, 0xcd, 0x14, 0xcd, 0x64, 0xb0, 0x1d, 0x5c, 0x11, - 0xb7, 0x83, 0xaf, 0xc0, 0xe9, 0x3e, 0x13, 0x4f, 0xd8, 0x6b, 0x70, 0x7b, 0x0c, 0xeb, 0x28, 0x27, - 0x79, 0xa6, 0xdf, 0x51, 0x70, 0x1f, 0x0c, 0x6e, 0x2d, 0x68, 0x59, 0x8e, 0xd9, 0xf4, 0xc2, 0xad, - 0x05, 0xec, 0x5b, 0x96, 0x2d, 0x83, 0x7f, 0xee, 0xb2, 0x95, 0xda, 0xf5, 0x4c, 0xb2, 0x95, 0x08, - 0xfc, 0xb6, 0xc8, 0xf6, 0xac, 0x20, 0x5b, 0xbf, 0x76, 0xde, 0x2d, 0xfe, 0x83, 0x22, 0xb0, 0x6e, - 0xf8, 0x14, 0x78, 0xec, 0x4d, 0x3c, 0xf7, 0x83, 0xab, 0xe0, 0xb2, 0x29, 0x21, 0xe7, 0xe4, 0xda, - 0x93, 0x6e, 0x85, 0x7b, 0x96, 0x98, 0xf2, 0x9b, 0x02, 0x0b, 0x22, 0x13, 0xc4, 0x41, 0x2a, 0xa2, - 0x6d, 0x08, 0xe3, 0xef, 0x6a, 0xdb, 0xee, 0x0e, 0xe4, 0xce, 0x39, 0x28, 0xb0, 0x2b, 0xb5, 0x84, - 0x2d, 0x87, 0x2c, 0xa1, 0xd6, 0xd2, 0x6e, 0x89, 0x8c, 0x66, 0x98, 0x46, 0x21, 0xe0, 0x96, 0xa4, - 0xda, 0xa2, 0x1b, 0x35, 0xb0, 0x98, 0x2c, 0x72, 0xc9, 0x75, 0xfa, 0x48, 0xc8, 0x8a, 0x78, 0xea, - 0x03, 0x7b, 0xcb, 0xa7, 0xa3, 0xbd, 0x25, 0x6d, 0x03, 0x8e, 0x7c, 0x29, 0x59, 0xd0, 0x57, 0xb4, - 0xbf, 0x54, 0x04, 0xfb, 0x1c, 0x75, 0xef, 0xc7, 0xde, 0x15, 0x95, 0xe4, 0xea, 0x6f, 0x45, 0xb4, - 0xed, 0x56, 0xba, 0xb6, 0x45, 0xea, 0x7f, 0xde, 0xfa, 0xf6, 0x5f, 0x33, 0xb8, 0x32, 0x2e, 0xd5, - 0x95, 0xb0, 0x11, 0x38, 0xa9, 0x11, 0x0f, 0x23, 0x8d, 0xf8, 0xf4, 0xd0, 0x46, 0xc4, 0x11, 0x27, - 0x5e, 0xaa, 0xf8, 0xf4, 0x13, 0x9e, 0xe0, 0x80, 0xea, 0xe4, 0x28, 0x07, 0x54, 0x05, 0x45, 0xc9, - 0x3d, 0x8d, 0xa2, 0x3c, 0x0b, 0xdf, 0xbf, 0x80, 0x51, 0xaa, 0x74, 0xee, 0x70, 0x6d, 0x5b, 0x85, - 0x29, 0xa6, 0x46, 0x7e, 0x40, 0xe2, 0x95, 0x91, 0x35, 0x45, 0xf7, 0x4b, 0x6a, 0xff, 0x45, 0xb4, - 0x9d, 0x72, 0xb0, 0x66, 0x60, 0x47, 0x1a, 0xc3, 0x26, 0x4a, 0x58, 0x13, 0x85, 0x7a, 0x8b, 0x5b, - 0xe4, 0x89, 0xa1, 0x27, 0xb5, 0x38, 0x2e, 0x04, 0x7f, 0x16, 0x16, 0x8b, 0xa6, 0x25, 0x12, 0x33, - 0xfa, 0x4e, 0xc1, 0x5a, 0xe2, 0x71, 0xc0, 0x91, 0xf8, 0x71, 0x05, 0x8a, 0x5d, 0xdb, 0x6b, 0x34, - 0xfb, 0x9d, 0x7e, 0xdb, 0xf0, 0xac, 0x23, 0x93, 0xfb, 0x01, 0xb3, 0x5d, 0xdb, 0x5b, 0x0d, 0x12, - 0xb5, 0x75, 0x81, 0xdb, 0x1c, 0x39, 0x97, 0xe6, 0x75, 0x76, 0x42, 0xd7, 0xe5, 0xa6, 0x63, 0x21, - 0x71, 0x3b, 0x81, 0xcb, 0xce, 0xe6, 0xba, 0xda, 0xbb, 0x38, 0xeb, 0xe3, 0x86, 0x58, 0x3c, 0x91, - 0x37, 0x92, 0x61, 0xf5, 0x70, 0xd1, 0x24, 0xb1, 0x34, 0xa7, 0x46, 0x87, 0x93, 0x4d, 0x9e, 0xd1, - 0xc0, 0x23, 0xce, 0xec, 0xb4, 0x6c, 0x5a, 0x7c, 0x29, 0x76, 0x28, 0x50, 0x9f, 0x6f, 0x46, 0x93, - 0xb4, 0x73, 0xb8, 0x84, 0xc7, 0x6a, 0x8d, 0xad, 0xe3, 0xbc, 0x83, 0xb3, 0xed, 0x58, 0x66, 0xb8, - 0x4a, 0x24, 0xec, 0xd3, 0x52, 0x22, 0xfb, 0xb4, 0xb4, 0x7f, 0x94, 0xc1, 0x2d, 0x0a, 0x91, 0xd2, - 0x23, 0x9a, 0xaa, 0x0f, 0x22, 0x9a, 0x5c, 0x49, 0xd7, 0xe4, 0x01, 0xa8, 0xff, 0x77, 0x1a, 0xab, - 0x67, 0xe9, 0x08, 0xeb, 0x18, 0x9e, 0x1f, 0xd4, 0xbc, 0xd1, 0x44, 0xf0, 0x67, 0x8a, 0xa0, 0x53, - 0xfe, 0x86, 0x33, 0xd9, 0x17, 0x1b, 0xb6, 0x41, 0x35, 0x26, 0x99, 0x7a, 0x44, 0x32, 0x03, 0x26, - 0x6a, 0x89, 0x35, 0x3e, 0xef, 0xf1, 0xf0, 0x2e, 0xc6, 0x20, 0x93, 0x2b, 0x0c, 0xa7, 0x19, 0xe1, - 0x3d, 0x2a, 0xad, 0x60, 0x49, 0xc5, 0xbf, 0x8d, 0xa6, 0xa5, 0x35, 0x12, 0x70, 0xe8, 0x26, 0x9e, - 0x02, 0x19, 0x89, 0x4f, 0x91, 0x0a, 0x32, 0xb1, 0x0a, 0x34, 0x0c, 0x53, 0xa6, 0x54, 0xc0, 0x4d, - 0xdc, 0x67, 0x30, 0xd0, 0x28, 0xc3, 0x44, 0x7b, 0xe4, 0x60, 0x0b, 0xb2, 0x27, 0x78, 0x06, 0x09, - 0x18, 0x82, 0xe3, 0x3b, 0x27, 0x39, 0x0a, 0x81, 0x66, 0x5f, 0x79, 0xe6, 0x8f, 0xa4, 0xd2, 0x54, - 0x89, 0xfe, 0x52, 0x81, 0xeb, 0xe9, 0x68, 0x13, 0xfa, 0xf3, 0x40, 0x56, 0x19, 0x81, 0xfa, 0xb0, - 0x20, 0x5b, 0x6d, 0xb8, 0xfa, 0x8c, 0xd9, 0xc1, 0x9f, 0x45, 0x99, 0x1a, 0x70, 0x63, 0xc4, 0xea, - 0x9f, 0x92, 0x99, 0x9f, 0xe0, 0xde, 0x19, 0xb9, 0x02, 0x3f, 0xa4, 0x38, 0xc6, 0x40, 0xff, 0x26, - 0x9c, 0x89, 0x5f, 0xf0, 0x83, 0x1b, 0xb9, 0xf9, 0xdd, 0x38, 0xa7, 0xa3, 0xf7, 0x7a, 0x6d, 0xd3, - 0x4c, 0xed, 0x15, 0xb8, 0x3a, 0xb4, 0x7a, 0x69, 0x97, 0x06, 0xdf, 0x58, 0xb7, 0x66, 0x77, 0x0c, - 0xab, 0xeb, 0xc6, 0x06, 0x88, 0x07, 0xa8, 0x71, 0xa9, 0x40, 0x9c, 0x49, 0x37, 0xe1, 0x54, 0x93, - 0x81, 0x34, 0x5a, 0x08, 0xc3, 0x49, 0x65, 0x5c, 0x22, 0x4d, 0xb1, 0x38, 0xa3, 0x73, 0x97, 0x05, - 0x10, 0xc4, 0x8c, 0xc8, 0x84, 0x62, 0x09, 0x4e, 0x26, 0xe0, 0xe4, 0x8c, 0x9a, 0x8f, 0xa1, 0xd4, - 0xba, 0xd8, 0xc5, 0x93, 0x31, 0x86, 0xb2, 0x1c, 0x07, 0x25, 0x95, 0x90, 0xe5, 0x36, 0x8c, 0xa6, - 0xe0, 0x58, 0xe4, 0x2d, 0x97, 0xed, 0xa1, 0xd6, 0xde, 0x8f, 0xd7, 0x87, 0x39, 0x82, 0x84, 0xc7, - 0x6d, 0x02, 0x33, 0x22, 0x29, 0x28, 0xb9, 0xd4, 0xea, 0x71, 0xa9, 0xad, 0x99, 0xc6, 0x33, 0x56, - 0xfc, 0x52, 0x5c, 0xca, 0x22, 0x52, 0x5e, 0xf5, 0x65, 0xb1, 0xc5, 0x9c, 0xb7, 0xab, 0xec, 0x30, - 0x99, 0xaf, 0x2e, 0xdf, 0x2d, 0xb6, 0x20, 0x0a, 0xc2, 0xa5, 0x70, 0x1b, 0xa6, 0x38, 0x05, 0xdc, - 0xb1, 0xb9, 0x98, 0xb6, 0xa3, 0xd4, 0xdf, 0xda, 0xef, 0xc3, 0x6b, 0x37, 0xd1, 0x49, 0xdc, 0xb6, - 0x5b, 0xd1, 0xd9, 0xa7, 0x70, 0x88, 0x41, 0x11, 0x0f, 0x31, 0x68, 0xff, 0x46, 0xc1, 0x60, 0x80, - 0xb8, 0xf5, 0x37, 0xb8, 0x37, 0x83, 0xbb, 0x26, 0xb1, 0xe3, 0x7f, 0xa7, 0xf9, 0x55, 0x88, 0x7f, - 0x20, 0xdf, 0x85, 0x78, 0x19, 0xa0, 0x67, 0x3a, 0x4d, 0xb3, 0xeb, 0x19, 0x07, 0x26, 0x8b, 0xaf, - 0xd0, 0x4c, 0x21, 0x91, 0x7c, 0x0e, 0x8a, 0xc1, 0x15, 0xf3, 0xe1, 0xf1, 0xff, 0x62, 0xb2, 0x9b, - 0x2e, 0xde, 0x96, 0xce, 0x88, 0x92, 0x6f, 0x75, 0x9f, 0xb5, 0xc5, 0xcf, 0xbb, 0x73, 0x78, 0x08, - 0xd8, 0xfa, 0xa2, 0xd9, 0x78, 0x6c, 0x34, 0x3d, 0xdb, 0xd1, 0x7e, 0x8c, 0x9d, 0xc8, 0x15, 0xd0, - 0x68, 0x2e, 0xcc, 0x45, 0xee, 0x5d, 0x27, 0xa7, 0x61, 0x7e, 0x67, 0xb7, 0xaa, 0x57, 0xf6, 0x6a, - 0x3b, 0xdb, 0x8d, 0xdd, 0xea, 0xf6, 0x5a, 0x6d, 0xfb, 0x9e, 0x7a, 0x82, 0x9c, 0x85, 0xd3, 0x61, - 0x72, 0x6d, 0xbb, 0xb1, 0xab, 0xef, 0xdc, 0xd3, 0xab, 0xf5, 0xba, 0xaa, 0x90, 0x12, 0x9c, 0x0a, - 0xb3, 0xea, 0xfb, 0xab, 0xab, 0xd5, 0x7a, 0x7d, 0x7d, 0x7f, 0x53, 0xcd, 0x90, 0x53, 0xa0, 0x86, - 0x39, 0xeb, 0x95, 0xda, 0x66, 0x75, 0x4d, 0xcd, 0x6a, 0x57, 0x60, 0x56, 0x22, 0x5c, 0x06, 0xd3, - 0xab, 0xf5, 0xda, 0xe7, 0xaa, 0xea, 0x09, 0xed, 0x11, 0x9c, 0x4c, 0x68, 0x25, 0x05, 0x66, 0x20, - 0x8d, 0xbd, 0x0f, 0x76, 0xab, 0x8d, 0xca, 0xfe, 0xde, 0x8e, 0x7a, 0x82, 0xd2, 0x20, 0xa5, 0xae, - 0xad, 0x35, 0xd6, 0x6a, 0xf5, 0xfb, 0xaa, 0x42, 0xce, 0xc1, 0x19, 0x31, 0x87, 0xff, 0xc6, 0xcc, - 0x8c, 0x76, 0x01, 0x43, 0x3b, 0x09, 0xc2, 0xe6, 0x1a, 0xfc, 0x1d, 0x38, 0x0f, 0x90, 0xf4, 0x27, - 0xb0, 0x60, 0x13, 0x54, 0x63, 0xb8, 0x46, 0x9e, 0x1f, 0xb4, 0x67, 0x5b, 0x47, 0x48, 0x5e, 0x97, - 0x80, 0x2b, 0xd2, 0x15, 0xde, 0xc7, 0xb9, 0x42, 0x52, 0xfe, 0x53, 0x57, 0xc9, 0xa6, 0x4f, 0x34, - 0x21, 0x66, 0xa7, 0x6f, 0xe1, 0xfa, 0x48, 0x24, 0x8b, 0x57, 0x84, 0xc7, 0xa7, 0x5a, 0xa2, 0x07, - 0x39, 0xc5, 0x7a, 0x87, 0xcb, 0x3b, 0xbe, 0x54, 0x2c, 0x3e, 0x06, 0x6b, 0x1f, 0xe0, 0xcc, 0x38, - 0x1d, 0x8a, 0xd7, 0xb3, 0x22, 0x5e, 0xec, 0x36, 0xac, 0x45, 0x0c, 0x54, 0xab, 0x22, 0x17, 0xa5, - 0x43, 0xb9, 0x52, 0xc7, 0xbe, 0x02, 0x45, 0x3b, 0xcc, 0x0c, 0xfb, 0xf7, 0xac, 0x90, 0x5a, 0x6b, - 0x69, 0x3d, 0x64, 0x76, 0x12, 0x1a, 0x4e, 0xdb, 0x0e, 0x10, 0x11, 0x8f, 0xb0, 0x87, 0x3c, 0x69, - 0x47, 0x7b, 0xe4, 0x90, 0xb0, 0x3e, 0x2f, 0x94, 0x65, 0xfd, 0x4a, 0xbb, 0x83, 0x76, 0x45, 0x00, - 0x1c, 0xdd, 0xeb, 0xd6, 0xec, 0x68, 0xa3, 0x23, 0xee, 0xec, 0x73, 0x27, 0x76, 0x2d, 0x4a, 0xac, - 0xbc, 0x1c, 0x38, 0x22, 0x93, 0x2f, 0x44, 0xc9, 0x8e, 0xac, 0x0e, 0x7e, 0x57, 0xb4, 0x16, 0xd9, - 0xdf, 0x19, 0xad, 0x16, 0xb2, 0x00, 0x39, 0x76, 0xa0, 0x9a, 0x8f, 0xb8, 0xfc, 0x2b, 0x5e, 0x7b, - 0xc4, 0x9d, 0xf9, 0x17, 0x19, 0x16, 0xf6, 0x6d, 0xdb, 0xfd, 0xd6, 0x5d, 0xa3, 0xf9, 0xa4, 0xdf, - 0x1b, 0x63, 0x1e, 0x14, 0x8b, 0xf9, 0x66, 0x92, 0x77, 0x08, 0x3c, 0xee, 0xb7, 0xdb, 0x3c, 0x86, - 0x80, 0xbf, 0xe9, 0xc0, 0xe3, 0x19, 0xee, 0x13, 0xe1, 0xf4, 0x1c, 0xfd, 0xac, 0xb5, 0xc8, 0x6e, - 0xe0, 0x06, 0x4f, 0x62, 0x6f, 0x78, 0x3b, 0x69, 0x08, 0x48, 0x23, 0x36, 0x71, 0x5a, 0xbb, 0x02, - 0xa7, 0x69, 0x95, 0x8d, 0x47, 0x08, 0xdf, 0x78, 0xec, 0x50, 0xd8, 0x6e, 0x93, 0x9d, 0x1c, 0x9f, - 0xd5, 0x4f, 0xd2, 0x4c, 0x86, 0x6b, 0xdd, 0xcf, 0x7a, 0x16, 0x4f, 0xf9, 0x2d, 0x16, 0x26, 0x8f, - 0x53, 0xc8, 0x95, 0x54, 0x68, 0xb9, 0x22, 0xb6, 0x5c, 0xfb, 0x5b, 0x19, 0xee, 0x04, 0x04, 0x25, - 0x71, 0xd6, 0x2c, 0x4b, 0xe3, 0x2c, 0xe4, 0xd9, 0x65, 0x94, 0x41, 0xf1, 0x29, 0xfc, 0x66, 0x31, - 0x49, 0x61, 0xca, 0x9b, 0x89, 0x4c, 0x79, 0xe3, 0xa2, 0xca, 0x0e, 0x10, 0xd5, 0x84, 0x20, 0xaa, - 0xfd, 0x88, 0x44, 0xde, 0x1b, 0x22, 0x91, 0x38, 0xd5, 0xcf, 0x7b, 0x32, 0xf2, 0x21, 0xf7, 0xe5, - 0x92, 0xab, 0xe4, 0x7c, 0x7e, 0x0d, 0x4e, 0x33, 0x4e, 0x35, 0x29, 0x9c, 0x2f, 0xfd, 0x80, 0x6d, - 0x04, 0x33, 0x05, 0x1c, 0x6c, 0x5f, 0x14, 0x17, 0x8d, 0xcf, 0xbf, 0x29, 0x26, 0x1b, 0x57, 0xfb, - 0xa6, 0x12, 0x15, 0x6b, 0x7c, 0x1a, 0x1c, 0xad, 0x22, 0xff, 0xc8, 0x47, 0xbc, 0x84, 0x37, 0x7e, - 0x60, 0xf7, 0xe5, 0x22, 0x12, 0x56, 0x0f, 0xe6, 0x79, 0x16, 0x9b, 0x7c, 0xa0, 0x03, 0x3d, 0x92, - 0xac, 0x52, 0x0f, 0xa0, 0x0a, 0x1a, 0x36, 0x29, 0x69, 0x58, 0x8b, 0x6d, 0xbe, 0x48, 0x68, 0x03, - 0xe7, 0xd9, 0x22, 0xcc, 0x47, 0xe8, 0x0c, 0x1a, 0x33, 0x27, 0x51, 0x29, 0xd7, 0x92, 0x91, 0x6a, - 0xe9, 0x47, 0xed, 0x49, 0x2c, 0x86, 0x92, 0xce, 0xa8, 0x91, 0xec, 0x49, 0xe2, 0x85, 0x57, 0xdc, - 0xce, 0x25, 0x54, 0xcb, 0xed, 0x9c, 0xc5, 0x67, 0x4e, 0x91, 0xfc, 0x4a, 0x3b, 0xd8, 0x35, 0xa7, - 0xc1, 0xac, 0xeb, 0x34, 0x63, 0x2d, 0x9f, 0x76, 0x9d, 0xe6, 0x83, 0x71, 0x0c, 0x5e, 0xe0, 0xf0, - 0x27, 0x55, 0xc5, 0xa9, 0xf9, 0x3b, 0x13, 0x78, 0x68, 0x43, 0x80, 0x19, 0xb4, 0x70, 0x30, 0x0a, - 0x65, 0x2f, 0x00, 0xf8, 0x73, 0x97, 0x70, 0x6b, 0x1a, 0x4f, 0x49, 0x22, 0x3c, 0x49, 0xa5, 0x54, - 0xc8, 0x1a, 0x41, 0xef, 0xa7, 0x3f, 0xc9, 0x36, 0xcc, 0xb2, 0x61, 0xb4, 0xf1, 0x18, 0x49, 0x42, - 0x8d, 0x2a, 0x26, 0xaf, 0xdd, 0x0b, 0x8d, 0x61, 0xe3, 0x27, 0xbb, 0x4e, 0x87, 0x95, 0x67, 0x2d, - 0x22, 0x1f, 0xc1, 0x9c, 0xff, 0x3a, 0x97, 0x8f, 0x31, 0x87, 0x56, 0x65, 0x7b, 0x08, 0xc6, 0x41, - 0x6b, 0x1d, 0x5b, 0x1c, 0x23, 0x4b, 0x66, 0x66, 0xa6, 0xd8, 0x91, 0x12, 0xc9, 0x45, 0x98, 0xee, - 0x18, 0x1f, 0x73, 0x33, 0x10, 0x5c, 0x41, 0xd7, 0x31, 0x3e, 0x66, 0xe8, 0x5d, 0x72, 0x03, 0x48, - 0xd3, 0xee, 0x7a, 0x56, 0xb7, 0xcf, 0xa7, 0x21, 0xf6, 0x13, 0xb3, 0x8b, 0x57, 0x77, 0xd1, 0xa9, - 0x9f, 0x90, 0xb3, 0x47, 0x33, 0xc8, 0xcb, 0x30, 0x17, 0x35, 0x2c, 0xec, 0x9e, 0x90, 0xd9, 0xa6, - 0x68, 0x53, 0xca, 0x15, 0x38, 0x99, 0x40, 0xde, 0x58, 0xe6, 0xee, 0xbf, 0x65, 0xf0, 0x9a, 0x2c, - 0xd1, 0x56, 0x75, 0x1f, 0xdb, 0xb1, 0x73, 0xab, 0x31, 0x25, 0xc9, 0xc4, 0x95, 0xe4, 0x65, 0x98, - 0x13, 0x60, 0x84, 0x03, 0x7d, 0xb3, 0x01, 0x14, 0x1a, 0x20, 0xe9, 0x4a, 0xb5, 0x89, 0x71, 0xae, - 0x54, 0xdb, 0x12, 0x9e, 0x63, 0x9b, 0x4c, 0x7b, 0x3d, 0x2b, 0xd6, 0x98, 0x40, 0x84, 0xfc, 0x8c, - 0x78, 0xf0, 0x82, 0x5b, 0x25, 0x38, 0xb7, 0x98, 0x1b, 0x57, 0xf1, 0xfc, 0x97, 0xb3, 0xde, 0x81, - 0x59, 0x09, 0xfb, 0x58, 0xbc, 0xff, 0xba, 0x82, 0xe7, 0xa5, 0x86, 0x2a, 0x22, 0x37, 0xa0, 0xef, - 0xc1, 0x94, 0xaf, 0x61, 0xcc, 0x99, 0x7f, 0x71, 0x84, 0xc6, 0xeb, 0x7e, 0x99, 0x14, 0x1d, 0xcc, - 0xa4, 0xe8, 0xa0, 0xf6, 0x2b, 0x13, 0x70, 0x2a, 0xa9, 0xf9, 0x83, 0x6d, 0xec, 0x7b, 0x90, 0xb3, - 0x7b, 0xc1, 0x6d, 0x56, 0x49, 0xd7, 0xf6, 0xca, 0x38, 0x77, 0x7a, 0x8c, 0x9d, 0xac, 0x90, 0x20, - 0x91, 0xec, 0x53, 0x4a, 0x24, 0xbc, 0xd8, 0xb1, 0x65, 0xf3, 0xa7, 0x0b, 0xfd, 0x8b, 0x1d, 0xd7, - 0xec, 0xae, 0x19, 0xb9, 0x87, 0x6e, 0x72, 0x9c, 0x7b, 0xe8, 0x2a, 0x50, 0x6c, 0xda, 0x9d, 0x1e, - 0xb5, 0xb6, 0xfc, 0x36, 0xba, 0xe1, 0x77, 0xeb, 0xce, 0x06, 0x25, 0x10, 0x85, 0x30, 0xac, 0x4e, - 0x49, 0xc3, 0x6a, 0xac, 0x7f, 0xe5, 0xe3, 0xfd, 0x8b, 0xc0, 0x04, 0x46, 0x9e, 0x0a, 0xe8, 0x3d, - 0xe0, 0xef, 0xb8, 0xe5, 0x85, 0x04, 0xcb, 0x7b, 0x11, 0xa6, 0x19, 0x4b, 0xd8, 0x21, 0xf3, 0x69, - 0x66, 0x9e, 0x30, 0x89, 0x1d, 0x33, 0xbf, 0x08, 0xd3, 0xa6, 0x67, 0x34, 0xfc, 0xc3, 0x34, 0x33, - 0xec, 0xb6, 0x21, 0xd3, 0x33, 0xea, 0x2c, 0x45, 0xf2, 0x0c, 0x67, 0x25, 0xcf, 0x50, 0xb3, 0xa2, - 0x23, 0x32, 0x3f, 0xeb, 0x3b, 0x8a, 0x87, 0x7f, 0x0a, 0x26, 0xdb, 0x76, 0xd3, 0x68, 0xf3, 0x59, - 0x05, 0xfb, 0x10, 0x07, 0xff, 0xac, 0x34, 0xf8, 0xff, 0xbb, 0x98, 0x9f, 0xe4, 0xd7, 0xc5, 0x7b, - 0xc8, 0x43, 0xc8, 0x33, 0x2d, 0x08, 0xe6, 0xbb, 0xef, 0x8c, 0xa4, 0x40, 0xe1, 0x8d, 0x02, 0xbc, - 0x34, 0xb7, 0x14, 0x3e, 0xb2, 0xf2, 0x23, 0x98, 0x95, 0xb2, 0x86, 0xdd, 0x57, 0x3d, 0x3d, 0x54, - 0xf1, 0x79, 0xc5, 0x82, 0x35, 0xf8, 0x7c, 0xcc, 0xb7, 0x37, 0x3c, 0xa3, 0x6d, 0x1f, 0x3c, 0x37, - 0xdf, 0x46, 0x7b, 0x27, 0xea, 0xa2, 0x05, 0x35, 0x70, 0xfe, 0x95, 0x21, 0x8f, 0xdb, 0x57, 0xbb, - 0x9e, 0xbf, 0x28, 0x11, 0x7c, 0x6b, 0xbf, 0xa3, 0x60, 0xcc, 0x52, 0x28, 0xbd, 0x61, 0xd1, 0xe6, - 0x1d, 0xd7, 0x3c, 0xb3, 0x33, 0x92, 0x13, 0x21, 0xd9, 0xfd, 0xcc, 0x38, 0x76, 0xff, 0xd9, 0xcd, - 0x82, 0x76, 0x37, 0xca, 0x5d, 0x4e, 0xfd, 0x18, 0x5e, 0x90, 0xd6, 0x8d, 0xf2, 0x2f, 0xc0, 0xc1, - 0xf9, 0xb7, 0x05, 0x33, 0x87, 0x2c, 0xa9, 0xd1, 0xb6, 0x5c, 0xff, 0x02, 0xb4, 0xc5, 0x21, 0xd4, - 0x0a, 0x7c, 0xd4, 0xa7, 0x79, 0xf9, 0x4d, 0xcb, 0xf5, 0xb4, 0x9f, 0x54, 0xa2, 0x93, 0x36, 0xbc, - 0x1b, 0x89, 0x5d, 0xb8, 0x22, 0xac, 0xb2, 0x26, 0x4e, 0xf9, 0xc8, 0x03, 0x98, 0x73, 0x18, 0x4c, - 0x70, 0x27, 0x75, 0x26, 0xfd, 0x21, 0x4b, 0xc9, 0x71, 0xe7, 0xa5, 0xd8, 0x25, 0xd5, 0x45, 0x47, - 0xfa, 0x0e, 0x42, 0x14, 0xc9, 0x44, 0x71, 0x17, 0xf4, 0xb7, 0xf9, 0x71, 0x2c, 0x01, 0x8a, 0x07, - 0x3c, 0xd0, 0xbd, 0x78, 0x5e, 0xde, 0xb0, 0x7c, 0x80, 0x2c, 0xfb, 0x0c, 0x07, 0xc8, 0xa2, 0x3e, - 0xdc, 0x44, 0xcc, 0x87, 0xf3, 0xa7, 0xaf, 0x93, 0xc2, 0xf4, 0xf5, 0x0a, 0x14, 0x1d, 0x93, 0xf6, - 0x0f, 0x3a, 0xa0, 0xb6, 0x8c, 0x63, 0x97, 0xcf, 0xfb, 0x67, 0x83, 0xd4, 0x35, 0xe3, 0x58, 0x36, - 0x9f, 0x53, 0xf2, 0xc4, 0x7a, 0x27, 0x98, 0x00, 0xe7, 0x53, 0x6e, 0x3f, 0x49, 0x67, 0xe3, 0xf3, - 0x9e, 0xfa, 0x1e, 0xc7, 0xd4, 0x8d, 0x56, 0x26, 0xaf, 0x11, 0xec, 0x83, 0xca, 0x5c, 0x53, 0xe4, - 0x9c, 0xb8, 0x15, 0xe2, 0xd5, 0x31, 0x28, 0xd7, 0x8b, 0x88, 0x04, 0x93, 0x70, 0x43, 0xc4, 0xfb, - 0x31, 0xa5, 0x12, 0xab, 0x0e, 0xf6, 0x85, 0x10, 0x6e, 0x01, 0x83, 0xe8, 0x5b, 0xa0, 0x3a, 0xea, - 0x23, 0xb9, 0x92, 0x96, 0xf6, 0xff, 0x2b, 0x89, 0xcd, 0x91, 0xd7, 0xbf, 0xbe, 0x35, 0xcd, 0xc1, - 0xd3, 0x02, 0x88, 0x10, 0xe3, 0x18, 0xfe, 0x69, 0x01, 0xac, 0xbe, 0x6f, 0xb5, 0x12, 0xba, 0x90, - 0x48, 0x19, 0xef, 0x42, 0xbb, 0x89, 0xe4, 0xcb, 0xf3, 0xdd, 0xf1, 0x38, 0x92, 0x5c, 0x6d, 0x64, - 0x2a, 0xcb, 0xee, 0x05, 0x88, 0x02, 0xc5, 0xd6, 0xb6, 0xbf, 0xc2, 0xf6, 0x99, 0x0c, 0x80, 0xe3, - 0x42, 0x73, 0x65, 0x0e, 0x0b, 0x76, 0xb1, 0x36, 0x0a, 0x87, 0x63, 0x08, 0x97, 0x56, 0x03, 0x56, - 0x53, 0x23, 0xc9, 0x27, 0x64, 0x4d, 0x29, 0xb1, 0xdc, 0x85, 0x93, 0x09, 0x60, 0x09, 0x9d, 0xa1, - 0x22, 0x8f, 0xda, 0x63, 0x09, 0x5d, 0xe8, 0x39, 0xb7, 0x61, 0xaa, 0xde, 0x7a, 0xa2, 0xf7, 0xdb, - 0x38, 0x86, 0xba, 0xa6, 0x73, 0x64, 0x35, 0x83, 0x50, 0x6b, 0xf0, 0x4d, 0x4d, 0x88, 0xd1, 0xb3, - 0xfc, 0xf5, 0x1f, 0xfc, 0xad, 0x6d, 0xb1, 0xa2, 0x76, 0xdb, 0x4c, 0xdc, 0x83, 0xba, 0x04, 0x93, - 0x8e, 0x70, 0x3a, 0xb6, 0x94, 0x44, 0x20, 0xad, 0x57, 0x67, 0x60, 0xda, 0x1a, 0x7a, 0xed, 0x14, - 0x9d, 0xdc, 0x6f, 0xaf, 0xc3, 0x84, 0x63, 0xb7, 0xfd, 0xc0, 0x46, 0x32, 0x1a, 0xbb, 0x6d, 0xea, - 0x08, 0xa5, 0x55, 0x31, 0xa6, 0x27, 0x62, 0x09, 0xba, 0xe0, 0x38, 0x68, 0x58, 0x6c, 0x84, 0x26, - 0xc4, 0xf4, 0xe7, 0x26, 0xc6, 0x46, 0x22, 0x59, 0xe1, 0x6d, 0x61, 0x62, 0xa8, 0x9a, 0x7d, 0x68, - 0xaf, 0x06, 0x34, 0x8d, 0x70, 0x57, 0x00, 0xdb, 0x5c, 0x26, 0x01, 0x3f, 0x55, 0x0b, 0x16, 0x03, - 0x76, 0x0e, 0xbf, 0x09, 0xe0, 0x4c, 0x40, 0x60, 0xa4, 0x4b, 0x85, 0x32, 0x91, 0x8d, 0xcf, 0xd3, - 0xca, 0x44, 0x36, 0x14, 0x63, 0xa2, 0xb9, 0x84, 0x4b, 0x55, 0x35, 0x1c, 0x42, 0xbd, 0xe3, 0x55, - 0xa3, 0x67, 0x3c, 0xb2, 0xda, 0x96, 0x67, 0x99, 0x41, 0x64, 0xa9, 0x8d, 0x2b, 0x4c, 0xc9, 0x10, - 0xbc, 0xca, 0x1a, 0xcc, 0x34, 0x85, 0x74, 0xde, 0xa1, 0x13, 0x7d, 0xde, 0x3a, 0x53, 0xfe, 0x00, - 0xcd, 0xb1, 0x2e, 0x15, 0xe5, 0x5b, 0xe1, 0xfc, 0xda, 0x1e, 0x98, 0x8e, 0x6b, 0xd9, 0x5d, 0x9f, - 0x94, 0xaf, 0x29, 0xe8, 0x46, 0xc4, 0x72, 0x39, 0x19, 0xef, 0xc2, 0xb4, 0xdb, 0x7a, 0xd2, 0x38, - 0x62, 0xc9, 0x9c, 0x01, 0xe7, 0x12, 0xf7, 0xb6, 0xf0, 0x92, 0xe0, 0x06, 0xbf, 0xc9, 0x6d, 0x98, - 0xf2, 0x4b, 0x66, 0x06, 0xc7, 0xbc, 0xfd, 0xd2, 0x3e, 0xbc, 0xf6, 0xbb, 0x59, 0x14, 0x69, 0xac, - 0x6d, 0x64, 0x0f, 0xa6, 0x78, 0x6f, 0xe7, 0xd4, 0xbc, 0x3d, 0x12, 0x4f, 0x96, 0x84, 0x3b, 0x53, - 0x78, 0xe6, 0xc6, 0x09, 0xdd, 0x47, 0x55, 0xfe, 0xfd, 0x0c, 0x90, 0x38, 0x04, 0x79, 0x5f, 0x7a, - 0x9f, 0xfc, 0xbd, 0xa7, 0xad, 0x69, 0x29, 0x7c, 0xaf, 0x5c, 0xfb, 0x53, 0x05, 0x26, 0x30, 0x04, - 0x3c, 0x0d, 0x53, 0xfb, 0xdb, 0xf7, 0xb7, 0x77, 0x1e, 0x6e, 0xb3, 0x37, 0xb7, 0x56, 0x37, 0xf7, - 0xeb, 0x7b, 0x55, 0x5d, 0x55, 0x88, 0x0a, 0x33, 0xab, 0x9b, 0x3b, 0xfb, 0x6b, 0x8d, 0xbb, 0x95, - 0xd5, 0xfb, 0xfb, 0xbb, 0x6a, 0x86, 0xcc, 0xc1, 0xf4, 0xaa, 0x5e, 0x5d, 0xab, 0x6e, 0xef, 0xd5, - 0x2a, 0x9b, 0x75, 0x35, 0x4b, 0xf2, 0x30, 0xb1, 0xbd, 0xb3, 0x56, 0x55, 0x27, 0x08, 0x81, 0xe2, - 0xce, 0xdd, 0xef, 0xa8, 0xae, 0xee, 0x35, 0xea, 0x7b, 0x3b, 0x7a, 0xe5, 0x5e, 0x55, 0x9d, 0x24, - 0x27, 0x61, 0xae, 0xbe, 0xba, 0x51, 0x5d, 0xdb, 0xdf, 0xac, 0x36, 0x76, 0x77, 0x36, 0x6b, 0xab, - 0x1f, 0xa8, 0x39, 0x02, 0x90, 0x7b, 0xb0, 0xb3, 0xb9, 0xbf, 0x55, 0x55, 0xa7, 0xe8, 0xef, 0xca, - 0x66, 0x55, 0xdf, 0xab, 0xab, 0x79, 0x5a, 0xdb, 0xd6, 0xce, 0xfe, 0xf6, 0x5e, 0xa3, 0xb2, 0xb7, - 0x57, 0x59, 0xdd, 0x50, 0x0b, 0xf8, 0x92, 0xcf, 0xce, 0x66, 0x55, 0x05, 0x46, 0x09, 0x92, 0xd5, - 0xd8, 0xad, 0xd4, 0x74, 0x75, 0x1a, 0xdf, 0x03, 0xab, 0xdd, 0xd3, 0x2b, 0x7b, 0x55, 0x75, 0x86, - 0xd6, 0xcd, 0x2b, 0xf5, 0xab, 0x99, 0xbd, 0x9b, 0x63, 0x2c, 0xd3, 0x7e, 0x5b, 0x01, 0x08, 0xd5, - 0x82, 0x5a, 0x9c, 0x8e, 0xf1, 0x05, 0xdb, 0xbf, 0x80, 0x83, 0x7d, 0x60, 0xaa, 0xd5, 0xb5, 0xfd, - 0x1b, 0x2b, 0xd8, 0x07, 0x4d, 0xed, 0x19, 0x5e, 0xf3, 0x90, 0xdf, 0x58, 0xc1, 0x3e, 0x48, 0x29, - 0x54, 0x26, 0xfe, 0x82, 0x80, 0xaf, 0x2b, 0x1b, 0x30, 0xe5, 0x57, 0x53, 0x82, 0x53, 0x5b, 0xfb, - 0xf5, 0xbd, 0xc6, 0x46, 0xe5, 0x41, 0xb5, 0xf1, 0xb9, 0xaa, 0xbe, 0xd3, 0x78, 0x50, 0xd9, 0xdc, - 0xaf, 0xb2, 0x47, 0x89, 0xb6, 0x68, 0x9d, 0xfc, 0x27, 0xad, 0x48, 0x5d, 0xa4, 0x3f, 0x77, 0x29, - 0x76, 0x75, 0xa1, 0x9c, 0x51, 0x15, 0xed, 0x9f, 0x2a, 0xc1, 0xd5, 0x5b, 0x3e, 0xc6, 0x05, 0xc8, - 0xb1, 0xd3, 0x25, 0xbe, 0xf3, 0xcf, 0xbe, 0x44, 0x72, 0x32, 0x12, 0x39, 0x64, 0x1d, 0xa6, 0x5a, - 0xa6, 0x67, 0x58, 0xc1, 0x56, 0xc2, 0xeb, 0x43, 0xb4, 0x7e, 0x69, 0x8d, 0x81, 0xf3, 0x8b, 0x54, - 0x79, 0xe1, 0xf2, 0x1d, 0x98, 0x11, 0x33, 0xc6, 0x72, 0x34, 0x7f, 0x2b, 0x03, 0x33, 0x38, 0xaa, - 0x6e, 0x59, 0x07, 0xd4, 0xf2, 0x6b, 0x8d, 0xe8, 0x76, 0x85, 0x39, 0x98, 0xae, 0x75, 0x8f, 0x8c, - 0xb6, 0xd5, 0xa2, 0x9f, 0xea, 0x09, 0x2a, 0x4c, 0x0e, 0xcc, 0x37, 0xa0, 0xa8, 0x0a, 0x99, 0x87, - 0x59, 0x9e, 0xc6, 0x26, 0x0d, 0x6a, 0x86, 0x2c, 0x00, 0x91, 0x92, 0x30, 0x78, 0xa3, 0x66, 0xb5, - 0x6d, 0x7c, 0xcf, 0xe4, 0xc0, 0xa4, 0x3a, 0xc3, 0x11, 0xe3, 0xb7, 0x7a, 0x82, 0x6a, 0x1b, 0x1b, - 0xdc, 0xd9, 0x7b, 0x72, 0x3c, 0x6c, 0xa1, 0x66, 0x28, 0xa8, 0xb8, 0x2b, 0x9a, 0xe9, 0xf5, 0x9a, - 0xdd, 0x35, 0xd5, 0x09, 0xad, 0x07, 0x39, 0xbe, 0x1c, 0x36, 0x0f, 0xb3, 0x21, 0x42, 0xaf, 0xef, - 0x32, 0x8c, 0xef, 0xf7, 0xcd, 0xbe, 0xd9, 0x52, 0x15, 0xd6, 0x10, 0x8b, 0xce, 0x56, 0xac, 0x2f, - 0x9a, 0x2d, 0x35, 0x43, 0x8a, 0x00, 0xb5, 0xae, 0xff, 0x36, 0x89, 0x9a, 0xa5, 0xc0, 0xeb, 0x86, - 0xd5, 0x36, 0x5b, 0xea, 0x04, 0x99, 0x81, 0xfc, 0x2a, 0x5f, 0x2f, 0x52, 0x27, 0xf1, 0xcb, 0xe8, - 0x36, 0x4d, 0x9a, 0x97, 0xd3, 0xbe, 0xa1, 0x40, 0x49, 0xe4, 0x59, 0xdd, 0x33, 0x9c, 0x60, 0x08, - 0xac, 0x41, 0x21, 0xd8, 0x98, 0xc2, 0xcd, 0x41, 0xdc, 0x95, 0x11, 0x4b, 0x2f, 0xc9, 0xdb, 0x5a, - 0xc2, 0xd2, 0xc3, 0x96, 0xfa, 0xcf, 0x41, 0xc1, 0x33, 0x9c, 0x03, 0xd3, 0x0b, 0x97, 0x67, 0xf2, - 0x2c, 0x41, 0x0e, 0xdb, 0x48, 0x81, 0x57, 0xed, 0x3f, 0x67, 0xc3, 0x55, 0xa2, 0x24, 0xfa, 0xe5, - 0x4a, 0x95, 0x68, 0xa5, 0x69, 0xe1, 0x20, 0xb2, 0x1f, 0x9c, 0x32, 0xe1, 0x27, 0xb6, 0xef, 0xa4, - 0x3a, 0x70, 0x09, 0xd5, 0x2e, 0x49, 0xaa, 0xb2, 0x71, 0x22, 0x38, 0x8b, 0x62, 0x02, 0x7f, 0x46, - 0xb4, 0xc1, 0x76, 0x1e, 0xf3, 0x73, 0xdb, 0x9f, 0x7e, 0x7a, 0xe4, 0xec, 0x31, 0xce, 0x13, 0xfa, - 0xf4, 0x51, 0xf8, 0x49, 0x1e, 0xc1, 0xb4, 0xd1, 0x6e, 0x37, 0xfc, 0x93, 0x0b, 0xfc, 0x04, 0xf7, - 0xa7, 0x9e, 0xa6, 0x96, 0x4a, 0xbb, 0xcd, 0x2a, 0x72, 0x37, 0x4e, 0xe8, 0x60, 0x04, 0x5f, 0xe5, - 0xeb, 0x91, 0x3e, 0x32, 0x70, 0x41, 0xae, 0xbc, 0x9c, 0xd4, 0x7d, 0x06, 0xc4, 0x85, 0xcb, 0x27, - 0x61, 0x3e, 0x46, 0x81, 0xff, 0x3c, 0xc4, 0x1b, 0x70, 0x36, 0x81, 0xec, 0x61, 0x91, 0xea, 0x47, - 0xe1, 0x42, 0x4d, 0x62, 0xc1, 0xbb, 0x90, 0x73, 0x4c, 0xb7, 0xdf, 0xf6, 0x4a, 0x69, 0xb7, 0x9b, - 0xa4, 0x96, 0xd5, 0x79, 0xc9, 0x28, 0x65, 0xac, 0x97, 0x0d, 0x5b, 0x50, 0xd1, 0x5a, 0x31, 0xca, - 0xe4, 0x82, 0x6b, 0x30, 0xc5, 0x97, 0x4a, 0x46, 0x22, 0x4d, 0x2a, 0xac, 0xfb, 0x45, 0xfd, 0x43, - 0xec, 0x09, 0x80, 0xdc, 0x9b, 0xfc, 0x87, 0x93, 0xa0, 0x8a, 0xd9, 0x38, 0xe1, 0x4c, 0x5d, 0x05, - 0x1a, 0xd2, 0x9d, 0x5f, 0x86, 0x39, 0x5c, 0x74, 0x15, 0x96, 0x62, 0x78, 0xcc, 0x06, 0x93, 0x83, - 0xc5, 0x98, 0x45, 0x98, 0x97, 0xe0, 0xd0, 0xf9, 0x65, 0x7d, 0x7c, 0x4e, 0x80, 0xc4, 0xf8, 0xce, - 0x35, 0x50, 0x1d, 0xb3, 0x63, 0x7b, 0x62, 0x9c, 0x97, 0xc5, 0x8a, 0x8b, 0x2c, 0xfd, 0x81, 0x70, - 0x52, 0x04, 0x27, 0x6e, 0xe1, 0xba, 0x66, 0x4e, 0x08, 0x73, 0x05, 0x8b, 0x9b, 0x1b, 0x30, 0xeb, - 0xdf, 0x9b, 0xef, 0xe2, 0x3e, 0x3f, 0x76, 0x77, 0xe9, 0x8b, 0x83, 0x2d, 0x1c, 0xda, 0x77, 0x7d, - 0x86, 0x97, 0x64, 0xd6, 0xff, 0xdd, 0x60, 0x21, 0x31, 0x8f, 0x28, 0x5e, 0x1a, 0x8a, 0x42, 0xbc, - 0xb6, 0xf2, 0x1d, 0x98, 0xc6, 0xa7, 0xed, 0xf8, 0xab, 0x47, 0xc3, 0x1f, 0xb7, 0x03, 0x0a, 0xce, - 0x1f, 0x44, 0xba, 0x0c, 0x33, 0x78, 0x0b, 0x6d, 0xc3, 0x31, 0x0d, 0xd7, 0xee, 0xf2, 0x85, 0xfa, - 0x69, 0x4c, 0xd3, 0x31, 0x29, 0x12, 0x9b, 0x98, 0x7e, 0xb6, 0xd8, 0xc4, 0xcc, 0xb8, 0xb1, 0x89, - 0x48, 0x94, 0x60, 0x36, 0x16, 0x25, 0x90, 0x23, 0x2b, 0xc5, 0x68, 0x64, 0x25, 0x12, 0x44, 0x98, - 0x8b, 0x06, 0x11, 0xb4, 0x2d, 0x38, 0x15, 0xd5, 0x5b, 0x3a, 0x35, 0x27, 0xb7, 0x60, 0x42, 0x58, - 0x15, 0xb8, 0x3c, 0x50, 0x24, 0x38, 0xf1, 0x46, 0xf0, 0x84, 0xee, 0x28, 0x47, 0x1e, 0xc6, 0xec, - 0x8e, 0x52, 0xe1, 0xb0, 0x3b, 0xd6, 0x63, 0x46, 0x4c, 0xa8, 0xe2, 0x29, 0x7b, 0x9d, 0xf6, 0xfb, - 0x0a, 0x94, 0x93, 0xb0, 0x06, 0xb3, 0xab, 0x09, 0xbe, 0x10, 0x95, 0x7c, 0xe8, 0x31, 0xbd, 0xe8, - 0x52, 0xf8, 0x3c, 0x1f, 0xa2, 0x28, 0x7f, 0x0f, 0x14, 0x06, 0xbd, 0x00, 0x37, 0x34, 0x68, 0x91, - 0x24, 0x30, 0xd1, 0x93, 0x6b, 0xc5, 0xac, 0x55, 0xa4, 0x2d, 0xab, 0x11, 0x73, 0xfd, 0xea, 0x18, - 0xad, 0x09, 0xec, 0xf5, 0xbb, 0xc1, 0x8d, 0xe2, 0xbb, 0x86, 0xe5, 0x6c, 0xd9, 0x2d, 0x53, 0x7b, - 0x05, 0x26, 0xe8, 0x7f, 0xea, 0xb1, 0xf1, 0xeb, 0x25, 0xd5, 0x13, 0xe4, 0x14, 0xa8, 0x6b, 0x96, - 0x6b, 0xb0, 0xab, 0xc7, 0x9b, 0xf6, 0x91, 0xe9, 0x1c, 0xab, 0x8a, 0xf6, 0xff, 0x64, 0xa8, 0xe7, - 0x14, 0x14, 0x97, 0xd7, 0x45, 0x70, 0x57, 0x0a, 0x1a, 0xab, 0x40, 0x60, 0xbd, 0x70, 0x57, 0x0a, - 0xcd, 0xf0, 0x37, 0x4e, 0xf7, 0xd8, 0x4e, 0x1b, 0x09, 0x16, 0x1f, 0xe7, 0xc8, 0xe0, 0x92, 0xef, - 0xbc, 0x04, 0x8d, 0x6f, 0x74, 0xdc, 0x84, 0x53, 0x11, 0x78, 0x16, 0x73, 0x65, 0x16, 0x96, 0x48, - 0x05, 0x58, 0xe0, 0x1f, 0xaf, 0x21, 0xf1, 0x1a, 0x2d, 0xd6, 0x22, 0xbe, 0x57, 0x02, 0xdc, 0xe0, - 0x8e, 0x4f, 0x72, 0x1b, 0x26, 0x3a, 0x76, 0xcb, 0xe4, 0x3b, 0x25, 0x92, 0xe4, 0x25, 0xb1, 0x69, - 0x69, 0x0b, 0x37, 0xaa, 0xd2, 0x22, 0xda, 0x47, 0x54, 0x93, 0x63, 0x5c, 0x10, 0x37, 0xe7, 0xc8, - 0x6c, 0x68, 0x25, 0xb3, 0xa1, 0x95, 0xc0, 0x06, 0x79, 0xc3, 0x91, 0x00, 0x8d, 0x1b, 0xd9, 0x1f, - 0x71, 0xdf, 0x2f, 0x45, 0x02, 0xab, 0xd1, 0x7e, 0xfa, 0xca, 0xa0, 0x56, 0x49, 0x65, 0xc3, 0x6e, - 0xea, 0x7b, 0x0d, 0x69, 0xed, 0x1b, 0xc5, 0x6b, 0x48, 0x29, 0x1b, 0x68, 0xe1, 0x3f, 0x50, 0x24, - 0x0e, 0xee, 0x3a, 0x76, 0xd3, 0x74, 0x5d, 0x41, 0x91, 0xf8, 0x0b, 0x46, 0x71, 0x0e, 0xb2, 0x8c, - 0x90, 0x83, 0x69, 0x8a, 0x91, 0x49, 0x55, 0x0c, 0x5f, 0xee, 0xd9, 0xf1, 0xe5, 0xfe, 0xcd, 0x0c, - 0x35, 0x36, 0x71, 0xb2, 0xbf, 0xf5, 0x92, 0x27, 0x6f, 0x43, 0x29, 0x02, 0x1f, 0xbe, 0x8e, 0xc3, - 0x6e, 0x98, 0x5f, 0x90, 0x0a, 0x55, 0x83, 0xa7, 0x72, 0xf4, 0xe8, 0x83, 0x1f, 0x6f, 0x0f, 0x6a, - 0x72, 0xa4, 0x4d, 0xdf, 0x82, 0xa7, 0x3f, 0xde, 0x8d, 0xea, 0xb0, 0xbc, 0x1c, 0x38, 0x78, 0xfe, - 0x12, 0x6c, 0x1f, 0x8b, 0x95, 0xe6, 0x2e, 0xdd, 0xeb, 0x70, 0x4e, 0xc8, 0x44, 0x89, 0xdf, 0x13, - 0x5e, 0x18, 0x39, 0x05, 0x93, 0x4c, 0x3f, 0xf8, 0xeb, 0x09, 0xf8, 0x11, 0x38, 0x8a, 0x41, 0xb9, - 0x7b, 0xa6, 0x87, 0x45, 0xfd, 0xc5, 0xb3, 0xc7, 0xe2, 0x71, 0x1e, 0x19, 0x80, 0x23, 0x5e, 0x8b, - 0xf4, 0x8a, 0xeb, 0x83, 0x98, 0x1c, 0x25, 0x2b, 0xe8, 0x17, 0xd2, 0x11, 0x14, 0x0a, 0xa9, 0x9b, - 0x6e, 0x84, 0x94, 0x43, 0xf1, 0x08, 0x4a, 0x14, 0xe4, 0xb9, 0x12, 0xf3, 0x57, 0x19, 0x69, 0xac, - 0x48, 0xdc, 0xcc, 0x94, 0x74, 0xc0, 0x72, 0xd0, 0xfd, 0x72, 0xaf, 0xc2, 0x7c, 0xf4, 0xdd, 0x26, - 0xa6, 0x96, 0x05, 0x5d, 0x8d, 0x3c, 0xdc, 0x84, 0x0f, 0x4b, 0xb1, 0x97, 0x78, 0x79, 0xa0, 0x90, - 0x7f, 0x85, 0x42, 0xcc, 0x09, 0x42, 0x24, 0xf7, 0x42, 0x3d, 0x9f, 0x42, 0x3d, 0xbf, 0x31, 0xa8, - 0xd5, 0x18, 0xf4, 0x4b, 0x54, 0xee, 0xc0, 0x40, 0xe4, 0xc7, 0x36, 0x10, 0xcf, 0xd4, 0x2f, 0x96, - 0xa2, 0x9a, 0x1d, 0x59, 0x9b, 0x8f, 0xb0, 0x5e, 0x7b, 0x08, 0x0b, 0xb2, 0x42, 0x0a, 0xbb, 0x9b, - 0x0a, 0x3d, 0xc3, 0x72, 0xc4, 0x10, 0xdc, 0xa5, 0x61, 0xbc, 0xd0, 0xf3, 0x3d, 0xfe, 0x4b, 0xfb, - 0x7c, 0xb4, 0x37, 0x44, 0xd7, 0xfd, 0x3f, 0x1d, 0x51, 0xaf, 0xab, 0x83, 0x90, 0x27, 0x69, 0xd6, - 0xa5, 0x68, 0x77, 0x8a, 0xc5, 0x34, 0xfe, 0xa3, 0x02, 0x2f, 0x08, 0xf9, 0x6e, 0xe2, 0xe1, 0x6d, - 0x3e, 0xb6, 0x0b, 0x76, 0x82, 0xa7, 0x60, 0x30, 0x78, 0x92, 0x36, 0xc8, 0x0f, 0xf6, 0xdc, 0x1e, - 0x44, 0x62, 0x1c, 0xfb, 0x12, 0x4f, 0xc6, 0xe7, 0x17, 0x10, 0x4f, 0xf9, 0x73, 0x00, 0x61, 0xe2, - 0xd3, 0x3c, 0x23, 0x10, 0x65, 0xb8, 0x20, 0x7a, 0x2b, 0xda, 0xed, 0xe3, 0xcd, 0x5d, 0x8f, 0xf0, - 0x7c, 0x69, 0xbc, 0x06, 0x05, 0xac, 0xff, 0x63, 0x05, 0xa6, 0xf8, 0x5e, 0x95, 0xc4, 0x20, 0x59, - 0xd2, 0x93, 0x3e, 0x49, 0xcf, 0xea, 0x10, 0x7e, 0x88, 0x8c, 0x05, 0xf7, 0xd9, 0x09, 0xb2, 0x4f, - 0xc1, 0xcc, 0xa6, 0xe1, 0x7a, 0x5b, 0x76, 0xcb, 0x7a, 0x6c, 0x99, 0xad, 0x11, 0xb6, 0x84, 0x49, - 0xf0, 0xe4, 0x0d, 0xc8, 0x37, 0x0f, 0xad, 0x76, 0xcb, 0xc1, 0xae, 0x9d, 0x1c, 0xa3, 0xf3, 0xf7, - 0xd9, 0x04, 0x90, 0xda, 0x67, 0x20, 0xa7, 0x9b, 0xd4, 0x7b, 0x24, 0x97, 0x60, 0x9a, 0x5d, 0x7b, - 0x64, 0xe3, 0x8b, 0x7c, 0xfc, 0x21, 0x60, 0x21, 0x09, 0xb7, 0x24, 0x5b, 0xed, 0xe0, 0x09, 0x60, - 0xf6, 0xa1, 0xf5, 0x60, 0x2e, 0xba, 0x7d, 0x07, 0x03, 0x41, 0xb6, 0x97, 0x1a, 0x08, 0xf2, 0xe1, - 0x11, 0x8a, 0x2c, 0x53, 0xe1, 0x04, 0x0e, 0x6c, 0xd2, 0x0d, 0x2d, 0x8c, 0x42, 0x9d, 0x83, 0x69, - 0x3f, 0x9f, 0x81, 0x22, 0x3e, 0x11, 0x65, 0x8a, 0xde, 0x3d, 0x5e, 0xed, 0xe4, 0x47, 0x80, 0xe2, - 0xde, 0xbd, 0x5c, 0x60, 0x09, 0xaf, 0x47, 0xf3, 0x77, 0x2c, 0xb0, 0xa2, 0x64, 0x13, 0x0a, 0x2d, - 0xbb, 0xf9, 0xc4, 0x74, 0xfc, 0xad, 0xf1, 0x49, 0x8a, 0x12, 0xc1, 0xb3, 0xe6, 0x17, 0xe0, 0x4f, - 0xbf, 0x04, 0x08, 0xca, 0xb7, 0x61, 0x5a, 0xa8, 0x64, 0x1c, 0x63, 0x56, 0x7e, 0x17, 0x8a, 0x32, - 0xde, 0xb1, 0x4c, 0xe1, 0x7f, 0xca, 0xc0, 0x19, 0xb6, 0xb2, 0xb1, 0xdb, 0x36, 0x9a, 0x66, 0x07, - 0x17, 0x1d, 0xa8, 0x3a, 0x1f, 0x1c, 0x93, 0x5d, 0x50, 0xfd, 0xf7, 0xd1, 0x8d, 0xc7, 0x8f, 0xad, - 0xae, 0xe5, 0x1d, 0xa7, 0xc6, 0xcc, 0xf8, 0x1b, 0xe9, 0x21, 0x92, 0x9e, 0xd9, 0xa4, 0xae, 0x18, - 0xa6, 0x56, 0x78, 0x69, 0xf2, 0x01, 0x9c, 0x0e, 0x30, 0x76, 0x3d, 0x2b, 0x44, 0x9b, 0x19, 0x07, - 0xed, 0x49, 0x1f, 0x6d, 0xd7, 0xb3, 0x02, 0xd4, 0x5b, 0xc1, 0xfb, 0x64, 0x01, 0x52, 0x16, 0x29, - 0x78, 0x29, 0xe5, 0x36, 0x12, 0x19, 0x27, 0x7f, 0xa4, 0x2c, 0x40, 0xf7, 0x00, 0x4e, 0xf9, 0xe8, - 0x24, 0x42, 0x27, 0xc6, 0xc0, 0x49, 0x38, 0x4e, 0x81, 0x4c, 0xed, 0xeb, 0x19, 0x38, 0x95, 0xd4, - 0x28, 0x7c, 0x64, 0xdc, 0xb4, 0x0e, 0x0e, 0xfd, 0x57, 0x9a, 0xf8, 0x17, 0xb9, 0x0b, 0xd3, 0x66, - 0x17, 0xf7, 0xf3, 0x53, 0x50, 0xbe, 0x19, 0x2a, 0x6e, 0xf2, 0xaa, 0x21, 0x0c, 0xae, 0x8d, 0x8b, - 0x85, 0xa8, 0x2b, 0x60, 0x3c, 0x7e, 0x6c, 0x36, 0x3d, 0xb3, 0xd5, 0xe0, 0xbc, 0x73, 0x79, 0x20, - 0x48, 0xf5, 0x33, 0x38, 0x51, 0xf8, 0xc8, 0xb7, 0x67, 0xf7, 0xec, 0xb6, 0x7d, 0x70, 0x8c, 0xb7, - 0x46, 0xb2, 0xf5, 0xb2, 0x69, 0x3f, 0xed, 0xbe, 0x49, 0x99, 0x33, 0xdf, 0x31, 0xbc, 0xe6, 0x61, - 0xc3, 0xfc, 0xb8, 0xe7, 0x98, 0xae, 0x8b, 0x9e, 0xc0, 0x64, 0xca, 0x15, 0x36, 0xb8, 0xaf, 0xa7, - 0x6e, 0xb6, 0xd1, 0x32, 0xf0, 0x47, 0xe6, 0x29, 0x55, 0xba, 0x8a, 0x38, 0xaa, 0x21, 0x0a, 0xed, - 0xaf, 0x82, 0x67, 0x20, 0xbf, 0x7d, 0xbc, 0x89, 0x36, 0x37, 0x3b, 0x62, 0x73, 0x27, 0x9e, 0xbd, - 0xb9, 0x7f, 0xa6, 0x40, 0x29, 0x0d, 0x3c, 0xa1, 0x13, 0x6f, 0x43, 0x9e, 0x05, 0x3c, 0x78, 0x6c, - 0xaf, 0x98, 0x70, 0x01, 0x7a, 0x1a, 0x3a, 0x1e, 0x39, 0xb1, 0x1d, 0x3d, 0xc0, 0x41, 0xb9, 0x8a, - 0x76, 0xc0, 0x9f, 0xd5, 0xf0, 0x2f, 0xed, 0x3e, 0xe4, 0x7d, 0x68, 0x92, 0x83, 0x4c, 0xad, 0xcb, - 0xc2, 0x7b, 0xdb, 0xb6, 0x57, 0xeb, 0xaa, 0x0a, 0x01, 0xc8, 0x55, 0x3f, 0xb6, 0x5c, 0xcf, 0x65, - 0xc1, 0xa6, 0x35, 0xdb, 0x74, 0xb7, 0x6d, 0x0f, 0x93, 0xd4, 0x2c, 0x2d, 0x70, 0xcf, 0x53, 0x27, - 0xe8, 0xff, 0x4d, 0x4f, 0x9d, 0x5c, 0xfc, 0xeb, 0x4c, 0x10, 0x73, 0x9a, 0x83, 0xe9, 0xfa, 0x5e, - 0x65, 0x6f, 0xbf, 0xde, 0xd8, 0xde, 0xd9, 0xae, 0xaa, 0x27, 0x84, 0x84, 0xda, 0x76, 0x6d, 0x4f, - 0x55, 0xc8, 0x2c, 0x14, 0x78, 0xc2, 0xce, 0x7d, 0x35, 0xc3, 0x42, 0xa1, 0xec, 0x73, 0x7d, 0x7d, - 0xb3, 0xb6, 0x5d, 0x55, 0xb3, 0xb4, 0x46, 0x9e, 0x56, 0xd5, 0xf5, 0x1d, 0x5d, 0x9d, 0x20, 0x25, - 0x38, 0x15, 0xa0, 0xdd, 0x6b, 0xd4, 0xb6, 0x1b, 0xef, 0xef, 0xef, 0xe8, 0xfb, 0x5b, 0xea, 0x24, - 0x39, 0x03, 0x27, 0x79, 0xce, 0x5a, 0x75, 0x75, 0x67, 0x6b, 0xab, 0x56, 0xaf, 0xd7, 0x76, 0xb6, - 0xd5, 0x1c, 0x59, 0x00, 0xc2, 0x33, 0xb6, 0x2a, 0xb5, 0xed, 0xbd, 0xea, 0x76, 0x65, 0x7b, 0xb5, - 0xaa, 0x4e, 0x09, 0x05, 0xfc, 0x10, 0xec, 0xda, 0xce, 0xc3, 0x6d, 0x35, 0x4f, 0xce, 0xc1, 0x99, - 0x68, 0x46, 0xf5, 0x9e, 0x5e, 0x59, 0xab, 0xae, 0xa9, 0x05, 0xa1, 0xd4, 0x76, 0xb5, 0xba, 0x56, - 0x6f, 0xe8, 0xd5, 0xbb, 0x3b, 0x3b, 0x7b, 0x2a, 0x90, 0xf3, 0x50, 0x8a, 0x94, 0xd2, 0xab, 0x77, - 0x2b, 0x9b, 0x58, 0xd9, 0x34, 0xb9, 0x04, 0xe7, 0xa3, 0x38, 0xf5, 0xda, 0x03, 0x0a, 0xb3, 0xbb, - 0x59, 0x59, 0xad, 0xaa, 0x33, 0xe4, 0x45, 0xb8, 0x98, 0xd4, 0xb2, 0xc6, 0xf6, 0x4e, 0x10, 0x97, - 0x9e, 0x25, 0x45, 0x80, 0xa0, 0x2d, 0x9f, 0x55, 0x8b, 0x8b, 0x3f, 0xab, 0x00, 0xb0, 0x9b, 0xfa, - 0xfc, 0x43, 0xd1, 0x88, 0x56, 0x67, 0x87, 0x9c, 0x39, 0xe7, 0x23, 0xa9, 0xeb, 0xb5, 0xcd, 0xaa, - 0xaa, 0x90, 0xd3, 0x30, 0x2f, 0xa6, 0xde, 0xdd, 0xdc, 0x59, 0xbd, 0xcf, 0xa2, 0x93, 0x62, 0x32, - 0x8b, 0x8c, 0xab, 0x59, 0x72, 0x16, 0x4e, 0x8b, 0xe9, 0x3c, 0xa8, 0x5d, 0x5d, 0x53, 0x27, 0xa2, - 0x98, 0xee, 0xe9, 0x95, 0xdd, 0x0d, 0x75, 0x72, 0xf1, 0x6f, 0x2b, 0x90, 0x5b, 0xaf, 0x23, 0x5d, - 0x2a, 0xcc, 0xac, 0xd7, 0x25, 0x9a, 0xe6, 0x61, 0xd6, 0x4f, 0xb9, 0xbb, 0xa7, 0xaf, 0xd7, 0x59, - 0xd0, 0xde, 0x4f, 0xaa, 0x7e, 0x76, 0xef, 0x0d, 0xa6, 0x70, 0x7e, 0xca, 0xfa, 0x7e, 0x9d, 0x2a, - 0xc4, 0x1c, 0x4c, 0x07, 0x88, 0xd6, 0xeb, 0xea, 0x84, 0x98, 0xf0, 0x60, 0xbd, 0xae, 0x4e, 0x8a, - 0x09, 0x9f, 0x5d, 0xaf, 0xab, 0x39, 0x31, 0xe1, 0x73, 0xeb, 0x75, 0x75, 0x4a, 0xac, 0xfa, 0xb3, - 0xeb, 0xf5, 0xa3, 0x15, 0x35, 0xbf, 0xf8, 0xeb, 0x0a, 0x9c, 0x4e, 0x7c, 0x2e, 0x90, 0x5c, 0x86, - 0x17, 0xb0, 0x3d, 0x0d, 0xde, 0xc2, 0xd5, 0x8d, 0xca, 0xf6, 0xbd, 0xaa, 0xd4, 0x94, 0x2b, 0x70, - 0x39, 0x15, 0x64, 0x6b, 0x67, 0xad, 0xb6, 0x5e, 0xab, 0xae, 0xa9, 0x0a, 0xd1, 0xe0, 0x42, 0x2a, - 0x58, 0x65, 0x8d, 0x2a, 0x57, 0x86, 0xbc, 0x04, 0x97, 0x52, 0x61, 0xd6, 0xaa, 0x9b, 0xd5, 0xbd, - 0xea, 0x9a, 0x9a, 0x5d, 0xf4, 0x60, 0x46, 0x7a, 0x94, 0x9d, 0x2a, 0x78, 0xf5, 0x41, 0x55, 0xaf, - 0xed, 0x7d, 0x20, 0x11, 0x46, 0x55, 0x55, 0x4a, 0xaf, 0x6c, 0x56, 0xf4, 0x2d, 0x55, 0xa1, 0xb2, - 0x94, 0x33, 0x1e, 0x56, 0xf4, 0xed, 0xda, 0xf6, 0x3d, 0x35, 0x83, 0xfd, 0x2b, 0x82, 0x6b, 0xaf, - 0xb6, 0xfe, 0x81, 0x9a, 0x5d, 0xfc, 0x11, 0x05, 0x66, 0xc4, 0x17, 0xb8, 0x69, 0xb5, 0x7a, 0xb5, - 0xbe, 0xb3, 0xaf, 0xaf, 0xca, 0xfc, 0x60, 0x67, 0xf0, 0x85, 0x74, 0xbe, 0x69, 0x42, 0x49, 0x2a, - 0xb1, 0x56, 0x55, 0x33, 0x94, 0x1e, 0x39, 0xdd, 0xdf, 0xc9, 0x91, 0xa5, 0x6d, 0x90, 0xb3, 0x90, - 0x33, 0xea, 0xc4, 0xe2, 0x0f, 0x29, 0x30, 0x87, 0x8f, 0x34, 0xb3, 0x67, 0x58, 0x91, 0xa2, 0x32, - 0x2c, 0xe0, 0xa6, 0x8c, 0x46, 0x65, 0x15, 0xef, 0x10, 0x10, 0xa9, 0x3a, 0x0f, 0xa5, 0x78, 0x1e, - 0xe3, 0xa9, 0xaa, 0x24, 0xe7, 0xae, 0xea, 0xd5, 0xca, 0x1e, 0xa5, 0x2f, 0x31, 0x77, 0x7f, 0x77, - 0x8d, 0xe6, 0x66, 0x17, 0xbf, 0xe0, 0xbf, 0xb8, 0x2a, 0x3c, 0x88, 0x4b, 0x8b, 0xb0, 0x66, 0xfb, - 0x65, 0x76, 0x2b, 0x7a, 0x65, 0xcb, 0x27, 0xe6, 0x1c, 0x9c, 0x49, 0xca, 0xdd, 0x59, 0x5f, 0x57, - 0x15, 0xda, 0x8a, 0xc4, 0xcc, 0x6d, 0x35, 0xb3, 0xb8, 0x02, 0x53, 0xab, 0x36, 0xee, 0x1a, 0x67, - 0x1b, 0x58, 0x10, 0xdb, 0x14, 0x64, 0x37, 0x77, 0x1e, 0x32, 0x63, 0xbd, 0x55, 0x5d, 0xab, 0xed, - 0x6f, 0xa9, 0x19, 0x9a, 0xbd, 0x51, 0xbb, 0xb7, 0xa1, 0x66, 0x17, 0xbf, 0xae, 0x40, 0xa1, 0x66, - 0xef, 0x3a, 0x36, 0x75, 0xca, 0x29, 0xaf, 0x6b, 0x3b, 0x8d, 0x5d, 0x7d, 0x87, 0x9a, 0x81, 0x46, - 0xbd, 0xfa, 0xfe, 0x3e, 0xdb, 0x13, 0xa3, 0x9e, 0xa0, 0xfd, 0x58, 0xc8, 0xd2, 0x2b, 0xdb, 0x6b, - 0x3b, 0x5b, 0x6c, 0x0b, 0x83, 0x90, 0xbc, 0x76, 0x97, 0x69, 0x89, 0x94, 0xd4, 0xd0, 0xab, 0x5b, - 0x3b, 0x94, 0x19, 0xd4, 0x8a, 0x0b, 0x39, 0xab, 0x5b, 0xb4, 0x8f, 0x96, 0x61, 0x41, 0xac, 0xf2, - 0x83, 0xed, 0xd5, 0x46, 0x7d, 0xa3, 0x42, 0x6d, 0xc7, 0xe4, 0xe2, 0xcf, 0x66, 0x60, 0x5a, 0x78, - 0x53, 0x97, 0xd2, 0xc0, 0x1b, 0x4f, 0xed, 0x9c, 0xa8, 0x53, 0x52, 0xb2, 0x7f, 0x21, 0x85, 0xc8, - 0x2d, 0x96, 0x53, 0x79, 0x50, 0xa9, 0x6d, 0x56, 0xee, 0x6e, 0x72, 0xbd, 0x92, 0xf3, 0x70, 0x7f, - 0x0e, 0xed, 0x43, 0xb1, 0xac, 0xb5, 0x2a, 0xcf, 0x9a, 0x10, 0x84, 0x13, 0x66, 0xed, 0xad, 0x6e, - 0xd0, 0xea, 0x26, 0xa9, 0x0a, 0x4b, 0x99, 0x6c, 0x5c, 0xca, 0xc5, 0x08, 0xf4, 0x7b, 0xeb, 0x14, - 0xb9, 0x00, 0x65, 0x29, 0x67, 0x4f, 0xff, 0x80, 0xd7, 0x46, 0x31, 0xe6, 0x63, 0x25, 0xf5, 0x2a, - 0x35, 0xf7, 0x55, 0xb5, 0xb0, 0xf8, 0x55, 0xc5, 0xdf, 0xdd, 0x51, 0xf7, 0x1f, 0x04, 0x17, 0x2b, - 0x0f, 0x87, 0xd6, 0x17, 0xe0, 0x6c, 0x34, 0x7d, 0xaf, 0xb1, 0xab, 0x57, 0xeb, 0xd5, 0x6d, 0x3a, - 0xd0, 0x9e, 0x02, 0x55, 0xce, 0xc6, 0x1d, 0x51, 0x31, 0x64, 0x38, 0xfa, 0x65, 0x23, 0x0c, 0xc5, - 0xe1, 0x94, 0x0f, 0x7e, 0x13, 0x8b, 0xdf, 0x0d, 0xb3, 0x7c, 0xe3, 0xcd, 0x96, 0xd9, 0xb2, 0xfa, - 0x1d, 0x36, 0x54, 0xb2, 0xf1, 0x8c, 0x69, 0x5e, 0x63, 0xab, 0x72, 0x6f, 0xbb, 0xba, 0x57, 0x5b, - 0x55, 0x4f, 0xb0, 0x81, 0x57, 0xca, 0xac, 0xd7, 0xa9, 0x25, 0xc4, 0x21, 0x54, 0x4a, 0xdf, 0x7e, - 0xb0, 0x55, 0x55, 0x33, 0x8b, 0x26, 0x4c, 0xb3, 0x7b, 0x80, 0x99, 0x2e, 0x9c, 0x85, 0xd3, 0x4c, - 0x62, 0x3e, 0xaf, 0x3f, 0xbb, 0x57, 0xd5, 0xb7, 0x51, 0x55, 0xa3, 0x59, 0x74, 0x5c, 0xc7, 0x2c, - 0x85, 0x8e, 0xb4, 0x89, 0x59, 0x8d, 0xfa, 0xc3, 0xda, 0xde, 0xea, 0x86, 0x9a, 0x59, 0xdc, 0x83, - 0x62, 0xb0, 0xb5, 0x64, 0xbd, 0x6d, 0x1c, 0xb8, 0xec, 0xe6, 0x91, 0xc6, 0xfa, 0x66, 0xe5, 0x5e, - 0xbd, 0x11, 0x6e, 0x29, 0x9b, 0x87, 0xd9, 0x20, 0x15, 0x39, 0xad, 0xb0, 0xeb, 0x4f, 0x78, 0x12, - 0x13, 0x62, 0x63, 0x7d, 0x47, 0x5f, 0xa5, 0xc4, 0x6f, 0xc2, 0x8c, 0xf8, 0x4c, 0x22, 0xed, 0x09, - 0xfb, 0xdd, 0x27, 0x5d, 0xfb, 0xa3, 0xee, 0x96, 0xd1, 0x3c, 0xb4, 0xba, 0x7c, 0x87, 0xd0, 0x03, - 0xcb, 0xf1, 0xfa, 0x46, 0xdb, 0x4f, 0x43, 0xe9, 0xdc, 0x35, 0x1c, 0x73, 0xcb, 0xf4, 0xc2, 0xd4, - 0xcc, 0xe2, 0xbf, 0x54, 0xf0, 0x92, 0x16, 0xe1, 0x09, 0x24, 0x34, 0xcd, 0x52, 0x4a, 0xbd, 0xdf, - 0x6d, 0x19, 0xc7, 0xac, 0x77, 0xc8, 0x39, 0x5b, 0x36, 0xe6, 0x30, 0x4b, 0x2f, 0xe5, 0xec, 0xf5, - 0x4d, 0x97, 0x66, 0x65, 0x50, 0x74, 0x52, 0xd6, 0x43, 0xb3, 0xd5, 0x65, 0x99, 0xa8, 0x04, 0x91, - 0x72, 0x87, 0x7d, 0x07, 0xf3, 0x26, 0xe2, 0xb5, 0xad, 0x3b, 0x16, 0xcd, 0x99, 0x8c, 0x97, 0xaa, - 0x1b, 0x5e, 0xdf, 0xa1, 0x79, 0xb9, 0xc5, 0x2f, 0x47, 0x8f, 0xea, 0xb1, 0x63, 0x75, 0xe4, 0x62, - 0xf4, 0x6c, 0x16, 0x4b, 0xe7, 0xac, 0x53, 0x4f, 0xa0, 0xe7, 0x94, 0x00, 0xe0, 0xff, 0x56, 0x15, - 0x3a, 0x46, 0x27, 0x9e, 0xd8, 0x63, 0xbb, 0xa4, 0x76, 0x7a, 0x6a, 0x66, 0xf1, 0x87, 0xb3, 0xb8, - 0x97, 0x37, 0xf1, 0xfc, 0x0d, 0x7a, 0x5e, 0x29, 0x79, 0x21, 0x19, 0x2f, 0xf3, 0xab, 0x8e, 0x12, - 0x80, 0xb6, 0x6d, 0x0f, 0xf7, 0x70, 0xe0, 0x66, 0xaa, 0x4b, 0xc9, 0xe7, 0xbf, 0x28, 0x1c, 0xee, - 0xcb, 0xca, 0x0c, 0xaa, 0xae, 0xf2, 0xc8, 0x46, 0x34, 0x59, 0xea, 0x2d, 0xa4, 0x01, 0xed, 0x1a, - 0x7d, 0x17, 0xb7, 0x62, 0x0d, 0x40, 0x54, 0xf7, 0xec, 0x5e, 0xcf, 0x6c, 0xa9, 0x93, 0x83, 0x10, - 0xb1, 0x0b, 0xa9, 0xd4, 0xdc, 0x20, 0x18, 0xbe, 0xef, 0x6b, 0x6a, 0x10, 0x0c, 0xdf, 0x48, 0x96, - 0x1f, 0x44, 0x10, 0xdf, 0x7f, 0xa6, 0x16, 0x16, 0x7f, 0x27, 0xe1, 0x26, 0x01, 0xf1, 0xf0, 0x0e, - 0xb9, 0x1a, 0xdd, 0xdd, 0x2f, 0xe7, 0x87, 0x22, 0xb9, 0x12, 0x3d, 0x2b, 0x20, 0x03, 0x22, 0x9f, - 0x54, 0x25, 0x2e, 0xb9, 0xc8, 0xe1, 0x21, 0xd3, 0x65, 0xfb, 0xf2, 0x5e, 0x8a, 0x1e, 0x66, 0x90, - 0xe1, 0x28, 0x4b, 0xd5, 0xec, 0xe2, 0x12, 0xcc, 0x45, 0x66, 0x98, 0x64, 0x06, 0xf2, 0x0e, 0x9b, - 0x7c, 0xb5, 0xd4, 0x13, 0x74, 0x5a, 0xd3, 0x73, 0xcc, 0xc7, 0xa6, 0x43, 0x3f, 0x95, 0x95, 0xdf, - 0xcc, 0xc0, 0xbc, 0xb0, 0x9f, 0x15, 0x5d, 0x16, 0x97, 0xfc, 0xaa, 0x02, 0xa7, 0x92, 0x0e, 0xd2, - 0x92, 0xc4, 0xeb, 0x83, 0x59, 0xa1, 0x01, 0x27, 0xc0, 0xcb, 0x6f, 0x8e, 0x5b, 0x8c, 0x47, 0x75, - 0x5e, 0xf8, 0x81, 0x3f, 0xf9, 0xf3, 0x9f, 0xcc, 0x9c, 0xd1, 0xc8, 0xf2, 0xd1, 0x6b, 0xcb, 0x06, - 0xc2, 0x2f, 0xb3, 0x63, 0xe9, 0xee, 0x1d, 0x65, 0xf1, 0xa6, 0x42, 0x1c, 0xc8, 0xb1, 0x40, 0x10, - 0xb9, 0x9a, 0x5e, 0x85, 0x14, 0x68, 0x2a, 0x5f, 0x1b, 0x0e, 0xc8, 0x6b, 0x3f, 0x8d, 0xb5, 0xcf, - 0x69, 0x10, 0xd6, 0x7e, 0x47, 0x59, 0x5c, 0xf9, 0xd7, 0x13, 0x78, 0x1d, 0x95, 0xcf, 0x32, 0x3c, - 0x77, 0xd0, 0x81, 0x1c, 0x0b, 0x79, 0x92, 0x2b, 0x69, 0x9b, 0xc7, 0xa5, 0xb0, 0x6b, 0xf9, 0xe5, - 0x61, 0x60, 0x9c, 0x86, 0x53, 0x48, 0x43, 0x51, 0x2b, 0x50, 0x1a, 0x1c, 0xbb, 0x6d, 0x52, 0x12, - 0x88, 0x0b, 0x85, 0x80, 0x6f, 0xe4, 0x5a, 0x1a, 0xaa, 0xe8, 0xea, 0x7a, 0xf9, 0x95, 0x11, 0x20, - 0x79, 0xbd, 0xf3, 0x58, 0xef, 0x34, 0x09, 0xeb, 0x25, 0x5f, 0x86, 0x29, 0x1e, 0x11, 0x20, 0xa9, - 0xd4, 0xcb, 0xb1, 0x8b, 0xf2, 0xd5, 0xa1, 0x70, 0xbc, 0xba, 0x4b, 0x58, 0x5d, 0x99, 0x94, 0x82, - 0xea, 0x96, 0x2d, 0x06, 0xb2, 0xfc, 0xa5, 0xae, 0xd1, 0x31, 0x3f, 0x21, 0x1f, 0x06, 0x92, 0x4e, - 0xe5, 0xb0, 0x2c, 0xe7, 0x97, 0x87, 0x81, 0xf1, 0xaa, 0x4b, 0x58, 0x35, 0x59, 0x54, 0xc3, 0xaa, - 0x79, 0x95, 0x1d, 0xc8, 0xf1, 0x9d, 0x47, 0xa9, 0x55, 0x4a, 0xa7, 0x11, 0xd2, 0xab, 0x8c, 0x9c, - 0x4b, 0xe2, 0x42, 0x2d, 0x4b, 0x42, 0x5d, 0xf9, 0xfb, 0x19, 0x38, 0x29, 0xe8, 0x95, 0xbf, 0x63, - 0x9f, 0xfc, 0xb4, 0x02, 0x33, 0xe2, 0x11, 0x02, 0x92, 0xf8, 0xa8, 0xde, 0x80, 0xe3, 0x08, 0xe5, - 0x9b, 0xa3, 0x17, 0xf0, 0x2f, 0x51, 0x44, 0x0a, 0x5f, 0x20, 0xe7, 0x28, 0x85, 0x16, 0x83, 0xb4, - 0x4c, 0x77, 0x59, 0x3c, 0x77, 0x40, 0x7e, 0x40, 0x09, 0xf7, 0x65, 0x2f, 0x0e, 0xaa, 0x42, 0x3e, - 0x92, 0x50, 0x7e, 0x75, 0x24, 0x58, 0x4e, 0xc9, 0x05, 0xa4, 0xa4, 0x44, 0x16, 0x22, 0x94, 0xf0, - 0xcd, 0xd8, 0x2b, 0xbf, 0xa5, 0x48, 0x1b, 0xfb, 0xfd, 0x07, 0x95, 0xbf, 0xae, 0x40, 0x51, 0xbe, - 0xa0, 0x8c, 0xdc, 0x4c, 0xde, 0x15, 0x9a, 0x7e, 0xed, 0x5f, 0xf9, 0xb5, 0x31, 0x4a, 0x24, 0x31, - 0x8e, 0x87, 0xaf, 0x03, 0x5d, 0xe6, 0x91, 0xce, 0x95, 0xbf, 0xce, 0xc1, 0x42, 0x9c, 0xe6, 0x5d, - 0xc3, 0x72, 0x28, 0x4f, 0x7d, 0x4b, 0x72, 0x7d, 0x40, 0xed, 0xb1, 0x7d, 0x1c, 0xe5, 0x1b, 0x23, - 0x42, 0x73, 0x3a, 0xcf, 0x21, 0x9d, 0xa7, 0x35, 0x55, 0xa0, 0x13, 0x03, 0x5e, 0xd4, 0xbc, 0x7c, - 0x55, 0x09, 0xbb, 0xfa, 0x30, 0xbc, 0x91, 0x1e, 0xbf, 0x34, 0x2a, 0xb8, 0x7f, 0x56, 0x0e, 0xe9, - 0xb8, 0x48, 0x5e, 0x88, 0xd2, 0x11, 0xf6, 0x7f, 0xab, 0xf5, 0x09, 0xf9, 0x61, 0x45, 0xb4, 0x78, - 0xcb, 0x43, 0x2a, 0x89, 0x19, 0xbe, 0x9b, 0xa3, 0x17, 0x90, 0xad, 0x02, 0x89, 0xf1, 0x87, 0x7c, - 0x45, 0x81, 0xbc, 0xbf, 0x0d, 0x80, 0x0c, 0x6b, 0x6e, 0x64, 0x43, 0x41, 0x79, 0x79, 0x64, 0xf8, - 0x24, 0xf5, 0x97, 0xf8, 0xc3, 0xa2, 0xdf, 0x3f, 0xa5, 0x00, 0x84, 0x3b, 0x01, 0xc8, 0xb0, 0x86, - 0xc6, 0xf6, 0x15, 0x0c, 0xd4, 0xf1, 0xe4, 0x6d, 0x06, 0xda, 0x65, 0xa4, 0xe9, 0x9c, 0x96, 0x42, - 0x13, 0xd5, 0xa0, 0x1f, 0x51, 0x02, 0x73, 0x3d, 0x4c, 0x8d, 0x65, 0xab, 0x7d, 0x63, 0x44, 0x68, - 0x59, 0x7d, 0x16, 0xe3, 0xea, 0xf3, 0xa5, 0x70, 0x37, 0xc9, 0x27, 0x2b, 0xff, 0x78, 0x12, 0xce, - 0xc6, 0x3b, 0x1c, 0xbf, 0xf7, 0x95, 0xfc, 0x98, 0xa4, 0x5c, 0x2b, 0x03, 0x28, 0x48, 0xb9, 0x4e, - 0xb6, 0xfc, 0xfa, 0x58, 0x65, 0x38, 0xed, 0x65, 0xa4, 0xfd, 0x14, 0x21, 0x02, 0xed, 0x2d, 0x4e, - 0xd2, 0xaf, 0x0a, 0x3d, 0x70, 0x79, 0x28, 0xf2, 0x48, 0x1f, 0xbc, 0x39, 0x7a, 0x01, 0x4e, 0xca, - 0xdb, 0x48, 0xca, 0x0a, 0xb9, 0x19, 0x27, 0x25, 0xec, 0x87, 0x09, 0x57, 0xaf, 0x7e, 0x42, 0x7e, - 0x4d, 0x81, 0xbc, 0x7f, 0x99, 0x2b, 0x19, 0x5e, 0x71, 0xe4, 0x2a, 0xd9, 0x81, 0xda, 0x97, 0x72, - 0x53, 0xec, 0x6d, 0xa4, 0xf5, 0x75, 0xed, 0xb5, 0x04, 0x5a, 0xfd, 0xbb, 0x5d, 0x53, 0x88, 0xfd, - 0x6d, 0x05, 0x20, 0xbc, 0x00, 0x76, 0x04, 0x49, 0xc7, 0xae, 0xa0, 0x1d, 0x41, 0xd2, 0x09, 0x37, - 0xcc, 0xbe, 0x83, 0x24, 0xdf, 0xd2, 0x5e, 0x4f, 0x20, 0xb9, 0x65, 0x0e, 0x26, 0x7a, 0xe5, 0x97, - 0x15, 0xc9, 0xdd, 0xdc, 0xb5, 0xed, 0x36, 0xf9, 0x51, 0x05, 0x72, 0xec, 0x0e, 0xd0, 0xe4, 0xee, - 0x95, 0x76, 0x2f, 0x6c, 0x72, 0xf7, 0x4a, 0xbf, 0x58, 0xf4, 0x65, 0x24, 0xfc, 0x52, 0xf9, 0x02, - 0x25, 0x9c, 0x97, 0xea, 0xd9, 0x76, 0xdb, 0x5d, 0x66, 0x77, 0xb6, 0x2e, 0x7f, 0xa9, 0xdf, 0xa7, - 0xfd, 0xeb, 0x1b, 0xb2, 0x4b, 0xbc, 0x6d, 0xb7, 0x4c, 0xf2, 0x7d, 0x43, 0xdc, 0xc5, 0xf8, 0x75, - 0xb7, 0xc9, 0xee, 0x62, 0xc2, 0xb5, 0xa6, 0xf2, 0x28, 0x8b, 0x37, 0x6e, 0x0a, 0xee, 0x22, 0xbb, - 0x1d, 0xe6, 0x13, 0xf2, 0xe3, 0x71, 0x17, 0xe0, 0xc6, 0x90, 0x0a, 0x22, 0xe3, 0xff, 0xd2, 0xa8, - 0xe0, 0x49, 0x5e, 0xac, 0x44, 0x16, 0x1f, 0xf9, 0x47, 0x70, 0xdc, 0x93, 0xae, 0x41, 0x4d, 0x76, - 0xdc, 0x13, 0x6f, 0x45, 0x95, 0x1d, 0x77, 0xa4, 0x81, 0xfc, 0x7c, 0xda, 0x6c, 0xee, 0xf5, 0xa1, - 0x68, 0x13, 0xe6, 0x72, 0x6f, 0x8c, 0x57, 0x88, 0x93, 0x75, 0x16, 0xc9, 0x3a, 0x49, 0xe6, 0x43, - 0xd6, 0xf0, 0x89, 0xdc, 0xca, 0x5f, 0xcc, 0x4b, 0x53, 0x50, 0x7e, 0xc8, 0xc6, 0x0d, 0xfc, 0xa0, - 0xab, 0x23, 0x3e, 0x90, 0x54, 0xbe, 0x36, 0x1c, 0x90, 0x53, 0xb3, 0x80, 0xd4, 0xa8, 0xda, 0x34, - 0xa5, 0x86, 0x1f, 0x1e, 0xa2, 0xc3, 0xd6, 0x11, 0x4c, 0xe2, 0x43, 0x44, 0xc9, 0x1a, 0x1b, 0x7f, - 0xf3, 0xa8, 0x7c, 0x75, 0x28, 0x1c, 0xaf, 0xf1, 0x3c, 0xd6, 0xb8, 0xa0, 0xcd, 0x0b, 0x35, 0x2e, - 0x37, 0x29, 0x08, 0xad, 0xf7, 0xcb, 0x83, 0xa7, 0xb1, 0x09, 0x6f, 0x1d, 0x0d, 0x6a, 0x6c, 0x64, - 0x8c, 0xbc, 0x88, 0x55, 0x9f, 0x5d, 0x3c, 0x23, 0x56, 0xfd, 0xa5, 0xe0, 0x60, 0xc9, 0x27, 0xe4, - 0x87, 0x84, 0xc1, 0xe6, 0xda, 0x08, 0xaf, 0xbe, 0x0c, 0xd0, 0xc9, 0xc4, 0xf7, 0x61, 0xb4, 0xab, - 0x48, 0xc1, 0x65, 0x72, 0x51, 0xa4, 0x20, 0xe8, 0xb0, 0x02, 0x25, 0xbf, 0xa6, 0x00, 0x89, 0xbf, - 0x51, 0x43, 0x5e, 0x7f, 0x8a, 0xf7, 0x7e, 0x92, 0xf5, 0x74, 0xd8, 0x33, 0x38, 0xda, 0x2b, 0x48, - 0xea, 0x8b, 0xda, 0x85, 0x04, 0x52, 0x3f, 0xb2, 0xbc, 0xc3, 0x70, 0xf5, 0x81, 0x7c, 0x5f, 0x30, - 0x3d, 0xbc, 0x3a, 0xe2, 0x73, 0x35, 0x83, 0x84, 0x16, 0x99, 0x22, 0x6a, 0x48, 0xc7, 0xf9, 0x72, - 0x9a, 0xd0, 0x18, 0x01, 0x93, 0xf8, 0x8c, 0xcb, 0x20, 0x6d, 0x15, 0xdf, 0x9c, 0x19, 0xa4, 0xad, - 0xd2, 0xf3, 0x31, 0xb2, 0x57, 0xee, 0xd7, 0x8e, 0x6f, 0xc5, 0x48, 0xe2, 0xfa, 0x19, 0x05, 0x66, - 0xa5, 0xc7, 0x5a, 0x92, 0xfd, 0xe1, 0xf4, 0x87, 0x65, 0x92, 0xfd, 0xe1, 0x01, 0x4f, 0xc9, 0x24, - 0x53, 0x86, 0x6f, 0xca, 0x48, 0x94, 0x1d, 0x8b, 0x76, 0x76, 0x71, 0x84, 0x37, 0x58, 0x06, 0xce, - 0x4d, 0x53, 0x1e, 0x92, 0xd1, 0x4e, 0x22, 0x31, 0xb3, 0x44, 0x34, 0x23, 0xe4, 0x57, 0xc6, 0x5a, - 0x3b, 0x1b, 0xfa, 0x14, 0x4c, 0xf2, 0xda, 0xd9, 0xf0, 0x27, 0x56, 0xfc, 0x99, 0x83, 0x76, 0x52, - 0xe4, 0x94, 0xa0, 0xbe, 0x5f, 0x53, 0xa0, 0x28, 0xbf, 0x3b, 0x42, 0x96, 0xc7, 0x7c, 0x12, 0x25, - 0xd9, 0xd3, 0x1c, 0xf4, 0xa4, 0x89, 0x3f, 0x44, 0x6a, 0xa7, 0x25, 0xcd, 0xe2, 0xb0, 0x48, 0xd7, - 0x2f, 0x29, 0x30, 0x17, 0x79, 0x6a, 0x84, 0x8c, 0x50, 0x8f, 0x7c, 0xdf, 0x6b, 0xb2, 0x63, 0x39, - 0xf8, 0x1d, 0x93, 0x6b, 0x48, 0x9a, 0xa6, 0xbd, 0x90, 0x48, 0xda, 0x32, 0xbf, 0x60, 0x95, 0x92, - 0xf8, 0x73, 0x0a, 0xcc, 0xc7, 0x5e, 0xd9, 0x48, 0x76, 0x27, 0x07, 0x3f, 0x8b, 0x52, 0x7e, 0x7d, - 0xac, 0x32, 0xf2, 0xaa, 0x28, 0x49, 0xe6, 0x21, 0xf9, 0x13, 0x05, 0xce, 0x0f, 0x7a, 0x03, 0x84, - 0xbc, 0xf7, 0x4c, 0x4f, 0x97, 0x94, 0x3f, 0xf5, 0xb4, 0xc5, 0x39, 0xf9, 0x6f, 0x20, 0xf9, 0x4b, - 0xda, 0x2b, 0xc9, 0x7c, 0x16, 0xba, 0xb1, 0xa8, 0xae, 0xdf, 0x54, 0x60, 0x21, 0xf9, 0xe5, 0x0f, - 0xf2, 0xd6, 0x70, 0x82, 0x12, 0x9f, 0x2a, 0x29, 0xbf, 0x3d, 0x7e, 0x41, 0xde, 0x86, 0x5b, 0xd8, - 0x86, 0x65, 0x6d, 0x31, 0xa9, 0x0d, 0xcb, 0xc1, 0x95, 0x58, 0x11, 0x8b, 0xbd, 0xf2, 0xb3, 0x13, - 0xd2, 0xc2, 0x0f, 0xee, 0xb2, 0x64, 0x21, 0x45, 0xf2, 0xbd, 0x90, 0xe3, 0xbf, 0xae, 0x8e, 0xf8, - 0x08, 0xea, 0xa0, 0xd1, 0x44, 0x7e, 0xaf, 0x54, 0x9e, 0xb1, 0xe3, 0x9e, 0x51, 0x03, 0x01, 0x96, - 0xd9, 0x3f, 0xca, 0xdf, 0xef, 0xa5, 0x2e, 0xc8, 0xb0, 0xfa, 0xa5, 0x87, 0x3a, 0x07, 0xbb, 0x20, - 0xa3, 0xd5, 0xcf, 0x5e, 0x39, 0xa5, 0xf5, 0x7f, 0x11, 0x26, 0x91, 0x1d, 0x83, 0x06, 0x33, 0xf1, - 0xbd, 0xe4, 0x41, 0x83, 0x99, 0xfc, 0xb4, 0xb1, 0x64, 0x72, 0xc4, 0xca, 0xf1, 0x37, 0xad, 0xfb, - 0x07, 0x14, 0x98, 0xe2, 0xaf, 0xe3, 0x92, 0x6b, 0xa3, 0xbe, 0xdf, 0x3b, 0xc8, 0x01, 0x8a, 0x3e, - 0xb5, 0xcb, 0x47, 0x73, 0xed, 0x4c, 0x94, 0x04, 0xfe, 0xae, 0x2b, 0xd5, 0x8d, 0xdf, 0xc8, 0x4a, - 0x0b, 0x99, 0xfc, 0x38, 0x1f, 0xa5, 0x6d, 0x12, 0xc3, 0x77, 0x69, 0x0b, 0x29, 0xc9, 0xa7, 0xda, - 0xcb, 0x37, 0x46, 0x84, 0x4e, 0xf7, 0x4f, 0x3b, 0x0c, 0xce, 0x5f, 0xce, 0x61, 0x67, 0xa8, 0xc9, - 0x50, 0xbc, 0xd2, 0xa1, 0xec, 0xb4, 0xf5, 0xc0, 0xd4, 0xa3, 0xd9, 0x7c, 0x66, 0xa7, 0x95, 0x62, - 0x74, 0x2c, 0x37, 0x11, 0x92, 0xcb, 0xcb, 0xdf, 0xc7, 0x37, 0x4a, 0x33, 0xc3, 0xe3, 0xa6, 0xc3, - 0xc9, 0x91, 0x8f, 0x4f, 0xca, 0xd3, 0x16, 0x89, 0x9c, 0x95, 0x3f, 0x97, 0xfb, 0xb2, 0x70, 0x83, - 0x3f, 0x1d, 0x1f, 0x06, 0xaf, 0x9f, 0xa6, 0x3e, 0x0c, 0x91, 0x4c, 0x60, 0xfa, 0x03, 0x10, 0xda, - 0x6b, 0x48, 0xe0, 0xab, 0x04, 0x8d, 0xa9, 0xf0, 0xe2, 0x80, 0xe0, 0x5f, 0xcb, 0xaf, 0x13, 0x7c, - 0x32, 0x74, 0x89, 0x39, 0xed, 0xf1, 0x87, 0xf2, 0x8d, 0x11, 0xa1, 0x93, 0x96, 0x98, 0x45, 0xd2, - 0xa8, 0x08, 0x7f, 0x6c, 0xc8, 0x02, 0x61, 0xda, 0xa3, 0x0e, 0x43, 0x89, 0x88, 0x4c, 0x7e, 0xb8, - 0x3f, 0xbf, 0x78, 0x39, 0xc6, 0x9f, 0x18, 0x5f, 0x7e, 0x52, 0x09, 0x1c, 0xfa, 0x61, 0x24, 0xc9, - 0xc3, 0xc8, 0x8d, 0x11, 0xa1, 0x39, 0x49, 0xd7, 0x91, 0xa4, 0x97, 0xcb, 0xc3, 0x49, 0xa2, 0x66, - 0xe1, 0x2f, 0x26, 0xe5, 0x58, 0x41, 0x70, 0x75, 0xa3, 0x4b, 0x27, 0x20, 0x5c, 0x8e, 0xc9, 0x97, - 0xae, 0x05, 0xa0, 0xb2, 0x18, 0xaf, 0x8f, 0x06, 0x2c, 0xaf, 0x52, 0x6a, 0x73, 0xb8, 0x76, 0x15, - 0xd6, 0x4e, 0x85, 0xf8, 0x83, 0xd2, 0xc2, 0xe9, 0xd2, 0x60, 0xbc, 0x31, 0xdf, 0x67, 0x79, 0x64, - 0x78, 0x4e, 0xca, 0x19, 0x24, 0x65, 0x9e, 0x44, 0x49, 0xa1, 0xf3, 0x90, 0xa0, 0xbf, 0x0d, 0x69, - 0x5d, 0xa4, 0xbb, 0xdd, 0x18, 0x11, 0x9a, 0x53, 0xb0, 0x8c, 0x14, 0xbc, 0x42, 0xae, 0x46, 0x28, - 0x10, 0x16, 0x49, 0xc5, 0xfb, 0x36, 0x3f, 0x11, 0xd7, 0xc1, 0x87, 0xc8, 0x48, 0xd6, 0xf2, 0xeb, - 0xa3, 0x01, 0xcb, 0xf3, 0xeb, 0xc5, 0x8b, 0x51, 0xb2, 0xa2, 0xe4, 0xfc, 0x9c, 0x02, 0xf9, 0x07, - 0x46, 0xdb, 0x42, 0x25, 0x1f, 0xd2, 0x76, 0x1f, 0x6e, 0xb0, 0xe9, 0x4c, 0x00, 0xe7, 0x44, 0xdd, - 0x44, 0xa2, 0x16, 0xc9, 0xb5, 0x28, 0x51, 0x47, 0x1c, 0x32, 0x4a, 0xdd, 0xca, 0xff, 0x94, 0x57, - 0xe9, 0xe5, 0x0b, 0x47, 0xd9, 0x18, 0x34, 0x60, 0x9e, 0x22, 0x83, 0x8f, 0x30, 0x4f, 0x49, 0x2e, - 0x20, 0x2f, 0x9a, 0x68, 0xa7, 0x70, 0xe5, 0x93, 0x43, 0xf6, 0x28, 0xa4, 0xc5, 0x0c, 0xd8, 0x8f, - 0x84, 0xd6, 0x62, 0x04, 0x72, 0x64, 0x83, 0x71, 0x73, 0xf4, 0x02, 0x32, 0x39, 0xe5, 0x54, 0x72, - 0x7e, 0x62, 0x78, 0x0c, 0x43, 0xae, 0x60, 0xb4, 0xa9, 0x48, 0x6a, 0x19, 0xd9, 0x6d, 0x20, 0x89, - 0x74, 0x49, 0xe3, 0xe0, 0xcd, 0x51, 0xee, 0x94, 0x95, 0xfa, 0xe6, 0x6b, 0x63, 0x94, 0xe0, 0xe4, - 0xbc, 0x8a, 0xe4, 0x5c, 0x21, 0x2f, 0x26, 0x91, 0x13, 0xdd, 0x51, 0x20, 0x0c, 0x41, 0x23, 0x48, - 0x50, 0xee, 0x9f, 0x37, 0x47, 0x2f, 0x20, 0x3b, 0x36, 0x8b, 0xe7, 0x12, 0x49, 0x63, 0x24, 0xad, - 0xfc, 0xe2, 0x7c, 0x24, 0x30, 0x1c, 0x6c, 0xf6, 0x19, 0x21, 0x30, 0x9c, 0xfc, 0xe6, 0x4e, 0xf9, - 0xc6, 0x88, 0xd0, 0xc9, 0x81, 0xe1, 0xe0, 0x12, 0x19, 0xd4, 0xb2, 0x9f, 0x51, 0x60, 0x5a, 0x78, - 0xcc, 0x85, 0xbc, 0x36, 0xf6, 0x5b, 0x33, 0xe5, 0x95, 0x71, 0x8a, 0x24, 0x07, 0x1c, 0x43, 0x9a, - 0x96, 0xf1, 0x12, 0x25, 0x4a, 0xd9, 0x8f, 0x2a, 0xc1, 0xbd, 0x63, 0x64, 0xf8, 0xed, 0xcc, 0xd2, - 0x52, 0xc1, 0xd2, 0xa8, 0xe0, 0x49, 0x2e, 0xaa, 0x44, 0x8d, 0xb0, 0x44, 0xf0, 0x13, 0x43, 0x03, - 0xa0, 0xc9, 0xef, 0xaf, 0x0c, 0x15, 0x57, 0x44, 0xad, 0xb8, 0xc6, 0x2f, 0xbe, 0x18, 0x23, 0x86, - 0xfd, 0x5f, 0xfe, 0x52, 0x70, 0x33, 0xd0, 0x27, 0xe4, 0x6b, 0x0a, 0x14, 0x82, 0xb7, 0x4e, 0xd2, - 0xe2, 0x8a, 0xa9, 0x0f, 0xb0, 0xa4, 0xc5, 0x15, 0x07, 0x3c, 0xa3, 0xc2, 0x57, 0xeb, 0xb4, 0x72, - 0x8c, 0xba, 0x16, 0xc2, 0x1a, 0x6d, 0xf4, 0xe7, 0x7f, 0x37, 0x6d, 0xc9, 0xec, 0xce, 0xd3, 0xbf, - 0x3a, 0x52, 0x7e, 0xe7, 0xa9, 0xca, 0x72, 0xc2, 0x6f, 0x20, 0xe1, 0x57, 0x35, 0x2d, 0x46, 0xb8, - 0xe9, 0x17, 0x13, 0x17, 0x27, 0xfe, 0xdf, 0x70, 0x42, 0x72, 0x7d, 0xc4, 0xeb, 0xf2, 0x47, 0x93, - 0x76, 0x64, 0x3a, 0x22, 0xcd, 0x23, 0x25, 0xb2, 0xd8, 0xfd, 0x4a, 0x7e, 0x4f, 0xf0, 0x4f, 0xfa, - 0x0e, 0xed, 0xfb, 0xd2, 0xfd, 0xf8, 0x43, 0x7b, 0x42, 0xe4, 0xb4, 0xec, 0x80, 0x9e, 0xd0, 0x64, - 0x90, 0x94, 0x9e, 0xaf, 0x2b, 0x30, 0xc5, 0xef, 0x67, 0x1f, 0x4a, 0x8f, 0x7c, 0xa3, 0xfc, 0x50, - 0x7a, 0x22, 0x97, 0xc7, 0x47, 0x5c, 0x0e, 0x91, 0x1e, 0x7e, 0x27, 0xfc, 0xf2, 0x97, 0xa4, 0x3b, - 0xd3, 0x3f, 0x21, 0xbf, 0xa0, 0xc0, 0xb4, 0x70, 0xf9, 0xfa, 0x50, 0x83, 0x16, 0xbf, 0x3d, 0x7e, - 0xa8, 0x41, 0x4b, 0xba, 0xdb, 0x9d, 0x3b, 0x6c, 0xda, 0xf9, 0x44, 0x39, 0x9a, 0x4d, 0x84, 0xe6, - 0x2b, 0x8d, 0xd3, 0xc2, 0x3d, 0xde, 0xc3, 0xe9, 0x8b, 0x5d, 0x37, 0x3e, 0x9c, 0xbe, 0xf8, 0x35, - 0xe1, 0x03, 0xfa, 0x6d, 0xb0, 0xb4, 0x25, 0x51, 0xc7, 0x1d, 0xa1, 0x91, 0xa8, 0x93, 0x5d, 0xa1, - 0x95, 0x71, 0x8a, 0xc8, 0xd4, 0x95, 0x87, 0x50, 0xf7, 0x1b, 0x3e, 0x75, 0xdc, 0x0e, 0x8f, 0x44, - 0x9d, 0x6c, 0x8c, 0x57, 0xc6, 0x29, 0xc2, 0xa9, 0x7b, 0x0b, 0xa9, 0x7b, 0x6d, 0x71, 0x39, 0x9d, - 0xba, 0xc0, 0x28, 0x0b, 0x57, 0x8e, 0x7f, 0x42, 0x7e, 0x59, 0x81, 0xa2, 0x7c, 0x61, 0x37, 0x79, - 0x63, 0xcc, 0xfb, 0xbd, 0x19, 0xd5, 0xb7, 0x9e, 0xea, 0x56, 0x70, 0xdf, 0xb8, 0x90, 0x01, 0x6c, - 0x5d, 0xf9, 0x2a, 0x48, 0xb1, 0x5a, 0xee, 0x9a, 0xff, 0x78, 0xe8, 0x9b, 0x24, 0x72, 0x2c, 0x56, - 0x42, 0xd6, 0xd0, 0xd7, 0xc7, 0x2a, 0x93, 0x14, 0xde, 0x08, 0xb6, 0x26, 0x84, 0x0e, 0xf1, 0xcf, - 0x48, 0x0e, 0xf1, 0xad, 0x91, 0xaa, 0x88, 0x71, 0xf2, 0xcd, 0x71, 0x8b, 0xc9, 0x4e, 0x14, 0x49, - 0x22, 0x8e, 0xfc, 0x92, 0xe0, 0x15, 0x8f, 0xd6, 0xf4, 0x88, 0x63, 0xfc, 0xc6, 0x78, 0x85, 0x38, - 0x4d, 0x8b, 0x48, 0xd3, 0x4b, 0x44, 0x4b, 0xa0, 0x29, 0xea, 0x1a, 0xff, 0x78, 0x38, 0xb9, 0x19, - 0x4d, 0xa0, 0x72, 0xa7, 0x7e, 0x7d, 0xac, 0x32, 0xb2, 0x40, 0xcb, 0x69, 0x02, 0xfd, 0x5a, 0xe8, - 0x51, 0x8d, 0x46, 0x93, 0xdc, 0x95, 0x5f, 0x1f, 0xab, 0x8c, 0xdc, 0x25, 0x16, 0xcb, 0x49, 0x3c, - 0xe3, 0xbc, 0xfa, 0xbb, 0x0a, 0x40, 0x3d, 0xbc, 0x5e, 0x6c, 0x34, 0x95, 0x09, 0x0b, 0xf8, 0xf4, - 0xbd, 0x35, 0x76, 0xb9, 0x24, 0x57, 0x25, 0x4a, 0x23, 0xbf, 0x18, 0x85, 0xd3, 0x4a, 0xd9, 0xf8, - 0xf7, 0x14, 0x28, 0x72, 0x14, 0xbe, 0x12, 0xde, 0x19, 0x91, 0x35, 0x62, 0xa1, 0x81, 0x5e, 0xd6, - 0xd0, 0xb2, 0x49, 0xdb, 0x78, 0x52, 0x48, 0x27, 0x3f, 0x8f, 0x9e, 0x7d, 0xdb, 0x34, 0x5c, 0x73, - 0xc4, 0xee, 0xc2, 0xa1, 0xc7, 0xeb, 0x2e, 0x41, 0x21, 0x79, 0xeb, 0x93, 0x96, 0x48, 0x9b, 0xc3, - 0x80, 0xef, 0x28, 0x8b, 0x77, 0xcf, 0xc3, 0xc9, 0xa6, 0xdd, 0x89, 0x56, 0xb1, 0xab, 0x7c, 0x2e, - 0x6b, 0xf4, 0xac, 0x47, 0x39, 0xbc, 0xfc, 0xe4, 0xf5, 0xff, 0x15, 0x00, 0x00, 0xff, 0xff, 0x74, - 0x83, 0xe5, 0x39, 0xd5, 0xdc, 0x00, 0x00, + Metadata: "api/api.proto", +} + +func init() { proto.RegisterFile("api/api.proto", fileDescriptor_api_620b9266792d7166) } + +var fileDescriptor_api_620b9266792d7166 = []byte{ + // 18909 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0xbd, 0x5b, 0x70, 0x24, 0xc9, + 0x76, 0x18, 0x36, 0xd5, 0x8d, 0x57, 0x1f, 0x00, 0x8d, 0x46, 0xce, 0x0c, 0x06, 0xd3, 0xf3, 0xae, + 0xdd, 0xd9, 0x9d, 0xc5, 0xce, 0x00, 0xb3, 0x98, 0x7d, 0xcd, 0xec, 0x8b, 0x0d, 0xa0, 0x31, 0xe8, + 0x1d, 0xbc, 0xb6, 0x1a, 0x98, 0xd9, 0xdd, 0xab, 0xab, 0xbe, 0x85, 0xee, 0x02, 0xa6, 0x76, 0xba, + 0xbb, 0x7a, 0xab, 0xaa, 0xb1, 0x8b, 0x7b, 0xb9, 0x94, 0x4c, 0x85, 0x24, 0x52, 0x94, 0xc4, 0x4b, + 0x52, 0x97, 0x6f, 0x4a, 0x74, 0xd8, 0x94, 0x4d, 0x89, 0xb4, 0x75, 0x69, 0x4b, 0x21, 0x31, 0x24, + 0x2a, 0x82, 0xa1, 0xb0, 0x24, 0x4a, 0x96, 0x3e, 0x28, 0x7f, 0x58, 0x0c, 0x45, 0x48, 0x11, 0xb4, + 0x23, 0x18, 0xa6, 0x19, 0x0e, 0x5b, 0xfe, 0xf0, 0x23, 0xc2, 0x8e, 0x3c, 0x99, 0x59, 0x95, 0x59, + 0x8f, 0x7e, 0xcc, 0xcc, 0xbd, 0x54, 0xd8, 0x3f, 0x40, 0x57, 0xe6, 0xc9, 0x93, 0x27, 0x4f, 0x9e, + 0x3c, 0x79, 0x32, 0xf3, 0xe4, 0x49, 0x98, 0x36, 0x3b, 0xf6, 0x92, 0xd9, 0xb1, 0x17, 0x3b, 0xae, + 0xe3, 0x3b, 0x64, 0xc6, 0xe9, 0x58, 0x6d, 0xcf, 0x77, 0x5c, 0xf3, 0xc8, 0x5a, 0x34, 0x3b, 0x76, + 0xf1, 0xca, 0x91, 0xe3, 0x1c, 0x35, 0xad, 0x25, 0xcc, 0x3e, 0xe8, 0x1e, 0x2e, 0xf9, 0x76, 0xcb, + 0xf2, 0x7c, 0xb3, 0xd5, 0x61, 0x25, 0x8a, 0x17, 0x39, 0x00, 0xe2, 0x69, 0xb7, 0x1d, 0xdf, 0xf4, + 0x6d, 0xa7, 0xed, 0xb1, 0x5c, 0xfd, 0x3f, 0xc9, 0xc2, 0x4c, 0x95, 0xa1, 0x33, 0x2c, 0xcf, 0xe9, + 0xba, 0x75, 0x8b, 0xe4, 0x21, 0x63, 0x37, 0xe6, 0xb5, 0xab, 0xda, 0x8d, 0x9c, 0x91, 0xb1, 0x1b, + 0x84, 0xc0, 0x48, 0xc7, 0xf4, 0x1f, 0xcf, 0x67, 0x30, 0x05, 0x7f, 0x93, 0x37, 0x61, 0xac, 0x65, + 0x35, 0xec, 0x6e, 0x6b, 0x3e, 0x7b, 0x55, 0xbb, 0x91, 0x5f, 0xbe, 0xbc, 0x18, 0x21, 0x6c, 0x91, + 0x63, 0xdd, 0x42, 0x28, 0x83, 0x43, 0x93, 0x39, 0x18, 0x73, 0xda, 0x4d, 0xbb, 0x6d, 0xcd, 0x8f, + 0x5c, 0xd5, 0x6e, 0x4c, 0x18, 0xfc, 0x8b, 0xd6, 0x61, 0x3b, 0x1d, 0x6f, 0x7e, 0xf4, 0xaa, 0x76, + 0x63, 0xc4, 0xc0, 0xdf, 0xe4, 0x02, 0xe4, 0x3c, 0xeb, 0xf3, 0xda, 0x17, 0xae, 0xed, 0x5b, 0xf3, + 0x63, 0x57, 0xb5, 0x1b, 0x9a, 0x31, 0xe1, 0x59, 0x9f, 0x3f, 0xa2, 0xdf, 0xe4, 0x3c, 0xd0, 0xdf, + 0x35, 0xd7, 0x32, 0x1b, 0xf3, 0xe3, 0x98, 0x37, 0xee, 0x59, 0x9f, 0x1b, 0x96, 0xd9, 0xa0, 0x75, + 0xb8, 0x66, 0xbb, 0x61, 0x3c, 0x9a, 0x9f, 0xc0, 0x0c, 0xfe, 0x45, 0xeb, 0xf0, 0xec, 0x6f, 0x5a, + 0xf3, 0x39, 0x56, 0x07, 0xfd, 0x4d, 0xd3, 0xba, 0x9e, 0xd5, 0x98, 0x07, 0x96, 0x46, 0x7f, 0x93, + 0xeb, 0x90, 0x77, 0x39, 0x9b, 0x6a, 0x5e, 0xc7, 0xb2, 0x1a, 0xf3, 0x93, 0xd8, 0xf2, 0x69, 0x91, + 0x5a, 0xa5, 0x89, 0xe4, 0x2d, 0xc8, 0x35, 0x4d, 0xcf, 0xaf, 0x79, 0x75, 0xb3, 0x3d, 0x3f, 0x75, + 0x55, 0xbb, 0x31, 0xb9, 0x5c, 0x5c, 0x64, 0xcc, 0x5e, 0x14, 0xbd, 0xb1, 0xb8, 0x27, 0x7a, 0xc3, + 0x98, 0xa0, 0xc0, 0xd5, 0xba, 0xd9, 0x26, 0x45, 0x98, 0x68, 0x59, 0xbe, 0xd9, 0x30, 0x7d, 0x73, + 0x7e, 0x1a, 0xb9, 0x10, 0x7c, 0x93, 0x33, 0x30, 0x5a, 0x37, 0xeb, 0x8f, 0xad, 0xf9, 0x3c, 0x66, + 0xb0, 0x0f, 0xfd, 0x6f, 0x65, 0x61, 0x92, 0xf3, 0x73, 0xd7, 0x71, 0x9a, 0xb4, 0x87, 0x2a, 0x6b, + 0xd8, 0x43, 0xa3, 0x46, 0xa6, 0xb2, 0x46, 0x16, 0x20, 0xbb, 0xea, 0x78, 0xd8, 0x41, 0xf9, 0xe5, + 0xf9, 0x58, 0x57, 0xac, 0x3a, 0xde, 0xde, 0x49, 0xc7, 0x32, 0x28, 0x10, 0xed, 0xb9, 0xad, 0xa1, + 0x7a, 0x8e, 0xfd, 0x27, 0x17, 0x21, 0x67, 0x98, 0x76, 0x63, 0xd3, 0x3a, 0xb6, 0x9a, 0xd8, 0x79, + 0x39, 0x23, 0x4c, 0xa0, 0xb9, 0x7b, 0x8e, 0x6f, 0x36, 0xab, 0x94, 0xc1, 0xe3, 0xc8, 0xcc, 0x30, + 0x81, 0x72, 0x79, 0x9f, 0x72, 0x79, 0x82, 0x71, 0x99, 0xfe, 0x26, 0x3f, 0x00, 0x63, 0x4d, 0xf3, + 0xc0, 0x6a, 0x7a, 0xf3, 0xb9, 0xab, 0xd9, 0x1b, 0x93, 0xcb, 0x37, 0xd2, 0xe8, 0xa0, 0x2d, 0x5e, + 0xdc, 0x44, 0xd0, 0x72, 0xdb, 0x77, 0x4f, 0x0c, 0x5e, 0x0e, 0xfb, 0xae, 0x6b, 0xb3, 0xbe, 0xcb, + 0x19, 0xf8, 0x9b, 0x6c, 0x42, 0x1e, 0x3b, 0xc5, 0xe9, 0x58, 0x2e, 0xf6, 0x15, 0xf6, 0xdd, 0xe4, + 0xf2, 0xf5, 0x5e, 0xd8, 0x77, 0x04, 0xb0, 0x31, 0x4d, 0x0b, 0x07, 0x9f, 0xc5, 0xbb, 0x30, 0x29, + 0x55, 0x4c, 0x0a, 0x90, 0x7d, 0x62, 0x9d, 0xf0, 0x91, 0x41, 0x7f, 0xd2, 0xee, 0x3a, 0x36, 0x9b, + 0x5d, 0x8b, 0x8f, 0x0d, 0xf6, 0x71, 0x2f, 0xf3, 0xb6, 0xa6, 0xff, 0x66, 0x06, 0xce, 0x24, 0x55, + 0x41, 0x4a, 0x30, 0xe2, 0x9f, 0x74, 0x2c, 0xc4, 0x92, 0x5f, 0xbe, 0x15, 0xa7, 0xab, 0xf1, 0x44, + 0x6e, 0x78, 0x50, 0x10, 0x7b, 0x10, 0x8b, 0x52, 0x3a, 0x5a, 0xde, 0x11, 0xaf, 0x93, 0xfe, 0x24, + 0x15, 0x18, 0xeb, 0x98, 0xae, 0xd9, 0xf2, 0xe6, 0xb3, 0xc8, 0xcc, 0xd7, 0x06, 0x6a, 0xee, 0xe2, + 0x2e, 0x96, 0xe1, 0x5c, 0x65, 0x08, 0xc8, 0x7d, 0x18, 0xf3, 0x7c, 0xd3, 0xef, 0x7a, 0xd8, 0xc9, + 0xf9, 0xe5, 0xa5, 0x81, 0x29, 0xac, 0x62, 0x31, 0x83, 0x17, 0xa7, 0xcc, 0x93, 0xf0, 0x0f, 0xc5, + 0xbc, 0xdf, 0xce, 0xc0, 0xf4, 0x43, 0xa7, 0xd9, 0x6d, 0x59, 0x9b, 0x4e, 0xdd, 0xf4, 0x1d, 0x97, + 0xf6, 0x75, 0xdb, 0x6c, 0x59, 0xbc, 0x38, 0xfe, 0x26, 0xfb, 0x30, 0x7d, 0x8c, 0x40, 0x35, 0x2e, + 0x48, 0x19, 0x6c, 0xfb, 0xed, 0x18, 0xc1, 0x0a, 0x2a, 0xf1, 0x25, 0x09, 0xd4, 0xd4, 0xb1, 0x94, + 0x44, 0xde, 0x86, 0x9c, 0xf3, 0x45, 0xdb, 0x72, 0xbd, 0xc7, 0x76, 0x07, 0xc7, 0x08, 0x1d, 0xd7, + 0x51, 0x94, 0x3b, 0x02, 0xc2, 0x08, 0x81, 0xc9, 0x4d, 0x18, 0x3d, 0x72, 0x9d, 0x6e, 0x07, 0x39, + 0x37, 0xb9, 0x3c, 0x17, 0x2b, 0x75, 0x9f, 0xe6, 0x1a, 0x0c, 0x88, 0x5c, 0x02, 0xe0, 0xe4, 0xdb, + 0x0d, 0xaa, 0xf8, 0xb2, 0x74, 0x44, 0xb1, 0x94, 0x4a, 0xc3, 0x2b, 0x7e, 0x00, 0xb3, 0x31, 0x4a, + 0x87, 0x62, 0xe2, 0x02, 0x9c, 0x61, 0x08, 0x2a, 0x6d, 0xaf, 0x63, 0xd5, 0xfd, 0x9d, 0x0e, 0x2a, + 0x7e, 0xca, 0xca, 0x86, 0x65, 0x75, 0x10, 0xc9, 0x84, 0x81, 0xbf, 0xf5, 0xd7, 0x61, 0xac, 0xca, + 0x94, 0xff, 0x1c, 0x4a, 0x92, 0xd5, 0xf6, 0x79, 0x25, 0xfc, 0x0b, 0x95, 0x27, 0x55, 0x85, 0x7c, + 0x12, 0xa0, 0xbf, 0xf5, 0x73, 0x30, 0x8a, 0x2d, 0x8a, 0xce, 0x18, 0xba, 0x09, 0x50, 0x71, 0xaa, + 0xbe, 0x6b, 0xfa, 0xd6, 0xd1, 0x09, 0x55, 0xd5, 0xa6, 0x77, 0xd2, 0xae, 0xd7, 0x6c, 0x87, 0x57, + 0x3a, 0x8e, 0xdf, 0x15, 0x87, 0xaa, 0x78, 0xcb, 0x74, 0x9b, 0x27, 0x35, 0xb3, 0xfe, 0x04, 0x51, + 0x4f, 0x18, 0x13, 0x98, 0x50, 0xaa, 0x3f, 0xa1, 0x99, 0x0d, 0xdb, 0xb5, 0xea, 0x3e, 0x2d, 0x98, + 0x65, 0x99, 0x2c, 0xa1, 0xe2, 0xe8, 0xaf, 0xc3, 0xe8, 0xc7, 0xa6, 0xef, 0xbb, 0xfa, 0xab, 0x30, + 0xfa, 0x90, 0xb6, 0x99, 0xcc, 0xc0, 0xe4, 0xfe, 0x76, 0x75, 0xb7, 0xbc, 0x5a, 0x59, 0xaf, 0x94, + 0xd7, 0x0a, 0xa7, 0xc8, 0x2c, 0x4c, 0xaf, 0xee, 0x3c, 0xaa, 0xed, 0x6c, 0xd7, 0xd6, 0xca, 0x5b, + 0xa5, 0xed, 0xb5, 0x82, 0xa6, 0x7f, 0x05, 0x50, 0xfe, 0xb2, 0xe3, 0xb8, 0x7e, 0xb5, 0x63, 0xd5, + 0xc9, 0x06, 0xcc, 0x58, 0xf8, 0x55, 0x43, 0x7d, 0x5d, 0x77, 0x9a, 0x7c, 0x54, 0x5e, 0x89, 0xf5, + 0x1c, 0x2b, 0xb5, 0xcb, 0xc1, 0x8c, 0xbc, 0xa5, 0x7c, 0xd3, 0x29, 0x83, 0x63, 0x72, 0x18, 0x97, + 0x39, 0x9f, 0xa6, 0x59, 0x2a, 0x67, 0xbd, 0xfe, 0x21, 0x4c, 0x6d, 0xaf, 0x57, 0x77, 0x5d, 0xe7, + 0xcb, 0x13, 0x24, 0xe0, 0x0a, 0x4c, 0x0a, 0x02, 0xe8, 0x04, 0xcb, 0x18, 0x08, 0x1c, 0x37, 0x9d, + 0x66, 0xe9, 0x2c, 0xd7, 0x3d, 0xa8, 0x49, 0xd3, 0xef, 0xb8, 0xd7, 0x3d, 0xa0, 0x59, 0xfa, 0x22, + 0x4c, 0x56, 0xef, 0x28, 0xa8, 0x0e, 0xba, 0xf5, 0x27, 0x96, 0x5f, 0x93, 0xc6, 0x09, 0xb0, 0xa4, + 0x6d, 0xb3, 0x65, 0xe9, 0x97, 0x61, 0x6a, 0xf7, 0xe3, 0xb5, 0xb0, 0x40, 0xb4, 0xcf, 0x7e, 0x2e, + 0x03, 0xb9, 0x30, 0xb7, 0x0c, 0xf9, 0x0e, 0xfd, 0x88, 0x72, 0x26, 0x3e, 0x5b, 0x60, 0x99, 0x80, + 0x31, 0xd3, 0x1d, 0xf9, 0x93, 0x4e, 0x75, 0x56, 0xbb, 0xd1, 0x71, 0xec, 0xb6, 0xcf, 0xe9, 0x0f, + 0xbe, 0xc9, 0xdb, 0x30, 0xd1, 0x3e, 0xf4, 0xe8, 0x0c, 0x5b, 0xe7, 0xc3, 0xec, 0x52, 0x0c, 0xb9, + 0xcc, 0x2d, 0x63, 0xbc, 0x7d, 0xe8, 0x21, 0x71, 0x6f, 0xc0, 0xb8, 0x77, 0x87, 0x15, 0x64, 0x23, + 0xed, 0x62, 0x5c, 0x47, 0x85, 0xac, 0x31, 0xc6, 0xbc, 0x3b, 0x58, 0xec, 0x6d, 0x98, 0xe8, 0x7c, + 0xd9, 0x60, 0xe5, 0x46, 0x53, 0x2a, 0x94, 0x59, 0x64, 0x8c, 0x77, 0xbe, 0x6c, 0xd0, 0x1f, 0xfa, + 0xb7, 0x35, 0x98, 0xda, 0x72, 0xba, 0xed, 0x60, 0x0c, 0xad, 0xc1, 0xb8, 0xe8, 0x68, 0x0d, 0x95, + 0xce, 0x42, 0x0c, 0x93, 0x0c, 0xbf, 0xc8, 0xff, 0x33, 0x75, 0x23, 0x8a, 0x16, 0xef, 0xc1, 0x94, + 0x9c, 0x31, 0xd4, 0xe8, 0xfe, 0xd7, 0x19, 0x98, 0x5d, 0x37, 0x3d, 0x9f, 0x8a, 0x86, 0x61, 0x75, + 0x9a, 0x54, 0xf9, 0x5a, 0xe4, 0x2c, 0x8c, 0x35, 0xac, 0xe3, 0x1a, 0xef, 0xd8, 0x11, 0x63, 0xb4, + 0x61, 0x1d, 0x57, 0x1a, 0xe4, 0x1c, 0x8c, 0xb7, 0x9d, 0x06, 0x55, 0x34, 0x88, 0x68, 0xda, 0x18, + 0xa3, 0x9f, 0x95, 0x06, 0x79, 0x0f, 0x26, 0x82, 0x0e, 0x66, 0xe6, 0xc0, 0xb5, 0x58, 0x43, 0x44, + 0x2d, 0x41, 0x1f, 0x07, 0x45, 0x28, 0xc1, 0x66, 0xbd, 0xc9, 0x4d, 0x39, 0xfa, 0x93, 0xbc, 0x2c, + 0x86, 0x94, 0xd5, 0xa8, 0x35, 0xac, 0x63, 0xbb, 0x6e, 0x21, 0xab, 0x73, 0x62, 0xc4, 0x58, 0x8d, + 0x35, 0x4c, 0xa5, 0x2d, 0x3b, 0x68, 0x3a, 0xf5, 0x27, 0x68, 0xd8, 0x4d, 0x18, 0xec, 0x83, 0x6a, + 0x1f, 0xdf, 0x74, 0x8f, 0x2c, 0x1f, 0x6d, 0x88, 0x9c, 0xc1, 0xbf, 0x50, 0x8e, 0x78, 0x79, 0x34, + 0x22, 0xa8, 0x9a, 0xe0, 0xdf, 0x34, 0xcf, 0x6e, 0xf1, 0xbc, 0x1c, 0xcb, 0x13, 0xdf, 0x64, 0x1e, + 0xc6, 0x1b, 0xd6, 0x31, 0x0e, 0x1f, 0x66, 0x25, 0x88, 0x4f, 0xaa, 0x5c, 0x90, 0x25, 0x68, 0x41, + 0x30, 0xfb, 0x6e, 0x82, 0x26, 0xec, 0x77, 0xed, 0x86, 0xfe, 0xbf, 0x69, 0x90, 0x17, 0xcd, 0x5e, + 0x75, 0xda, 0x87, 0xf6, 0x11, 0xb3, 0x37, 0xfd, 0x6e, 0xa7, 0xe6, 0xb4, 0xb9, 0xe1, 0x35, 0x8e, + 0xdf, 0x3b, 0x6d, 0x5a, 0x49, 0xc7, 0x75, 0x5a, 0x8e, 0x6f, 0x71, 0x15, 0x26, 0x3e, 0xc9, 0x5b, + 0xc1, 0x5c, 0x9a, 0x4d, 0xd1, 0x2b, 0xa2, 0x16, 0x75, 0xee, 0x24, 0xef, 0xc3, 0x84, 0x6b, 0x75, + 0x9a, 0x76, 0xdd, 0xa4, 0xd3, 0x30, 0x15, 0x30, 0x3d, 0xb5, 0x68, 0xd0, 0xfb, 0x46, 0x50, 0x86, + 0x72, 0xb7, 0x61, 0xbb, 0xfe, 0x09, 0x32, 0x7f, 0xc2, 0x60, 0x1f, 0x74, 0xc6, 0xa9, 0x3b, 0x8e, + 0xdb, 0x60, 0x8d, 0x1e, 0x63, 0x36, 0x1c, 0xa6, 0x60, 0xab, 0xff, 0x79, 0x06, 0x80, 0x1a, 0xa8, + 0xbb, 0x4e, 0xd3, 0xae, 0x9f, 0x90, 0x12, 0x8c, 0xfb, 0xae, 0x7d, 0x74, 0x64, 0xb9, 0x7c, 0xec, + 0xbf, 0x1c, 0x1f, 0x65, 0x01, 0x34, 0xfe, 0xdc, 0x63, 0xe0, 0x86, 0x28, 0x47, 0xde, 0x87, 0x31, + 0xb3, 0x8e, 0x56, 0x18, 0x33, 0x4d, 0x5f, 0xea, 0x87, 0xa1, 0x84, 0xd0, 0x06, 0x2f, 0xa5, 0xd7, + 0x60, 0x52, 0xc2, 0x4b, 0xce, 0xc2, 0x6c, 0x75, 0xb5, 0xb4, 0x5d, 0xdb, 0x33, 0x2a, 0xf7, 0xef, + 0x97, 0x8d, 0xda, 0xf6, 0xce, 0x76, 0xb9, 0x70, 0x8a, 0x9c, 0x87, 0xb3, 0x4a, 0xf2, 0xce, 0x76, + 0x6d, 0x6b, 0x67, 0x7f, 0x7b, 0xaf, 0xa0, 0x91, 0xcb, 0x50, 0x8c, 0x66, 0x6d, 0x97, 0x3f, 0xde, + 0xe3, 0xf9, 0x19, 0xfd, 0x53, 0xd6, 0x62, 0x56, 0x2d, 0x39, 0x03, 0x05, 0x84, 0x2e, 0xad, 0xee, + 0x55, 0x28, 0xa4, 0x8a, 0x9e, 0xa7, 0xe2, 0xef, 0x9d, 0xed, 0xcd, 0x4f, 0x0a, 0x1a, 0xb9, 0x00, + 0xe7, 0x62, 0x59, 0x46, 0x79, 0xb7, 0x54, 0x31, 0x0a, 0x19, 0xfd, 0x47, 0xf3, 0x00, 0x6c, 0x02, + 0x46, 0xed, 0x73, 0x11, 0x72, 0x56, 0xe7, 0xb1, 0xd5, 0xb2, 0x5c, 0xb3, 0xc9, 0xa7, 0xc1, 0x30, + 0x21, 0x58, 0x9b, 0x64, 0xa4, 0xb5, 0xc9, 0x12, 0x8c, 0x1d, 0x3a, 0x6e, 0xcb, 0xf4, 0xb9, 0xf4, + 0x9c, 0x8b, 0x8b, 0x40, 0x15, 0xad, 0x42, 0x0e, 0x46, 0xfb, 0x17, 0x87, 0x51, 0x0d, 0x51, 0xd1, + 0x51, 0x99, 0x35, 0x72, 0x98, 0x82, 0x56, 0xf8, 0x79, 0x98, 0x78, 0x6c, 0xd6, 0x9a, 0x68, 0xc0, + 0x8f, 0x62, 0xe6, 0xf8, 0x63, 0x93, 0x99, 0xef, 0x0b, 0x90, 0xad, 0x3b, 0x1e, 0x8a, 0x44, 0xcf, + 0x05, 0x44, 0xdd, 0xf1, 0xc8, 0x5d, 0x00, 0xdb, 0xa1, 0xf3, 0xc2, 0xa1, 0xdd, 0x64, 0xb6, 0x7e, + 0x3e, 0xc1, 0x40, 0xaa, 0x38, 0xbb, 0x0c, 0xc2, 0xc8, 0xd9, 0xe2, 0x27, 0x1d, 0xde, 0x0d, 0xab, + 0xd1, 0xed, 0x58, 0x7c, 0x10, 0xf3, 0x2f, 0xf2, 0x2a, 0xcc, 0x7a, 0x6d, 0xb3, 0xe3, 0x3d, 0x76, + 0xfc, 0x9a, 0xdd, 0xf6, 0x2d, 0xf7, 0xd8, 0x6c, 0xe2, 0x58, 0x9e, 0x36, 0x0a, 0x22, 0xa3, 0xc2, + 0xd3, 0x89, 0x11, 0x35, 0xfb, 0x00, 0x07, 0xc8, 0xad, 0x14, 0xb3, 0x8f, 0x32, 0xbf, 0xaf, 0xcd, + 0x37, 0x07, 0x63, 0xde, 0x63, 0xd3, 0xe5, 0x4b, 0xbd, 0x09, 0x83, 0x7f, 0x91, 0x77, 0x61, 0x92, + 0x8f, 0xa9, 0x9a, 0x67, 0xf9, 0x7c, 0x95, 0x77, 0x21, 0x56, 0x93, 0xc1, 0x60, 0xaa, 0x96, 0x6f, + 0x80, 0x1b, 0xfc, 0xa6, 0xcd, 0x32, 0x8f, 0x8e, 0x5c, 0xeb, 0x88, 0xad, 0x25, 0x19, 0xe7, 0xa7, + 0x59, 0xb3, 0xa4, 0x8c, 0x60, 0x05, 0x65, 0xb5, 0xeb, 0xee, 0x49, 0x87, 0xea, 0xb1, 0x3c, 0x97, + 0x0f, 0x91, 0x40, 0x2e, 0x03, 0x74, 0x4c, 0xcf, 0xeb, 0x3c, 0x76, 0x4d, 0xcf, 0x9a, 0x9f, 0x61, + 0xb3, 0x7b, 0x98, 0xa2, 0x70, 0xd0, 0xab, 0x3f, 0xb6, 0x1a, 0xdd, 0xa6, 0x35, 0x5f, 0x40, 0xb0, + 0x80, 0x83, 0x55, 0x9e, 0x4e, 0xb5, 0x83, 0x57, 0x37, 0x9b, 0xd6, 0xfc, 0x2c, 0xd2, 0xc2, 0x3e, + 0x90, 0x07, 0xbe, 0x5d, 0x7f, 0x72, 0x32, 0x4f, 0x38, 0x0f, 0xf0, 0x2b, 0xb4, 0x6a, 0xcf, 0x0e, + 0x62, 0xd5, 0x5e, 0x87, 0x3c, 0xfe, 0xa8, 0x59, 0xed, 0x43, 0xc7, 0xad, 0x5b, 0x8d, 0xf9, 0x39, + 0xc4, 0x36, 0x8d, 0xa9, 0x65, 0x9e, 0x48, 0xdb, 0x53, 0x77, 0x5a, 0x1d, 0xd7, 0xf2, 0xe8, 0xba, + 0xf0, 0x1c, 0x82, 0x48, 0x29, 0x54, 0xa9, 0xd7, 0x4d, 0xaf, 0x6e, 0x36, 0xac, 0xc6, 0xfc, 0x3c, + 0x53, 0xea, 0xe2, 0x9b, 0xea, 0xdb, 0xcf, 0x9c, 0xae, 0xdb, 0x36, 0x9b, 0xf3, 0xe7, 0x99, 0xbe, + 0xe5, 0x9f, 0xb4, 0x14, 0xeb, 0xb8, 0xe3, 0xd7, 0xe7, 0x8b, 0xac, 0x94, 0xf8, 0xa6, 0x06, 0xd2, + 0xe7, 0x5d, 0xab, 0x6b, 0xd5, 0x1a, 0x56, 0xc7, 0x7f, 0x3c, 0x7f, 0x01, 0x9b, 0x0e, 0x98, 0xb4, + 0x46, 0x53, 0xc8, 0x5d, 0x38, 0x8f, 0xc4, 0xd5, 0xba, 0x6d, 0xaf, 0xdb, 0xe1, 0x73, 0xd8, 0xa1, + 0x57, 0xc3, 0xd5, 0xda, 0x45, 0xc4, 0x36, 0x87, 0x00, 0xfb, 0x61, 0xfe, 0x3a, 0x8e, 0x0b, 0xda, + 0x77, 0x6d, 0xa7, 0x61, 0x7b, 0x75, 0xd3, 0x6d, 0xcc, 0x5f, 0x62, 0x7d, 0x17, 0x24, 0x50, 0x21, + 0xb2, 0x9d, 0x9a, 0xc7, 0xcd, 0xe1, 0xf9, 0xcb, 0x29, 0x42, 0x14, 0x5a, 0xcc, 0x06, 0xd8, 0xa1, + 0xf5, 0xfc, 0x08, 0x48, 0xa7, 0x69, 0xd6, 0xad, 0x96, 0xd5, 0xf6, 0x43, 0x24, 0x57, 0x10, 0xc9, + 0x8d, 0x14, 0x99, 0xdf, 0x15, 0x05, 0x02, 0x8c, 0xb3, 0x9d, 0x68, 0x12, 0xed, 0x29, 0x5e, 0xb2, + 0xd6, 0x41, 0x0d, 0x3c, 0x7f, 0x95, 0xd9, 0xac, 0x9e, 0x58, 0xdc, 0xe1, 0x34, 0xa0, 0x2c, 0x87, + 0xae, 0x0d, 0xb3, 0x1c, 0x7a, 0x37, 0xb0, 0x6e, 0xd1, 0xe4, 0xd2, 0x53, 0xda, 0x1d, 0x1a, 0xe4, + 0xc2, 0xf4, 0x45, 0x7d, 0xf9, 0x02, 0x4c, 0x1f, 0x76, 0x6a, 0x1d, 0xd7, 0x3a, 0xb4, 0x5c, 0xab, + 0x5d, 0xb7, 0xe6, 0x5f, 0x40, 0xbe, 0x4e, 0x1d, 0x76, 0x76, 0x83, 0x34, 0xb2, 0x0c, 0xa3, 0x5f, + 0xd2, 0x55, 0xc0, 0xfc, 0x8b, 0xa8, 0x86, 0xe2, 0x76, 0x20, 0xae, 0x11, 0x16, 0x71, 0x81, 0x60, + 0x30, 0x50, 0x4a, 0x96, 0x57, 0x37, 0xdb, 0xa2, 0xd1, 0xd7, 0x53, 0xc8, 0x0a, 0x67, 0x26, 0x03, + 0xbc, 0x70, 0x56, 0x5c, 0x81, 0xe9, 0x16, 0xb5, 0xec, 0x02, 0x43, 0xff, 0xa5, 0x14, 0x4b, 0x52, + 0xb6, 0xff, 0x8c, 0xa9, 0x96, 0x6c, 0x3d, 0x56, 0x61, 0x4e, 0x88, 0x65, 0x4d, 0x45, 0xf6, 0xf2, + 0x20, 0xc8, 0xce, 0x88, 0xc2, 0x8a, 0x49, 0x7a, 0x05, 0x26, 0x99, 0xc5, 0xce, 0xf6, 0xcb, 0x6e, + 0xb0, 0x21, 0x85, 0x49, 0x6c, 0xc7, 0xec, 0x2e, 0xb0, 0x2f, 0xd6, 0x1b, 0xaf, 0xa4, 0xf4, 0x64, + 0x68, 0xfd, 0xe6, 0x3a, 0xe2, 0xe7, 0xb3, 0xaf, 0x45, 0x7f, 0x6f, 0x0a, 0x0a, 0xa1, 0x3a, 0xde, + 0xef, 0x34, 0xa8, 0xb1, 0x7a, 0x46, 0x9e, 0xf3, 0x36, 0x4e, 0xf1, 0x59, 0xef, 0x42, 0x74, 0x96, + 0xda, 0xd0, 0xc2, 0x79, 0xea, 0xe6, 0x40, 0xf3, 0xd4, 0x46, 0x86, 0xcd, 0x54, 0xef, 0x0c, 0x37, + 0x53, 0x6d, 0x64, 0xe5, 0xb9, 0x6a, 0x5e, 0x9d, 0xab, 0x36, 0x46, 0x82, 0xd9, 0xea, 0x56, 0xea, + 0x6c, 0xb5, 0x31, 0x9a, 0x30, 0x5f, 0xcd, 0xab, 0x73, 0xcb, 0xc6, 0xd8, 0x73, 0x9a, 0x5d, 0xae, + 0xc6, 0xa7, 0x84, 0x8d, 0x71, 0x65, 0x52, 0xb8, 0x95, 0x3a, 0x29, 0x6c, 0x4c, 0x24, 0x4c, 0x0b, + 0x73, 0xca, 0xb4, 0xb0, 0x91, 0x13, 0x13, 0xc3, 0xbc, 0x3a, 0x31, 0x6c, 0x40, 0x30, 0x35, 0x2c, + 0x8a, 0xa9, 0xe1, 0x74, 0xaf, 0xa9, 0x61, 0x63, 0x52, 0x4c, 0x0e, 0xc5, 0x50, 0x73, 0xa3, 0xca, + 0xdf, 0x98, 0x0a, 0x75, 0xf7, 0x45, 0x49, 0x77, 0xa3, 0xc6, 0xdf, 0x98, 0x96, 0xb4, 0xf7, 0x35, + 0x55, 0x7b, 0x9f, 0x47, 0x0a, 0xf3, 0x8a, 0xfe, 0x56, 0x14, 0x55, 0x71, 0x18, 0x45, 0x75, 0x59, + 0x56, 0xdf, 0x17, 0xb0, 0xee, 0x99, 0x1e, 0x0a, 0xfc, 0xe2, 0x70, 0x0a, 0xfc, 0x7d, 0x55, 0x0d, + 0x5e, 0xea, 0xab, 0x06, 0x37, 0x0a, 0x8a, 0x22, 0xbc, 0x08, 0x13, 0x87, 0xdc, 0xd4, 0xc7, 0xb9, + 0x63, 0x62, 0x63, 0xd6, 0x08, 0x52, 0xc8, 0xeb, 0x42, 0x03, 0x5e, 0xe9, 0xaf, 0x01, 0x37, 0x88, + 0xd0, 0x81, 0xef, 0xab, 0x3a, 0xf0, 0x6a, 0x5f, 0x1d, 0xb8, 0x71, 0x5a, 0xd1, 0x82, 0x65, 0xc8, + 0x07, 0x8a, 0x8b, 0x35, 0xeb, 0xda, 0x00, 0x9a, 0x6b, 0xe3, 0x4c, 0xa8, 0x08, 0xb1, 0x69, 0x0f, + 0xe1, 0x5c, 0x5c, 0x11, 0xca, 0xb3, 0x45, 0x1f, 0x7c, 0x67, 0xe3, 0xba, 0x10, 0xf1, 0x5e, 0x53, + 0x75, 0x21, 0xce, 0x1c, 0x1b, 0x73, 0x8a, 0x36, 0x7c, 0x47, 0xd1, 0x86, 0x2f, 0xf6, 0xd3, 0x86, + 0x1b, 0xe7, 0x24, 0x7d, 0xb8, 0x02, 0x30, 0x41, 0x75, 0x15, 0xa5, 0x76, 0x25, 0x0f, 0x53, 0x42, + 0x5f, 0xe1, 0x77, 0x0e, 0xc6, 0xeb, 0x8e, 0x87, 0x3f, 0x0b, 0x90, 0x0f, 0xf5, 0x0f, 0xa6, 0x4c, + 0x01, 0x30, 0x25, 0x82, 0x5f, 0xe7, 0xe0, 0x6c, 0x4c, 0x91, 0x08, 0x30, 0xd6, 0x2e, 0x81, 0x26, + 0x1c, 0xd4, 0xb1, 0x82, 0x62, 0x60, 0x63, 0xc6, 0x24, 0xe4, 0x70, 0xcc, 0x06, 0x58, 0x70, 0x9c, + 0x8a, 0x2c, 0x66, 0x98, 0xd1, 0x8f, 0x69, 0x98, 0xe4, 0xe3, 0x4e, 0xb4, 0x21, 0xe8, 0x07, 0xfa, + 0x3d, 0x0b, 0x33, 0xd2, 0x68, 0xc3, 0xa4, 0x19, 0x98, 0x0e, 0x06, 0x84, 0x80, 0x91, 0xc4, 0x5a, + 0xa0, 0x11, 0x72, 0x29, 0xaa, 0x44, 0x71, 0x13, 0xf0, 0x92, 0xc8, 0x89, 0xfc, 0xa0, 0xd7, 0x57, + 0xce, 0x00, 0x89, 0xcb, 0x02, 0x2d, 0x25, 0xf5, 0x64, 0xc0, 0x8e, 0xa0, 0xe7, 0x68, 0x8a, 0xfe, + 0x7b, 0x05, 0x79, 0x76, 0xe1, 0x22, 0x2a, 0x66, 0x17, 0x2d, 0x75, 0x76, 0xc9, 0xa4, 0xcc, 0x2e, + 0xd9, 0xa7, 0x99, 0x5d, 0x46, 0x9e, 0x76, 0x76, 0x19, 0x1d, 0x64, 0x76, 0x19, 0x4b, 0x9d, 0x5d, + 0x3e, 0x8e, 0xae, 0x86, 0xc6, 0x71, 0x35, 0x74, 0xa7, 0xc7, 0x6a, 0x88, 0xaf, 0xb7, 0xfb, 0xad, + 0x89, 0xc2, 0x79, 0x6b, 0xa2, 0xf7, 0xbc, 0x95, 0x7b, 0x96, 0x79, 0x0b, 0x06, 0x9d, 0xb7, 0x26, + 0xfb, 0xcf, 0x5b, 0x53, 0x69, 0xf3, 0xd6, 0x74, 0xda, 0xbc, 0x95, 0x1f, 0x7a, 0xde, 0x9a, 0xe9, + 0x35, 0x6f, 0x15, 0xfa, 0xcd, 0x5b, 0xb3, 0x09, 0xf3, 0xd6, 0x65, 0x79, 0xe1, 0x47, 0xc4, 0xec, + 0x13, 0x2e, 0xfd, 0x6e, 0x25, 0xad, 0x22, 0x4f, 0x23, 0xa2, 0x42, 0xc2, 0x3a, 0x72, 0x07, 0xa6, + 0xb9, 0x6e, 0xb2, 0x5c, 0xd3, 0x77, 0xdc, 0xf9, 0x65, 0x94, 0xcc, 0x85, 0xfe, 0x02, 0xc1, 0xfe, + 0xed, 0x74, 0x8c, 0x29, 0x8a, 0x60, 0x87, 0x97, 0x27, 0x0f, 0x61, 0x56, 0x52, 0x70, 0x1c, 0xe9, + 0x9d, 0xa1, 0x91, 0xce, 0xf0, 0x51, 0x16, 0xe0, 0xfd, 0x08, 0xf2, 0x42, 0x57, 0x71, 0xa4, 0xaf, + 0x0f, 0x8d, 0x74, 0x1a, 0x31, 0x04, 0x28, 0x1f, 0x43, 0x31, 0x49, 0xa1, 0x72, 0xf4, 0x6f, 0x0c, + 0x8d, 0x7e, 0x3e, 0x3a, 0xdc, 0x82, 0x9a, 0x14, 0x93, 0xe1, 0x4d, 0x3e, 0x2b, 0xa7, 0x9b, 0x0c, + 0x6f, 0x3d, 0x93, 0xc9, 0xf0, 0x76, 0x7f, 0x93, 0x81, 0x28, 0x26, 0x43, 0x64, 0x7a, 0xbf, 0xfb, + 0xec, 0xd3, 0xfb, 0xbd, 0xe7, 0x3c, 0xbd, 0xbf, 0xf3, 0x1c, 0xa7, 0xf7, 0x77, 0xfb, 0x4e, 0xef, + 0xef, 0x0d, 0x35, 0xbd, 0x3f, 0xfb, 0x72, 0x67, 0x09, 0x26, 0x84, 0x0c, 0x91, 0x1c, 0x8c, 0x96, + 0x3f, 0xef, 0x9a, 0xcd, 0xc2, 0x29, 0x32, 0x09, 0xe3, 0x5b, 0x76, 0xdb, 0x6e, 0x75, 0x5b, 0x05, + 0x0d, 0x3f, 0xcc, 0x2f, 0xf1, 0x23, 0xf3, 0xff, 0x53, 0x83, 0x22, 0xd0, 0x71, 0x82, 0x86, 0x98, + 0x9e, 0x1b, 0xd8, 0xf4, 0xf8, 0x1e, 0x5a, 0x17, 0x25, 0x80, 0x70, 0x26, 0xa3, 0x9d, 0xde, 0x76, + 0x1a, 0x16, 0x3b, 0xf7, 0xc9, 0x19, 0xec, 0x83, 0x5c, 0x02, 0xe8, 0x38, 0x4e, 0x13, 0x37, 0xd6, + 0xd9, 0x39, 0x74, 0xce, 0xc8, 0xd1, 0x94, 0x7d, 0x9a, 0xa0, 0xff, 0x4d, 0x0d, 0x66, 0x8c, 0x6e, + 0xdb, 0xb7, 0x5b, 0x16, 0xee, 0xd4, 0x6f, 0x99, 0x1d, 0xf2, 0x08, 0xa6, 0x5d, 0x96, 0x54, 0xf3, + 0x68, 0x1a, 0x3f, 0x48, 0x5a, 0x8e, 0x4f, 0xa3, 0x6a, 0x41, 0xe5, 0x9b, 0xcf, 0xdb, 0xae, 0x94, + 0x44, 0xa5, 0x37, 0x06, 0x32, 0x94, 0xf4, 0xfe, 0xed, 0x51, 0xc8, 0x05, 0xeb, 0x24, 0x0a, 0x87, + 0x2b, 0x25, 0x5e, 0x96, 0x7d, 0x90, 0x77, 0x61, 0xc4, 0xac, 0x37, 0xd9, 0x31, 0x67, 0xd2, 0x3e, + 0x54, 0x50, 0x7e, 0xb1, 0x54, 0xaf, 0x5b, 0x9e, 0xb7, 0xea, 0xb4, 0x7d, 0xd7, 0x69, 0x1a, 0x58, + 0xaa, 0xb8, 0x0b, 0xa7, 0x77, 0xbb, 0x07, 0x4d, 0xbb, 0xae, 0x64, 0x92, 0xbb, 0x8a, 0x6b, 0xc4, + 0xf5, 0xbe, 0x48, 0x43, 0x97, 0x88, 0xe2, 0xef, 0x66, 0x61, 0x5a, 0x45, 0xb6, 0x09, 0x63, 0x28, + 0x9e, 0xe2, 0x84, 0xee, 0xf5, 0x41, 0x69, 0x64, 0x93, 0xbf, 0xf0, 0x8a, 0x60, 0x38, 0x88, 0x09, + 0xd3, 0x75, 0xa7, 0xd9, 0x34, 0x0f, 0x1c, 0xd4, 0xff, 0xc2, 0xd7, 0xe0, 0x9d, 0x81, 0x91, 0xae, + 0xca, 0xa5, 0x19, 0x6e, 0x15, 0x23, 0x59, 0x87, 0xb1, 0x0e, 0x32, 0x85, 0x9f, 0x86, 0x2e, 0xf6, + 0xc0, 0x9d, 0xc0, 0x3d, 0x83, 0x97, 0x2e, 0x7e, 0x03, 0x26, 0xa5, 0x16, 0x24, 0xf4, 0xfc, 0x3b, + 0x72, 0xcf, 0x0f, 0xcc, 0xe7, 0x50, 0x40, 0x8a, 0x47, 0x40, 0xe2, 0xcd, 0xf9, 0x1e, 0x54, 0xa4, + 0xdf, 0x04, 0x08, 0x33, 0xc8, 0x04, 0x8c, 0x18, 0x96, 0xd9, 0x28, 0x9c, 0xa2, 0x3a, 0x15, 0xd5, + 0x7c, 0x41, 0xa3, 0x3f, 0x4b, 0x8d, 0x96, 0xdd, 0x2e, 0x64, 0xf4, 0x7f, 0x3f, 0x05, 0x63, 0x4c, + 0x6f, 0xc7, 0x5c, 0xd8, 0x96, 0x60, 0x8c, 0x39, 0xb7, 0x71, 0x81, 0x8d, 0x1f, 0xa5, 0x30, 0xf7, + 0x07, 0x83, 0x83, 0x85, 0x9b, 0xde, 0xd9, 0x41, 0x36, 0xbd, 0x8b, 0x30, 0xe1, 0x5a, 0x66, 0xc3, + 0x69, 0x37, 0x4f, 0xf8, 0x61, 0x68, 0xf0, 0x4d, 0xde, 0x86, 0xf1, 0x26, 0xf3, 0x3c, 0xe1, 0x87, + 0xce, 0x97, 0x7b, 0xfb, 0xa7, 0x18, 0x02, 0x9c, 0xdc, 0x86, 0xd1, 0x3a, 0x1d, 0xc6, 0x68, 0xfd, + 0xf7, 0x76, 0x2e, 0x63, 0x80, 0x64, 0x09, 0x46, 0x70, 0xbe, 0x1b, 0x4f, 0x99, 0xf0, 0x43, 0x4b, + 0xc7, 0x40, 0x40, 0x3a, 0xb8, 0xbb, 0x9e, 0x79, 0x64, 0x71, 0xcf, 0x2c, 0xf6, 0xa1, 0x7a, 0xb6, + 0xe5, 0x86, 0xf0, 0x6c, 0x0b, 0x4f, 0xac, 0x60, 0xb0, 0x13, 0xab, 0x37, 0x82, 0x03, 0xd2, 0x49, + 0x2c, 0x70, 0x29, 0x8d, 0x64, 0xf5, 0x78, 0x74, 0x19, 0x46, 0x99, 0xce, 0x9c, 0x4a, 0xd9, 0xf4, + 0x08, 0x4b, 0x59, 0x06, 0x03, 0x25, 0x57, 0x60, 0xd2, 0xf4, 0x7d, 0x93, 0x4e, 0x6e, 0x35, 0xa7, + 0x8d, 0x4b, 0x82, 0x9c, 0x01, 0x22, 0x69, 0xa7, 0x4d, 0x56, 0x21, 0x1f, 0x00, 0x30, 0xec, 0xf9, + 0x14, 0xec, 0x25, 0x04, 0x63, 0xd8, 0xa7, 0x45, 0x99, 0xaa, 0xa8, 0x85, 0x1d, 0x7b, 0x33, 0x9f, + 0x0d, 0x7e, 0x50, 0xc3, 0x92, 0xd0, 0xa3, 0xe3, 0x26, 0x10, 0xcf, 0xaa, 0x77, 0x5d, 0xab, 0x26, + 0xc3, 0x89, 0x93, 0x1a, 0xcc, 0x59, 0x0b, 0xa1, 0x03, 0xa2, 0x19, 0xd8, 0x2c, 0x4e, 0x2c, 0x9c, + 0x68, 0x04, 0xd8, 0x08, 0x00, 0xec, 0xf6, 0xa1, 0x33, 0x4f, 0x50, 0x2b, 0xbd, 0x9c, 0xc2, 0x0f, + 0x4e, 0x78, 0xa5, 0x7d, 0xe8, 0x30, 0x0d, 0xc4, 0x31, 0xd1, 0x04, 0xf2, 0x3e, 0x4c, 0x49, 0x8b, + 0x3a, 0x6f, 0xfe, 0x34, 0xa2, 0xea, 0xb9, 0xaa, 0x9b, 0x0c, 0x57, 0x75, 0x1e, 0x29, 0x47, 0xe7, + 0xb3, 0x33, 0x88, 0xe0, 0x6a, 0xbf, 0xf9, 0x4c, 0x9d, 0xbd, 0xa8, 0x44, 0x5a, 0xae, 0xeb, 0xb8, + 0x78, 0xda, 0x94, 0x33, 0xd8, 0x07, 0xf9, 0x10, 0x0a, 0x7c, 0x95, 0x5b, 0x77, 0xda, 0x5e, 0xb7, + 0x65, 0xb9, 0xde, 0xfc, 0x1c, 0xe2, 0xbf, 0x92, 0xd2, 0xd6, 0x55, 0x0e, 0x67, 0xcc, 0x1c, 0x2b, + 0xdf, 0x1e, 0xed, 0x81, 0x43, 0xaf, 0xe6, 0x5a, 0x68, 0x70, 0xb9, 0xd6, 0xe7, 0x5d, 0xdb, 0x0d, + 0x8e, 0xa0, 0x0a, 0x87, 0x9e, 0x81, 0x19, 0x06, 0x4f, 0x27, 0xef, 0x04, 0x0c, 0xc6, 0xa1, 0x38, + 0xdf, 0x77, 0x34, 0x70, 0x9e, 0xd2, 0x04, 0x5a, 0xb8, 0x61, 0x85, 0x85, 0xcf, 0xf7, 0x2f, 0xcc, + 0xc0, 0x79, 0xe1, 0x89, 0xc3, 0x0e, 0xf3, 0x3e, 0xe0, 0xdb, 0x99, 0xe9, 0xee, 0x03, 0x0c, 0xcc, + 0x08, 0x0a, 0x90, 0xf7, 0x61, 0x3a, 0x18, 0xc2, 0xb5, 0x43, 0xfb, 0x4b, 0xdc, 0xd6, 0xec, 0x5d, + 0xf7, 0xa4, 0x18, 0xc6, 0xeb, 0xf6, 0x97, 0xe4, 0x23, 0x28, 0x84, 0xe5, 0xf9, 0x10, 0xbd, 0x98, + 0xe2, 0x05, 0xb0, 0x6e, 0x37, 0x2d, 0xef, 0xc4, 0xf3, 0xad, 0xd6, 0x86, 0x65, 0x36, 0x03, 0x5f, + 0x86, 0xbc, 0xc0, 0xc7, 0xbe, 0xe3, 0x27, 0x27, 0x97, 0x9e, 0xe7, 0xc9, 0xc9, 0xe5, 0xa7, 0x3e, + 0x39, 0x29, 0xbe, 0x07, 0x33, 0x91, 0x81, 0x31, 0x94, 0xb9, 0xf4, 0xd7, 0x32, 0x30, 0x4a, 0x9b, + 0x88, 0x5e, 0x17, 0x54, 0xed, 0x7b, 0xc2, 0xf9, 0x06, 0x3f, 0xc8, 0x39, 0x18, 0xa7, 0x3f, 0x6a, + 0x2d, 0x8f, 0x9f, 0xee, 0x8f, 0xd1, 0xcf, 0x2d, 0x34, 0x1a, 0x31, 0xe3, 0xe0, 0xc4, 0xb7, 0xd8, + 0xae, 0xd3, 0x88, 0x91, 0xa3, 0x29, 0x2b, 0x34, 0x81, 0xcc, 0xc1, 0x18, 0x9a, 0xa5, 0xcc, 0x11, + 0x73, 0xc4, 0xe0, 0x5f, 0xe4, 0x3c, 0x4c, 0x30, 0x73, 0xb5, 0x25, 0xdc, 0xa5, 0xc7, 0xf1, 0x7b, + 0x0b, 0xcf, 0x80, 0x58, 0x16, 0x43, 0x39, 0x86, 0xb9, 0x80, 0x49, 0x0c, 0xe7, 0x15, 0x5c, 0x96, + 0x76, 0x5c, 0xe7, 0xc8, 0xb5, 0x3c, 0x8f, 0x3b, 0xea, 0x02, 0x6e, 0x4b, 0x61, 0x0a, 0x39, 0x0d, + 0xa3, 0xb6, 0x43, 0x31, 0x4f, 0x08, 0x47, 0x6c, 0x46, 0x28, 0x22, 0xac, 0xa1, 0xab, 0x34, 0x73, + 0x9f, 0xce, 0x61, 0x0a, 0x7a, 0xf2, 0x52, 0xa4, 0x62, 0xb1, 0xd1, 0xf2, 0xb8, 0x2b, 0x35, 0x88, + 0xa4, 0x2d, 0x4f, 0xff, 0xd3, 0x1a, 0xcc, 0xae, 0x9a, 0x1d, 0xb3, 0x6e, 0xfb, 0x27, 0xfb, 0x74, + 0x86, 0x41, 0x85, 0x83, 0xae, 0x42, 0xf5, 0x66, 0xd7, 0xb3, 0x8f, 0x05, 0xc1, 0x1a, 0x7a, 0x25, + 0xe4, 0x83, 0x64, 0x46, 0xf4, 0x35, 0xb1, 0x98, 0xe0, 0x50, 0xb8, 0x6f, 0x67, 0x4c, 0xb2, 0xb4, + 0xa0, 0x5d, 0xbe, 0xe3, 0x9b, 0x4d, 0x89, 0x97, 0x59, 0x03, 0x30, 0x09, 0x01, 0xf4, 0xdf, 0xd7, + 0x60, 0x92, 0x29, 0x06, 0x24, 0x80, 0x5c, 0x80, 0x5c, 0xe0, 0x7c, 0xc9, 0xbb, 0x79, 0x42, 0xf8, + 0x5e, 0x52, 0x6c, 0x3c, 0x13, 0x7d, 0xe9, 0x58, 0x8f, 0x73, 0x67, 0xcd, 0x6d, 0xb3, 0x85, 0xa5, + 0x03, 0x73, 0x1f, 0x2b, 0xcb, 0x19, 0x13, 0xc2, 0xda, 0x4f, 0x6a, 0x17, 0xeb, 0xc0, 0x68, 0xbb, + 0x22, 0x44, 0xb3, 0xbe, 0x94, 0x88, 0x26, 0xb7, 0xe1, 0x0c, 0xb5, 0x05, 0x9a, 0xb5, 0x7a, 0xd3, + 0xe9, 0x36, 0x6a, 0x62, 0x85, 0xc6, 0x5d, 0xa6, 0x08, 0xe6, 0xad, 0xd2, 0xac, 0x2a, 0xcf, 0xd1, + 0xf7, 0xc4, 0xca, 0x15, 0x5b, 0xb9, 0x72, 0xb2, 0xed, 0x34, 0x2c, 0xf2, 0x01, 0xf0, 0x8d, 0xbd, + 0x1a, 0x9b, 0xeb, 0x99, 0x3d, 0x9c, 0x36, 0x69, 0x62, 0x49, 0x83, 0x33, 0x00, 0x3f, 0xf4, 0x7f, + 0xa5, 0x41, 0x41, 0x76, 0xfa, 0xc5, 0x3d, 0x82, 0x24, 0x8f, 0xdc, 0xbb, 0x30, 0xc6, 0xb7, 0x1c, + 0x98, 0x99, 0x75, 0xad, 0xef, 0x5e, 0x8b, 0xc1, 0x0b, 0xd0, 0xb1, 0x83, 0x87, 0xeb, 0xdc, 0xd1, + 0x93, 0x7d, 0xd0, 0xae, 0x37, 0x9b, 0x4d, 0xe7, 0x8b, 0x5a, 0x17, 0x8f, 0x0c, 0xb9, 0x71, 0x35, + 0x89, 0x69, 0xfc, 0x14, 0x51, 0x39, 0xf6, 0x19, 0x1d, 0xe2, 0xd8, 0x47, 0xff, 0x07, 0x59, 0x18, + 0x2d, 0x35, 0x2d, 0xd7, 0x97, 0xcc, 0xc5, 0x2c, 0x9a, 0x8b, 0x77, 0x61, 0xc2, 0xb3, 0x8e, 0x2d, + 0xd7, 0xf6, 0x4f, 0xb8, 0xed, 0x1a, 0x57, 0x2c, 0x55, 0x0e, 0x80, 0xf6, 0x4c, 0x00, 0x4e, 0xc7, + 0x8a, 0x49, 0x71, 0x32, 0xb7, 0x01, 0x26, 0x88, 0x39, 0x4c, 0x41, 0x1b, 0x76, 0x1e, 0xc6, 0x5b, + 0x96, 0x87, 0xdd, 0xc0, 0x7c, 0xe8, 0xc5, 0x27, 0x6d, 0x47, 0x70, 0x75, 0x23, 0x68, 0x47, 0xba, + 0xb6, 0x0e, 0x81, 0xa9, 0x1c, 0xb9, 0xfc, 0xee, 0x46, 0x2d, 0xf0, 0xeb, 0x02, 0x91, 0x54, 0xc1, + 0xe6, 0x88, 0x2f, 0x7e, 0x0a, 0x7a, 0x29, 0x61, 0x5a, 0x67, 0x00, 0xac, 0x39, 0x02, 0x9c, 0xd2, + 0x5b, 0x6f, 0x5a, 0xe1, 0x2e, 0xb0, 0x21, 0x3e, 0xa9, 0x8a, 0xf4, 0xfd, 0x26, 0xd7, 0x06, 0xf4, + 0x27, 0x6d, 0x7a, 0xb7, 0x6d, 0x7f, 0xde, 0xb5, 0x6a, 0xbe, 0x79, 0xc4, 0xfd, 0xed, 0x72, 0x2c, + 0x65, 0xcf, 0x3c, 0xc2, 0xab, 0x0d, 0x54, 0xed, 0xa2, 0xa9, 0x97, 0x35, 0xd8, 0x07, 0xb9, 0x0b, + 0x70, 0x68, 0xbb, 0x74, 0xa6, 0xb1, 0xac, 0x41, 0xae, 0x51, 0xe4, 0x10, 0xba, 0x6a, 0x59, 0x6d, + 0xfd, 0xcf, 0x6a, 0x30, 0x5b, 0x6d, 0x3c, 0xc1, 0x2e, 0xf4, 0x28, 0x44, 0xb5, 0x63, 0xb6, 0x29, + 0x42, 0xcf, 0x37, 0x69, 0x07, 0xd8, 0x5c, 0x3a, 0xfb, 0x20, 0x44, 0x68, 0x9c, 0x71, 0xdf, 0x40, + 0x6f, 0x55, 0x56, 0x30, 0xd3, 0xb7, 0xe0, 0xb8, 0xd5, 0x6e, 0xd0, 0x2f, 0x7d, 0x1b, 0x48, 0x40, + 0xc6, 0x2a, 0x6d, 0x14, 0xd2, 0x71, 0x01, 0x72, 0x2d, 0xbb, 0x5d, 0x63, 0x4d, 0x66, 0xa2, 0x35, + 0xd1, 0xb2, 0xdb, 0x08, 0x80, 0x99, 0xe6, 0x97, 0x3c, 0x33, 0xc3, 0x33, 0xcd, 0x2f, 0x31, 0x53, + 0xff, 0xf1, 0x0c, 0xcc, 0x04, 0x08, 0xd9, 0x24, 0x45, 0x1e, 0xc0, 0x2c, 0xc5, 0x26, 0xc4, 0xac, + 0x26, 0xad, 0x93, 0x7b, 0x8b, 0xe6, 0xc6, 0x29, 0x63, 0xa6, 0x65, 0xb7, 0xe5, 0x24, 0x72, 0x05, + 0xc0, 0xf6, 0x6a, 0xa2, 0x5f, 0xd1, 0x67, 0x71, 0xe3, 0x94, 0x91, 0xb3, 0xbd, 0x55, 0xde, 0xb7, + 0x25, 0x26, 0x8b, 0x35, 0xaf, 0x63, 0xb6, 0xf9, 0x0a, 0x48, 0x4f, 0xba, 0x06, 0xa0, 0xb2, 0x7e, + 0xe3, 0x94, 0x31, 0xe1, 0x8b, 0x6e, 0x58, 0x03, 0xc0, 0xd6, 0x31, 0x1c, 0xcc, 0x4d, 0xf7, 0x85, + 0x74, 0x1c, 0x01, 0xdf, 0x28, 0x21, 0x75, 0xf1, 0xb1, 0x32, 0x0a, 0x59, 0xa7, 0xe3, 0xeb, 0xdf, + 0x80, 0x62, 0x00, 0x29, 0x0b, 0xea, 0x47, 0x5d, 0xcb, 0x45, 0x97, 0x8c, 0x40, 0xfe, 0x7b, 0xf2, + 0x45, 0x91, 0xf1, 0x29, 0x57, 0xfa, 0xd2, 0x7f, 0x10, 0xce, 0x05, 0x35, 0x94, 0xc4, 0x68, 0x7d, + 0x6e, 0xe8, 0x23, 0x5a, 0x21, 0x13, 0xd1, 0x0a, 0xfa, 0x5f, 0xd5, 0x60, 0x3e, 0xd6, 0xc0, 0x4a, + 0xe3, 0xfb, 0x55, 0x7f, 0x54, 0x83, 0x64, 0xa3, 0x1a, 0x44, 0xff, 0x37, 0x19, 0xc8, 0x07, 0x04, + 0x32, 0xb2, 0xbe, 0x0e, 0xa7, 0x15, 0xb2, 0x6a, 0x9f, 0xd3, 0x64, 0x3e, 0xe0, 0x5e, 0x4d, 0xef, + 0xe9, 0x58, 0xff, 0x6d, 0x9c, 0x32, 0x66, 0xdd, 0x58, 0xa7, 0xee, 0x41, 0x21, 0xa4, 0x98, 0xe3, + 0x4e, 0xdb, 0x6c, 0x4a, 0xe9, 0xb9, 0x8d, 0x53, 0x46, 0xde, 0x54, 0xfb, 0xf2, 0x11, 0xcc, 0x4a, + 0x0d, 0xe5, 0x68, 0x99, 0x80, 0xbf, 0xd2, 0x9f, 0x64, 0xde, 0x23, 0x74, 0x48, 0xb9, 0x91, 0x4e, + 0x7a, 0x1d, 0x46, 0x9c, 0x8e, 0x2f, 0x9c, 0x75, 0xaf, 0xa6, 0xe3, 0x62, 0xe3, 0xd9, 0x40, 0xe8, + 0x95, 0x71, 0x18, 0x45, 0x12, 0x74, 0x13, 0x5e, 0x0c, 0x20, 0xca, 0x6d, 0xba, 0x4e, 0x31, 0x7d, + 0xeb, 0x91, 0xed, 0x3f, 0x5e, 0xb7, 0x9b, 0xbe, 0xe5, 0x7a, 0x74, 0x39, 0x62, 0x79, 0x54, 0x5b, + 0x8e, 0xd3, 0x02, 0xb6, 0x25, 0x76, 0xb5, 0xae, 0xa4, 0xd7, 0x84, 0x84, 0x19, 0x02, 0x5e, 0x7f, + 0x04, 0xd7, 0xfb, 0x54, 0xe1, 0x75, 0x9c, 0xb6, 0x67, 0x91, 0x45, 0x18, 0x43, 0xae, 0x89, 0x2a, + 0xe2, 0x7b, 0x1f, 0x88, 0xc4, 0xe0, 0x50, 0x7a, 0x15, 0xe6, 0x02, 0xc4, 0x6b, 0x56, 0xd3, 0xf2, + 0xad, 0xe7, 0x40, 0xed, 0x79, 0x69, 0x3c, 0x0a, 0xa4, 0x8c, 0x3e, 0xfd, 0x4d, 0x18, 0x63, 0xe9, + 0xe4, 0x26, 0x8c, 0x22, 0x0d, 0x7d, 0x08, 0x65, 0x40, 0xfa, 0x3f, 0xcf, 0xc0, 0xcc, 0xce, 0xc1, + 0x67, 0x56, 0xdd, 0xa7, 0x20, 0xcc, 0x06, 0x15, 0x57, 0xc8, 0x34, 0xe9, 0x0a, 0x99, 0x62, 0x1a, + 0x66, 0x22, 0xa6, 0xe1, 0x3c, 0x8c, 0x5b, 0x6d, 0xf3, 0xa0, 0x69, 0x35, 0xb8, 0xa1, 0x22, 0x3e, + 0x99, 0xfb, 0x64, 0x70, 0x6f, 0x2a, 0x17, 0xec, 0x55, 0xcc, 0x05, 0x3e, 0xd0, 0xcc, 0xe7, 0x96, + 0x7f, 0xe1, 0x90, 0xc4, 0xbd, 0xad, 0x1a, 0x5d, 0x69, 0x70, 0x67, 0x6c, 0x96, 0xf2, 0xc0, 0x42, + 0x3b, 0xc2, 0xb3, 0xea, 0xae, 0xe5, 0x63, 0x36, 0xf3, 0x86, 0xcf, 0xb1, 0x14, 0x9a, 0x8d, 0xde, + 0xa2, 0xec, 0x22, 0x05, 0xb5, 0xd5, 0x71, 0xbf, 0x39, 0x48, 0x20, 0xaf, 0x40, 0xa1, 0xde, 0x75, + 0x5d, 0xab, 0xed, 0xd7, 0x82, 0xeb, 0x17, 0x39, 0x44, 0x31, 0xc3, 0xd3, 0xcb, 0xe2, 0x16, 0xc6, + 0x15, 0x98, 0xe4, 0x64, 0x74, 0x1c, 0x97, 0xed, 0xdb, 0x64, 0x0d, 0x4e, 0xd9, 0xae, 0xe3, 0xfa, + 0x78, 0x9b, 0xd2, 0x3a, 0x12, 0x37, 0xe9, 0x72, 0x06, 0xff, 0xd2, 0xbf, 0xab, 0xc1, 0x69, 0xbe, + 0xd4, 0x76, 0x2d, 0x33, 0xec, 0x74, 0x69, 0xbf, 0x4b, 0x1b, 0x6e, 0xbf, 0x6b, 0xe8, 0x4d, 0x3a, + 0xb1, 0xdd, 0x95, 0x1d, 0x70, 0xbb, 0x4b, 0x7f, 0x09, 0xf2, 0x2c, 0x2d, 0x10, 0xf6, 0x60, 0xbb, + 0x41, 0x93, 0xb6, 0x1b, 0xf4, 0x8e, 0xb8, 0x3a, 0x25, 0x9a, 0xc6, 0xa1, 0xa3, 0xdb, 0x8a, 0x1b, + 0xc0, 0x77, 0x17, 0x6a, 0x2e, 0x07, 0xe1, 0xa4, 0xa7, 0xed, 0x4a, 0x08, 0x4c, 0x46, 0xfe, 0x58, + 0xf9, 0xd6, 0xff, 0xa9, 0x26, 0x2c, 0x77, 0xdc, 0x06, 0xe1, 0x0e, 0xe9, 0xf7, 0x60, 0x8c, 0xed, + 0x26, 0x70, 0x9d, 0xaf, 0xa7, 0xa0, 0x65, 0xe0, 0x78, 0xdb, 0xce, 0xe0, 0x25, 0xc8, 0xdb, 0x30, + 0xda, 0x0a, 0xcc, 0x8b, 0xc1, 0x8a, 0xb2, 0x02, 0x54, 0xf4, 0xd8, 0xda, 0x1a, 0xf7, 0x9c, 0xd8, + 0x64, 0xc0, 0x8e, 0x52, 0xc4, 0x9e, 0x94, 0xbc, 0x75, 0x35, 0x12, 0xdd, 0xe2, 0xd2, 0xff, 0x61, + 0x26, 0x70, 0xc7, 0xb0, 0xfc, 0xe7, 0x21, 0x16, 0xac, 0x97, 0x33, 0x83, 0x6e, 0x6a, 0xde, 0x0b, + 0x46, 0x5c, 0x9a, 0xe9, 0x12, 0xe3, 0x74, 0x30, 0x2a, 0x37, 0xc2, 0x8b, 0x3d, 0x4c, 0x95, 0x2f, + 0xa6, 0x15, 0x0e, 0x9a, 0xf6, 0x3d, 0xb8, 0xdc, 0xf3, 0x97, 0x43, 0x69, 0xa0, 0xd5, 0x70, 0xe9, + 0x5b, 0x82, 0x31, 0x26, 0x35, 0x9c, 0x83, 0xe7, 0xd2, 0x84, 0x8c, 0x83, 0x3d, 0x47, 0xf1, 0xfc, + 0x2b, 0xd4, 0xd4, 0x6e, 0x9b, 0x1d, 0x75, 0xa8, 0x47, 0x87, 0x83, 0xd4, 0xc7, 0x99, 0xe1, 0xfa, + 0x58, 0xde, 0x40, 0xcf, 0x46, 0x36, 0xd0, 0xcf, 0xc3, 0x44, 0xdb, 0xa9, 0xb9, 0x96, 0xef, 0x8a, + 0xcd, 0xf5, 0xf1, 0xb6, 0x63, 0xd0, 0x4f, 0xfd, 0x73, 0x20, 0x32, 0x55, 0x9c, 0x4f, 0x5f, 0x83, + 0x39, 0xb1, 0x59, 0x88, 0x19, 0x61, 0xeb, 0xb5, 0x94, 0xbb, 0xc0, 0x49, 0x83, 0xdd, 0x38, 0x73, + 0x9c, 0x90, 0xaa, 0xfb, 0xe2, 0x52, 0x07, 0xce, 0x1f, 0x3d, 0xb7, 0x11, 0x92, 0xee, 0xcd, 0xbf, + 0x01, 0xe3, 0xbc, 0xe2, 0x41, 0xb4, 0x96, 0x80, 0xd5, 0x7f, 0x5d, 0x13, 0x9a, 0x4b, 0xec, 0x63, + 0x26, 0xae, 0xbf, 0x2f, 0x42, 0x8e, 0xfe, 0xf7, 0x3a, 0x66, 0x5d, 0x48, 0x55, 0x98, 0x40, 0x4b, + 0x04, 0x8b, 0xd2, 0x1c, 0xbf, 0x4a, 0x2c, 0xdd, 0x0c, 0xe3, 0xd3, 0x16, 0xbf, 0x19, 0x76, 0x09, + 0x00, 0x57, 0xca, 0x6c, 0x0b, 0x84, 0xdd, 0xe1, 0x62, 0x6b, 0x67, 0xdc, 0x01, 0x09, 0xb2, 0x11, + 0xe3, 0x98, 0x94, 0x8d, 0x06, 0xed, 0xbf, 0xd4, 0x84, 0x06, 0xad, 0x5a, 0x2e, 0x55, 0x0c, 0x42, + 0x64, 0xce, 0xc1, 0xb8, 0xe7, 0x1e, 0xd7, 0xea, 0x2d, 0xc1, 0xae, 0x31, 0xcf, 0x3d, 0x5e, 0x6d, + 0x35, 0xc8, 0xd7, 0x21, 0xcf, 0x33, 0x6a, 0xfc, 0x26, 0x33, 0x3b, 0x61, 0x7b, 0x2b, 0x75, 0xfc, + 0xc9, 0x78, 0x17, 0xab, 0x88, 0x45, 0xbe, 0xcf, 0x3c, 0xe5, 0x49, 0x49, 0xc5, 0x0f, 0x60, 0x36, + 0x06, 0x32, 0xd4, 0x90, 0xfc, 0x47, 0x1a, 0x5c, 0x52, 0x6a, 0xae, 0xb4, 0x3d, 0xdf, 0x6c, 0xd7, + 0xfb, 0x4c, 0x25, 0xc4, 0x08, 0xcc, 0x02, 0xd6, 0x9e, 0x7b, 0xbd, 0xdb, 0x13, 0xc5, 0xba, 0xc8, + 0x36, 0x4f, 0xf9, 0x61, 0x64, 0x78, 0xb3, 0x5a, 0x4a, 0x1e, 0xaa, 0x19, 0xdf, 0xd1, 0xe0, 0x6c, + 0x84, 0x81, 0x9c, 0xfc, 0x9b, 0x70, 0xfa, 0xd8, 0x69, 0xd6, 0x68, 0x27, 0xb8, 0x5e, 0xa7, 0xe6, + 0x1c, 0x7c, 0x56, 0xab, 0xf3, 0x95, 0xeb, 0x28, 0x6e, 0xa2, 0x57, 0xdd, 0x63, 0xc3, 0xeb, 0xec, + 0x1c, 0x7c, 0xb6, 0xda, 0xf6, 0xc9, 0x36, 0x6e, 0x91, 0x09, 0x68, 0xde, 0xb6, 0xc5, 0xe1, 0xda, + 0x86, 0xb7, 0x9d, 0x19, 0x56, 0xbd, 0x01, 0xe4, 0xbe, 0x6b, 0x76, 0x1e, 0xaf, 0xb9, 0xf6, 0xb1, + 0xe5, 0xae, 0x3e, 0x36, 0xdb, 0x47, 0x96, 0x17, 0x8c, 0x20, 0x4d, 0x1a, 0x41, 0xf7, 0x60, 0xe4, + 0x89, 0xdd, 0x6e, 0xa4, 0xde, 0x28, 0x8b, 0xa1, 0x61, 0xa7, 0xc4, 0xb4, 0x8c, 0xfe, 0x32, 0xcc, + 0xac, 0x36, 0xbb, 0x9e, 0x6f, 0xb9, 0x7d, 0x0c, 0x80, 0x9f, 0xd6, 0x60, 0x9a, 0xce, 0x0c, 0xc7, + 0x81, 0xe0, 0x6e, 0xc0, 0x84, 0x61, 0x7d, 0x6e, 0x79, 0xfe, 0x83, 0x87, 0xdc, 0xdc, 0xbc, 0x19, + 0x37, 0x37, 0xe5, 0x12, 0x8b, 0x02, 0x9c, 0xf5, 0x5d, 0x50, 0xba, 0xf8, 0x0e, 0x4c, 0x2b, 0x59, + 0x72, 0xff, 0x65, 0xfb, 0xf5, 0xdf, 0x37, 0x21, 0xaf, 0xd4, 0xe2, 0x11, 0x1d, 0xa6, 0xf8, 0xef, + 0x55, 0x69, 0xab, 0x41, 0x49, 0x23, 0x6b, 0x91, 0xd6, 0xf0, 0xfe, 0xba, 0xdc, 0xbb, 0x05, 0x86, + 0x5a, 0x48, 0xff, 0xbf, 0x34, 0x98, 0xc3, 0x63, 0xcf, 0xfe, 0x33, 0xc1, 0x03, 0x18, 0xdb, 0x94, + 0xef, 0xe4, 0xdf, 0x49, 0x3e, 0x3f, 0x8d, 0x21, 0x52, 0xe3, 0x3c, 0x70, 0x47, 0x44, 0xf5, 0xa2, + 0x7c, 0x36, 0x72, 0x51, 0x9e, 0x2c, 0xc0, 0x6c, 0x03, 0x57, 0x08, 0x35, 0xa7, 0x5d, 0x3b, 0x34, + 0xed, 0x66, 0xd7, 0x15, 0x1b, 0x85, 0x33, 0x2c, 0x63, 0xa7, 0xbd, 0xce, 0x92, 0x9f, 0x25, 0xa0, + 0xc3, 0x1f, 0x68, 0x70, 0x2e, 0x46, 0x34, 0x17, 0xa2, 0x7d, 0xc8, 0x89, 0xcd, 0x59, 0xb1, 0xd4, + 0x79, 0xab, 0x7f, 0x8b, 0xc5, 0x08, 0x17, 0x25, 0x59, 0xab, 0x43, 0x4c, 0xa1, 0x6c, 0x66, 0x24, + 0xd9, 0x2c, 0x9a, 0x90, 0x57, 0x8b, 0x24, 0x34, 0xe3, 0xae, 0xdc, 0x8c, 0xc4, 0x8d, 0x97, 0x18, + 0x1d, 0x72, 0x5b, 0xff, 0xed, 0x68, 0x10, 0x6f, 0x04, 0x77, 0x90, 0xa3, 0xdd, 0x5b, 0x80, 0x6c, + 0xbd, 0xd3, 0x45, 0xe4, 0x9a, 0x41, 0x7f, 0xe2, 0x86, 0x96, 0xd5, 0xaa, 0xe1, 0xe6, 0x35, 0x3f, + 0xca, 0x98, 0x68, 0x59, 0x2d, 0x0c, 0x01, 0x42, 0x67, 0x70, 0x9a, 0x89, 0xa7, 0x07, 0x6c, 0x2b, + 0x7c, 0xbc, 0x65, 0xb5, 0xf0, 0xec, 0x80, 0x67, 0x1d, 0xba, 0x96, 0x25, 0x0e, 0x33, 0x5a, 0x56, + 0x6b, 0xdd, 0xb5, 0xf0, 0xba, 0xa2, 0x79, 0x7c, 0x54, 0x6b, 0x3a, 0x26, 0xdb, 0xd3, 0xcc, 0x1a, + 0xe3, 0xe6, 0xf1, 0xd1, 0xa6, 0x63, 0xb2, 0xe3, 0x7c, 0xa6, 0x54, 0xc7, 0x53, 0xce, 0x99, 0x23, + 0x07, 0xc6, 0xef, 0xc1, 0x68, 0xc3, 0xf6, 0x9e, 0x88, 0x58, 0x23, 0x2f, 0xa7, 0x85, 0xc7, 0xa0, + 0xad, 0x5d, 0x5c, 0xa3, 0x90, 0xac, 0x33, 0x58, 0x29, 0xb2, 0x0c, 0xa3, 0x1d, 0xc7, 0x09, 0xae, + 0x1a, 0x5e, 0xec, 0x15, 0x5d, 0xc3, 0x60, 0xa0, 0x74, 0xa6, 0x6b, 0x1d, 0xb5, 0xfc, 0x9a, 0xdd, + 0x11, 0x0b, 0x27, 0xfa, 0x59, 0xe9, 0xd0, 0x8c, 0x86, 0xe9, 0x9b, 0x34, 0x63, 0x8a, 0x65, 0xd0, + 0xcf, 0x0a, 0x7a, 0x11, 0x3c, 0x76, 0x3c, 0x1f, 0x27, 0x5c, 0x76, 0x70, 0x1c, 0x7c, 0x93, 0x2d, + 0x98, 0xc4, 0x79, 0x9a, 0x3b, 0xf9, 0x16, 0x52, 0x34, 0x90, 0xdc, 0x0c, 0xfa, 0x47, 0x1e, 0x4e, + 0xd0, 0x0e, 0x12, 0xc8, 0x22, 0x9c, 0x16, 0x6e, 0x5e, 0x6e, 0x0d, 0x11, 0x63, 0xad, 0xb3, 0x58, + 0xeb, 0x6c, 0x90, 0x45, 0x51, 0xe0, 0x74, 0xff, 0x06, 0x8c, 0x6d, 0x3c, 0xa2, 0x8a, 0x14, 0x1d, + 0x54, 0x93, 0x36, 0x9f, 0x36, 0x4c, 0xb7, 0xf1, 0x85, 0xe9, 0x32, 0x6d, 0xcb, 0x81, 0x8b, 0x9f, + 0x02, 0x84, 0xcc, 0x4c, 0x10, 0xd3, 0x37, 0x55, 0x31, 0xbd, 0x9a, 0xd6, 0x1e, 0xb1, 0x01, 0x23, + 0x3b, 0xa1, 0xbc, 0x07, 0x33, 0x91, 0x16, 0x0e, 0x35, 0x9c, 0x2d, 0xc8, 0x73, 0xe4, 0x7c, 0x46, + 0x90, 0x84, 0x4a, 0x1b, 0x4c, 0xa8, 0xd8, 0xa8, 0xc8, 0xc8, 0x71, 0x92, 0x90, 0x8b, 0xd9, 0xd0, + 0x22, 0xd3, 0x5b, 0x70, 0xad, 0xda, 0x78, 0xb2, 0xd3, 0xb1, 0xda, 0xca, 0xe9, 0x89, 0xaa, 0x3d, + 0x37, 0x62, 0x37, 0xf1, 0xb4, 0x94, 0xe3, 0x93, 0xe8, 0x29, 0x4c, 0xe4, 0xb2, 0x9e, 0xfe, 0x22, + 0xe8, 0xbd, 0xaa, 0xe3, 0x36, 0xec, 0x4b, 0xb8, 0xdb, 0x14, 0x83, 0x0a, 0x76, 0x85, 0x84, 0xc2, + 0xef, 0xe2, 0x96, 0x51, 0x2f, 0x38, 0xae, 0xff, 0x36, 0xa1, 0xa0, 0x34, 0x20, 0xdc, 0xf1, 0x19, + 0xa0, 0x09, 0x33, 0x72, 0x13, 0x6c, 0xcb, 0xd3, 0xdf, 0x4e, 0x6e, 0x04, 0x0f, 0x63, 0x22, 0x98, + 0x96, 0x60, 0xff, 0xea, 0x0e, 0xbc, 0xd0, 0xb3, 0x24, 0x27, 0xf7, 0xf9, 0xf1, 0xfb, 0xad, 0xe4, + 0xee, 0x55, 0xb7, 0xc1, 0x92, 0x28, 0x4d, 0xe9, 0xa8, 0xc8, 0x56, 0x57, 0x8a, 0xf4, 0xb0, 0x93, + 0xaf, 0xef, 0x9b, 0xf4, 0x88, 0xea, 0x38, 0x51, 0xef, 0x24, 0x4b, 0x45, 0xd5, 0xf2, 0xd7, 0xac, + 0x43, 0xb3, 0xdb, 0xec, 0xd9, 0x43, 0x37, 0xe0, 0xa5, 0x7e, 0x85, 0x79, 0x35, 0x29, 0xc4, 0x18, + 0x56, 0xd3, 0x32, 0xbd, 0x40, 0x44, 0xaf, 0x27, 0xf7, 0x78, 0x00, 0xc5, 0x91, 0xbd, 0x0a, 0xaf, + 0x24, 0xb3, 0x1b, 0xeb, 0x54, 0x25, 0x4b, 0x3f, 0x86, 0x85, 0x41, 0x80, 0x9f, 0xbb, 0x30, 0xb5, + 0xe0, 0x32, 0x05, 0xe1, 0xca, 0x37, 0x49, 0x51, 0x3c, 0x80, 0x99, 0xc0, 0x3b, 0x57, 0xa9, 0x2c, + 0xf1, 0x74, 0x46, 0xc5, 0x64, 0xe4, 0x3d, 0xe5, 0x5b, 0xbf, 0x06, 0x57, 0x52, 0xab, 0x0b, 0xe4, + 0x2f, 0x4e, 0x91, 0x2a, 0x7c, 0xdf, 0x73, 0x8a, 0x22, 0xc2, 0xf7, 0x02, 0x8e, 0x08, 0x15, 0x24, + 0xa6, 0xb7, 0x1a, 0x28, 0x3a, 0xa9, 0x40, 0xbc, 0xe3, 0xde, 0x87, 0x89, 0x88, 0xb2, 0x1a, 0x84, + 0xe6, 0xa0, 0x8c, 0xfe, 0x46, 0x02, 0xb5, 0x03, 0xe8, 0xa8, 0x3f, 0x09, 0x57, 0xd3, 0x8b, 0x71, + 0xd2, 0xee, 0x05, 0xe7, 0xe8, 0x83, 0x33, 0x93, 0x97, 0xd0, 0x5f, 0x4f, 0xe8, 0xb3, 0xfe, 0xfa, + 0x28, 0x89, 0xf5, 0x11, 0x65, 0xb4, 0x99, 0x80, 0x58, 0xdc, 0x8b, 0x58, 0x33, 0xed, 0x26, 0xba, + 0x04, 0x3c, 0x76, 0xba, 0x2e, 0x5f, 0x33, 0xe2, 0x6f, 0x32, 0x07, 0x63, 0x2d, 0xbb, 0xdd, 0xe5, + 0xb1, 0x51, 0x46, 0x0d, 0xfe, 0xa5, 0xff, 0x69, 0x2d, 0x91, 0x7d, 0x0c, 0xdd, 0x23, 0xcb, 0x7a, + 0xd2, 0x3c, 0x21, 0xaf, 0x41, 0xb6, 0x61, 0x9e, 0xa4, 0xc6, 0x64, 0xaa, 0x36, 0x9e, 0xec, 0xd9, + 0x2d, 0x8b, 0x02, 0x37, 0xcc, 0x13, 0x83, 0xc2, 0x06, 0x24, 0x64, 0x12, 0x49, 0xc8, 0x2a, 0x24, + 0x7c, 0x23, 0xb1, 0x27, 0xb8, 0xd7, 0x8a, 0xd3, 0xf6, 0x1f, 0x37, 0xd1, 0xa4, 0x10, 0x24, 0x8c, + 0x0e, 0x5f, 0xc3, 0x7b, 0x09, 0xd2, 0x2a, 0x6a, 0xd8, 0xb5, 0x5c, 0xdb, 0x69, 0xd8, 0x75, 0x32, + 0x0f, 0xe3, 0x9e, 0x55, 0x77, 0xda, 0x0d, 0xe1, 0xff, 0x22, 0x3e, 0xf5, 0xff, 0x3b, 0x03, 0xe7, + 0x53, 0xcb, 0xb3, 0x8d, 0x79, 0xdf, 0xb4, 0xdb, 0xbc, 0x18, 0xff, 0x22, 0x1b, 0x30, 0xda, 0xa0, + 0xdd, 0x31, 0xff, 0x4f, 0x98, 0xf0, 0x2c, 0xf5, 0x17, 0x1e, 0xa5, 0x1b, 0x37, 0x4e, 0x19, 0x0c, + 0x01, 0x5d, 0xc5, 0x7d, 0x81, 0x3d, 0x31, 0xff, 0x4f, 0x19, 0xaa, 0xdb, 0x83, 0xa3, 0x62, 0x5d, + 0xb8, 0x71, 0xca, 0xe0, 0x28, 0xc8, 0x36, 0x8c, 0xb7, 0x18, 0x53, 0xe7, 0x7f, 0x87, 0x61, 0x7b, + 0x6d, 0x70, 0x6c, 0xbc, 0x3b, 0x36, 0x4e, 0x19, 0x02, 0x09, 0xf9, 0x08, 0x26, 0x3a, 0x9c, 0x85, + 0xf3, 0xff, 0x8c, 0x21, 0x5c, 0x1e, 0x1c, 0xa1, 0xe0, 0xfe, 0xc6, 0x29, 0x23, 0x40, 0xb3, 0x32, + 0x0d, 0x93, 0xec, 0x37, 0xee, 0x6a, 0xe9, 0x9f, 0xa3, 0x7b, 0x81, 0x5a, 0x3e, 0x71, 0xdb, 0x6d, + 0x03, 0x72, 0x42, 0x93, 0x89, 0x05, 0xef, 0xc2, 0xe0, 0xa4, 0x18, 0x61, 0x61, 0xfd, 0xd7, 0x47, + 0xf0, 0xa4, 0x7b, 0xd5, 0xb5, 0x1a, 0x56, 0xdb, 0xb7, 0xcd, 0xa6, 0xaa, 0xff, 0x93, 0x2a, 0x9f, + 0x83, 0x31, 0x16, 0xe5, 0x8b, 0x5b, 0xa2, 0xfc, 0x0b, 0x43, 0x92, 0xb1, 0xfb, 0x15, 0xb6, 0xd3, + 0xc6, 0x43, 0xa4, 0x2c, 0x0f, 0x49, 0x16, 0xa4, 0x3e, 0xb0, 0x22, 0xe1, 0x1d, 0x46, 0x86, 0xb9, + 0x35, 0x7d, 0x01, 0x72, 0x5d, 0xcf, 0xaa, 0xe1, 0x6d, 0x09, 0x1e, 0x67, 0x68, 0xa2, 0xeb, 0x59, + 0x78, 0xa7, 0x86, 0xae, 0xd9, 0x6d, 0xb3, 0x25, 0xa6, 0x04, 0xe6, 0xb0, 0x94, 0xb3, 0xcd, 0x16, + 0xe7, 0xe2, 0x0d, 0x28, 0x78, 0x77, 0x6a, 0x62, 0xde, 0xac, 0x37, 0x4d, 0xee, 0x8c, 0x96, 0x33, + 0xf2, 0xde, 0x9d, 0xc0, 0x2e, 0x37, 0x3d, 0x8f, 0x18, 0x90, 0x37, 0xbf, 0xf0, 0x6a, 0xf5, 0x80, + 0x23, 0x42, 0xac, 0x93, 0x8f, 0x81, 0xbf, 0xf0, 0x42, 0xde, 0x71, 0xae, 0x6d, 0x9c, 0x32, 0xa6, + 0x4d, 0x39, 0x9d, 0x7c, 0x0c, 0x05, 0xf3, 0x9b, 0x5d, 0xd7, 0x92, 0xb1, 0x72, 0x09, 0x4f, 0xec, + 0xb7, 0x12, 0x05, 0x4e, 0xc2, 0x3b, 0x63, 0xaa, 0x39, 0xe4, 0x6b, 0x30, 0xcb, 0x1c, 0x46, 0x64, + 0xd4, 0xbf, 0xd3, 0xe3, 0x4c, 0xfc, 0x3e, 0x42, 0x27, 0xe1, 0x2e, 0x1c, 0x45, 0xb2, 0x56, 0x66, + 0x61, 0x26, 0xc4, 0xca, 0x44, 0x74, 0x05, 0x2e, 0x24, 0x8a, 0x0b, 0x9f, 0x47, 0x5e, 0x80, 0x69, + 0xa9, 0x44, 0xb0, 0x84, 0x9f, 0x0a, 0x13, 0x2b, 0x0d, 0xfd, 0x5f, 0x6b, 0xec, 0xac, 0x35, 0x81, + 0x75, 0x91, 0x43, 0x4a, 0xad, 0xf7, 0x21, 0x65, 0x26, 0x7a, 0x48, 0x29, 0x47, 0x7f, 0xcb, 0x46, + 0xa2, 0xbf, 0x85, 0xc7, 0x8a, 0x23, 0xf2, 0xb1, 0x22, 0x9e, 0x2e, 0xd9, 0x9e, 0x79, 0xd0, 0xb4, + 0x6a, 0x9e, 0xd7, 0xe4, 0x72, 0x05, 0x3c, 0xa9, 0xea, 0x35, 0xc9, 0x4d, 0x20, 0x02, 0x00, 0x2f, + 0x1a, 0x7b, 0xfe, 0x49, 0xd3, 0xe2, 0x12, 0x56, 0xe0, 0x39, 0xbb, 0x18, 0x51, 0xeb, 0xa4, 0x69, + 0xe9, 0x35, 0xd4, 0xa0, 0xc9, 0x1d, 0x88, 0xde, 0x65, 0x75, 0xe6, 0xa5, 0x22, 0x0d, 0xab, 0x49, + 0x9e, 0x86, 0x0b, 0x5f, 0x76, 0x3c, 0x8a, 0x20, 0x61, 0x13, 0x81, 0x27, 0x3d, 0xb0, 0x4e, 0xf4, + 0x87, 0x38, 0x60, 0x53, 0xba, 0x11, 0xef, 0x05, 0xb9, 0xce, 0x67, 0x18, 0xc3, 0x50, 0x70, 0x3f, + 0xc7, 0x53, 0x2a, 0xb8, 0xfb, 0xf1, 0x99, 0xc7, 0x47, 0x27, 0x0f, 0xef, 0x47, 0xbf, 0x29, 0xde, + 0xff, 0x91, 0xbb, 0x84, 0xa8, 0xbd, 0xc2, 0xfb, 0x55, 0xed, 0x96, 0x4c, 0xb4, 0x5b, 0xfe, 0xf8, + 0xf9, 0x3e, 0xf8, 0x00, 0xd7, 0x3f, 0x60, 0xbe, 0x3d, 0xd1, 0x1e, 0xe2, 0x2d, 0x8d, 0x76, 0x51, + 0x26, 0xd6, 0x45, 0xfa, 0xbb, 0x38, 0x06, 0xe2, 0x3d, 0x10, 0xf2, 0x4a, 0xea, 0x82, 0x4c, 0xa4, + 0x0b, 0xf4, 0x2b, 0x70, 0x49, 0x19, 0x41, 0x31, 0x63, 0xf2, 0x3e, 0x9a, 0x3d, 0x89, 0x00, 0xbc, + 0x86, 0xeb, 0x90, 0x57, 0x46, 0x99, 0xb8, 0x1b, 0x36, 0x2d, 0x0f, 0x33, 0x2f, 0x36, 0x56, 0x23, + 0xb6, 0xe2, 0x40, 0x63, 0xf5, 0xcf, 0x8d, 0xc0, 0xc5, 0x64, 0x24, 0x43, 0x8c, 0xf8, 0x60, 0x1a, + 0xc9, 0x24, 0x4e, 0x23, 0x59, 0x65, 0x1a, 0xf9, 0xe3, 0x99, 0x1f, 0xaa, 0x69, 0x5a, 0xff, 0x95, + 0x01, 0xb4, 0x3e, 0x63, 0x45, 0x5c, 0xed, 0x7f, 0x92, 0xae, 0xf6, 0x5f, 0x1d, 0x48, 0xed, 0x07, + 0x88, 0x63, 0x7a, 0xff, 0x4f, 0xf4, 0xd0, 0xfb, 0x37, 0x07, 0xd3, 0xfb, 0x01, 0xf2, 0x81, 0x14, + 0x7f, 0x29, 0x62, 0x27, 0xa8, 0x16, 0xfe, 0x40, 0xb2, 0x74, 0x29, 0x22, 0x8f, 0x11, 0x73, 0x7f, + 0x35, 0x22, 0x69, 0x0f, 0xcd, 0xa6, 0x2d, 0xaf, 0xfc, 0x06, 0xaa, 0x23, 0x3a, 0xba, 0x42, 0x24, + 0xbc, 0x96, 0x07, 0xb8, 0x15, 0x15, 0x27, 0x82, 0x07, 0x78, 0xf2, 0x86, 0xaa, 0xed, 0x65, 0xdc, + 0x99, 0xe8, 0x85, 0x8c, 0xd7, 0xfa, 0x0b, 0x1a, 0xfa, 0x2c, 0x71, 0x0f, 0x08, 0xf4, 0x97, 0x90, + 0xc2, 0x28, 0xf1, 0x29, 0x4d, 0x8e, 0xa3, 0xca, 0x92, 0xc4, 0xc9, 0x67, 0xaf, 0x39, 0xef, 0x3a, + 0xe4, 0x79, 0x76, 0xdd, 0x69, 0xfb, 0xd6, 0x97, 0x62, 0x3c, 0x4d, 0xb3, 0xd4, 0x55, 0x96, 0x48, + 0x55, 0x74, 0x10, 0xd4, 0x85, 0x29, 0xe2, 0xe0, 0x5b, 0xff, 0xcd, 0x0c, 0x9c, 0x0d, 0xa8, 0xc3, + 0x9b, 0x0a, 0x82, 0x0b, 0x3d, 0x8f, 0x9b, 0x55, 0xb7, 0x8d, 0x4c, 0xd4, 0x6d, 0xa3, 0x14, 0x7a, + 0x36, 0xb0, 0x93, 0xe7, 0x97, 0x93, 0xe4, 0x32, 0x81, 0x25, 0x81, 0x4b, 0x03, 0xf9, 0x06, 0xe4, + 0x1b, 0x78, 0xb0, 0x56, 0x53, 0x7d, 0x24, 0xee, 0xa6, 0x63, 0x92, 0xc9, 0x5f, 0x64, 0xa7, 0x72, + 0x8a, 0xbb, 0xc4, 0x74, 0x43, 0x4e, 0x2b, 0xfe, 0x00, 0x90, 0x38, 0xd0, 0x50, 0xfb, 0xba, 0xf3, + 0x52, 0xcf, 0xf2, 0xca, 0x79, 0xa7, 0xff, 0x24, 0xb3, 0x73, 0xb8, 0x97, 0x7b, 0x5b, 0xb9, 0x57, + 0x12, 0x9e, 0x21, 0x49, 0x2c, 0xd4, 0xe4, 0x33, 0xa4, 0xad, 0x80, 0x91, 0x0f, 0xe0, 0x85, 0xb6, + 0x53, 0x6b, 0x58, 0x4d, 0xf3, 0xa4, 0x76, 0x60, 0x1d, 0x3a, 0x78, 0x95, 0xab, 0x69, 0xf9, 0x76, + 0xfb, 0xa8, 0x16, 0xe9, 0x80, 0x09, 0xe3, 0x72, 0xdb, 0x59, 0xa3, 0x90, 0x2b, 0x08, 0xb8, 0xc6, + 0xe1, 0x02, 0x64, 0xfa, 0x3f, 0xcc, 0xc4, 0x89, 0x7a, 0x1e, 0xbd, 0xbd, 0x12, 0xed, 0xed, 0x1b, + 0xe9, 0x7d, 0xa4, 0xf2, 0x22, 0xec, 0xee, 0x83, 0x94, 0xee, 0x7e, 0xa7, 0x2f, 0xaa, 0xef, 0x67, + 0x87, 0x17, 0xd1, 0x4e, 0x8a, 0x54, 0xcf, 0xbb, 0xfc, 0x97, 0x32, 0xb1, 0x71, 0x3e, 0x10, 0x73, + 0xa5, 0xb1, 0x92, 0x79, 0xca, 0xb1, 0x62, 0xc6, 0x98, 0x97, 0x4d, 0x39, 0xff, 0x4f, 0x26, 0xf0, + 0xfb, 0xc2, 0xbb, 0x7b, 0x92, 0xf0, 0x89, 0xda, 0xb9, 0x21, 0x11, 0xf1, 0xf2, 0xd2, 0x62, 0x5e, + 0x5e, 0x3f, 0x24, 0xb1, 0x76, 0xcd, 0x92, 0x55, 0x68, 0x70, 0x95, 0x43, 0x93, 0xaf, 0x72, 0x2c, + 0xc3, 0xd9, 0x2e, 0xeb, 0x9e, 0x70, 0xd4, 0xa0, 0x6b, 0x1b, 0x1b, 0x28, 0xa7, 0x79, 0xa6, 0x18, + 0x28, 0xe8, 0xc3, 0x86, 0x6e, 0x41, 0x2c, 0xe4, 0x77, 0xe8, 0x16, 0xc4, 0xbe, 0xd5, 0xbe, 0x65, + 0xf0, 0xcf, 0xbd, 0x6f, 0x95, 0x76, 0x3d, 0x53, 0xdf, 0x2a, 0x04, 0x7e, 0x5f, 0xfa, 0xf6, 0xbc, + 0xd4, 0xb7, 0xa2, 0x76, 0x3e, 0x2c, 0xfe, 0x07, 0x79, 0xfa, 0xeb, 0xbf, 0xc3, 0x30, 0xb4, 0x03, + 0xde, 0x83, 0xe0, 0x69, 0x87, 0x6c, 0xca, 0xe9, 0x7f, 0x72, 0xed, 0x49, 0xaf, 0x3c, 0x3c, 0xcb, + 0x91, 0xfd, 0x9b, 0x12, 0x0b, 0x22, 0x2b, 0xe3, 0x5e, 0x22, 0xa2, 0x6f, 0x48, 0xf3, 0xef, 0x6a, + 0xd3, 0x69, 0xf7, 0xe4, 0xce, 0x05, 0xc8, 0xb1, 0x10, 0xf9, 0x92, 0xbb, 0x30, 0x4b, 0xa8, 0x34, + 0xf4, 0x37, 0x64, 0x46, 0x33, 0x4c, 0x83, 0x10, 0xf0, 0x86, 0x22, 0xda, 0xb2, 0x65, 0xd7, 0xb3, + 0x98, 0xda, 0xe5, 0x8a, 0x35, 0xf7, 0x85, 0x94, 0x15, 0x59, 0x78, 0xf4, 0x1c, 0x2d, 0x1f, 0x44, + 0x47, 0x4b, 0x9a, 0xf3, 0x9c, 0xfa, 0xc8, 0x40, 0x30, 0x56, 0xf4, 0x3f, 0xd0, 0x24, 0xfd, 0x1c, + 0x5d, 0xad, 0x0c, 0xed, 0xd1, 0x98, 0xb4, 0x72, 0xd9, 0x8a, 0x48, 0xdb, 0x1b, 0xe9, 0xd2, 0x16, + 0xa9, 0xff, 0x79, 0xcb, 0xdb, 0xff, 0x9e, 0xc1, 0x83, 0x07, 0xa5, 0xae, 0x04, 0x27, 0xfe, 0xa4, + 0x46, 0x3c, 0x8a, 0x34, 0xe2, 0x83, 0xbe, 0x8d, 0x88, 0x23, 0x4e, 0x7c, 0x24, 0xe5, 0xe9, 0xd7, + 0x6f, 0x41, 0x08, 0x84, 0xd1, 0x41, 0x42, 0x20, 0x48, 0x82, 0x32, 0xf6, 0x34, 0x82, 0xf2, 0x2c, + 0x7c, 0xff, 0x0c, 0x0f, 0x01, 0xd3, 0xb9, 0xc3, 0xa5, 0x6d, 0x15, 0xc6, 0x99, 0x18, 0x89, 0xf3, + 0x9e, 0x57, 0x06, 0x96, 0x14, 0x43, 0x94, 0xd4, 0xff, 0xbd, 0xac, 0x3b, 0xd5, 0xb3, 0xb0, 0x9e, + 0x03, 0x69, 0x08, 0x9d, 0xa8, 0x60, 0x4d, 0xec, 0xd4, 0x37, 0xb8, 0x46, 0x1e, 0xe9, 0x7b, 0xcb, + 0x92, 0xe3, 0x42, 0xf0, 0x67, 0x61, 0xb1, 0xac, 0x5a, 0x22, 0x47, 0x72, 0x5f, 0x93, 0xb4, 0x25, + 0xde, 0x83, 0x1e, 0x88, 0x1f, 0xd7, 0x21, 0xdf, 0x76, 0xfc, 0x5a, 0xbd, 0xdb, 0xea, 0x36, 0x4d, + 0xdf, 0x3e, 0x16, 0xb1, 0xf3, 0xa7, 0xdb, 0x8e, 0xbf, 0x1a, 0x24, 0xea, 0xeb, 0x12, 0xb7, 0x39, + 0xf2, 0xc0, 0x5f, 0x11, 0x03, 0x3b, 0x78, 0x5c, 0x75, 0xcc, 0x25, 0x7a, 0x6b, 0x78, 0x2c, 0xfa, + 0x83, 0xa7, 0xbf, 0x8b, 0x0b, 0x51, 0xae, 0x88, 0xe5, 0xab, 0xc8, 0x03, 0x29, 0x56, 0x1f, 0xf7, + 0x80, 0x12, 0x4b, 0x73, 0x6a, 0x0c, 0x38, 0x5d, 0xe7, 0x19, 0xec, 0x96, 0x2d, 0x8b, 0xc7, 0x90, + 0x76, 0x7c, 0x17, 0xbb, 0x0d, 0x6d, 0xcc, 0xd6, 0xa3, 0x49, 0xfa, 0x05, 0xdc, 0xbb, 0x64, 0xb5, + 0xc6, 0xb6, 0xa5, 0xde, 0xc1, 0x0d, 0x80, 0x58, 0x66, 0xb8, 0xe9, 0x25, 0xb9, 0xcc, 0x69, 0x11, + 0x97, 0x39, 0xfd, 0xef, 0x66, 0x70, 0xd9, 0x1d, 0x29, 0x3d, 0xa0, 0xaa, 0xfa, 0x24, 0x22, 0xc9, + 0xa5, 0x74, 0x49, 0xee, 0x81, 0xfa, 0x8f, 0x53, 0x59, 0x3d, 0xcb, 0x40, 0x58, 0xc7, 0x3d, 0x86, + 0x5e, 0xcd, 0x1b, 0xac, 0x0b, 0xfe, 0x9d, 0x26, 0xc9, 0x94, 0xf0, 0xe7, 0x53, 0x6d, 0xb1, 0x7e, + 0xce, 0xe5, 0xb1, 0x9e, 0xa9, 0x46, 0x7a, 0xa6, 0xc7, 0x42, 0x2d, 0xb1, 0xc6, 0xe7, 0x3d, 0x1f, + 0xae, 0xe0, 0x11, 0x6f, 0x72, 0x85, 0xe1, 0x32, 0x23, 0x8c, 0x58, 0xd6, 0x08, 0xb6, 0x5b, 0x44, + 0xd8, 0xbd, 0x86, 0x5e, 0x4b, 0xc0, 0x61, 0x58, 0x78, 0x83, 0x6b, 0x20, 0x3e, 0x45, 0x2a, 0xc8, + 0xc4, 0x2a, 0xd0, 0xf1, 0x14, 0x38, 0xa5, 0x02, 0xae, 0xe2, 0x7e, 0x00, 0xcf, 0x71, 0x55, 0x98, + 0xe8, 0x88, 0xec, 0xad, 0x41, 0xf6, 0x24, 0xcb, 0x20, 0x01, 0x43, 0x70, 0xf5, 0xee, 0x34, 0x47, + 0x21, 0xd1, 0x2c, 0x84, 0x67, 0xf6, 0x58, 0x29, 0x4d, 0x85, 0xe8, 0x0f, 0x34, 0xb8, 0x99, 0x8e, + 0x36, 0x61, 0x3c, 0xf7, 0x64, 0x95, 0x19, 0x88, 0x0f, 0x3b, 0xc3, 0xac, 0xf4, 0x17, 0x9f, 0x21, + 0x07, 0xf8, 0xb3, 0x08, 0x53, 0x0d, 0x6e, 0x0d, 0x58, 0xfd, 0x53, 0x32, 0xf3, 0x2b, 0x74, 0x4d, + 0x52, 0x2b, 0x10, 0x27, 0xb6, 0x43, 0x4c, 0xf4, 0x6f, 0xc2, 0xb9, 0x78, 0x28, 0x3d, 0xbc, 0x84, + 0xc1, 0xe3, 0xc2, 0x9d, 0x8d, 0x06, 0x30, 0xdd, 0xa6, 0x99, 0xfa, 0x2b, 0xf0, 0x72, 0xdf, 0xea, + 0xb9, 0x38, 0xde, 0xc3, 0x31, 0xb1, 0xed, 0x34, 0xac, 0x58, 0xb0, 0x07, 0xe9, 0x9e, 0x85, 0xb8, + 0xd7, 0xa1, 0xc9, 0xf7, 0x3a, 0x74, 0x17, 0xc5, 0x3d, 0xa5, 0x2c, 0xe7, 0xdc, 0x36, 0xcc, 0xca, + 0x01, 0x23, 0x7a, 0x4f, 0x65, 0x71, 0x34, 0x33, 0x52, 0xec, 0x08, 0x9c, 0xc8, 0x98, 0xd3, 0x0e, + 0xf7, 0xb3, 0x5c, 0x73, 0x5a, 0xa6, 0xdd, 0xf6, 0x62, 0x13, 0xda, 0x43, 0x1c, 0x21, 0xa9, 0x40, + 0x9c, 0xb4, 0xdb, 0x70, 0xa6, 0xce, 0x40, 0x6a, 0x0d, 0x84, 0xe1, 0xac, 0x65, 0xbd, 0x4a, 0xea, + 0x72, 0x71, 0xc6, 0xd7, 0x5d, 0x76, 0x7e, 0x23, 0x67, 0x44, 0x16, 0x40, 0x8b, 0x70, 0x3a, 0x01, + 0x27, 0xe7, 0xdb, 0x6c, 0x0c, 0xa5, 0xde, 0x46, 0xf6, 0x27, 0x63, 0x0c, 0x65, 0x6f, 0x18, 0x94, + 0x54, 0xa2, 0x6c, 0xaf, 0x66, 0xd6, 0x25, 0x43, 0x68, 0xc2, 0xf6, 0x98, 0xfb, 0xbd, 0xfe, 0x51, + 0xbc, 0x3e, 0xcc, 0x91, 0x24, 0x72, 0xd8, 0x26, 0x30, 0xa5, 0x97, 0x82, 0x92, 0x4b, 0x59, 0x35, + 0xde, 0x6b, 0x6b, 0x96, 0xf9, 0x8c, 0x15, 0xbf, 0x18, 0xef, 0x65, 0x19, 0x29, 0xaf, 0xfa, 0x9a, + 0xdc, 0x62, 0xce, 0xdb, 0x55, 0x76, 0x71, 0x55, 0x88, 0xcb, 0xd7, 0xe5, 0x16, 0x44, 0x41, 0x78, + 0x2f, 0xdc, 0x85, 0x71, 0x4e, 0x01, 0x97, 0xde, 0x2b, 0x69, 0x0e, 0xc6, 0xe2, 0x56, 0x88, 0x80, + 0xd7, 0x6f, 0xa3, 0x51, 0x4b, 0xc5, 0x39, 0x22, 0x2c, 0xa9, 0x03, 0xeb, 0xff, 0x1c, 0x81, 0xec, + 0x87, 0xce, 0x41, 0xcc, 0x57, 0xfe, 0xb6, 0x88, 0x55, 0x96, 0x49, 0x89, 0x10, 0xfd, 0xa1, 0x73, + 0xb0, 0xa8, 0x44, 0x2a, 0xbb, 0x25, 0xdd, 0xd3, 0xca, 0x2f, 0x9f, 0x4f, 0x2c, 0x20, 0xbd, 0x06, + 0xf9, 0x31, 0xcc, 0x36, 0x5c, 0xca, 0x79, 0x76, 0xf1, 0xb3, 0x65, 0xb5, 0x7d, 0x6f, 0xfe, 0xdb, + 0x69, 0xbb, 0xbe, 0xb4, 0x49, 0x6b, 0x14, 0xbc, 0x14, 0x42, 0x7f, 0xe8, 0x1c, 0x6c, 0x9c, 0x32, + 0x0a, 0x8d, 0x48, 0x32, 0xf9, 0x94, 0x76, 0xae, 0xd3, 0x6d, 0xe0, 0xd6, 0x54, 0xcd, 0x77, 0xcd, + 0xb6, 0x77, 0x68, 0xb9, 0xf3, 0x3f, 0xc1, 0x70, 0xc7, 0xaf, 0xde, 0x60, 0x2c, 0x1a, 0xdc, 0xb6, + 0xda, 0xe3, 0xb0, 0x0c, 0x33, 0x09, 0xb1, 0x88, 0x0c, 0xf2, 0x0e, 0x4c, 0xf2, 0xdb, 0x79, 0x18, + 0x6e, 0xa3, 0x7f, 0xc0, 0x13, 0x60, 0xe0, 0x18, 0xa8, 0x63, 0x8d, 0x47, 0xa7, 0x62, 0x51, 0x61, + 0x6a, 0x03, 0x06, 0xc9, 0xc3, 0x80, 0x54, 0x4c, 0x95, 0x62, 0xdc, 0x8e, 0x47, 0x30, 0x82, 0xd1, + 0x0f, 0xce, 0x40, 0x41, 0x7a, 0x38, 0xb0, 0xb6, 0xf7, 0xc9, 0x6e, 0xb9, 0x70, 0x8a, 0x4c, 0xc0, + 0x08, 0x3e, 0x00, 0xa5, 0x91, 0xb3, 0x30, 0xbb, 0x66, 0x94, 0x2a, 0xdb, 0xb5, 0xd2, 0xde, 0x5e, + 0x69, 0x75, 0x63, 0xab, 0xbc, 0xbd, 0x57, 0x2d, 0x64, 0xc8, 0x3c, 0x9c, 0x59, 0xdd, 0xdc, 0xd9, + 0x5f, 0xab, 0xad, 0x19, 0x95, 0x87, 0xe5, 0xda, 0x9e, 0x51, 0xda, 0xae, 0xae, 0x97, 0x8d, 0x42, + 0x56, 0xb7, 0x59, 0x40, 0x28, 0x8b, 0x96, 0x94, 0x31, 0x57, 0xf7, 0x4a, 0x7b, 0x65, 0x16, 0x07, + 0x76, 0xb7, 0xbc, 0xbd, 0x56, 0xd9, 0xbe, 0xcf, 0xe2, 0xc0, 0x1a, 0xfb, 0xdb, 0xdb, 0xf4, 0x23, + 0x43, 0x2b, 0x5d, 0xa3, 0x95, 0x66, 0x09, 0xc0, 0xd8, 0x6e, 0x69, 0xbf, 0x5a, 0x5e, 0x2b, 0x8c, + 0x90, 0x69, 0xc8, 0xad, 0x96, 0xb6, 0x57, 0xcb, 0x9b, 0x9b, 0xe5, 0xb5, 0xc2, 0x28, 0xcd, 0x5a, + 0x2f, 0x55, 0xe8, 0xef, 0xb1, 0x95, 0x51, 0xc8, 0x7e, 0xe6, 0x1c, 0xe8, 0x6f, 0x63, 0x78, 0x86, + 0x0f, 0x9d, 0x83, 0x40, 0xf6, 0x5f, 0xc2, 0x0c, 0x2e, 0xf7, 0x67, 0x92, 0x64, 0xc8, 0xc0, 0x92, + 0x17, 0xa1, 0x98, 0x20, 0x12, 0xe2, 0xc1, 0xc2, 0x7f, 0xc0, 0xac, 0xd4, 0x24, 0xa1, 0xe9, 0x37, + 0x20, 0x48, 0x19, 0x26, 0x3c, 0xab, 0x69, 0xd5, 0xd9, 0x75, 0xd0, 0xe4, 0xf5, 0x36, 0x1a, 0x03, + 0x55, 0x0e, 0xc5, 0x63, 0xae, 0x51, 0xec, 0x46, 0x50, 0x94, 0xbc, 0x00, 0xd3, 0x4e, 0xbb, 0x79, + 0x52, 0x0b, 0x82, 0x6c, 0xb3, 0x8d, 0xe0, 0x29, 0x9a, 0x58, 0x15, 0x61, 0xb6, 0xe7, 0x60, 0xcc, + 0xf6, 0xbc, 0xae, 0xe5, 0x0a, 0xaf, 0x06, 0xf6, 0xa5, 0xff, 0x9d, 0x0c, 0x9c, 0x4b, 0x91, 0xf8, + 0x74, 0xc2, 0xe7, 0x60, 0xac, 0x2a, 0xae, 0xec, 0x61, 0x7a, 0x35, 0xb8, 0xc9, 0xcf, 0x2b, 0xc9, + 0xca, 0x95, 0x90, 0x1d, 0x00, 0xbc, 0xb2, 0x68, 0x51, 0xf3, 0x83, 0x2f, 0x5b, 0x12, 0x9d, 0xee, + 0x7a, 0xb0, 0xd1, 0x90, 0x50, 0xfc, 0x87, 0x30, 0x36, 0xbe, 0xa3, 0xc1, 0xd9, 0xc4, 0xe1, 0x8c, + 0x01, 0x0c, 0x59, 0x00, 0x0d, 0x1c, 0xd0, 0x9e, 0x25, 0x19, 0xee, 0x05, 0x96, 0xb3, 0xc6, 0x33, + 0x98, 0x35, 0xd4, 0xb0, 0x3c, 0xdf, 0x6e, 0xb3, 0xa0, 0xbe, 0x72, 0x11, 0xc6, 0xdc, 0xb3, 0x52, + 0xb6, 0x54, 0x6e, 0x4e, 0x79, 0x39, 0x2f, 0x88, 0xa6, 0xa0, 0x6f, 0xe0, 0x3e, 0x44, 0x60, 0x17, + 0x7c, 0xe8, 0x1c, 0x04, 0x82, 0x78, 0x4b, 0x89, 0x1e, 0xdb, 0x4f, 0x6d, 0xea, 0x6b, 0xb8, 0x2f, + 0x19, 0xc1, 0xc4, 0x07, 0xcf, 0x0d, 0x18, 0xf9, 0xcc, 0x39, 0x10, 0xdb, 0x44, 0xc9, 0xa3, 0x07, + 0x21, 0xf4, 0x3f, 0xa7, 0xc1, 0xe9, 0x6a, 0xe3, 0x09, 0xe3, 0x1c, 0x8e, 0xbf, 0xe4, 0x0b, 0x71, + 0x82, 0xb8, 0xcc, 0x60, 0x3a, 0x3d, 0x98, 0x34, 0xb2, 0x03, 0x4e, 0x1a, 0xfa, 0x1c, 0x9c, 0x51, + 0xe9, 0xe0, 0x53, 0xe9, 0x23, 0xdc, 0x40, 0xb9, 0x6f, 0xf9, 0x1f, 0x3a, 0x07, 0xfc, 0xfe, 0xca, + 0x73, 0x21, 0x51, 0x2f, 0xc3, 0xc4, 0x87, 0xce, 0x41, 0xa9, 0xdb, 0xb0, 0x31, 0xd0, 0x87, 0xd7, + 0x6d, 0xb5, 0x4c, 0x8c, 0xff, 0x92, 0x1c, 0xe8, 0xe3, 0x43, 0xe7, 0xe0, 0x91, 0xe3, 0x3e, 0xa9, + 0x32, 0x30, 0x43, 0xc0, 0xeb, 0x7f, 0x46, 0x83, 0xbc, 0x9a, 0x47, 0x0e, 0xe1, 0x7c, 0x6c, 0x42, + 0xab, 0x09, 0xfc, 0x69, 0xf3, 0x5a, 0x74, 0x5c, 0x71, 0x64, 0x1b, 0xa7, 0x8c, 0x73, 0x8d, 0xe4, + 0xac, 0x95, 0x5c, 0x40, 0xb5, 0xfe, 0xb3, 0x1a, 0x00, 0x65, 0x10, 0xa7, 0x20, 0xca, 0x9a, 0x65, + 0x38, 0xcb, 0x22, 0xb5, 0x05, 0x11, 0x2e, 0xb9, 0xc3, 0x2e, 0x0b, 0xe8, 0x77, 0x1a, 0x33, 0x45, + 0x5c, 0x4b, 0x96, 0x45, 0xd6, 0x21, 0xff, 0x85, 0xe3, 0x3e, 0xe1, 0x84, 0xdb, 0x96, 0x58, 0x94, + 0xf7, 0x65, 0xcd, 0xf4, 0x17, 0xc1, 0x87, 0x6d, 0x79, 0xfa, 0x97, 0x28, 0xf1, 0x6a, 0x07, 0x0e, + 0xa7, 0xe3, 0xf1, 0xd2, 0x39, 0x67, 0x5f, 0xda, 0x19, 0x4e, 0xd8, 0xf8, 0xb0, 0x6b, 0xfe, 0x9a, + 0x06, 0xe7, 0x52, 0xd8, 0x4a, 0x16, 0x60, 0xb6, 0xdd, 0x6d, 0xd5, 0xf8, 0xae, 0x28, 0xbf, 0xf7, + 0xc7, 0xb8, 0x31, 0xd3, 0xee, 0xb6, 0xd8, 0xa2, 0xc0, 0x63, 0xd7, 0xff, 0x6e, 0x40, 0x41, 0x86, + 0x6d, 0x38, 0x6d, 0x8b, 0x5f, 0x11, 0xcc, 0x87, 0xa0, 0x6b, 0x4e, 0x1b, 0xcd, 0x66, 0x19, 0xb2, + 0x63, 0xb5, 0x1b, 0x76, 0xfb, 0x88, 0xdf, 0x19, 0x9c, 0x0d, 0x81, 0x77, 0x59, 0x86, 0xb4, 0x10, + 0x5a, 0x75, 0xdc, 0x86, 0x33, 0xcc, 0xf4, 0xc4, 0x4d, 0xe0, 0x94, 0xb2, 0x7c, 0xf0, 0xbc, 0x8b, + 0x26, 0x30, 0x85, 0xd9, 0x6f, 0xd7, 0x87, 0xae, 0x81, 0xd9, 0xba, 0xa9, 0xa5, 0x79, 0x1d, 0x3f, + 0x9d, 0x41, 0x3f, 0x1c, 0xf9, 0x06, 0x61, 0x10, 0x81, 0x94, 0x6f, 0xc1, 0xc5, 0x42, 0xd4, 0x9c, + 0xe5, 0x6f, 0x9b, 0xfc, 0x13, 0xf5, 0x71, 0x93, 0x6b, 0x00, 0x1d, 0xcb, 0xad, 0x5b, 0x6d, 0xdf, + 0x3c, 0xb2, 0x98, 0x6b, 0x13, 0xcd, 0x94, 0x12, 0xc9, 0xa7, 0x90, 0x0f, 0x9e, 0x46, 0xaf, 0x49, + 0x56, 0xe6, 0x9d, 0x7e, 0xaf, 0x7c, 0x33, 0xa2, 0xd4, 0xd7, 0xc8, 0xa7, 0x1d, 0xf9, 0x93, 0xbc, + 0x0b, 0x17, 0xbc, 0x27, 0x76, 0xa7, 0xf6, 0x85, 0x69, 0xfb, 0xb5, 0x43, 0xc7, 0xc5, 0x08, 0x63, + 0x6d, 0xd1, 0x9b, 0xfc, 0x4a, 0xee, 0x39, 0x0a, 0xf2, 0xc8, 0xb4, 0xfd, 0x75, 0xc7, 0x5d, 0xa5, + 0xf9, 0xbc, 0x4b, 0x57, 0x66, 0x30, 0xcc, 0x95, 0xfd, 0x4d, 0xab, 0x76, 0x68, 0xd2, 0x89, 0x5f, + 0xff, 0x95, 0x2c, 0x5c, 0x0d, 0xee, 0xff, 0x1d, 0x98, 0x4d, 0xb3, 0x5d, 0xb7, 0xf8, 0x4b, 0xa0, + 0x7b, 0x8f, 0x5d, 0xcb, 0x7b, 0xec, 0x34, 0x1b, 0xe4, 0x43, 0x45, 0xe9, 0xbf, 0x99, 0x7e, 0x81, + 0x30, 0x05, 0x81, 0xac, 0x74, 0x77, 0x61, 0xac, 0x65, 0xf9, 0xae, 0x5d, 0xe7, 0x2a, 0xf0, 0xed, + 0xe1, 0xb1, 0x6d, 0x61, 0x79, 0x83, 0xe3, 0x21, 0xef, 0xc1, 0x05, 0xe7, 0xd8, 0x72, 0xf1, 0x0e, + 0x6b, 0x8d, 0x3f, 0x8a, 0x5a, 0xf3, 0x05, 0x34, 0x1f, 0x04, 0xf3, 0x14, 0x64, 0xd3, 0x31, 0x1b, + 0xb1, 0xc6, 0x7d, 0x00, 0x17, 0xbb, 0xed, 0x46, 0x7a, 0x79, 0x36, 0x2e, 0xce, 0x23, 0x4c, 0x12, + 0x02, 0xfd, 0xf5, 0xd0, 0xc2, 0x2d, 0xad, 0x54, 0x77, 0x36, 0xf7, 0xf7, 0xca, 0xb5, 0xdd, 0xb2, + 0xb1, 0x5a, 0xde, 0xde, 0x2b, 0x9c, 0x22, 0x73, 0x40, 0xd6, 0xca, 0x9b, 0x7b, 0xa5, 0xda, 0x56, + 0xb9, 0xb4, 0x1d, 0xa4, 0x6b, 0xfa, 0x2d, 0x18, 0x63, 0xed, 0x20, 0xa7, 0x61, 0x66, 0xd7, 0xd8, + 0x79, 0x58, 0xa9, 0xe2, 0xeb, 0xa6, 0xbb, 0xa5, 0x55, 0x6a, 0xbd, 0xe6, 0x01, 0xa8, 0x5d, 0xca, + 0xbf, 0x35, 0xfd, 0xb7, 0xb2, 0xb8, 0x15, 0x1d, 0xe5, 0x8d, 0x90, 0xdf, 0x6f, 0x00, 0x89, 0x51, + 0x2e, 0x66, 0xd6, 0xd7, 0x86, 0xe6, 0xb0, 0x31, 0xeb, 0x47, 0x52, 0x3c, 0xba, 0x78, 0xf6, 0x5d, + 0x9b, 0x69, 0x67, 0xb1, 0x78, 0xc6, 0x04, 0xa3, 0xdb, 0x26, 0x5f, 0x83, 0x33, 0xdc, 0x5c, 0xc1, + 0x88, 0x9d, 0x81, 0x45, 0x9a, 0x1d, 0xd6, 0x22, 0xe5, 0x56, 0x0f, 0x1d, 0x0c, 0x22, 0x9b, 0x22, + 0x67, 0x0f, 0x14, 0x47, 0x90, 0x8f, 0x0c, 0x8d, 0x9c, 0xa1, 0x51, 0x90, 0xdf, 0x86, 0x33, 0x2d, + 0xf3, 0xcb, 0x5a, 0xa3, 0xcb, 0x47, 0x2b, 0xbb, 0x53, 0x22, 0xe2, 0x84, 0x92, 0x96, 0xf9, 0xe5, + 0x1a, 0xcf, 0xda, 0x62, 0x39, 0xe4, 0x0d, 0x38, 0xe7, 0x5a, 0x2d, 0xe7, 0xd8, 0xaa, 0xb9, 0x56, + 0xa7, 0x59, 0x7b, 0xad, 0x16, 0x5e, 0x4a, 0x67, 0x1e, 0x96, 0x67, 0x58, 0xb6, 0x61, 0x75, 0x9a, + 0xaf, 0x05, 0x77, 0xc8, 0xf5, 0xdf, 0xd3, 0x64, 0x0d, 0x24, 0x75, 0x20, 0x9f, 0x66, 0xde, 0x94, + 0xa7, 0x99, 0x17, 0xfb, 0x76, 0x59, 0x30, 0xed, 0xac, 0x44, 0xa7, 0x9d, 0x1b, 0x7d, 0xcb, 0x46, + 0xe7, 0x20, 0xf2, 0x03, 0x30, 0xce, 0x22, 0xf3, 0x88, 0xe9, 0xf3, 0xa5, 0xbe, 0x38, 0xd0, 0x24, + 0x31, 0x44, 0x31, 0xfd, 0x5f, 0x64, 0xe0, 0x74, 0x02, 0x89, 0xb1, 0x39, 0x7e, 0x4e, 0x0a, 0xd4, + 0x21, 0xc7, 0xef, 0xfa, 0x40, 0x35, 0xc5, 0x5e, 0x19, 0xa4, 0xfd, 0xca, 0x72, 0xfe, 0x41, 0xc2, + 0xf2, 0xe0, 0xd5, 0x1e, 0xea, 0x36, 0x3a, 0x82, 0xfe, 0x43, 0x5b, 0x1a, 0x50, 0xb3, 0x20, 0xa5, + 0xdf, 0xc8, 0x1d, 0x98, 0x0b, 0x0c, 0xa5, 0x9a, 0x62, 0x29, 0x69, 0xaa, 0xa5, 0xb4, 0x27, 0x59, + 0x4a, 0x3b, 0x30, 0x25, 0x59, 0x4a, 0x27, 0x7c, 0xb1, 0x78, 0xb3, 0x2f, 0xa3, 0x65, 0xa3, 0x69, + 0x32, 0x34, 0x9a, 0x4e, 0xf4, 0x1f, 0xa5, 0x53, 0x6a, 0x3a, 0x30, 0x29, 0x2b, 0x93, 0xc6, 0x6b, + 0xc3, 0x54, 0x24, 0xcf, 0x17, 0x04, 0x46, 0xd0, 0x96, 0xe1, 0x6f, 0x36, 0xd3, 0xdf, 0xf8, 0x16, + 0x38, 0xb7, 0x5a, 0x98, 0x76, 0x17, 0x9f, 0x7a, 0x97, 0xeb, 0xe2, 0xd3, 0x30, 0xb3, 0xdf, 0xe6, + 0x88, 0x1b, 0x74, 0xc0, 0x7b, 0x85, 0x53, 0xb8, 0x51, 0x10, 0x24, 0xf2, 0x19, 0xb1, 0xa0, 0x91, + 0x17, 0xe0, 0x8a, 0x04, 0xeb, 0x3a, 0xc7, 0xb6, 0x67, 0x3b, 0x6d, 0xab, 0x51, 0xed, 0x98, 0x75, + 0x16, 0x44, 0xb8, 0x90, 0x21, 0x17, 0x61, 0x3e, 0x04, 0xda, 0xf7, 0x94, 0xdc, 0xac, 0xfe, 0x77, + 0x47, 0xe0, 0x6c, 0xe2, 0x08, 0x19, 0xfe, 0x78, 0x69, 0x5f, 0x89, 0xab, 0x95, 0x5f, 0x7e, 0x6f, + 0xb0, 0xa1, 0x18, 0x4f, 0x55, 0x43, 0x6e, 0xd1, 0xaa, 0x9c, 0x86, 0x88, 0x87, 0x8b, 0xbf, 0x31, + 0xf0, 0x8b, 0xe3, 0x34, 0x79, 0xdc, 0x21, 0xfc, 0x1d, 0x09, 0xec, 0x3a, 0xf6, 0xb4, 0x81, 0x5d, + 0xc7, 0x07, 0x0e, 0xec, 0x1a, 0x13, 0xcc, 0x89, 0x67, 0x14, 0x4c, 0xba, 0x76, 0xe6, 0x21, 0xf3, + 0x51, 0xa3, 0xf3, 0x85, 0x30, 0x0b, 0xa1, 0x5b, 0x90, 0x72, 0xaa, 0xb8, 0x06, 0x0e, 0x34, 0x0f, + 0x3c, 0x9d, 0xe6, 0xd1, 0xdf, 0x83, 0xb9, 0x64, 0xde, 0x93, 0x19, 0x98, 0x2c, 0xad, 0xad, 0xd5, + 0x8c, 0xf2, 0xee, 0x66, 0x65, 0xb5, 0x54, 0x38, 0x45, 0x08, 0xe4, 0x8d, 0xf2, 0xd6, 0xce, 0xc3, + 0x72, 0x90, 0xa6, 0xe9, 0x0e, 0x7a, 0x80, 0x8b, 0xb3, 0x07, 0x49, 0xbb, 0xa7, 0x2c, 0x20, 0x3f, + 0x50, 0x77, 0x3a, 0x87, 0xa7, 0x97, 0x79, 0x8b, 0x27, 0x55, 0xc8, 0x6d, 0xe5, 0xd7, 0xd0, 0xde, + 0xbf, 0x6f, 0xf9, 0x51, 0x14, 0xa9, 0xab, 0x5a, 0xfd, 0xdf, 0x6a, 0x68, 0xe7, 0xa7, 0x94, 0xf9, + 0xff, 0xc4, 0x0c, 0xc7, 0x56, 0x32, 0xd2, 0x59, 0x49, 0x48, 0xa6, 0x17, 0x6e, 0x97, 0x5f, 0xeb, + 0x01, 0xc3, 0xd9, 0xf0, 0xb6, 0xb2, 0xed, 0x31, 0x18, 0x1f, 0xd8, 0x36, 0xc8, 0xb7, 0x59, 0x7c, + 0x58, 0x69, 0xc1, 0xa0, 0x7b, 0x30, 0x13, 0xac, 0x16, 0xf8, 0x06, 0xda, 0x59, 0x98, 0xdd, 0xd9, + 0x2d, 0x1b, 0x25, 0x7c, 0x2c, 0x5f, 0xec, 0x80, 0xe2, 0x03, 0xfb, 0x61, 0x72, 0x65, 0xbb, 0xb6, + 0x6b, 0xec, 0xdc, 0x37, 0xca, 0xd5, 0x6a, 0x41, 0x23, 0xf3, 0x70, 0x26, 0xcc, 0xaa, 0xee, 0xaf, + 0xae, 0x96, 0xab, 0xd5, 0xf5, 0xfd, 0xcd, 0x42, 0x86, 0x9a, 0xb4, 0x61, 0x0e, 0xdf, 0x0e, 0xcd, + 0xea, 0xd7, 0x61, 0x5a, 0x59, 0xa2, 0xa8, 0x60, 0x46, 0xb9, 0x5a, 0xf9, 0xb4, 0x5c, 0x38, 0xa5, + 0x1f, 0xc0, 0xe9, 0x84, 0xf5, 0x0c, 0x05, 0x66, 0x20, 0xb8, 0x07, 0x5c, 0x2b, 0xed, 0xef, 0xed, + 0x14, 0x4e, 0x51, 0x1a, 0x94, 0xd4, 0xb5, 0xb5, 0xda, 0x5a, 0xa5, 0xfa, 0x80, 0x3d, 0xff, 0x2f, + 0xe7, 0xf0, 0xdf, 0x98, 0x99, 0xd1, 0x2f, 0xe3, 0xe8, 0x49, 0x58, 0xd6, 0x71, 0x59, 0xfe, 0x10, + 0x37, 0x66, 0x94, 0x13, 0x86, 0xe0, 0x8c, 0x8b, 0x29, 0x44, 0x26, 0x8e, 0x17, 0x7b, 0x05, 0x79, + 0x61, 0xea, 0x92, 0xd7, 0x25, 0xe1, 0x8a, 0x1c, 0x96, 0x7c, 0x84, 0x03, 0x2b, 0x29, 0xff, 0xa9, + 0xab, 0x64, 0x0e, 0x41, 0x34, 0x21, 0x76, 0x92, 0xf7, 0x06, 0xee, 0xac, 0x45, 0xb2, 0x78, 0x45, + 0x18, 0xcc, 0xaf, 0x21, 0xfb, 0x44, 0x8c, 0xb3, 0xd5, 0xb2, 0x27, 0x2d, 0x97, 0x7b, 0x9c, 0x2a, + 0xeb, 0x9f, 0xa0, 0xaf, 0x57, 0x3a, 0x14, 0xaf, 0x67, 0x59, 0x7e, 0xa6, 0xab, 0x5f, 0x8b, 0x18, + 0xa8, 0x5e, 0x46, 0x2e, 0x2a, 0x21, 0x62, 0x95, 0xa3, 0x9f, 0xeb, 0x90, 0x77, 0xc2, 0xcc, 0x70, + 0xd6, 0x9c, 0x96, 0x52, 0x2b, 0x0d, 0xbd, 0x83, 0xcc, 0x4e, 0x42, 0xc3, 0x69, 0xdb, 0x01, 0x22, + 0xe3, 0x91, 0x82, 0xce, 0x24, 0x85, 0xc0, 0x89, 0x84, 0xac, 0x35, 0x66, 0xa5, 0xb2, 0x6c, 0x5c, + 0xe9, 0xf7, 0xd0, 0x7e, 0x97, 0x00, 0x07, 0xf7, 0x23, 0xe1, 0x4a, 0x3e, 0xa1, 0xec, 0xf7, 0x8a, + 0xd8, 0xb5, 0x28, 0xb1, 0xaa, 0x83, 0xeb, 0x80, 0x4c, 0xbe, 0x1c, 0x25, 0x3b, 0xe2, 0xef, 0xfa, + 0x27, 0xa2, 0xb5, 0xa8, 0x27, 0xf8, 0x83, 0xd5, 0x42, 0xd7, 0x04, 0x2c, 0xbc, 0x2f, 0x5f, 0x56, + 0xf2, 0xaf, 0x78, 0xed, 0x91, 0x03, 0xfa, 0xff, 0x85, 0xed, 0xe9, 0xe0, 0x06, 0xfa, 0x8a, 0x59, + 0x7f, 0xd2, 0xed, 0x0c, 0xe1, 0xd9, 0x13, 0xbb, 0xea, 0x94, 0x49, 0xbe, 0xc2, 0x77, 0xd8, 0x6d, + 0x36, 0xf9, 0x61, 0x08, 0xfe, 0x26, 0xe7, 0x60, 0xdc, 0x37, 0xbd, 0x27, 0x52, 0x2c, 0x47, 0xfa, + 0x59, 0x69, 0x90, 0xdd, 0xc0, 0xb1, 0x63, 0x14, 0x47, 0xc3, 0xdb, 0x49, 0xab, 0x8f, 0x34, 0x62, + 0x13, 0x1d, 0xb5, 0x96, 0xe1, 0x2c, 0xad, 0xb2, 0x76, 0x80, 0xf0, 0xb5, 0x43, 0x97, 0xc2, 0xb6, + 0xf9, 0x4d, 0xbe, 0x69, 0xe3, 0x34, 0xcd, 0x64, 0xb8, 0xd6, 0x45, 0x16, 0xb9, 0x06, 0x53, 0xfc, + 0x8e, 0x0d, 0x3e, 0x5c, 0x81, 0x86, 0xd8, 0x84, 0x31, 0xc9, 0xd2, 0x36, 0x69, 0xd2, 0xb3, 0xb8, + 0x87, 0xbc, 0xc5, 0xae, 0xab, 0xc5, 0x1b, 0xc1, 0xe5, 0x58, 0x62, 0x8e, 0x26, 0x33, 0x47, 0xff, + 0x9d, 0x0c, 0x3f, 0x49, 0x0e, 0x4a, 0xa2, 0xab, 0x98, 0xda, 0x61, 0xe7, 0x61, 0x82, 0xbd, 0x75, + 0x18, 0x14, 0x1f, 0xc7, 0x6f, 0x76, 0x11, 0x47, 0xf2, 0xf3, 0xca, 0x44, 0xa3, 0xd3, 0xc5, 0x7a, + 0x33, 0xdb, 0xa3, 0x37, 0x47, 0xa4, 0xde, 0xdc, 0x8f, 0x74, 0xda, 0x7b, 0x7d, 0x3a, 0x2d, 0x4e, + 0x75, 0x62, 0xcf, 0x45, 0x7b, 0x61, 0xec, 0xb9, 0xf6, 0xc2, 0xe7, 0xdc, 0x67, 0x20, 0x99, 0x2a, + 0xde, 0x15, 0xaf, 0xc1, 0x59, 0xc6, 0x4c, 0xf6, 0xac, 0x09, 0x97, 0xa1, 0x80, 0xb3, 0x04, 0x33, + 0x25, 0x1c, 0xec, 0xa2, 0x34, 0xef, 0x3d, 0xc1, 0xe2, 0x71, 0xd6, 0x7d, 0x9e, 0xfe, 0x5f, 0x67, + 0xa2, 0x3d, 0x1f, 0x77, 0x0f, 0x8b, 0x56, 0x31, 0x71, 0x20, 0x10, 0x2f, 0x62, 0x14, 0x7b, 0x54, + 0x02, 0xf1, 0x27, 0x5f, 0x66, 0x79, 0xd6, 0xc3, 0xf0, 0xe5, 0x97, 0x81, 0xba, 0x33, 0x35, 0xa8, + 0xaa, 0x24, 0x84, 0xa3, 0xca, 0x08, 0x7d, 0x93, 0x3b, 0xf4, 0x8e, 0xa5, 0x38, 0xd9, 0x18, 0x32, + 0x21, 0xd2, 0x4d, 0x0b, 0x29, 0xe2, 0xee, 0xf8, 0x50, 0x11, 0x77, 0xf5, 0x06, 0xbb, 0x99, 0x99, + 0xc0, 0x35, 0xde, 0x4b, 0x0b, 0x30, 0x1b, 0xe1, 0x4c, 0xc0, 0xbe, 0x19, 0x85, 0x2f, 0x6a, 0xbb, + 0x32, 0xca, 0xe0, 0xea, 0x46, 0xf5, 0x60, 0xec, 0x36, 0x43, 0x7a, 0xd7, 0x0c, 0xa4, 0x07, 0x13, + 0x9f, 0x8d, 0xe1, 0xfa, 0x39, 0xa1, 0x5a, 0xae, 0x9f, 0x6d, 0xee, 0x13, 0x14, 0xc9, 0x2f, 0x35, + 0x83, 0x8b, 0xfb, 0x3a, 0x4c, 0x7b, 0x6e, 0x3d, 0xd6, 0xf2, 0x49, 0xcf, 0xad, 0x3f, 0x1c, 0x46, + 0x51, 0x07, 0xae, 0x2c, 0x49, 0x55, 0x71, 0x6a, 0x7e, 0x75, 0x04, 0xa3, 0x53, 0x49, 0x30, 0xbd, + 0x5c, 0xf8, 0x06, 0xa1, 0xec, 0x12, 0x80, 0xf0, 0xca, 0x09, 0xef, 0xbc, 0xf3, 0x94, 0x24, 0xc2, + 0x93, 0x84, 0xb8, 0x00, 0x59, 0x33, 0x50, 0x49, 0xf4, 0x27, 0xd9, 0x86, 0x69, 0x36, 0xfd, 0xd7, + 0x0e, 0x91, 0x24, 0x94, 0xe1, 0x7c, 0xb2, 0x17, 0xbd, 0xd4, 0x18, 0x36, 0xef, 0xb3, 0x47, 0x29, + 0x58, 0x79, 0xd6, 0x22, 0xf2, 0x05, 0xcc, 0xb4, 0x2c, 0xdf, 0xc4, 0x60, 0x88, 0x1c, 0xe3, 0x18, + 0xaa, 0xba, 0xed, 0x3e, 0x18, 0x7b, 0x79, 0x1d, 0x6e, 0x71, 0x8c, 0x2c, 0x99, 0xe9, 0xbe, 0x7c, + 0x4b, 0x49, 0x24, 0x57, 0x60, 0xb2, 0x65, 0x7e, 0xc9, 0x15, 0x4f, 0xf0, 0x0a, 0x56, 0xcb, 0xfc, + 0x92, 0xa1, 0xf7, 0xc8, 0x2d, 0x20, 0x75, 0xa7, 0xed, 0xdb, 0xed, 0x2e, 0x3f, 0x28, 0x71, 0x9e, + 0x58, 0x6d, 0x7c, 0x00, 0x27, 0x67, 0xcc, 0xca, 0x39, 0x7b, 0x34, 0x83, 0xbc, 0x04, 0x33, 0x51, + 0x55, 0xc6, 0xa2, 0xed, 0x4f, 0xd7, 0x65, 0x2d, 0x56, 0x2c, 0xc1, 0xe9, 0x04, 0xf2, 0x86, 0x52, + 0xb0, 0xff, 0x47, 0x06, 0x1f, 0x9b, 0x91, 0xb5, 0x63, 0xfb, 0xd0, 0x89, 0x2d, 0xc5, 0x63, 0x42, + 0x92, 0x89, 0x0b, 0xc9, 0x4b, 0x30, 0x23, 0xc1, 0x48, 0x91, 0x0b, 0xa7, 0x03, 0x28, 0x54, 0x79, + 0xca, 0xc3, 0x44, 0x23, 0xc3, 0x3c, 0x4c, 0xb4, 0x05, 0x13, 0x82, 0xf3, 0x7c, 0x12, 0x7b, 0xad, + 0x4f, 0xcf, 0xd2, 0xc6, 0x04, 0x5d, 0xc8, 0x03, 0xe7, 0x0a, 0x14, 0xa4, 0x14, 0xec, 0xd0, 0x8e, + 0x0d, 0x2b, 0x78, 0x22, 0x72, 0xf2, 0x3b, 0x30, 0xad, 0x60, 0x1f, 0x8a, 0xf7, 0x3f, 0xaf, 0x61, + 0x60, 0xb8, 0xbe, 0x82, 0xc8, 0x15, 0xe8, 0x7b, 0x30, 0x2e, 0x24, 0x8c, 0x2d, 0x42, 0x5e, 0x18, + 0xa0, 0xf1, 0x86, 0x28, 0x93, 0x22, 0x83, 0x99, 0x14, 0x19, 0xd4, 0x7f, 0x65, 0x04, 0x1d, 0x00, + 0x62, 0xcd, 0xef, 0xad, 0x63, 0xdf, 0x83, 0x31, 0xa7, 0x23, 0x9d, 0xfa, 0x5f, 0xef, 0x43, 0xe2, + 0x4e, 0x87, 0xb1, 0x93, 0x15, 0x92, 0x7a, 0x24, 0xfb, 0x94, 0x3d, 0x12, 0xbe, 0x2d, 0x87, 0x5b, + 0xa9, 0x23, 0xd2, 0xdb, 0x72, 0x78, 0x22, 0xac, 0x6e, 0xfa, 0x8d, 0x0e, 0xb3, 0xe9, 0x57, 0x82, + 0x7c, 0xdd, 0x69, 0x75, 0xa8, 0xb6, 0x6d, 0x0c, 0xba, 0x67, 0x38, 0x1d, 0x94, 0x40, 0x14, 0xd2, + 0x44, 0x3e, 0xae, 0x4c, 0xe4, 0xb1, 0xf1, 0x35, 0x11, 0x1f, 0x5f, 0x04, 0x46, 0xd0, 0x71, 0x36, + 0x87, 0xf6, 0x0a, 0xfe, 0x8e, 0x6b, 0x5e, 0x48, 0xd0, 0xbc, 0x57, 0x60, 0x92, 0xb1, 0x84, 0x9d, + 0xaa, 0x4f, 0x32, 0xf5, 0x84, 0x49, 0xec, 0x40, 0xfd, 0x0a, 0x4c, 0x5a, 0xbe, 0x19, 0x6c, 0xad, + 0x4f, 0xb1, 0x37, 0x3b, 0x2c, 0xdf, 0x14, 0x3b, 0xea, 0xb2, 0xb9, 0x3a, 0xad, 0x98, 0xab, 0xba, + 0x1d, 0x9d, 0x91, 0xd5, 0xed, 0xb3, 0x9e, 0x2b, 0x93, 0x33, 0x30, 0xca, 0x8c, 0x46, 0xb6, 0x1a, + 0x62, 0x1f, 0xf2, 0xe4, 0x9f, 0x55, 0x26, 0xff, 0xdf, 0xd3, 0xa2, 0xd3, 0x70, 0x64, 0xdb, 0xed, + 0x11, 0x4c, 0x30, 0x29, 0x08, 0xd6, 0xe9, 0xef, 0x0c, 0x24, 0x40, 0x91, 0xe0, 0xe8, 0x16, 0x37, + 0x71, 0x03, 0x64, 0xc5, 0x03, 0x98, 0x56, 0xb2, 0xfa, 0xbd, 0x4d, 0x3c, 0xd9, 0x57, 0xf0, 0x79, + 0xc5, 0x92, 0x36, 0xf8, 0x46, 0x6c, 0xc1, 0x61, 0xfa, 0x66, 0xd3, 0x39, 0x7a, 0x6e, 0xb6, 0x8d, + 0xfe, 0x4e, 0xd4, 0x44, 0x0b, 0x6a, 0xe0, 0xfc, 0x2b, 0xc2, 0x04, 0x06, 0x99, 0x68, 0xfb, 0x62, + 0x33, 0x25, 0xf8, 0xd6, 0xff, 0xbe, 0x86, 0xb7, 0x87, 0xa4, 0xd2, 0x1b, 0x36, 0x6d, 0xde, 0x49, + 0xc5, 0xb7, 0x5a, 0x03, 0x19, 0x11, 0x8a, 0xde, 0xcf, 0x0c, 0xa3, 0xf7, 0x9f, 0x5d, 0x2d, 0xe8, + 0x2b, 0x51, 0xee, 0x72, 0xea, 0x87, 0xb0, 0x82, 0xf4, 0x76, 0x94, 0x7f, 0x01, 0x0e, 0xce, 0xbf, + 0x2d, 0x98, 0x7a, 0xcc, 0x92, 0x6a, 0x4d, 0xdb, 0x13, 0xcf, 0x08, 0x2d, 0xf4, 0xa1, 0x56, 0xe2, + 0xa3, 0x31, 0xc9, 0xcb, 0x6f, 0xda, 0x9e, 0xaf, 0xff, 0x94, 0x16, 0x5d, 0x49, 0xe2, 0xee, 0x36, + 0x8b, 0x42, 0x2f, 0x79, 0x8b, 0x24, 0xae, 0x43, 0xc9, 0x43, 0x98, 0x71, 0x19, 0x4c, 0xf0, 0xfe, + 0x30, 0xd3, 0xc9, 0xb7, 0xfa, 0xd0, 0x63, 0x88, 0x52, 0x6c, 0x2f, 0x3d, 0xef, 0x2a, 0xdf, 0x81, + 0xf3, 0x7d, 0x32, 0x51, 0xdc, 0x04, 0xfd, 0x0d, 0x76, 0x86, 0x2f, 0x43, 0xf1, 0xab, 0x07, 0x68, + 0x5e, 0x3c, 0x2f, 0x6b, 0x58, 0x8d, 0x94, 0x97, 0x7d, 0x86, 0x48, 0x79, 0x51, 0x1b, 0x6e, 0x24, + 0x66, 0xc3, 0x89, 0x35, 0xf5, 0xa8, 0xb4, 0xa6, 0xbe, 0x0e, 0x79, 0xd7, 0xa2, 0xe3, 0x03, 0x7d, + 0x11, 0xcd, 0x13, 0x8f, 0xef, 0x57, 0x4c, 0x07, 0xa9, 0x6b, 0xe6, 0x89, 0xaa, 0x3e, 0xc7, 0xd5, + 0xd5, 0xfe, 0x4e, 0xb0, 0x2a, 0x9f, 0x48, 0x09, 0xf3, 0x9e, 0xce, 0xc6, 0xe7, 0x7d, 0x23, 0xe6, + 0x24, 0x26, 0x6e, 0xb4, 0x32, 0x75, 0xe3, 0x62, 0x1f, 0x0a, 0xfc, 0xf1, 0x50, 0x7c, 0xd7, 0x5a, + 0xba, 0xc9, 0xf1, 0xea, 0x10, 0x94, 0x1b, 0x79, 0x44, 0x82, 0x49, 0x78, 0xa3, 0xe3, 0xa3, 0x98, + 0x50, 0xc9, 0x55, 0x07, 0x37, 0x34, 0x09, 0xd7, 0x80, 0xc1, 0x3d, 0x98, 0xd0, 0x53, 0xf4, 0x40, + 0xad, 0xa4, 0xa1, 0xff, 0xac, 0x96, 0xd8, 0x1c, 0x75, 0xdf, 0xee, 0x7b, 0xd3, 0x1c, 0x8c, 0xe9, + 0x83, 0x08, 0xd1, 0xd3, 0x4a, 0xc4, 0xf4, 0xc1, 0xea, 0xbb, 0x76, 0x23, 0x61, 0x08, 0xc9, 0x94, + 0xf1, 0x21, 0xb4, 0x9b, 0x48, 0xbe, 0xba, 0xde, 0x1d, 0x8e, 0x23, 0xc9, 0xd5, 0x46, 0x96, 0xb2, + 0x2c, 0x00, 0x72, 0x14, 0x28, 0xb6, 0x27, 0xff, 0x63, 0xec, 0xc6, 0x67, 0x0f, 0x38, 0xde, 0x69, + 0x9e, 0xca, 0x61, 0x49, 0x2f, 0x56, 0x06, 0xe1, 0x70, 0x0c, 0x21, 0xbb, 0x14, 0x80, 0x79, 0x54, + 0x49, 0xf2, 0x05, 0x59, 0x5d, 0x49, 0x2c, 0xb6, 0xe1, 0x74, 0x02, 0x58, 0xc2, 0x60, 0x28, 0xa9, + 0xb3, 0xf6, 0x50, 0x9d, 0x2e, 0x8d, 0x9c, 0xaf, 0x47, 0xe7, 0xc6, 0xaa, 0xe4, 0x70, 0xf7, 0xec, + 0x13, 0xf7, 0xed, 0x98, 0x32, 0x95, 0x0e, 0x7e, 0xa8, 0x62, 0x42, 0xe7, 0x3d, 0xe6, 0x11, 0x81, + 0xbf, 0xf5, 0xbb, 0x30, 0x5e, 0x6d, 0x3c, 0x31, 0xba, 0x4d, 0x9c, 0xd4, 0x3d, 0xf6, 0x5e, 0x4a, + 0x30, 0xa9, 0x8b, 0x6f, 0x5a, 0xd4, 0xec, 0xd8, 0x62, 0x0b, 0x0c, 0x7f, 0xeb, 0x5b, 0xac, 0xa8, + 0xd3, 0xb4, 0x12, 0xc3, 0x53, 0x2c, 0xc2, 0xa8, 0x2b, 0xc5, 0x25, 0x9d, 0x4f, 0xe2, 0x18, 0xad, + 0xd7, 0x60, 0x60, 0xfa, 0x1a, 0x2e, 0x23, 0x28, 0x3a, 0x55, 0x91, 0xdc, 0x84, 0x11, 0xd7, 0x69, + 0x8a, 0x13, 0xa2, 0x64, 0x34, 0x4e, 0xd3, 0x32, 0x10, 0x4a, 0x2f, 0xe3, 0xf5, 0x19, 0x19, 0x4b, + 0xa0, 0x13, 0x86, 0x41, 0xc3, 0x0e, 0x99, 0x68, 0x42, 0x4c, 0xa0, 0x6f, 0xe3, 0x21, 0x53, 0x24, + 0x2b, 0x7c, 0xd3, 0x45, 0xbe, 0x15, 0xc6, 0x3e, 0xf4, 0x57, 0x03, 0x9a, 0x06, 0x88, 0xd2, 0xcc, + 0xee, 0x9d, 0x2b, 0xc0, 0x4f, 0xd5, 0x82, 0x85, 0x80, 0x9d, 0xfd, 0x63, 0x30, 0x9f, 0x0b, 0x08, + 0x8c, 0x8c, 0xf1, 0xb0, 0x4f, 0x54, 0x6d, 0xf8, 0xb4, 0x7d, 0xa2, 0x6a, 0xae, 0x21, 0xd1, 0xfc, + 0x23, 0x0d, 0xf2, 0xe1, 0x8b, 0xef, 0x7b, 0xae, 0xdd, 0xd2, 0xbf, 0xab, 0xc1, 0x19, 0x35, 0x89, + 0xaf, 0x3d, 0x4f, 0xc3, 0xcc, 0x7a, 0xb5, 0xb6, 0x67, 0x54, 0xb6, 0x6a, 0xfb, 0xdb, 0x0f, 0xb6, + 0x77, 0x1e, 0x6d, 0x17, 0x4e, 0x91, 0x73, 0x70, 0x5a, 0x24, 0x6e, 0xef, 0xec, 0xd5, 0xc4, 0xe5, + 0x17, 0x4d, 0x86, 0xae, 0xee, 0x95, 0x8c, 0xbd, 0xf2, 0x5a, 0x21, 0x43, 0xe6, 0x80, 0x88, 0xc4, + 0xca, 0x76, 0x70, 0x32, 0x9c, 0x55, 0x81, 0x77, 0x76, 0x77, 0xf1, 0xa2, 0xcc, 0x59, 0x98, 0x15, + 0x89, 0xab, 0x3b, 0x5b, 0xbb, 0x9b, 0xe5, 0x3d, 0xbc, 0x30, 0x43, 0x20, 0x2f, 0x92, 0xc5, 0xc5, + 0x19, 0xfd, 0x6b, 0x68, 0x1c, 0xc6, 0xa8, 0x76, 0x9f, 0x47, 0xf4, 0x2d, 0xfd, 0x47, 0xd8, 0xb5, + 0x99, 0x44, 0xec, 0xc1, 0x93, 0x09, 0xea, 0x6b, 0x13, 0xaf, 0xf7, 0x78, 0x56, 0x9f, 0x96, 0x5e, + 0x4c, 0x62, 0x70, 0xb0, 0x8a, 0x96, 0x9e, 0x95, 0xce, 0x28, 0xcf, 0x4a, 0xeb, 0x7f, 0x22, 0x99, + 0x92, 0x41, 0x97, 0x7c, 0x7d, 0x1a, 0xfa, 0xa3, 0x2c, 0x8a, 0x77, 0x32, 0xfa, 0xef, 0x73, 0x4b, + 0x3f, 0xc5, 0x25, 0x43, 0xb4, 0xb0, 0xd3, 0x79, 0x1e, 0xed, 0xbc, 0x92, 0x28, 0x2d, 0x14, 0x37, + 0x1f, 0xa2, 0xff, 0xad, 0x06, 0x33, 0x61, 0xf6, 0xea, 0x63, 0xab, 0xfe, 0x44, 0xff, 0x7b, 0x1a, + 0x9c, 0x8d, 0xa4, 0xf1, 0x71, 0x71, 0x06, 0x0a, 0xeb, 0xd5, 0xda, 0xea, 0x46, 0x79, 0xf5, 0x81, + 0x34, 0x30, 0xe6, 0xe1, 0x4c, 0x90, 0xaa, 0x8e, 0x0c, 0x19, 0x3e, 0x1c, 0x1a, 0x6c, 0x20, 0xb1, + 0x54, 0x65, 0x6c, 0xa8, 0xe0, 0x62, 0x70, 0xb0, 0x91, 0xc4, 0x52, 0xe5, 0xd1, 0xc1, 0x46, 0x12, + 0x4b, 0x0f, 0x86, 0xc7, 0x47, 0x11, 0xb1, 0x11, 0xd4, 0x0f, 0x38, 0x3e, 0x08, 0x8c, 0xb4, 0x9c, + 0x46, 0xe0, 0x3e, 0x46, 0x7f, 0xeb, 0x3f, 0x16, 0x95, 0x15, 0x19, 0x67, 0x70, 0xf3, 0x58, 0x95, + 0x95, 0x37, 0x7b, 0xc8, 0x0a, 0x16, 0x5f, 0x4c, 0x64, 0xf0, 0x00, 0xd2, 0xf2, 0x7e, 0x0a, 0x31, + 0x03, 0x0e, 0x0c, 0xfd, 0x8f, 0x98, 0xb9, 0x9a, 0x82, 0xe0, 0x7b, 0xd4, 0x9c, 0x4d, 0x98, 0x7e, + 0x6c, 0x99, 0x4d, 0x8c, 0xbe, 0x1b, 0xb8, 0xaa, 0xe6, 0x13, 0x22, 0x98, 0x85, 0x68, 0x36, 0x10, + 0x9e, 0xe3, 0x99, 0x7a, 0x2c, 0x7d, 0x05, 0x9d, 0x94, 0x0d, 0x3b, 0x29, 0xfd, 0x7d, 0x7a, 0x1e, + 0x41, 0x25, 0x46, 0xdf, 0x60, 0xe3, 0x4b, 0xbf, 0x9a, 0x2c, 0x4f, 0xd2, 0x08, 0x62, 0x10, 0x15, + 0xb4, 0xa2, 0xfc, 0x93, 0x55, 0xb3, 0x63, 0x1e, 0xd8, 0x4d, 0xdb, 0xb7, 0x83, 0x18, 0xa0, 0x7a, + 0x13, 0xbb, 0x2c, 0x19, 0x82, 0x33, 0xbc, 0x02, 0x53, 0x75, 0x29, 0x9d, 0x5b, 0xae, 0x89, 0x9b, + 0x3b, 0xfc, 0x51, 0xba, 0x00, 0xcd, 0x89, 0xa1, 0x14, 0xe5, 0xd1, 0x57, 0x44, 0x6d, 0x0f, 0x2d, + 0xd7, 0xb3, 0x9d, 0xb6, 0x20, 0xe5, 0x3b, 0x1a, 0x9a, 0x78, 0xb1, 0x5c, 0x4e, 0xc6, 0xbb, 0x30, + 0xe9, 0x35, 0x9e, 0xd4, 0x8e, 0x59, 0x32, 0x9f, 0x58, 0x2f, 0x24, 0x86, 0x53, 0xe0, 0x25, 0xc1, + 0x0b, 0x7e, 0x93, 0xbb, 0x30, 0x2e, 0x4a, 0x66, 0x7a, 0x5f, 0x5b, 0x16, 0xa5, 0x05, 0xbc, 0xfe, + 0x5b, 0x59, 0x34, 0x15, 0x62, 0x6d, 0x23, 0x7b, 0x30, 0xce, 0xad, 0x48, 0x4e, 0xcd, 0xdb, 0x03, + 0xf1, 0x64, 0x51, 0x7a, 0x05, 0x85, 0x67, 0x6e, 0x9c, 0x32, 0x04, 0xaa, 0xe2, 0x3f, 0xce, 0x00, + 0x89, 0x43, 0x90, 0x8f, 0x14, 0xff, 0xda, 0xf7, 0x9e, 0xb6, 0x26, 0xf9, 0xb6, 0xd9, 0xbf, 0xd1, + 0xb8, 0xfb, 0xec, 0x24, 0x8c, 0x87, 0x1a, 0x73, 0x12, 0xc6, 0x57, 0x37, 0xf7, 0xab, 0x7b, 0x65, + 0xa3, 0xa0, 0x91, 0x02, 0x4c, 0xb1, 0xfb, 0xb8, 0x2b, 0xa5, 0xd5, 0x07, 0xfb, 0xbb, 0x85, 0x0c, + 0x99, 0x81, 0xc9, 0x55, 0xa3, 0xbc, 0x56, 0xde, 0xde, 0xab, 0x94, 0x36, 0xa9, 0x62, 0xc4, 0x3b, + 0xbd, 0x6b, 0xe5, 0xc2, 0x08, 0x35, 0x09, 0x76, 0x56, 0x3e, 0x2c, 0xaf, 0xee, 0x51, 0x05, 0x69, + 0x94, 0xee, 0x97, 0x99, 0x22, 0xac, 0xae, 0x6e, 0x94, 0xd7, 0xf6, 0x37, 0xcb, 0xb5, 0xdd, 0x9d, + 0xcd, 0xca, 0xea, 0x27, 0x85, 0x31, 0x02, 0x30, 0xf6, 0x70, 0x67, 0x73, 0x7f, 0xab, 0x5c, 0x18, + 0xa7, 0xbf, 0x4b, 0x9b, 0x65, 0x63, 0xaf, 0x5a, 0x98, 0xa0, 0xb5, 0x6d, 0xed, 0xec, 0x6f, 0xef, + 0xf1, 0x4b, 0xc1, 0x85, 0x1c, 0x45, 0x6e, 0xec, 0x6c, 0x96, 0x0b, 0xc0, 0x28, 0x41, 0xb2, 0x6a, + 0xbb, 0xa5, 0x8a, 0x51, 0x98, 0xa4, 0x84, 0x6e, 0x55, 0xee, 0x1b, 0xa5, 0xbd, 0x72, 0x61, 0x8a, + 0xd6, 0xcd, 0x2b, 0x15, 0xd5, 0x4c, 0xaf, 0x8c, 0x31, 0x96, 0xe9, 0xbf, 0xa1, 0x01, 0x84, 0x62, + 0x41, 0x2d, 0xd9, 0x96, 0xf9, 0x99, 0x23, 0x9e, 0xd4, 0x60, 0x1f, 0x98, 0x6a, 0xb7, 0x1d, 0xf1, + 0x06, 0x05, 0xfb, 0xa0, 0xa9, 0x1d, 0xd3, 0xaf, 0x3f, 0xe6, 0x6f, 0x50, 0xb0, 0x0f, 0x3a, 0xa0, + 0x85, 0x30, 0xf1, 0x01, 0x2d, 0x64, 0x65, 0x03, 0xc6, 0x45, 0x35, 0xf3, 0x70, 0x66, 0x6b, 0xbf, + 0xba, 0x57, 0xdb, 0x28, 0x3d, 0x2c, 0xd7, 0x3e, 0x2d, 0x1b, 0x3b, 0xb5, 0x87, 0xa5, 0xcd, 0xfd, + 0x72, 0xe1, 0x14, 0xc9, 0xc1, 0xe8, 0x16, 0xad, 0x93, 0xff, 0xa4, 0x15, 0x15, 0x1e, 0xd3, 0x9f, + 0xbb, 0x14, 0x7b, 0xe1, 0x54, 0x31, 0x53, 0xd0, 0xf4, 0xff, 0x46, 0x0b, 0x1e, 0xd3, 0x12, 0x18, + 0xe7, 0x60, 0x8c, 0x05, 0x34, 0x14, 0xbb, 0x5c, 0xec, 0x4b, 0x26, 0x27, 0xa3, 0x90, 0x43, 0xd6, + 0x61, 0xbc, 0x61, 0xf9, 0xa6, 0x1d, 0x44, 0xaf, 0xb9, 0xd9, 0x47, 0xea, 0x17, 0xd7, 0x18, 0x38, + 0x7f, 0x77, 0x97, 0x17, 0x2e, 0xde, 0x83, 0x29, 0x39, 0x63, 0xa8, 0x1d, 0x95, 0xef, 0x66, 0x60, + 0x0a, 0x97, 0x6d, 0x5b, 0xf6, 0x11, 0x5d, 0x51, 0xe8, 0xb5, 0xa8, 0x3f, 0xe1, 0x0c, 0x4c, 0x56, + 0xda, 0xc7, 0x66, 0xd3, 0x6e, 0xd0, 0x4f, 0xe6, 0x38, 0xcb, 0x81, 0x79, 0x0c, 0x81, 0x82, 0x46, + 0x66, 0x61, 0x9a, 0xa7, 0xb1, 0xdd, 0x31, 0x66, 0xc6, 0x2a, 0x49, 0xe8, 0x17, 0x51, 0xc8, 0xea, + 0xdb, 0x78, 0x55, 0xfc, 0xc8, 0xa2, 0x32, 0xc3, 0x11, 0xe3, 0x77, 0xe1, 0x14, 0x95, 0x36, 0xb6, + 0x7a, 0xe4, 0x97, 0xc4, 0xd9, 0x99, 0x7b, 0x21, 0x43, 0x41, 0xe5, 0x40, 0x5c, 0x4c, 0xae, 0xd7, + 0x9c, 0xb6, 0x55, 0x18, 0xd1, 0x3b, 0xe2, 0xee, 0x32, 0x25, 0x22, 0x44, 0xe8, 0x77, 0x3d, 0x86, + 0xf1, 0xa3, 0xae, 0xd5, 0xb5, 0x1a, 0x05, 0x8d, 0x35, 0xc4, 0xa6, 0x0b, 0x56, 0xfb, 0x9b, 0x56, + 0xa3, 0x90, 0x21, 0x79, 0x80, 0x4a, 0x7b, 0xd7, 0x75, 0x8e, 0x5c, 0xcb, 0xf3, 0xd8, 0x05, 0xf4, + 0x75, 0xd3, 0x6e, 0x5a, 0x8d, 0xc2, 0x08, 0x99, 0x82, 0x89, 0x55, 0x7e, 0x30, 0x52, 0x18, 0xc5, + 0x2f, 0xb3, 0x5d, 0xb7, 0x68, 0xde, 0x98, 0xfe, 0x9b, 0x1a, 0xcc, 0xcb, 0x3c, 0x53, 0x8c, 0x84, + 0x0a, 0xe4, 0x82, 0x3b, 0x62, 0x5c, 0x1d, 0xbc, 0x9a, 0x1c, 0x36, 0x80, 0x97, 0x5e, 0x54, 0x6f, + 0x98, 0x85, 0xa5, 0xfb, 0x9d, 0x69, 0x5f, 0x80, 0x1c, 0xbf, 0x8a, 0x13, 0x9c, 0x43, 0x4c, 0xb0, + 0x04, 0xd5, 0x3f, 0x41, 0xf1, 0x8c, 0xd2, 0xff, 0xd7, 0x6c, 0x78, 0x1c, 0x92, 0x44, 0xbf, 0x5a, + 0xa9, 0x16, 0xad, 0x34, 0xcd, 0xef, 0x81, 0xec, 0x07, 0x81, 0x0d, 0x79, 0xdc, 0xf2, 0x7b, 0xa9, + 0x3b, 0x15, 0x09, 0xd5, 0x2e, 0x2a, 0xa2, 0xb2, 0x71, 0x2a, 0x08, 0x7f, 0x68, 0xc1, 0x14, 0x9f, + 0x62, 0x59, 0xb0, 0x2b, 0x1e, 0xbd, 0xfc, 0x83, 0xa7, 0x47, 0x8e, 0x72, 0xb8, 0x71, 0xca, 0x98, + 0x3c, 0x0e, 0x3f, 0xc9, 0x01, 0x4c, 0x9a, 0xcd, 0x66, 0x70, 0x71, 0x8f, 0xc7, 0x31, 0x7f, 0xff, + 0x69, 0x6a, 0x29, 0x35, 0x9b, 0xfc, 0x3a, 0xc3, 0xc6, 0x29, 0x03, 0xcc, 0xe0, 0xab, 0x78, 0x33, + 0x32, 0x46, 0x7a, 0x9a, 0x0f, 0xc5, 0xa5, 0xa4, 0xe1, 0xd3, 0xc3, 0x2b, 0xab, 0x78, 0x1a, 0x66, + 0x63, 0x14, 0xac, 0x8c, 0x42, 0xd6, 0xe9, 0xf8, 0xfa, 0xeb, 0x70, 0x3e, 0x81, 0xec, 0x7e, 0x7e, + 0x62, 0x07, 0xe1, 0x89, 0x44, 0x62, 0xc1, 0x15, 0x18, 0x73, 0x2d, 0xaf, 0xdb, 0xf4, 0xe7, 0xd3, + 0x5e, 0x12, 0x49, 0x2d, 0x6b, 0xf0, 0x92, 0x51, 0xca, 0xd8, 0x28, 0xeb, 0x77, 0x72, 0xa0, 0x37, + 0x62, 0x94, 0xa9, 0x05, 0xd7, 0x60, 0x9c, 0x9f, 0x09, 0x0c, 0x44, 0x9a, 0x52, 0xd8, 0x10, 0x45, + 0x45, 0x28, 0xf7, 0x04, 0x40, 0x6e, 0xc0, 0xfd, 0x9d, 0x51, 0x28, 0xc8, 0xd9, 0xb8, 0xb3, 0x9a, + 0x7a, 0xdc, 0xd1, 0x67, 0x38, 0xbf, 0x04, 0x33, 0x78, 0xba, 0x28, 0x9d, 0x39, 0x70, 0xe7, 0x04, + 0x4c, 0x0e, 0x4e, 0x1d, 0x16, 0x60, 0x56, 0x81, 0xc3, 0x4d, 0x15, 0x36, 0xc6, 0x67, 0x24, 0x48, + 0x74, 0x64, 0xb8, 0x01, 0x05, 0xd7, 0x6a, 0x39, 0xbe, 0xec, 0xd0, 0xc4, 0xdc, 0xb0, 0xf2, 0x2c, + 0xfd, 0xa1, 0x14, 0x9c, 0x10, 0x77, 0x28, 0xc3, 0x7d, 0xc0, 0x31, 0xc9, 0x9f, 0x23, 0xd8, 0x0c, + 0xdc, 0x80, 0xe9, 0x3a, 0x73, 0xa4, 0xa6, 0xf6, 0xf8, 0x91, 0xc5, 0x5f, 0x23, 0x7d, 0xa1, 0xb7, + 0x86, 0x43, 0xfd, 0x6e, 0x4c, 0xf1, 0x92, 0x4c, 0xfb, 0xbf, 0x1b, 0x2c, 0x14, 0x26, 0x10, 0xc5, + 0x8b, 0x7d, 0x51, 0xc8, 0xcb, 0x82, 0x77, 0x60, 0x52, 0xba, 0xd7, 0x85, 0xbe, 0x27, 0x7d, 0x2e, + 0x85, 0x85, 0x57, 0xba, 0xc8, 0x35, 0x98, 0xc2, 0x77, 0x65, 0x6b, 0xae, 0x65, 0x7a, 0x4e, 0x9b, + 0x9f, 0x48, 0x4f, 0x62, 0x9a, 0x81, 0x49, 0x91, 0x43, 0xf8, 0xc9, 0x67, 0x3b, 0x84, 0x9f, 0x1a, + 0xf6, 0x10, 0x3e, 0x72, 0x1c, 0x3e, 0x1d, 0x3b, 0x0e, 0x57, 0x5d, 0x08, 0xf2, 0x51, 0x17, 0x82, + 0xc8, 0x69, 0xf9, 0x4c, 0xf4, 0xb4, 0x5c, 0xdf, 0x82, 0x33, 0x51, 0xb9, 0xdd, 0xb4, 0x3d, 0x9f, + 0xbc, 0x01, 0x23, 0xd2, 0xf6, 0xf7, 0xb5, 0x9e, 0x5d, 0x82, 0x3b, 0xcc, 0x08, 0x9e, 0x30, 0x1c, + 0xd5, 0x65, 0xe5, 0x90, 0xc3, 0x51, 0x29, 0x1c, 0x0e, 0xc7, 0x6a, 0x4c, 0x89, 0x49, 0x55, 0x3c, + 0xe5, 0xa8, 0xd3, 0xff, 0xb1, 0x06, 0xc5, 0x24, 0xac, 0xc1, 0xea, 0x6a, 0x84, 0x9f, 0xb8, 0x24, + 0xc7, 0xd9, 0x4d, 0x2f, 0xba, 0x48, 0xf9, 0xc3, 0x0c, 0x35, 0x44, 0x51, 0xfc, 0x93, 0x90, 0x0b, + 0x92, 0x9e, 0xe6, 0x74, 0x3e, 0xa9, 0xc3, 0x64, 0x4b, 0xae, 0x11, 0xd3, 0x56, 0x91, 0xb6, 0xac, + 0x46, 0xd4, 0xf5, 0xab, 0x43, 0xb4, 0x26, 0xd0, 0xd7, 0xef, 0x06, 0xef, 0x89, 0xef, 0x9a, 0xb6, + 0xbb, 0xe5, 0x34, 0x2c, 0xfd, 0x15, 0x18, 0xa1, 0xff, 0xa9, 0xc5, 0xc6, 0x1f, 0x8c, 0x2c, 0x9c, + 0x22, 0x67, 0xa0, 0xb0, 0x66, 0x7b, 0x26, 0x7b, 0x78, 0xbc, 0xee, 0x1c, 0x5b, 0xee, 0x49, 0x41, + 0xd3, 0x7f, 0x35, 0x43, 0x2d, 0xa7, 0xa0, 0xb8, 0xba, 0xdf, 0x8e, 0xee, 0x97, 0xa8, 0xac, 0x82, + 0x0e, 0xeb, 0x84, 0xee, 0x97, 0x34, 0x43, 0xc4, 0xbe, 0xea, 0x30, 0x27, 0x56, 0x05, 0xb6, 0xe3, + 0xb8, 0xec, 0x3d, 0xb0, 0x69, 0x63, 0x56, 0x81, 0xde, 0x75, 0x5c, 0x9f, 0xdc, 0x86, 0x33, 0x11, + 0x78, 0xe6, 0x5c, 0xc4, 0x34, 0x2c, 0x51, 0x0a, 0x30, 0x0f, 0x37, 0x7c, 0x15, 0xc3, 0xaf, 0x35, + 0x58, 0x8b, 0xb8, 0x53, 0x20, 0x78, 0xc1, 0xab, 0x9d, 0xe4, 0x2e, 0xdf, 0x4b, 0x18, 0x4d, 0x71, + 0x23, 0x8a, 0xb0, 0x69, 0x71, 0x0b, 0x6f, 0x92, 0xe0, 0x96, 0x43, 0xec, 0x48, 0x65, 0x2c, 0xe1, + 0x48, 0xe5, 0x0b, 0x2a, 0xee, 0x31, 0x56, 0xc9, 0xae, 0xaa, 0x2a, 0xaf, 0x1a, 0xc9, 0xbc, 0x6a, + 0x24, 0xf0, 0x4a, 0x75, 0xf8, 0x95, 0xa0, 0x31, 0x60, 0xd9, 0x01, 0x37, 0x10, 0x53, 0xba, 0x69, + 0x35, 0x3a, 0x98, 0x5f, 0xe9, 0xd5, 0x74, 0xa5, 0x6c, 0x38, 0x96, 0x85, 0x69, 0x91, 0xd6, 0xbe, + 0x41, 0x4c, 0x8b, 0x94, 0xb2, 0x81, 0xa8, 0xfe, 0xf7, 0x9a, 0xc2, 0xc1, 0x5d, 0xd7, 0xa9, 0x5b, + 0x9e, 0x27, 0x49, 0x1b, 0xbf, 0x25, 0x1f, 0xe7, 0x20, 0xcb, 0x08, 0x39, 0x98, 0x26, 0x3d, 0x99, + 0x54, 0xe9, 0xb9, 0x2b, 0x6d, 0x34, 0x3d, 0xab, 0x70, 0x8c, 0x24, 0x08, 0xc7, 0x6f, 0x67, 0xa8, + 0xda, 0x8a, 0xb7, 0xed, 0x7b, 0x2f, 0x1e, 0xe4, 0x6d, 0x98, 0x8f, 0xc0, 0x8b, 0x97, 0xb6, 0xc4, + 0x4b, 0xf5, 0x73, 0x4a, 0xa1, 0xb2, 0xc8, 0x25, 0x46, 0x18, 0x30, 0x7b, 0x24, 0xe5, 0x56, 0x46, + 0x7a, 0x9b, 0x16, 0x95, 0xb7, 0x03, 0x82, 0x18, 0xda, 0xf7, 0x60, 0xea, 0xa9, 0xdf, 0x0b, 0x78, + 0x37, 0x2a, 0xe8, 0xea, 0x81, 0x55, 0xef, 0x95, 0x50, 0xe0, 0x71, 0x1d, 0x2b, 0xcd, 0x8d, 0xc3, + 0x3b, 0x70, 0x41, 0xca, 0x44, 0xb1, 0xc0, 0x2b, 0x99, 0xe1, 0x89, 0x1d, 0x13, 0x22, 0x86, 0x98, + 0x7d, 0x04, 0x26, 0x67, 0x50, 0xee, 0xbe, 0xe5, 0x63, 0x51, 0xb1, 0x0d, 0x77, 0x28, 0xc7, 0x76, + 0x54, 0x01, 0x38, 0xe2, 0xb5, 0xc8, 0xd0, 0xb9, 0xd9, 0x8b, 0xc9, 0x51, 0xb2, 0x82, 0xc1, 0xa3, + 0xc4, 0x23, 0xa4, 0x90, 0x86, 0xe5, 0x45, 0x48, 0x79, 0x2c, 0xc7, 0x23, 0x8c, 0x82, 0x3c, 0x57, + 0x62, 0xfe, 0x30, 0xa3, 0xcc, 0x3a, 0x89, 0xfe, 0xbf, 0x49, 0xd7, 0xb7, 0x7b, 0xbd, 0x0a, 0xf7, + 0x2a, 0xcc, 0x0a, 0x4b, 0x36, 0x94, 0xdf, 0x11, 0x94, 0xdf, 0x02, 0xcf, 0x08, 0x25, 0x77, 0x0e, + 0xc6, 0x3c, 0xab, 0xde, 0x75, 0x2d, 0xee, 0x5b, 0xc3, 0xbf, 0xc2, 0x4e, 0x1c, 0x93, 0x3a, 0x91, + 0xdc, 0x0f, 0xe5, 0x7c, 0x1c, 0xe5, 0xfc, 0x56, 0xaf, 0x56, 0xa3, 0x9f, 0x4c, 0xa2, 0x70, 0x07, + 0x5a, 0x64, 0x62, 0x68, 0x2d, 0xf2, 0x4c, 0xe3, 0x62, 0x31, 0x2a, 0xd9, 0x91, 0xd3, 0xe3, 0xe8, + 0x85, 0xe3, 0x47, 0x30, 0xa7, 0x0a, 0xa4, 0xe4, 0x10, 0x9c, 0xeb, 0x98, 0xb6, 0x2b, 0x7b, 0xad, + 0x5c, 0xed, 0xc7, 0x0b, 0x63, 0xa2, 0xc3, 0x7f, 0xe9, 0xdf, 0x88, 0x8e, 0x86, 0xe8, 0xc9, 0xf4, + 0x07, 0x11, 0xf1, 0x7a, 0xb9, 0x17, 0xf2, 0x24, 0xc9, 0xba, 0x1a, 0x1d, 0x4e, 0xb1, 0x53, 0xf7, + 0xff, 0x49, 0x83, 0x4b, 0x52, 0xbe, 0x97, 0x18, 0x79, 0x9c, 0x5b, 0x09, 0x92, 0x9e, 0xe0, 0x29, + 0xe8, 0x3f, 0x35, 0x4a, 0x1b, 0x24, 0xdc, 0x11, 0xee, 0xf6, 0x22, 0x31, 0x8e, 0x7d, 0x91, 0x27, + 0x53, 0xb9, 0x60, 0x78, 0x8a, 0x9f, 0x02, 0x84, 0x89, 0x09, 0x1d, 0xfb, 0xa6, 0x6a, 0x49, 0xf6, + 0x67, 0xb8, 0xd4, 0xf5, 0x76, 0x74, 0xd8, 0xc7, 0x9b, 0xbb, 0x1e, 0xe1, 0xf9, 0xe2, 0x70, 0x0d, + 0x0a, 0x58, 0xff, 0x2f, 0x35, 0x18, 0xe7, 0xee, 0x9d, 0x89, 0x6e, 0x1c, 0x04, 0x46, 0xa4, 0x93, + 0x49, 0xfc, 0x4d, 0xd3, 0x82, 0x08, 0x4e, 0xb9, 0x30, 0x26, 0x05, 0x3a, 0x97, 0x8c, 0x84, 0xce, + 0x25, 0xe4, 0x7d, 0x98, 0xda, 0x34, 0x3d, 0x7f, 0xcb, 0x69, 0xd8, 0x87, 0xb6, 0xd5, 0x18, 0xc0, + 0x8b, 0x5a, 0x81, 0x27, 0xaf, 0xc3, 0x44, 0xfd, 0xb1, 0xdd, 0x6c, 0xb8, 0x38, 0xb4, 0x93, 0xbd, + 0x48, 0x84, 0x6b, 0x6a, 0x00, 0xa9, 0xff, 0x00, 0x8c, 0x19, 0x16, 0xb5, 0x43, 0xc9, 0x55, 0x98, + 0x64, 0x6f, 0xf6, 0x38, 0x18, 0x06, 0x2d, 0x83, 0x0b, 0x30, 0x39, 0x09, 0x6f, 0xf1, 0xd8, 0xcc, + 0x25, 0x90, 0xe6, 0xb1, 0x0f, 0xbd, 0x03, 0x33, 0x51, 0x8f, 0x57, 0x74, 0x55, 0x70, 0xfc, 0x54, + 0x57, 0x05, 0x01, 0x8f, 0x50, 0x64, 0x89, 0x76, 0x4e, 0x60, 0x0a, 0x27, 0x3d, 0x2f, 0xc2, 0x28, + 0x34, 0x38, 0x98, 0xfe, 0x8b, 0x19, 0xc8, 0xe3, 0x4d, 0x29, 0x4b, 0x5e, 0x27, 0xe0, 0x31, 0xb0, + 0x38, 0x4b, 0x8a, 0xaf, 0x13, 0xd4, 0x02, 0x8b, 0xf8, 0xb6, 0x97, 0x70, 0xf2, 0x63, 0x45, 0xc9, + 0x26, 0xe4, 0x1a, 0x4e, 0xfd, 0x89, 0xe5, 0x8a, 0xfb, 0x6b, 0x49, 0x82, 0x12, 0xc1, 0xb3, 0x26, + 0x0a, 0x30, 0x54, 0x21, 0x82, 0xe2, 0x5d, 0x98, 0x94, 0x2a, 0x19, 0x46, 0x99, 0x15, 0xdf, 0x85, + 0xbc, 0x8a, 0x77, 0x28, 0x55, 0xf8, 0x3f, 0x67, 0xe0, 0x1c, 0xdb, 0x23, 0xd9, 0x6d, 0x9a, 0x75, + 0x8c, 0x5c, 0x54, 0xf5, 0xa9, 0x38, 0x1f, 0x9d, 0x90, 0x5d, 0x10, 0x01, 0x2c, 0x6a, 0xe6, 0xe1, + 0xa1, 0xdd, 0xb6, 0xfd, 0x93, 0xd4, 0xd3, 0x37, 0x83, 0x01, 0x86, 0x48, 0x3a, 0x56, 0x9d, 0x9a, + 0x62, 0x98, 0x5a, 0xe2, 0xa5, 0xc9, 0x27, 0x70, 0x36, 0xc0, 0xd8, 0xf6, 0xed, 0x10, 0x6d, 0x66, + 0x18, 0xb4, 0xa7, 0x05, 0xda, 0xb6, 0x6f, 0x07, 0xa8, 0xb7, 0x80, 0xc7, 0xa8, 0x0e, 0x91, 0x66, + 0x53, 0x62, 0x1e, 0x44, 0xdb, 0x4b, 0x71, 0xe6, 0x59, 0xe1, 0x00, 0xdd, 0x43, 0x38, 0x23, 0xd0, + 0x29, 0x84, 0x8e, 0x0c, 0x81, 0x93, 0x70, 0x9c, 0x12, 0x99, 0xfa, 0xcf, 0x67, 0xe0, 0x4c, 0x52, + 0xa3, 0xe8, 0x0c, 0xfc, 0x85, 0x65, 0x1f, 0x3d, 0xf6, 0xc5, 0xd3, 0xdf, 0xec, 0x8b, 0xac, 0xc0, + 0xa4, 0xd5, 0xc6, 0x2b, 0x70, 0x14, 0x94, 0x9f, 0x0e, 0xc7, 0x55, 0x5e, 0x39, 0x84, 0xc1, 0x5d, + 0x76, 0xb9, 0x10, 0x35, 0x05, 0xcc, 0xc3, 0x43, 0xab, 0xee, 0x5b, 0x8d, 0x1a, 0xe7, 0x9d, 0xc7, + 0x8f, 0x94, 0x0a, 0x22, 0x83, 0x13, 0x85, 0xb7, 0x49, 0x7d, 0xa7, 0xe3, 0x34, 0x9d, 0xa3, 0x13, + 0x7c, 0x0e, 0x91, 0x59, 0xe7, 0x93, 0x22, 0xed, 0x81, 0x45, 0x99, 0x33, 0xdb, 0x32, 0xfd, 0xfa, + 0xe3, 0x9a, 0xf5, 0x65, 0xc7, 0xb5, 0x3c, 0x0f, 0x2d, 0x81, 0xd1, 0x61, 0x03, 0x64, 0x15, 0x10, + 0x47, 0x39, 0x44, 0xa1, 0xff, 0xa1, 0x06, 0xa7, 0x13, 0x18, 0xf9, 0x3d, 0xe5, 0x4d, 0xb4, 0xb9, + 0xd9, 0x01, 0x9b, 0x3b, 0xf2, 0xec, 0xcd, 0xfd, 0x77, 0x1a, 0xcc, 0xa7, 0x81, 0x27, 0x0c, 0xe2, + 0x6d, 0x98, 0x60, 0x47, 0x27, 0xfc, 0x94, 0x30, 0x9f, 0xf0, 0x38, 0x7a, 0x1a, 0x3a, 0x7e, 0x06, + 0xe3, 0xb8, 0x46, 0x80, 0x83, 0x72, 0x15, 0xf5, 0x80, 0x58, 0xd5, 0xf0, 0x2f, 0xfd, 0x01, 0x4c, + 0x08, 0x68, 0x32, 0x06, 0x99, 0x4a, 0x9b, 0x1d, 0x14, 0x6e, 0x3b, 0x7e, 0xa5, 0x5d, 0xd0, 0x08, + 0xc0, 0x58, 0xf9, 0x4b, 0xdb, 0xf3, 0x3d, 0x76, 0x6c, 0xb5, 0xe6, 0x58, 0xde, 0xb6, 0xe3, 0x63, + 0x52, 0x21, 0x4b, 0x0b, 0xdc, 0xf7, 0x0b, 0x23, 0xf4, 0xff, 0xa6, 0x5f, 0x18, 0xd5, 0xdf, 0x82, + 0xf3, 0xe1, 0x45, 0xd7, 0x6a, 0xdb, 0x94, 0x43, 0xe0, 0xa3, 0x5f, 0x24, 0xff, 0x2d, 0x8e, 0x07, + 0xc4, 0xb7, 0xfe, 0x1a, 0x9c, 0x93, 0x0a, 0x8a, 0x90, 0x1b, 0xf8, 0x92, 0xec, 0x1c, 0x8c, 0xf1, + 0x47, 0x66, 0xf9, 0x4e, 0x18, 0xfb, 0xd2, 0x7f, 0x73, 0x0a, 0x66, 0x63, 0xb7, 0x6a, 0xc9, 0x79, + 0x98, 0x78, 0x6c, 0xd6, 0x9a, 0xd6, 0xb1, 0xd5, 0x14, 0x8f, 0xf1, 0x3f, 0x36, 0x37, 0xe9, 0x27, + 0x59, 0x80, 0x6c, 0xdd, 0x11, 0x1e, 0x17, 0x09, 0x33, 0x8f, 0xc3, 0x2e, 0x30, 0x50, 0x20, 0x72, + 0x17, 0xc0, 0x76, 0x6a, 0x1d, 0xd7, 0xa1, 0x13, 0x59, 0x6a, 0x0c, 0xd7, 0x8a, 0xb3, 0xcb, 0x20, + 0x8c, 0x9c, 0x2d, 0x7e, 0xd2, 0xe1, 0x17, 0x3e, 0x57, 0xc0, 0xfd, 0xde, 0x71, 0x58, 0x4d, 0x1b, + 0x85, 0xe0, 0xd5, 0x0a, 0x9e, 0x4e, 0xde, 0x83, 0x31, 0x16, 0x16, 0x39, 0x75, 0xdf, 0x85, 0x37, + 0x71, 0xd7, 0x74, 0xcd, 0xd6, 0x8a, 0xe3, 0x34, 0xf9, 0x25, 0x0b, 0x2c, 0x44, 0xde, 0x85, 0x49, + 0xa1, 0x61, 0x3d, 0xcb, 0xe7, 0xd7, 0xa3, 0x2e, 0xa4, 0xe9, 0xd5, 0xaa, 0xe5, 0x1b, 0xe0, 0x06, + 0xbf, 0x51, 0x51, 0x1c, 0x1d, 0xb9, 0xd6, 0x11, 0xbb, 0x9f, 0xc6, 0x98, 0x36, 0xce, 0x28, 0x95, + 0x32, 0x18, 0xf7, 0x1e, 0x49, 0xcd, 0x0a, 0xba, 0x71, 0x22, 0x65, 0x37, 0x23, 0x55, 0x08, 0x42, + 0x16, 0x04, 0x62, 0x41, 0x59, 0xe0, 0xdb, 0xf5, 0x27, 0x27, 0xb8, 0xed, 0x3d, 0x04, 0x0b, 0xb0, + 0x50, 0xf8, 0x6e, 0x0c, 0x0c, 0xf2, 0xc8, 0xd5, 0x75, 0xc8, 0xb3, 0x03, 0x27, 0xae, 0x14, 0x1a, + 0xb8, 0x19, 0x3e, 0x61, 0x4c, 0x63, 0x2a, 0x57, 0x1d, 0xf8, 0x68, 0xda, 0x67, 0x4e, 0xd7, 0x6d, + 0x9b, 0x4d, 0xdc, 0xed, 0x1e, 0x98, 0x28, 0x51, 0x8a, 0x94, 0x60, 0x22, 0x08, 0x77, 0x3d, 0x3d, + 0x0c, 0x86, 0xa0, 0x18, 0xb9, 0x02, 0x93, 0x9f, 0x77, 0xad, 0xae, 0x55, 0x6b, 0x58, 0x1d, 0xff, + 0x31, 0xee, 0x8a, 0x4f, 0x1b, 0x80, 0x49, 0x6b, 0x34, 0x85, 0xac, 0x42, 0xae, 0xed, 0x34, 0x6c, + 0xaf, 0x6e, 0xba, 0x0d, 0xdc, 0x14, 0x1f, 0xb8, 0x92, 0xb0, 0x1c, 0x95, 0x20, 0xdb, 0xa9, 0x79, + 0xdc, 0x08, 0x98, 0x2f, 0xa4, 0x48, 0x50, 0xc5, 0x11, 0x76, 0x82, 0x01, 0x76, 0xf0, 0x9b, 0x3c, + 0x02, 0xd2, 0x11, 0xba, 0x3b, 0x44, 0x32, 0x9b, 0x12, 0x49, 0x29, 0xc5, 0xf2, 0x30, 0x66, 0x3b, + 0x31, 0x63, 0x64, 0x07, 0xf2, 0xe2, 0xe9, 0x71, 0x3e, 0xf8, 0x49, 0x0a, 0xd2, 0x14, 0xb5, 0x61, + 0x4c, 0x7b, 0x8a, 0x16, 0x51, 0x1e, 0x26, 0x3a, 0x3d, 0xcc, 0xc3, 0x44, 0xef, 0xc2, 0xa4, 0xf5, + 0x25, 0x35, 0x2e, 0x6b, 0x78, 0xc1, 0xff, 0x4c, 0x0a, 0x87, 0xca, 0x08, 0x83, 0x96, 0x00, 0x58, + 0xc1, 0x6f, 0xf2, 0x21, 0x4c, 0x1f, 0x76, 0x6a, 0x1d, 0x57, 0x3c, 0x61, 0x3c, 0x7f, 0x76, 0x98, + 0x8e, 0x9a, 0x3a, 0xec, 0xec, 0x06, 0x45, 0xc9, 0x0a, 0x4c, 0x33, 0x17, 0x47, 0xb1, 0x1c, 0x9f, + 0x43, 0x5a, 0x2e, 0xc5, 0x70, 0x6d, 0xc9, 0xaf, 0xc1, 0x4e, 0x29, 0xef, 0xe4, 0x56, 0x61, 0x4e, + 0x48, 0x58, 0x4d, 0x45, 0x76, 0x6e, 0x10, 0x64, 0x67, 0x44, 0x61, 0x39, 0x95, 0xac, 0xc3, 0x24, + 0x3e, 0x12, 0x5e, 0xfb, 0xc2, 0xb5, 0x7d, 0x6b, 0x7e, 0x7e, 0x98, 0x26, 0x02, 0x96, 0x7c, 0x44, + 0x0b, 0x92, 0x5b, 0x70, 0x3a, 0xd4, 0xba, 0xb5, 0x03, 0xbc, 0x66, 0xe1, 0xd6, 0xe7, 0xcf, 0xb3, + 0x27, 0xea, 0x03, 0x15, 0xbb, 0xf2, 0xa4, 0xdb, 0xa9, 0xba, 0x75, 0xaa, 0xa4, 0x59, 0xb5, 0xd8, + 0x31, 0xc5, 0x94, 0x4e, 0xc5, 0xe7, 0xca, 0xb1, 0x5f, 0x72, 0x1d, 0xf1, 0x53, 0xff, 0x86, 0xfc, + 0xb0, 0x64, 0xec, 0xda, 0x5f, 0x4f, 0xb7, 0xc8, 0xd8, 0x2a, 0xee, 0x0c, 0x8c, 0xb2, 0x21, 0xca, + 0x8c, 0x09, 0xf6, 0xa1, 0x3f, 0x94, 0x5e, 0x4d, 0x8c, 0x2e, 0x82, 0xee, 0xc1, 0x78, 0x9d, 0x25, + 0xa5, 0xef, 0x22, 0xa8, 0x45, 0x0c, 0x51, 0x60, 0xe1, 0x8f, 0x32, 0x81, 0x83, 0xc8, 0x0c, 0x4c, + 0x56, 0xf7, 0x4a, 0x7b, 0xfb, 0xd5, 0x1a, 0xbe, 0x73, 0x70, 0x4a, 0x4a, 0xa8, 0x6c, 0x57, 0xf6, + 0x0a, 0x1a, 0x99, 0x86, 0x1c, 0x4f, 0xd8, 0x79, 0x50, 0xc8, 0x30, 0xbf, 0x25, 0xf6, 0xb9, 0xbe, + 0xbe, 0x59, 0xc1, 0x67, 0x0a, 0x0a, 0x30, 0xc5, 0xd3, 0xca, 0x86, 0xb1, 0x63, 0x14, 0x46, 0xc8, + 0x3c, 0x9c, 0x09, 0xd0, 0xee, 0xd5, 0x2a, 0xdb, 0xb5, 0x8f, 0xf6, 0x77, 0x8c, 0xfd, 0xad, 0xc2, + 0x28, 0x39, 0x07, 0xa7, 0x79, 0xce, 0x5a, 0x79, 0x75, 0x67, 0x6b, 0xab, 0x52, 0xad, 0x56, 0x76, + 0xb6, 0x0b, 0x63, 0x64, 0x0e, 0x08, 0xcf, 0xd8, 0x2a, 0x55, 0xb6, 0xf7, 0xca, 0xdb, 0xa5, 0xed, + 0xd5, 0x72, 0x61, 0x5c, 0x2a, 0x20, 0xfc, 0xa5, 0xd6, 0x76, 0x1e, 0x6d, 0x17, 0x26, 0xc8, 0x05, + 0x38, 0x17, 0xcd, 0x28, 0xdf, 0x37, 0x4a, 0x6b, 0xe5, 0xb5, 0x42, 0x4e, 0x2a, 0xb5, 0x5d, 0x2e, + 0xaf, 0x55, 0x6b, 0x46, 0x79, 0x65, 0x67, 0x67, 0xaf, 0x00, 0xe4, 0x22, 0xcc, 0x47, 0x4a, 0x19, + 0xe5, 0x95, 0xd2, 0x26, 0x56, 0x36, 0x49, 0xae, 0xc2, 0xc5, 0x28, 0x4e, 0x7c, 0xd7, 0xc1, 0x28, + 0xef, 0x6e, 0x96, 0x56, 0xcb, 0x85, 0x29, 0xf2, 0x02, 0x5c, 0x49, 0x6a, 0x59, 0x6d, 0x7b, 0x27, + 0x70, 0x22, 0x9b, 0x26, 0x79, 0x80, 0xa0, 0x2d, 0x1f, 0x17, 0xf2, 0x0b, 0x3f, 0xa7, 0x01, 0xb0, + 0x97, 0x5c, 0x45, 0x88, 0x31, 0x44, 0x6b, 0xb0, 0x90, 0x61, 0x9c, 0xf3, 0x91, 0xd4, 0xf5, 0xca, + 0x66, 0xf0, 0xee, 0x44, 0x98, 0xba, 0xb2, 0xb9, 0xb3, 0xfa, 0x80, 0xb9, 0x12, 0xc9, 0xc9, 0xcc, + 0x8d, 0xad, 0x90, 0x25, 0xe7, 0xe1, 0xac, 0x9c, 0xce, 0x3d, 0xd0, 0x84, 0x5f, 0xbc, 0x9c, 0x75, + 0xdf, 0x28, 0xed, 0x6e, 0x14, 0x46, 0x17, 0xfe, 0x73, 0x0d, 0xc6, 0xd6, 0xab, 0x48, 0x57, 0x01, + 0xa6, 0xd6, 0xab, 0x0a, 0x4d, 0xb3, 0x30, 0x2d, 0x52, 0x56, 0xf6, 0x8c, 0xf5, 0x2a, 0xf3, 0xb0, + 0x13, 0x49, 0xe5, 0x8f, 0xf7, 0x5e, 0x67, 0x36, 0x9d, 0x48, 0x59, 0xdf, 0xaf, 0x52, 0x81, 0x98, + 0x81, 0xc9, 0x00, 0xd1, 0x7a, 0xb5, 0x30, 0x22, 0x27, 0x3c, 0x5c, 0xaf, 0x16, 0x46, 0xe5, 0x84, + 0x8f, 0xd7, 0xab, 0x85, 0x31, 0x39, 0xe1, 0xd3, 0xf5, 0x6a, 0x61, 0x5c, 0xae, 0xfa, 0xe3, 0xf5, + 0xea, 0xf1, 0x72, 0x61, 0x62, 0xe1, 0x6f, 0x6a, 0x70, 0xf6, 0xbe, 0x6b, 0x76, 0x1e, 0x33, 0x5e, + 0xb2, 0xeb, 0x8b, 0x48, 0xf9, 0x35, 0xb8, 0x84, 0xed, 0xa9, 0xf1, 0x16, 0xae, 0x6e, 0x94, 0xb6, + 0xef, 0x97, 0x95, 0xa6, 0x5c, 0x87, 0x6b, 0xa9, 0x20, 0x5b, 0x3b, 0x6b, 0xf8, 0x38, 0x47, 0x41, + 0x23, 0x3a, 0x5c, 0x4e, 0x05, 0x2b, 0xad, 0xad, 0xa1, 0xcf, 0xf5, 0x8b, 0x70, 0x35, 0x15, 0x66, + 0xad, 0xcc, 0x5c, 0xaa, 0xb3, 0x0b, 0x3e, 0x4c, 0x55, 0xad, 0x63, 0xcb, 0xb5, 0xfd, 0x13, 0xa4, + 0x91, 0x0a, 0x78, 0xf9, 0x61, 0xd9, 0xa8, 0xec, 0x7d, 0xa2, 0x10, 0x46, 0x45, 0x55, 0x49, 0x2f, + 0x6d, 0x96, 0x8c, 0xad, 0x82, 0x46, 0xfb, 0x52, 0xcd, 0x78, 0x54, 0x32, 0xf8, 0x13, 0x21, 0x74, + 0x7c, 0x45, 0x70, 0xed, 0x55, 0xd6, 0x3f, 0x29, 0x64, 0x17, 0xfe, 0x53, 0x0d, 0xa6, 0x0c, 0x8b, + 0x1d, 0xd7, 0x88, 0x6a, 0x8d, 0x72, 0x75, 0x67, 0xdf, 0x58, 0x55, 0xf9, 0xc1, 0x22, 0xda, 0x49, + 0xe9, 0xdc, 0xc3, 0x51, 0x4b, 0x2a, 0xb1, 0x56, 0x2e, 0x64, 0x28, 0x3d, 0x6a, 0xba, 0x70, 0xbb, + 0xcc, 0xd2, 0x36, 0xa8, 0x59, 0xc8, 0x19, 0xe6, 0x6f, 0xae, 0x66, 0xec, 0xee, 0xec, 0x6c, 0x16, + 0x46, 0x17, 0xfe, 0xbc, 0x06, 0x33, 0xa5, 0xa6, 0xe5, 0xfa, 0x2c, 0x16, 0x25, 0x52, 0x5a, 0x84, + 0x39, 0xf4, 0xac, 0xac, 0x95, 0x56, 0x31, 0x52, 0x9f, 0x4c, 0xed, 0x45, 0x98, 0x8f, 0xe7, 0x31, + 0x5e, 0x17, 0xb4, 0xe4, 0xdc, 0x55, 0xa3, 0x5c, 0xda, 0x2b, 0xb3, 0xd8, 0xa8, 0xf1, 0xdc, 0xfd, + 0xdd, 0x35, 0x9a, 0x9b, 0x5d, 0xf8, 0x0c, 0x66, 0xf9, 0xdb, 0xd7, 0x48, 0x09, 0xce, 0x2c, 0xb4, + 0x08, 0x63, 0x87, 0x28, 0xb3, 0x5b, 0x32, 0x4a, 0x5b, 0x82, 0x98, 0x0b, 0x70, 0x2e, 0x29, 0x77, + 0x67, 0x7d, 0xbd, 0xa0, 0xd1, 0x56, 0x24, 0x66, 0x6e, 0x17, 0x32, 0x0b, 0xcb, 0x30, 0xce, 0x97, + 0x08, 0xc1, 0xcb, 0x32, 0xa7, 0xc8, 0x38, 0x64, 0x37, 0x77, 0x1e, 0xb1, 0x75, 0xd2, 0x56, 0x79, + 0xad, 0xb2, 0xbf, 0xc5, 0xde, 0x80, 0xd9, 0xa8, 0xdc, 0xdf, 0x28, 0x64, 0x17, 0xfe, 0x4b, 0x0d, + 0x72, 0xc1, 0x22, 0x81, 0xf6, 0x41, 0x65, 0xa7, 0xb6, 0x6b, 0xec, 0x50, 0xf5, 0x50, 0xab, 0x96, + 0x3f, 0xda, 0x67, 0x8e, 0xad, 0x2c, 0x7c, 0xac, 0x94, 0x65, 0x94, 0xb6, 0xd7, 0x76, 0xb6, 0x98, + 0x1f, 0xa2, 0x94, 0xbc, 0xb6, 0xc2, 0xa4, 0x47, 0x49, 0xaa, 0x19, 0xe5, 0xad, 0x1d, 0xca, 0x0c, + 0xaa, 0xdd, 0xa5, 0x9c, 0xd5, 0x2d, 0x3a, 0x76, 0x8b, 0x30, 0x27, 0x57, 0xf9, 0xc9, 0xf6, 0x6a, + 0xad, 0xba, 0x51, 0x32, 0xc4, 0xb5, 0x01, 0x29, 0x0f, 0x63, 0x25, 0x8e, 0x2d, 0xfc, 0x5c, 0x06, + 0x26, 0xc3, 0xc7, 0x3a, 0xf1, 0x01, 0x1c, 0xce, 0x11, 0x7c, 0xfb, 0x46, 0x12, 0x40, 0x25, 0x39, + 0x7c, 0x0d, 0x27, 0x64, 0x21, 0xcb, 0x29, 0x3d, 0x2c, 0x55, 0x36, 0x4b, 0x2b, 0x9b, 0x5c, 0x08, + 0xd5, 0x3c, 0xf4, 0xbc, 0xa5, 0x03, 0x2e, 0x96, 0xb5, 0x56, 0xe6, 0x59, 0x23, 0x52, 0x8f, 0x85, + 0x59, 0x7b, 0xab, 0x1b, 0xb4, 0xba, 0x51, 0x2a, 0xa3, 0x4a, 0x26, 0x9b, 0xc4, 0xc6, 0x62, 0x04, + 0x8a, 0xa1, 0x3d, 0x4e, 0x2e, 0x43, 0x51, 0xc9, 0xd9, 0x33, 0x3e, 0xe1, 0xb5, 0x51, 0x8c, 0x13, + 0xb1, 0x92, 0x46, 0x99, 0xce, 0x0d, 0xe5, 0x42, 0x6e, 0xe1, 0xc7, 0x35, 0xe1, 0xb7, 0x19, 0xbc, + 0x27, 0x23, 0x57, 0x1e, 0xce, 0xc3, 0x97, 0xe0, 0x7c, 0x34, 0x7d, 0xaf, 0xb6, 0x6b, 0x94, 0xab, + 0x18, 0x9e, 0x9d, 0x4e, 0x16, 0x6a, 0x36, 0xfa, 0x3a, 0xc7, 0x90, 0xe1, 0x54, 0x99, 0x8d, 0x30, + 0x14, 0xe7, 0x5e, 0x3e, 0x53, 0x8e, 0x2c, 0xfc, 0x92, 0x06, 0x73, 0xc9, 0x37, 0x05, 0xe8, 0x28, + 0x58, 0xaf, 0xd6, 0x36, 0xca, 0xa5, 0xcd, 0xbd, 0x8d, 0xa0, 0x9e, 0xc0, 0xef, 0x3a, 0x29, 0x97, + 0x7d, 0x7d, 0x52, 0xd0, 0xe8, 0x4c, 0x1a, 0xcb, 0xad, 0x96, 0xd6, 0xcb, 0xb5, 0xbd, 0x9d, 0xda, + 0x7a, 0xe5, 0xe3, 0x42, 0x86, 0x2a, 0xe4, 0x18, 0x04, 0x9b, 0xac, 0x2b, 0xf8, 0x5c, 0x12, 0x1d, + 0x3c, 0x85, 0xec, 0xc2, 0xd7, 0x61, 0x9a, 0x5b, 0xe5, 0x5b, 0x56, 0xc3, 0xee, 0xb6, 0xd8, 0xbc, + 0xcf, 0x26, 0x67, 0x36, 0x5c, 0x6a, 0x5b, 0xa5, 0xfb, 0xdb, 0xe5, 0xbd, 0xca, 0x2a, 0x0b, 0x67, + 0x1f, 0xc9, 0xac, 0x56, 0xa9, 0x5a, 0x47, 0x7b, 0x40, 0x49, 0xdf, 0x7e, 0xb8, 0x55, 0x2e, 0x64, + 0x16, 0x2c, 0x98, 0x64, 0x0f, 0x32, 0x30, 0x59, 0x3d, 0x0f, 0x67, 0x99, 0x44, 0x09, 0x59, 0xf8, + 0x78, 0xaf, 0x6c, 0x6c, 0xe3, 0xf8, 0x8a, 0x66, 0x51, 0x23, 0x05, 0xb3, 0xb0, 0xb1, 0x89, 0x59, + 0xb5, 0xea, 0xa3, 0xca, 0xde, 0xea, 0x46, 0x21, 0xb3, 0xb0, 0x07, 0xf9, 0xc0, 0xa9, 0x75, 0xbd, + 0x69, 0x1e, 0x79, 0x2c, 0x28, 0x69, 0x6d, 0x7d, 0xb3, 0x74, 0x5f, 0x66, 0xea, 0x2c, 0x4c, 0x07, + 0xa9, 0xfc, 0xe5, 0x29, 0x8c, 0x8c, 0xca, 0x93, 0x98, 0x90, 0xd5, 0xd6, 0x77, 0x8c, 0x55, 0x4a, + 0xfc, 0x26, 0x4c, 0x6d, 0x98, 0x6e, 0xe3, 0x0b, 0xd3, 0x65, 0xba, 0x9e, 0x40, 0x7e, 0xbf, 0xfd, + 0xa4, 0xed, 0x7c, 0xd1, 0xde, 0x32, 0xeb, 0x8f, 0xed, 0x36, 0xf7, 0x4d, 0x7e, 0x68, 0xbb, 0x7e, + 0xd7, 0x6c, 0x8a, 0x34, 0x94, 0x9e, 0x15, 0xd3, 0xb5, 0xb6, 0x2c, 0x3f, 0x4c, 0xcd, 0x2c, 0xac, + 0x43, 0x9e, 0xad, 0x40, 0x76, 0x5d, 0xc7, 0x77, 0xea, 0x4e, 0x93, 0x4c, 0xc2, 0x78, 0x65, 0xfb, + 0x61, 0x69, 0xb3, 0xb2, 0xc6, 0xf4, 0xd4, 0xee, 0xc7, 0x94, 0x97, 0x39, 0x18, 0xad, 0x54, 0x57, + 0xab, 0x95, 0x42, 0x86, 0xa6, 0xd1, 0x09, 0x1e, 0x1d, 0x85, 0x57, 0xf7, 0xab, 0x7b, 0x3b, 0x5b, + 0x85, 0x91, 0x05, 0x17, 0xa6, 0xd1, 0x60, 0x0e, 0xd0, 0x14, 0x61, 0x6e, 0xd7, 0xd8, 0xf9, 0xf8, + 0x13, 0xaa, 0x28, 0xf6, 0x76, 0x56, 0x77, 0x36, 0x6b, 0x21, 0xd6, 0x39, 0x20, 0x91, 0xbc, 0x6d, + 0x34, 0x33, 0xce, 0xc2, 0x6c, 0x24, 0xbd, 0x7a, 0x87, 0x49, 0x78, 0x24, 0x99, 0xd2, 0x94, 0x5d, + 0xf8, 0x59, 0x0d, 0xf2, 0xeb, 0xa6, 0xe7, 0x53, 0x6b, 0x5a, 0xba, 0x5f, 0x55, 0xaa, 0xee, 0xed, + 0x96, 0xf6, 0x36, 0x24, 0x06, 0x9f, 0x86, 0x99, 0x20, 0x95, 0x2a, 0xe8, 0x87, 0xdc, 0xc8, 0x0a, + 0x12, 0x2b, 0xdb, 0x3c, 0x19, 0xf5, 0xa4, 0x84, 0xa1, 0xba, 0xbf, 0xbb, 0xbb, 0x83, 0xb7, 0xae, + 0xb2, 0x0a, 0x6e, 0xa1, 0xb7, 0x46, 0x94, 0x54, 0x54, 0x22, 0x54, 0x47, 0x2e, 0xfc, 0x47, 0x1a, + 0x14, 0x04, 0x69, 0x32, 0x4b, 0x42, 0x04, 0xb4, 0x29, 0x12, 0x89, 0x97, 0xe0, 0x7c, 0x24, 0x8f, + 0xca, 0xea, 0xce, 0x7a, 0x6d, 0x6f, 0x75, 0x97, 0x85, 0xc3, 0x8d, 0x64, 0x8b, 0xde, 0x88, 0xe7, + 0x6c, 0xee, 0xac, 0x96, 0x36, 0x0b, 0xd9, 0x85, 0x7f, 0xa1, 0x61, 0x68, 0xde, 0x3d, 0xbb, 0x65, + 0x3d, 0xb2, 0xac, 0x27, 0x0d, 0xf3, 0x04, 0x4d, 0x08, 0x25, 0xa5, 0xda, 0x6d, 0x37, 0xcc, 0x13, + 0xa6, 0x98, 0xd5, 0x9c, 0x2d, 0x07, 0x73, 0x98, 0x45, 0xa2, 0xe4, 0xec, 0x75, 0x2d, 0x8f, 0x66, + 0x65, 0x70, 0x54, 0x2a, 0x59, 0x8f, 0xac, 0x46, 0x9b, 0x65, 0xa2, 0xfe, 0x89, 0x94, 0x7b, 0xdc, + 0x75, 0x31, 0x6f, 0x24, 0x5e, 0xdb, 0xba, 0x6b, 0xd3, 0x9c, 0xd1, 0x78, 0xa9, 0xaa, 0xe9, 0x77, + 0x5d, 0x9a, 0x37, 0xb6, 0xf0, 0x09, 0xcc, 0xa7, 0x05, 0x92, 0x96, 0x5f, 0x56, 0x3b, 0x25, 0xbf, + 0xac, 0xa6, 0x05, 0x2f, 0xab, 0x65, 0xa4, 0x97, 0xd5, 0xb2, 0xea, 0xcb, 0x6a, 0x23, 0x0b, 0x3f, + 0x18, 0x8d, 0xa1, 0xc4, 0xe2, 0x1d, 0x91, 0x2b, 0xd1, 0xa0, 0x39, 0x2c, 0x9d, 0x0f, 0xb8, 0xc2, + 0x29, 0x5c, 0x3c, 0x24, 0x00, 0x88, 0xdf, 0x05, 0x8d, 0x9a, 0xa9, 0x89, 0xa1, 0x94, 0xd8, 0xa2, + 0x76, 0xa7, 0x53, 0xc8, 0x2c, 0xfc, 0x48, 0x16, 0x17, 0x7d, 0x89, 0x81, 0x51, 0x70, 0xf1, 0x91, + 0x92, 0x17, 0x92, 0xf1, 0x12, 0x7f, 0x5d, 0x31, 0x01, 0x68, 0xdb, 0xf1, 0xd1, 0xe7, 0x18, 0x9d, + 0xff, 0xaf, 0x26, 0x07, 0xe6, 0xa1, 0x70, 0x78, 0x8f, 0x20, 0xd3, 0xab, 0xba, 0xd2, 0x81, 0x83, + 0x68, 0xb2, 0xd4, 0x60, 0x4e, 0x03, 0xda, 0x35, 0xbb, 0x1e, 0x5e, 0x1d, 0xe8, 0x81, 0xa8, 0xea, + 0x3b, 0x9d, 0x8e, 0xd5, 0x28, 0x8c, 0xf6, 0x42, 0xc4, 0xde, 0xc0, 0x2c, 0x8c, 0xf5, 0x82, 0xe1, + 0xf7, 0x14, 0xc6, 0x7b, 0xc1, 0xf0, 0x8b, 0x0f, 0x13, 0xbd, 0x08, 0xe2, 0xf7, 0x25, 0x0a, 0xb9, + 0x85, 0xbf, 0xaf, 0xc5, 0x83, 0x4a, 0xca, 0x51, 0x55, 0xc8, 0xcb, 0xd1, 0xb0, 0x0b, 0x6a, 0x7e, + 0xd8, 0x25, 0xd7, 0xa3, 0x41, 0x1c, 0x54, 0x40, 0xe4, 0x53, 0x41, 0x8b, 0xf7, 0x5c, 0x24, 0xaa, + 0x8b, 0xe5, 0xb1, 0x7b, 0x24, 0x2f, 0x46, 0xa3, 0x4c, 0xa8, 0x70, 0x94, 0xa5, 0x85, 0xec, 0xc2, + 0x22, 0xcc, 0x44, 0xce, 0x31, 0xc8, 0x14, 0x4c, 0xb8, 0x6c, 0x8b, 0xbf, 0x51, 0x38, 0x45, 0xe5, + 0x9e, 0x6d, 0x2a, 0xd1, 0x4f, 0x6d, 0xe1, 0x43, 0x38, 0x93, 0xb4, 0xbb, 0x42, 0xa7, 0x24, 0x66, + 0xc2, 0xae, 0x3c, 0xd8, 0xdf, 0xad, 0x1a, 0xab, 0x6c, 0x93, 0x80, 0x25, 0xad, 0x97, 0x36, 0xab, + 0x54, 0x81, 0xe6, 0x01, 0x58, 0xc2, 0x9e, 0xb1, 0x5f, 0x2e, 0x64, 0x96, 0xff, 0x56, 0x06, 0x66, + 0xa5, 0xbb, 0x5c, 0x68, 0xe9, 0x7b, 0xe4, 0xaf, 0x6b, 0x70, 0x26, 0x29, 0x5a, 0x1a, 0x79, 0x23, + 0xe9, 0x56, 0x01, 0x2b, 0xd4, 0x23, 0xcc, 0x5f, 0xf1, 0xcd, 0x61, 0x8b, 0x71, 0x3f, 0xa4, 0x4b, + 0x3f, 0xfc, 0xbb, 0xbf, 0xff, 0x53, 0x99, 0x73, 0x3a, 0x59, 0x3a, 0x7e, 0x6d, 0xc9, 0x44, 0xf8, + 0x25, 0x16, 0x7b, 0xd0, 0xbb, 0xa7, 0x2d, 0xdc, 0xd6, 0x88, 0x0b, 0x63, 0xcc, 0x75, 0x89, 0xbc, + 0x9c, 0x5e, 0x85, 0xe2, 0x1a, 0x55, 0xbc, 0xd1, 0x1f, 0x90, 0xd7, 0x7e, 0x16, 0x6b, 0x9f, 0xd1, + 0x21, 0xac, 0xfd, 0x9e, 0xb6, 0xb0, 0xfc, 0xdf, 0x8d, 0x60, 0xac, 0x74, 0xc1, 0x32, 0x8c, 0xe5, + 0xd0, 0x82, 0x31, 0xe6, 0xc9, 0x47, 0xae, 0xa7, 0x5d, 0xc8, 0x57, 0xbc, 0x09, 0x8b, 0x2f, 0xf5, + 0x03, 0xe3, 0x34, 0x9c, 0x41, 0x1a, 0xf2, 0x7a, 0x8e, 0xd2, 0xe0, 0x3a, 0x4d, 0x8b, 0x92, 0x40, + 0x3c, 0xc8, 0x05, 0x7c, 0x23, 0x37, 0xd2, 0x50, 0x45, 0xfd, 0x41, 0x8a, 0xaf, 0x0c, 0x00, 0xc9, + 0xeb, 0x9d, 0xc5, 0x7a, 0x27, 0x49, 0x58, 0x2f, 0xf9, 0x41, 0x18, 0xe7, 0x3e, 0x2c, 0x24, 0x95, + 0x7a, 0xd5, 0xdb, 0xa6, 0xf8, 0x72, 0x5f, 0x38, 0x71, 0x9d, 0x14, 0xab, 0x2b, 0x92, 0xf9, 0xa0, + 0xba, 0x25, 0x9b, 0x81, 0x2c, 0x7d, 0xab, 0x6d, 0xb6, 0xac, 0xaf, 0xc8, 0xe7, 0x41, 0x4f, 0xa7, + 0x72, 0x58, 0xed, 0xe7, 0x97, 0xfa, 0x81, 0xf1, 0xaa, 0xe7, 0xb1, 0x6a, 0xb2, 0x50, 0x08, 0xab, + 0xe6, 0x55, 0xb6, 0x60, 0x8c, 0x7b, 0xdd, 0xa7, 0x56, 0xa9, 0x44, 0x78, 0x48, 0xaf, 0x32, 0x12, + 0x7c, 0x86, 0x77, 0x6a, 0x51, 0xe9, 0xd4, 0xe5, 0x7f, 0x96, 0x85, 0xf3, 0x92, 0x5c, 0xa9, 0xd7, + 0xd7, 0xc9, 0x5f, 0xd6, 0xf0, 0xee, 0x99, 0xeb, 0x93, 0xc5, 0xa4, 0x5a, 0xd2, 0x43, 0x23, 0x14, + 0x97, 0x06, 0x86, 0xe7, 0xe4, 0xbd, 0x88, 0xe4, 0x5d, 0xd6, 0xcf, 0x53, 0xf2, 0x0e, 0x03, 0xc0, + 0x5b, 0xbe, 0x6b, 0xb7, 0x96, 0xf0, 0xb2, 0x00, 0x95, 0xc1, 0x1f, 0xd7, 0x82, 0xbd, 0xc9, 0xc1, + 0x6a, 0x08, 0x3d, 0xde, 0x8b, 0xb7, 0x07, 0x2f, 0xc0, 0x69, 0xd2, 0x91, 0xa6, 0x8b, 0xa4, 0x98, + 0x42, 0x13, 0x25, 0xe3, 0x2f, 0x68, 0x30, 0x42, 0x55, 0x2a, 0xb9, 0x35, 0x08, 0xfa, 0xe0, 0x2a, + 0x74, 0x71, 0x71, 0x50, 0x70, 0x4e, 0xcb, 0x0b, 0x48, 0xcb, 0x25, 0x7d, 0x3e, 0x99, 0x16, 0xa7, + 0x83, 0x5a, 0x22, 0x0b, 0xc5, 0xc4, 0xde, 0xc4, 0xbb, 0xd4, 0xe4, 0x27, 0x82, 0xee, 0xec, 0xc3, + 0xbc, 0xd8, 0x55, 0xfe, 0x7e, 0xcc, 0x8b, 0xdf, 0xd3, 0xd7, 0xaf, 0x23, 0xc1, 0x57, 0xf4, 0x28, + 0xf3, 0xea, 0x14, 0x34, 0xec, 0xd1, 0x9f, 0x0c, 0x7b, 0x74, 0xc0, 0x3a, 0xa4, 0x2e, 0x7d, 0x6d, + 0x88, 0x12, 0x2a, 0x1f, 0xc9, 0x85, 0x34, 0xb2, 0x28, 0x25, 0x7f, 0x49, 0x74, 0xea, 0xe2, 0x40, + 0x15, 0x84, 0xbd, 0xba, 0x34, 0x30, 0x7c, 0x1f, 0xb1, 0x17, 0xe4, 0xb0, 0x7e, 0xfd, 0xaf, 0x32, + 0x70, 0x5a, 0xea, 0x57, 0x71, 0xa7, 0x9c, 0xfc, 0xb4, 0x06, 0x53, 0xf2, 0x25, 0xf7, 0xe4, 0x7e, + 0xed, 0x71, 0x61, 0x3e, 0xb9, 0x5f, 0x7b, 0xdd, 0x9f, 0x57, 0x19, 0x68, 0x33, 0x48, 0xdb, 0xf2, + 0x96, 0xe4, 0x9b, 0xf1, 0xe4, 0x87, 0xb5, 0xf0, 0xe6, 0xf0, 0x42, 0xaf, 0x2a, 0xd4, 0x4b, 0xf3, + 0xc5, 0x57, 0x07, 0x82, 0xe5, 0x94, 0x5c, 0x46, 0x4a, 0xe6, 0xc9, 0x5c, 0x84, 0x12, 0x7e, 0x5d, + 0x78, 0xf9, 0xbb, 0x9a, 0x72, 0xf5, 0x9c, 0x7b, 0xd9, 0x91, 0x9f, 0xd7, 0x20, 0xaf, 0xbe, 0x71, + 0x91, 0x2c, 0x79, 0xbd, 0xde, 0x16, 0x2f, 0xbe, 0x36, 0x44, 0x89, 0x24, 0xc6, 0x71, 0xb7, 0xe8, + 0x60, 0xc6, 0xe1, 0x1e, 0xb4, 0xcb, 0x7f, 0x34, 0x06, 0x73, 0x71, 0x9a, 0x77, 0x4d, 0xdb, 0xa5, + 0x3c, 0x15, 0xf3, 0xfd, 0xcd, 0x1e, 0xb5, 0xc7, 0x2e, 0x11, 0x14, 0x6f, 0x0d, 0x08, 0xcd, 0xe9, + 0xbc, 0x80, 0x74, 0x9e, 0xd5, 0x0b, 0x12, 0x9d, 0xe8, 0x48, 0xc9, 0x15, 0x70, 0x30, 0x21, 0xf7, + 0xc3, 0x1b, 0x99, 0x97, 0x17, 0x07, 0x05, 0x57, 0x15, 0x08, 0xb9, 0x14, 0xa5, 0x23, 0x9c, 0xa5, + 0xed, 0xc6, 0x57, 0xe4, 0x47, 0x34, 0xd9, 0x2e, 0x59, 0xea, 0x53, 0x49, 0xcc, 0x3c, 0xb9, 0x3d, + 0x78, 0x01, 0x75, 0xee, 0x26, 0x31, 0xfe, 0x90, 0x1f, 0xd3, 0x60, 0x42, 0xb8, 0x97, 0x93, 0x7e, + 0xcd, 0x8d, 0x38, 0xaa, 0x17, 0x97, 0x06, 0x86, 0x4f, 0x12, 0x7f, 0x85, 0x3f, 0xcc, 0xab, 0xfa, + 0xaf, 0x68, 0x00, 0xa1, 0x87, 0x39, 0xe9, 0xd7, 0xd0, 0x98, 0xbf, 0x7a, 0x4f, 0x19, 0x4f, 0x76, + 0x5f, 0xd7, 0xaf, 0x21, 0x4d, 0x17, 0xf4, 0x14, 0x9a, 0xa8, 0x04, 0xfd, 0x45, 0x2d, 0x30, 0xaa, + 0xfa, 0x89, 0xb1, 0x6a, 0x5b, 0xdd, 0x1a, 0x10, 0x5a, 0x15, 0x9f, 0x85, 0xb8, 0xf8, 0x7c, 0x2b, + 0xbc, 0xa5, 0xf0, 0xd5, 0xf2, 0xdf, 0x1b, 0x55, 0x0c, 0x20, 0x8e, 0x6f, 0xcd, 0x69, 0x99, 0x76, + 0xdb, 0x23, 0xdf, 0x56, 0x84, 0x6b, 0xb9, 0x07, 0x05, 0xbc, 0x44, 0x4c, 0xbe, 0xee, 0x0c, 0x55, + 0x86, 0xd3, 0x5e, 0x44, 0xda, 0xcf, 0x10, 0x22, 0xd1, 0xde, 0xe0, 0x24, 0xfd, 0x75, 0x69, 0x04, + 0x2e, 0xf5, 0x45, 0x1e, 0x19, 0x83, 0xb7, 0x07, 0x2f, 0xc0, 0x49, 0x79, 0x1b, 0x49, 0x59, 0x26, + 0xb7, 0xe3, 0xa4, 0x84, 0xe3, 0x50, 0x30, 0x94, 0x65, 0xd4, 0x98, 0x25, 0xfb, 0x37, 0x34, 0x98, + 0xc0, 0xa5, 0x39, 0x65, 0x5d, 0xff, 0x8a, 0x05, 0xe8, 0x20, 0xd2, 0x17, 0x2d, 0xc1, 0x69, 0xbd, + 0x8b, 0xb4, 0xde, 0xd1, 0x5f, 0x4b, 0xa0, 0xd5, 0xe4, 0xc0, 0x29, 0xc4, 0xfe, 0x86, 0x06, 0xb0, + 0x66, 0x09, 0xa0, 0x01, 0x7a, 0x3a, 0x04, 0x1e, 0xbc, 0xa7, 0xe5, 0x32, 0x9c, 0xe4, 0x77, 0x90, + 0xe4, 0x37, 0xf4, 0x3b, 0x09, 0x24, 0x37, 0xac, 0xde, 0x44, 0x2f, 0xff, 0xda, 0x98, 0xb2, 0x28, + 0xdc, 0x75, 0x9c, 0x26, 0x35, 0x5d, 0xc6, 0xd8, 0x33, 0x52, 0xc9, 0xc3, 0x2b, 0xed, 0x11, 0xe1, + 0xe4, 0xe1, 0x95, 0xfe, 0x36, 0xd5, 0x4b, 0x48, 0xf8, 0xd5, 0xe2, 0x65, 0x4a, 0x38, 0x2f, 0xd5, + 0x71, 0x9c, 0xa6, 0xb7, 0xc4, 0x9e, 0xe8, 0x5d, 0xfa, 0x56, 0xb7, 0x4b, 0xd5, 0xf3, 0x5f, 0xd0, + 0x20, 0x17, 0x6c, 0xc2, 0x91, 0x61, 0x1e, 0xb5, 0x2c, 0xde, 0x1c, 0x0c, 0x58, 0x35, 0xd6, 0x8b, + 0xc5, 0x04, 0x82, 0x44, 0xf5, 0xbf, 0xa2, 0xc1, 0xb9, 0xf8, 0xdb, 0x71, 0x6c, 0xbb, 0x26, 0xb1, + 0xfd, 0xa9, 0x2f, 0xdb, 0x25, 0xcf, 0x66, 0x3d, 0xde, 0xa5, 0x7b, 0x15, 0xc9, 0xbb, 0x5e, 0x7c, + 0x21, 0x9d, 0xbc, 0xa5, 0xcf, 0x9c, 0x03, 0x36, 0xa7, 0xfd, 0xaa, 0x06, 0x67, 0x13, 0x9f, 0xa3, + 0x4b, 0x1e, 0x47, 0xbd, 0x5e, 0xbb, 0x4b, 0x1e, 0x47, 0x3d, 0xdf, 0xba, 0x13, 0xb4, 0x92, 0x81, + 0x68, 0xfd, 0xcf, 0x34, 0x98, 0x4b, 0x7e, 0x34, 0x8e, 0x24, 0x56, 0xdd, 0xf3, 0x11, 0xba, 0xe2, + 0xf2, 0x30, 0x45, 0x54, 0x51, 0x24, 0x97, 0x7b, 0x93, 0xbb, 0xfc, 0x87, 0x19, 0x3c, 0x66, 0x11, + 0xc3, 0xe5, 0x43, 0xe7, 0x80, 0x38, 0xc1, 0x6a, 0xfb, 0xc5, 0xf4, 0xfe, 0x94, 0x7a, 0xfd, 0x7a, + 0x1f, 0x28, 0xd5, 0x44, 0x28, 0x4e, 0x53, 0x8a, 0x3e, 0x73, 0x0e, 0x3c, 0x64, 0x15, 0x9d, 0xfd, + 0xba, 0x90, 0xbb, 0x6f, 0xf9, 0xbc, 0x33, 0x5f, 0x4e, 0xe9, 0x9a, 0x58, 0x1f, 0xde, 0xe8, 0x0f, + 0xa8, 0x6e, 0x1f, 0x11, 0xb5, 0x66, 0xe2, 0xf6, 0xdd, 0xbb, 0x09, 0xb2, 0xe5, 0xde, 0x78, 0x65, + 0x00, 0x48, 0x5e, 0x71, 0x01, 0x2b, 0x06, 0x32, 0x21, 0x2a, 0x5e, 0xfe, 0x57, 0x39, 0x45, 0x3b, + 0x6d, 0x3b, 0x0d, 0x8b, 0xfc, 0xa9, 0x3e, 0xdb, 0x39, 0xca, 0x5b, 0x77, 0x3d, 0xb6, 0x73, 0x12, + 0xde, 0xc4, 0x53, 0xed, 0x6b, 0x7c, 0xae, 0x4d, 0xda, 0xce, 0x61, 0x21, 0xfa, 0xbf, 0xa2, 0x4b, + 0xe0, 0xa8, 0xf1, 0x7f, 0xab, 0x4f, 0x05, 0x11, 0xcb, 0x7f, 0x71, 0x50, 0xf0, 0xa4, 0x5d, 0x26, + 0x85, 0x2c, 0x6e, 0xf3, 0x0f, 0xb0, 0xb1, 0x96, 0xf4, 0x86, 0x5e, 0x72, 0xe7, 0x24, 0x3e, 0xa9, + 0xa7, 0x6e, 0xac, 0x21, 0x0d, 0xe4, 0x17, 0xd3, 0x76, 0x5b, 0xef, 0xf4, 0x45, 0x9b, 0xb0, 0xd7, + 0xfa, 0xfa, 0x70, 0x85, 0x38, 0x59, 0xe7, 0x91, 0xac, 0xd3, 0x64, 0x36, 0x64, 0x0d, 0xdf, 0x68, + 0x25, 0xbf, 0xa0, 0x09, 0xc7, 0x8b, 0x7d, 0xcf, 0x3c, 0xb2, 0x56, 0x4e, 0x50, 0x7c, 0x6e, 0xa7, + 0x55, 0x13, 0x03, 0xed, 0xa9, 0xfd, 0x52, 0x4a, 0xa8, 0x36, 0x2c, 0x39, 0x1f, 0x52, 0xd5, 0xa5, + 0x60, 0x92, 0x14, 0xfd, 0xb4, 0x06, 0x85, 0x35, 0x97, 0x9a, 0x20, 0x78, 0x38, 0xdc, 0xb2, 0xda, + 0x7e, 0xca, 0xda, 0x9b, 0x62, 0x8e, 0x42, 0x0a, 0xda, 0xae, 0x24, 0x15, 0x90, 0xd5, 0xc8, 0x6d, + 0xa4, 0x64, 0xa1, 0x78, 0x3d, 0xa4, 0xc4, 0x0c, 0xd1, 0x2c, 0x35, 0x28, 0xde, 0x90, 0x2a, 0xaa, + 0x5e, 0x7e, 0x4d, 0x83, 0xd9, 0x55, 0xc7, 0x6d, 0x38, 0x0a, 0x65, 0xa9, 0x6c, 0x8b, 0x81, 0xf6, + 0x65, 0x5b, 0x42, 0x09, 0x4e, 0xec, 0x32, 0x12, 0x7b, 0xb3, 0xf8, 0x72, 0x0a, 0xb1, 0xb6, 0x67, + 0x1e, 0x34, 0x2d, 0x95, 0xdc, 0xef, 0x6a, 0x70, 0x7a, 0xbf, 0x5d, 0x8f, 0x11, 0xbc, 0x9c, 0x56, + 0x7d, 0x02, 0x70, 0x4f, 0xf3, 0x2b, 0xb5, 0x8c, 0x78, 0x2d, 0x16, 0x89, 0x7e, 0xb5, 0xf8, 0x52, + 0x32, 0xd1, 0xec, 0x2d, 0x3f, 0x85, 0xe6, 0xe5, 0x3f, 0x22, 0xca, 0xe1, 0x05, 0x0f, 0x4d, 0xe4, + 0x05, 0x6b, 0xf3, 0x44, 0x7d, 0xc5, 0xbd, 0x34, 0x95, 0x65, 0xf9, 0x8d, 0xfe, 0x80, 0x9c, 0xca, + 0x39, 0xa4, 0xb2, 0xa0, 0x4f, 0x52, 0x2a, 0x79, 0xc8, 0x25, 0xca, 0xbe, 0x63, 0x18, 0x5d, 0x6d, + 0x3a, 0x6d, 0x2b, 0x59, 0x97, 0x72, 0x54, 0x14, 0xa0, 0xa7, 0x2e, 0x55, 0xe0, 0x78, 0x8d, 0x17, + 0xb1, 0xc6, 0x39, 0x7d, 0x56, 0xaa, 0x71, 0xa9, 0x4e, 0x41, 0x68, 0xbd, 0x3f, 0xd8, 0xfb, 0x00, + 0x84, 0x21, 0x1c, 0xe0, 0x00, 0x44, 0x05, 0xe4, 0x55, 0x5f, 0xc1, 0xaa, 0xcf, 0x2f, 0x9c, 0x93, + 0xab, 0xfe, 0x56, 0xe0, 0x30, 0xfb, 0x15, 0xf9, 0xf3, 0xd2, 0x02, 0xa8, 0x07, 0xda, 0xc8, 0x34, + 0xf2, 0xca, 0x00, 0x90, 0x9c, 0x82, 0x97, 0x91, 0x82, 0x6b, 0xe4, 0x8a, 0x4c, 0x41, 0x30, 0x95, + 0x48, 0x94, 0xfc, 0x0d, 0x0d, 0x08, 0x2f, 0xdc, 0x57, 0x83, 0x2a, 0x55, 0x0d, 0xaa, 0x41, 0xd3, + 0x0b, 0x71, 0x52, 0x5f, 0x41, 0x52, 0x5f, 0xd0, 0x2f, 0x27, 0x90, 0xfa, 0x85, 0xed, 0x3f, 0x0e, + 0xcf, 0xad, 0xc8, 0x9f, 0x0a, 0x4c, 0x9d, 0x1e, 0x9d, 0xa6, 0x1e, 0x2d, 0xdc, 0xe8, 0x0f, 0x18, + 0x31, 0xbe, 0xd3, 0x3a, 0x8d, 0x11, 0x30, 0x4a, 0x8d, 0x15, 0xaf, 0x97, 0xb4, 0x22, 0xc0, 0x00, + 0xd2, 0xca, 0xe1, 0x92, 0x76, 0x8a, 0x44, 0xed, 0x1e, 0x05, 0x51, 0xba, 0xeb, 0x67, 0x34, 0x98, + 0x5e, 0x35, 0x3b, 0x66, 0xdd, 0xf6, 0x4f, 0x50, 0xf1, 0x27, 0xef, 0xd1, 0x08, 0x8f, 0x6a, 0x09, + 0xb0, 0xe7, 0x1e, 0x4d, 0x22, 0x7c, 0x2f, 0xca, 0xf8, 0x6c, 0x22, 0x51, 0x76, 0x22, 0x5b, 0x00, + 0x0b, 0xe9, 0x95, 0xc4, 0x6c, 0x80, 0x57, 0x07, 0x82, 0xe5, 0xc4, 0x9c, 0x46, 0x62, 0xa6, 0x89, + 0xac, 0x46, 0xe8, 0x92, 0x68, 0x88, 0x53, 0xd7, 0x08, 0xea, 0x41, 0x4f, 0x5d, 0x7b, 0x15, 0x53, + 0x77, 0xb3, 0xf4, 0xd3, 0x32, 0xa7, 0x24, 0xf1, 0xfd, 0x8e, 0x06, 0xf9, 0x2a, 0xbf, 0xd9, 0xc3, + 0x35, 0x6d, 0x8f, 0xde, 0x50, 0x21, 0x7b, 0xee, 0x7e, 0x24, 0x17, 0x50, 0x8d, 0x37, 0xfd, 0xac, + 0x22, 0x59, 0x1c, 0x16, 0xe9, 0xfa, 0x65, 0x0d, 0x66, 0x44, 0x61, 0x7e, 0x40, 0x4e, 0x06, 0xa8, + 0x47, 0x7d, 0x80, 0x32, 0x79, 0xbe, 0x4d, 0x29, 0xc1, 0x49, 0xbb, 0x81, 0xa4, 0xe9, 0xfa, 0xa5, + 0x44, 0xd2, 0x96, 0xf8, 0xfb, 0x8b, 0x94, 0x44, 0x6a, 0x4b, 0x09, 0x2c, 0x7d, 0x36, 0xb3, 0xd4, + 0x2a, 0x07, 0xdb, 0xcc, 0x4a, 0x2d, 0xa3, 0x9e, 0xa7, 0x93, 0x64, 0x1e, 0x92, 0xdf, 0xd5, 0xe0, + 0x62, 0xac, 0xb0, 0x2c, 0x88, 0xef, 0x0d, 0x51, 0x69, 0x82, 0x40, 0xbe, 0xff, 0xb4, 0xc5, 0x39, + 0xf9, 0xaf, 0x23, 0xf9, 0x8b, 0xfa, 0x2b, 0xc9, 0x7c, 0xe6, 0x22, 0x1a, 0x55, 0x76, 0xbf, 0xad, + 0xc1, 0x5c, 0x35, 0x72, 0x11, 0x8d, 0xab, 0xdf, 0xb7, 0xfa, 0x13, 0xa4, 0x96, 0x10, 0x2d, 0x79, + 0x7b, 0xf8, 0x82, 0xbc, 0x0d, 0x6f, 0x60, 0x1b, 0x96, 0xf4, 0x85, 0xa4, 0x36, 0x2c, 0x05, 0x2f, + 0xe6, 0x44, 0x1b, 0xf1, 0x67, 0x34, 0x98, 0x56, 0xee, 0x97, 0xf4, 0x9a, 0x6f, 0xd5, 0x4b, 0x2e, + 0xbd, 0xe6, 0xdb, 0xc8, 0xcd, 0x13, 0xd5, 0xe1, 0x82, 0x51, 0xb0, 0xc4, 0x2f, 0xa3, 0x50, 0x83, + 0xeb, 0xe7, 0x46, 0x94, 0x23, 0x11, 0xbc, 0x17, 0xc4, 0x6c, 0x39, 0xf2, 0x43, 0x30, 0xc6, 0x7f, + 0xf5, 0x98, 0x2b, 0x18, 0xc4, 0x00, 0x73, 0x9a, 0x00, 0x4c, 0xda, 0xcb, 0xc6, 0x9b, 0x4c, 0xcc, + 0x34, 0xe4, 0x16, 0x22, 0x65, 0xd0, 0x0f, 0x51, 0x43, 0xa8, 0x5f, 0xfd, 0x0c, 0x62, 0x20, 0x43, + 0x68, 0xb0, 0xfa, 0x1b, 0x96, 0xa8, 0xff, 0x9b, 0x30, 0x8a, 0xec, 0xe8, 0x35, 0xa5, 0x22, 0xc0, + 0x00, 0x53, 0x2a, 0x87, 0x4b, 0x52, 0x7c, 0x72, 0xe5, 0xf8, 0x9b, 0xd6, 0xfd, 0xc3, 0x1a, 0x8c, + 0xef, 0xb7, 0xf1, 0xb3, 0x97, 0x58, 0x70, 0x90, 0x01, 0xc4, 0x22, 0x80, 0x54, 0x6d, 0x0a, 0xfd, + 0x5c, 0x94, 0x84, 0x6e, 0x5b, 0x10, 0xb1, 0xfc, 0xeb, 0x59, 0xe5, 0x88, 0x8f, 0x87, 0x62, 0xa3, + 0xb4, 0xf1, 0x83, 0xee, 0x9b, 0xc3, 0x44, 0x24, 0x2d, 0xde, 0x1a, 0x10, 0x3a, 0xdd, 0x4a, 0x6e, + 0x31, 0x38, 0x71, 0xd0, 0xc1, 0xe2, 0x5f, 0x92, 0xbe, 0x78, 0x95, 0x80, 0x9a, 0x69, 0x27, 0x65, + 0xa9, 0x61, 0x35, 0x15, 0xdf, 0x00, 0x85, 0x8e, 0xa5, 0x3a, 0x42, 0xf2, 0xfe, 0x12, 0x07, 0xed, + 0x83, 0x34, 0x53, 0xda, 0x7d, 0x5a, 0x1c, 0x14, 0x3c, 0x69, 0x59, 0xaf, 0x90, 0xb3, 0xfc, 0xfb, + 0xea, 0x58, 0x96, 0x9e, 0x47, 0xa7, 0xb3, 0x54, 0xef, 0x93, 0xc5, 0xd4, 0x57, 0xf7, 0x93, 0x09, + 0x4c, 0x7f, 0x5d, 0x5f, 0xac, 0xfa, 0x08, 0xaa, 0x74, 0xe9, 0x39, 0x77, 0xc9, 0xca, 0x57, 0x9f, + 0x7e, 0xff, 0xaa, 0xef, 0xe1, 0x6b, 0xda, 0xcb, 0xfa, 0xc5, 0x5b, 0x03, 0x42, 0x27, 0x1d, 0xbe, + 0xca, 0xa4, 0xd1, 0x2e, 0xfc, 0x76, 0x9f, 0xa3, 0xb3, 0xb4, 0x17, 0xf3, 0xfb, 0x12, 0x11, 0x59, + 0x82, 0xf1, 0x55, 0xc5, 0xc2, 0xb5, 0x18, 0x7f, 0x62, 0x7c, 0xf9, 0x29, 0x2d, 0x58, 0x56, 0xf4, + 0x23, 0x49, 0x9d, 0xcc, 0x6e, 0x0d, 0x08, 0xcd, 0x49, 0xba, 0x89, 0x24, 0xbd, 0x54, 0xec, 0x4f, + 0x12, 0x55, 0x0b, 0xbf, 0x3c, 0xae, 0x9e, 0xa2, 0x07, 0x91, 0xe0, 0x3c, 0xba, 0x0c, 0xe2, 0xfd, + 0x98, 0xfc, 0x32, 0x54, 0x00, 0xaa, 0x76, 0xe3, 0xcd, 0xc1, 0x80, 0xd5, 0xf3, 0x3b, 0x7d, 0x06, + 0x4f, 0x75, 0xc2, 0xda, 0x69, 0x27, 0xfe, 0x59, 0xe5, 0x48, 0x71, 0xb1, 0x37, 0xde, 0x98, 0x05, + 0xb6, 0x34, 0x30, 0x3c, 0x27, 0xe5, 0x1c, 0x92, 0x32, 0x4b, 0xa2, 0xa4, 0xd0, 0xd5, 0x50, 0x30, + 0xde, 0xfa, 0xb4, 0x2e, 0x32, 0xdc, 0x6e, 0x0d, 0x08, 0xcd, 0x29, 0x58, 0x42, 0x0a, 0x5e, 0x21, + 0x2f, 0x47, 0x28, 0x90, 0x8e, 0x0f, 0xe5, 0xf0, 0x7d, 0x5f, 0xc9, 0x27, 0xc4, 0x7d, 0xfa, 0x48, + 0x95, 0xf2, 0x9b, 0x83, 0x01, 0xab, 0xab, 0xfc, 0x85, 0x2b, 0x51, 0xb2, 0xa2, 0xe4, 0xfc, 0x82, + 0x06, 0x13, 0x0f, 0xcd, 0xa6, 0xdd, 0x48, 0x3d, 0x25, 0x0a, 0xeb, 0x10, 0x70, 0xbd, 0x55, 0x67, + 0x02, 0xb8, 0xba, 0xe3, 0x47, 0x6e, 0x44, 0x89, 0x3a, 0xe6, 0x90, 0x31, 0xea, 0xfe, 0xb6, 0x06, + 0x05, 0xd1, 0x32, 0x7e, 0x8d, 0x3b, 0x65, 0xed, 0x16, 0xe7, 0x84, 0x80, 0xef, 0xb9, 0x76, 0xeb, + 0x55, 0x4c, 0xdd, 0xfa, 0x5b, 0x58, 0x88, 0x52, 0x1d, 0xdc, 0x2c, 0x8f, 0x71, 0x75, 0xf9, 0xff, + 0x51, 0xcf, 0xdd, 0xd5, 0xd7, 0x1c, 0xd9, 0xdc, 0xd9, 0x63, 0x95, 0xa7, 0x82, 0x0f, 0xb0, 0xca, + 0x4b, 0x2e, 0xa0, 0x6e, 0x39, 0xe9, 0x67, 0xf0, 0x00, 0x89, 0x43, 0x62, 0x54, 0x00, 0x9b, 0x29, + 0xde, 0xbf, 0x18, 0x6a, 0xb9, 0x01, 0xc8, 0x51, 0x15, 0xdd, 0xed, 0xc1, 0x0b, 0xa8, 0xe4, 0x14, + 0x53, 0xc9, 0xf9, 0xc9, 0xfe, 0x5e, 0x09, 0x6a, 0x05, 0x83, 0x2d, 0xe4, 0x52, 0xcb, 0xa8, 0xe6, + 0x0e, 0x49, 0xa4, 0x4b, 0x99, 0xbf, 0x6f, 0x0f, 0xf2, 0x60, 0xa7, 0xa2, 0x53, 0x5e, 0x1b, 0xa2, + 0x44, 0xe2, 0x29, 0x65, 0x84, 0x9c, 0xa8, 0x27, 0xaf, 0x34, 0x75, 0x0e, 0xd0, 0x83, 0xaa, 0x5e, + 0xb9, 0x3d, 0x78, 0x01, 0xd5, 0x20, 0x5b, 0xb8, 0x90, 0x48, 0x1a, 0x23, 0x69, 0xf9, 0xaf, 0x92, + 0x88, 0xab, 0x57, 0xe0, 0xb0, 0x3f, 0x80, 0xab, 0x57, 0xf8, 0xe0, 0xef, 0x20, 0xae, 0x5e, 0x31, + 0xe8, 0x64, 0x57, 0xaf, 0x20, 0x70, 0x39, 0x4a, 0xd9, 0xcf, 0x68, 0x30, 0x89, 0xa1, 0x4d, 0x38, + 0x25, 0xfd, 0x1e, 0x66, 0x97, 0x60, 0x7b, 0x9e, 0xe6, 0xa6, 0x15, 0x49, 0x76, 0x21, 0x0a, 0x69, + 0x5a, 0xc2, 0x08, 0x2a, 0x94, 0xb2, 0xbf, 0xa4, 0x05, 0x6f, 0x5d, 0x90, 0xfe, 0x4f, 0xdf, 0x2a, + 0x1b, 0x2d, 0x8b, 0x83, 0x82, 0x27, 0x99, 0xd6, 0x0a, 0x35, 0xd2, 0x06, 0xcb, 0x4f, 0xf6, 0x75, + 0x69, 0x0a, 0xf0, 0x0f, 0xe4, 0xd2, 0x14, 0x83, 0x56, 0x25, 0x7e, 0xe1, 0x85, 0x18, 0x31, 0xec, + 0xff, 0xd2, 0xb7, 0x82, 0x68, 0xf4, 0x5f, 0x91, 0xef, 0x68, 0x90, 0x63, 0xe5, 0x4b, 0xcd, 0x66, + 0x9a, 0xa7, 0x50, 0xa4, 0xa6, 0x52, 0xb3, 0xd9, 0xc7, 0x53, 0x28, 0xa9, 0x40, 0x92, 0xc3, 0xaf, + 0x42, 0x5d, 0x03, 0x61, 0xcd, 0x26, 0xae, 0x43, 0x7e, 0x2b, 0x6d, 0xc3, 0xf1, 0x5e, 0x9f, 0x1a, + 0x7b, 0x6d, 0xf2, 0xbc, 0xf3, 0x54, 0x65, 0x39, 0xe1, 0xb7, 0x90, 0xf0, 0x97, 0x75, 0x3d, 0x46, + 0xb8, 0x25, 0x8a, 0xc9, 0x3b, 0x91, 0x3f, 0x1a, 0x2e, 0xa4, 0x6e, 0x0e, 0xf8, 0x16, 0xf9, 0x60, + 0xbd, 0x9d, 0xec, 0x7d, 0xce, 0xd6, 0xbf, 0x0a, 0x59, 0xcc, 0x4b, 0x59, 0x8c, 0x04, 0xb1, 0x37, + 0xd3, 0x77, 0xec, 0xab, 0x1b, 0x34, 0x8b, 0x83, 0x82, 0xf7, 0x1d, 0x09, 0xe1, 0x5e, 0x0d, 0xf9, + 0x79, 0x0d, 0xc6, 0xf9, 0xe3, 0xd7, 0x7d, 0xe9, 0x51, 0x9f, 0xeb, 0xee, 0x4b, 0x4f, 0xe4, 0x65, + 0xee, 0x88, 0xa9, 0x24, 0xd3, 0xc3, 0x1f, 0xdc, 0x5e, 0xfa, 0x96, 0xf2, 0x20, 0xf5, 0x57, 0xe4, + 0x97, 0x34, 0x98, 0x94, 0x5e, 0xb6, 0xee, 0xab, 0xd0, 0xe2, 0x4f, 0x73, 0xf7, 0x55, 0x68, 0x49, + 0x0f, 0x67, 0x73, 0x43, 0x53, 0xbf, 0x98, 0xd8, 0x8f, 0x56, 0x1d, 0xa1, 0xf9, 0x3e, 0xed, 0xa4, + 0xf4, 0x48, 0x72, 0x7f, 0xfa, 0x62, 0x6f, 0x39, 0xf7, 0xa7, 0x2f, 0xfe, 0x06, 0x73, 0x8f, 0x71, + 0x1b, 0x6c, 0x0c, 0x2a, 0xd4, 0x71, 0x43, 0x68, 0x20, 0xea, 0x54, 0x53, 0x68, 0x79, 0x98, 0x22, + 0x2a, 0x75, 0xc5, 0x3e, 0xd4, 0xfd, 0xba, 0xa0, 0x8e, 0xeb, 0xe1, 0x81, 0xa8, 0x53, 0x95, 0xf1, + 0xf2, 0x30, 0x45, 0x38, 0x75, 0x6f, 0x21, 0x75, 0xaf, 0x2d, 0x2c, 0xa5, 0x53, 0x17, 0x28, 0x65, + 0xe9, 0x3d, 0xe7, 0xaf, 0xc8, 0x7f, 0xac, 0x41, 0x5e, 0x7d, 0x0d, 0x99, 0xbc, 0x3e, 0xe4, 0xe3, + 0xc9, 0x8c, 0xea, 0x37, 0x9e, 0xea, 0xc9, 0x65, 0xf5, 0x6a, 0x4b, 0x32, 0xe1, 0xe4, 0x87, 0x60, + 0xa4, 0x6a, 0x7f, 0x33, 0xe5, 0x40, 0x2a, 0xf9, 0x65, 0xe4, 0xe2, 0xab, 0x03, 0xc1, 0x26, 0x9d, + 0x0c, 0xa8, 0x44, 0xd8, 0xdf, 0xb4, 0x96, 0x7f, 0x1c, 0x94, 0x93, 0x76, 0xbe, 0x34, 0xf8, 0x89, + 0xd0, 0x36, 0x4a, 0xec, 0xb1, 0x58, 0x09, 0x75, 0x84, 0xdc, 0x19, 0xaa, 0x4c, 0xd2, 0xe1, 0x54, + 0xe0, 0x61, 0x16, 0x1a, 0xe4, 0x3f, 0xa3, 0x18, 0xe4, 0x6f, 0x0c, 0x54, 0x45, 0xac, 0x27, 0xdf, + 0x1c, 0xb6, 0x98, 0x6a, 0xc4, 0x91, 0x24, 0xe2, 0xc8, 0x2f, 0x4b, 0x56, 0xf9, 0x60, 0x4d, 0x8f, + 0x18, 0xe6, 0xaf, 0x0f, 0x57, 0x88, 0xd3, 0xb4, 0x80, 0x34, 0xbd, 0x48, 0xf4, 0x04, 0x9a, 0xa2, + 0xa6, 0xf9, 0x4f, 0x84, 0x8b, 0xab, 0xc1, 0x3a, 0x54, 0x55, 0x2a, 0x77, 0x86, 0x2a, 0xa3, 0x76, + 0x68, 0x31, 0xad, 0x43, 0xbf, 0x13, 0x5a, 0x74, 0x83, 0xd1, 0xa4, 0xaa, 0x92, 0x3b, 0x43, 0x95, + 0x51, 0x87, 0xe4, 0x42, 0x31, 0x89, 0x67, 0x9c, 0x57, 0xbf, 0xa6, 0x01, 0x54, 0xc3, 0x27, 0x35, + 0x06, 0x13, 0x99, 0xb0, 0x80, 0xa0, 0xef, 0xad, 0xa1, 0xcb, 0x25, 0x99, 0x4a, 0x51, 0x1a, 0x79, + 0x08, 0x6f, 0x4e, 0x2b, 0x65, 0xe3, 0x7f, 0xa1, 0x41, 0x9e, 0xa3, 0x10, 0x42, 0x78, 0x6f, 0x40, + 0xd6, 0xc8, 0x85, 0x7a, 0x5a, 0x79, 0x7d, 0xcb, 0x26, 0xb9, 0x07, 0xa6, 0x90, 0x4e, 0x7e, 0x11, + 0x57, 0x16, 0x4d, 0xcb, 0xf4, 0xac, 0x01, 0x87, 0x0b, 0x87, 0x1e, 0x6e, 0xb8, 0x04, 0x85, 0x54, + 0x0f, 0x56, 0x3d, 0x91, 0x36, 0x97, 0x01, 0xdf, 0xd3, 0x16, 0x56, 0x2e, 0xc2, 0xe9, 0xba, 0xd3, + 0x8a, 0x56, 0xb1, 0xab, 0x7d, 0x9a, 0x35, 0x3b, 0xf6, 0xc1, 0x18, 0x86, 0xe9, 0xbe, 0xf3, 0xff, + 0x06, 0x00, 0x00, 0xff, 0xff, 0x7f, 0x92, 0x27, 0x01, 0x10, 0x26, 0x01, 0x00, } diff --git a/vendor/github.com/libopenstorage/openstorage-sdk-clients/sdk/golang/api.pb.gw.go b/vendor/github.com/libopenstorage/openstorage-sdk-clients/sdk/golang/api.pb.gw.go index 493bc99e..b2d88b21 100644 --- a/vendor/github.com/libopenstorage/openstorage-sdk-clients/sdk/golang/api.pb.gw.go +++ b/vendor/github.com/libopenstorage/openstorage-sdk-clients/sdk/golang/api.pb.gw.go @@ -1,5 +1,5 @@ // Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: api.proto +// source: api/api.proto /* Package api is a reverse proxy. @@ -151,6 +151,92 @@ func request_OpenStorageRole_Update_0(ctx context.Context, marshaler runtime.Mar } +func request_OpenStorageFilesystemTrim_Start_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageFilesystemTrimClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkFilesystemTrimStartRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Start(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +var ( + filter_OpenStorageFilesystemTrim_Status_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_OpenStorageFilesystemTrim_Status_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageFilesystemTrimClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkFilesystemTrimStatusRequest + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageFilesystemTrim_Status_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Status(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageFilesystemTrim_Stop_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageFilesystemTrimClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkFilesystemTrimStopRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Stop(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageFilesystemCheck_Start_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageFilesystemCheckClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkFilesystemCheckStartRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Start(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +var ( + filter_OpenStorageFilesystemCheck_Status_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_OpenStorageFilesystemCheck_Status_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageFilesystemCheckClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkFilesystemCheckStatusRequest + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageFilesystemCheck_Status_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Status(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageFilesystemCheck_Stop_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageFilesystemCheckClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkFilesystemCheckStopRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Stop(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + func request_OpenStorageIdentity_Capabilities_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageIdentityClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq SdkIdentityCapabilitiesRequest var metadata runtime.ServerMetadata @@ -401,8 +487,29 @@ func request_OpenStoragePool_Resize_0(ctx context.Context, marshaler runtime.Mar } -func request_OpenStorageNode_Inspect_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkNodeInspectRequest +var ( + filter_OpenStoragePool_Rebalance_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_OpenStoragePool_Rebalance_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStoragePoolClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkStorageRebalanceRequest + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStoragePool_Rebalance_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Rebalance(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +var ( + filter_OpenStoragePool_UpdateRebalanceJobState_0 = &utilities.DoubleArray{Encoding: map[string]int{"id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_OpenStoragePool_UpdateRebalanceJobState_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStoragePoolClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkUpdateRebalanceJobRequest var metadata runtime.ServerMetadata var ( @@ -412,79 +519,70 @@ func request_OpenStorageNode_Inspect_0(ctx context.Context, marshaler runtime.Ma _ = err ) - val, ok = pathParams["node_id"] + val, ok = pathParams["id"] if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "node_id") + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.NodeId, err = runtime.String(val) + protoReq.Id, err = runtime.String(val) if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "node_id", err) + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := client.Inspect(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func request_OpenStorageNode_InspectCurrent_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkNodeInspectCurrentRequest - var metadata runtime.ServerMetadata + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStoragePool_UpdateRebalanceJobState_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } - msg, err := client.InspectCurrent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.UpdateRebalanceJobState(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageNode_Enumerate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkNodeEnumerateRequest +func request_OpenStoragePool_GetRebalanceJobStatus_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStoragePoolClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkGetRebalanceJobStatusRequest var metadata runtime.ServerMetadata - msg, err := client.Enumerate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err + var ( + val string + ok bool + err error + _ = err + ) -} + val, ok = pathParams["id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") + } -func request_OpenStorageNode_EnumerateWithFilters_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkNodeEnumerateWithFiltersRequest - var metadata runtime.ServerMetadata + protoReq.Id, err = runtime.String(val) - msg, err := client.EnumerateWithFilters(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) + } + + msg, err := client.GetRebalanceJobStatus(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_Create_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeCreateRequest +func request_OpenStoragePool_EnumerateRebalanceJobs_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStoragePoolClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkEnumerateRebalanceJobsRequest var metadata runtime.ServerMetadata - if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.EnumerateRebalanceJobs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_Clone_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeCloneRequest +func request_OpenStorageJob_Update_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageJobClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkUpdateJobRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Clone(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func request_OpenStorageVolume_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeDeleteRequest - var metadata runtime.ServerMetadata - var ( val string ok bool @@ -492,28 +590,28 @@ func request_OpenStorageVolume_Delete_0(ctx context.Context, marshaler runtime.M _ = err ) - val, ok = pathParams["volume_id"] + val, ok = pathParams["id"] if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.VolumeId, err = runtime.String(val) + protoReq.Id, err = runtime.String(val) if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.Update(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } var ( - filter_OpenStorageVolume_Inspect_0 = &utilities.DoubleArray{Encoding: map[string]int{"volume_id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} + filter_OpenStorageJob_GetStatus_0 = &utilities.DoubleArray{Encoding: map[string]int{"id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} ) -func request_OpenStorageVolume_Inspect_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeInspectRequest +func request_OpenStorageJob_GetStatus_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageJobClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkGetJobStatusRequest var metadata runtime.ServerMetadata var ( @@ -523,47 +621,47 @@ func request_OpenStorageVolume_Inspect_0(ctx context.Context, marshaler runtime. _ = err ) - val, ok = pathParams["volume_id"] + val, ok = pathParams["id"] if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") } - protoReq.VolumeId, err = runtime.String(val) + protoReq.Id, err = runtime.String(val) if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) } - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageVolume_Inspect_0); err != nil { + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageJob_GetStatus_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Inspect(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.GetStatus(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_InspectWithFilters_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeInspectWithFiltersRequest +var ( + filter_OpenStorageJob_Enumerate_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_OpenStorageJob_Enumerate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageJobClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkEnumerateJobsRequest var metadata runtime.ServerMetadata - if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageJob_Enumerate_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.InspectWithFilters(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.Enumerate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_Update_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeUpdateRequest +func request_OpenStorageNode_Inspect_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkNodeInspectRequest var metadata runtime.ServerMetadata - if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - var ( val string ok bool @@ -571,28 +669,51 @@ func request_OpenStorageVolume_Update_0(ctx context.Context, marshaler runtime.M _ = err ) - val, ok = pathParams["volume_id"] + val, ok = pathParams["node_id"] if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "node_id") } - protoReq.VolumeId, err = runtime.String(val) + protoReq.NodeId, err = runtime.String(val) if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "node_id", err) } - msg, err := client.Update(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.Inspect(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -var ( - filter_OpenStorageVolume_Stats_0 = &utilities.DoubleArray{Encoding: map[string]int{"volume_id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} -) +func request_OpenStorageNode_InspectCurrent_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkNodeInspectCurrentRequest + var metadata runtime.ServerMetadata -func request_OpenStorageVolume_Stats_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeStatsRequest + msg, err := client.InspectCurrent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageNode_Enumerate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkNodeEnumerateRequest + var metadata runtime.ServerMetadata + + msg, err := client.Enumerate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageNode_EnumerateWithFilters_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkNodeEnumerateWithFiltersRequest + var metadata runtime.ServerMetadata + + msg, err := client.EnumerateWithFilters(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageNode_VolumeUsageByNode_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkNodeVolumeUsageByNodeRequest var metadata runtime.ServerMetadata var ( @@ -602,30 +723,30 @@ func request_OpenStorageVolume_Stats_0(ctx context.Context, marshaler runtime.Ma _ = err ) - val, ok = pathParams["volume_id"] + val, ok = pathParams["node_id"] if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "node_id") } - protoReq.VolumeId, err = runtime.String(val) + protoReq.NodeId, err = runtime.String(val) if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) - } - - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageVolume_Stats_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "node_id", err) } - msg, err := client.Stats(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.VolumeUsageByNode(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_CapacityUsage_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeCapacityUsageRequest +func request_OpenStorageNode_DrainAttachments_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkNodeDrainAttachmentsRequest var metadata runtime.ServerMetadata + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + var ( val string ok bool @@ -633,94 +754,144 @@ func request_OpenStorageVolume_CapacityUsage_0(ctx context.Context, marshaler ru _ = err ) - val, ok = pathParams["volume_id"] + val, ok = pathParams["node_id"] if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "node_id") } - protoReq.VolumeId, err = runtime.String(val) + protoReq.NodeId, err = runtime.String(val) if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "node_id", err) } - msg, err := client.CapacityUsage(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.DrainAttachments(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_Enumerate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeEnumerateRequest +func request_OpenStorageNode_CordonAttachments_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkNodeCordonAttachmentsRequest var metadata runtime.ServerMetadata - msg, err := client.Enumerate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["node_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "node_id") + } + + protoReq.NodeId, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "node_id", err) + } + + msg, err := client.CordonAttachments(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_EnumerateWithFilters_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeEnumerateWithFiltersRequest +func request_OpenStorageNode_UncordonAttachments_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageNodeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkNodeUncordonAttachmentsRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.EnumerateWithFilters(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["node_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "node_id") + } + + protoReq.NodeId, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "node_id", err) + } + + msg, err := client.UncordonAttachments(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_SnapshotCreate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeSnapshotCreateRequest +func request_OpenStorageVolume_Create_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeCreateRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.SnapshotCreate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_SnapshotRestore_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeSnapshotRestoreRequest +func request_OpenStorageVolume_Clone_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeCloneRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.SnapshotRestore(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.Clone(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -var ( - filter_OpenStorageVolume_SnapshotEnumerate_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} -) - -func request_OpenStorageVolume_SnapshotEnumerate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeSnapshotEnumerateRequest +func request_OpenStorageVolume_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeDeleteRequest var metadata runtime.ServerMetadata - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageVolume_SnapshotEnumerate_0); err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["volume_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") } - msg, err := client.SnapshotEnumerate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + protoReq.VolumeId, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_SnapshotEnumerateWithFilters_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeSnapshotEnumerateWithFiltersRequest - var metadata runtime.ServerMetadata +var ( + filter_OpenStorageVolume_Inspect_0 = &utilities.DoubleArray{Encoding: map[string]int{"volume_id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) - if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } +func request_OpenStorageVolume_Inspect_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeInspectRequest + var metadata runtime.ServerMetadata var ( val string @@ -740,13 +911,30 @@ func request_OpenStorageVolume_SnapshotEnumerateWithFilters_0(ctx context.Contex return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) } - msg, err := client.SnapshotEnumerateWithFilters(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageVolume_Inspect_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Inspect(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageVolume_SnapshotScheduleUpdate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeSnapshotScheduleUpdateRequest +func request_OpenStorageVolume_InspectWithFilters_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeInspectWithFiltersRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.InspectWithFilters(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageVolume_Update_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeUpdateRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { @@ -771,110 +959,146 @@ func request_OpenStorageVolume_SnapshotScheduleUpdate_0(ctx context.Context, mar return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) } - msg, err := client.SnapshotScheduleUpdate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.Update(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageMountAttach_Attach_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMountAttachClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeAttachRequest +var ( + filter_OpenStorageVolume_Stats_0 = &utilities.DoubleArray{Encoding: map[string]int{"volume_id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} +) + +func request_OpenStorageVolume_Stats_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeStatsRequest var metadata runtime.ServerMetadata - if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["volume_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") + } + + protoReq.VolumeId, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) + } + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageVolume_Stats_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Attach(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.Stats(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageMountAttach_Detach_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMountAttachClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeDetachRequest +func request_OpenStorageVolume_CapacityUsage_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeCapacityUsageRequest var metadata runtime.ServerMetadata - if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["volume_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") } - msg, err := client.Detach(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + protoReq.VolumeId, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) + } + + msg, err := client.CapacityUsage(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageMountAttach_Mount_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMountAttachClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeMountRequest +func request_OpenStorageVolume_Enumerate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeEnumerateRequest var metadata runtime.ServerMetadata - if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.Mount(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.Enumerate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageMountAttach_Unmount_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMountAttachClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkVolumeUnmountRequest +func request_OpenStorageVolume_EnumerateWithFilters_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeEnumerateWithFiltersRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Unmount(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.EnumerateWithFilters(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageMigrate_Start_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMigrateClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkCloudMigrateStartRequest +func request_OpenStorageVolume_SnapshotCreate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeSnapshotCreateRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Start(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.SnapshotCreate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageMigrate_Cancel_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMigrateClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkCloudMigrateCancelRequest +func request_OpenStorageVolume_SnapshotRestore_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeSnapshotRestoreRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Cancel(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.SnapshotRestore(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } var ( - filter_OpenStorageMigrate_Status_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} + filter_OpenStorageVolume_SnapshotEnumerate_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) -func request_OpenStorageMigrate_Status_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMigrateClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkCloudMigrateStatusRequest +func request_OpenStorageVolume_SnapshotEnumerate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeSnapshotEnumerateRequest var metadata runtime.ServerMetadata - if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageMigrate_Status_0); err != nil { + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageVolume_SnapshotEnumerate_0); err != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Status(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.SnapshotEnumerate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageObjectstore_Inspect_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageObjectstoreClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkObjectstoreInspectRequest +func request_OpenStorageVolume_SnapshotEnumerateWithFilters_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeSnapshotEnumerateWithFiltersRequest var metadata runtime.ServerMetadata + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + var ( val string ok bool @@ -882,39 +1106,30 @@ func request_OpenStorageObjectstore_Inspect_0(ctx context.Context, marshaler run _ = err ) - val, ok = pathParams["objectstore_id"] + val, ok = pathParams["volume_id"] if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "objectstore_id") + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") } - protoReq.ObjectstoreId, err = runtime.String(val) + protoReq.VolumeId, err = runtime.String(val) if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "objectstore_id", err) + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) } - msg, err := client.Inspect(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.SnapshotEnumerateWithFilters(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageObjectstore_Create_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageObjectstoreClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkObjectstoreCreateRequest +func request_OpenStorageVolume_SnapshotScheduleUpdate_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeSnapshotScheduleUpdateRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func request_OpenStorageObjectstore_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageObjectstoreClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkObjectstoreDeleteRequest - var metadata runtime.ServerMetadata - var ( val string ok bool @@ -922,24 +1137,199 @@ func request_OpenStorageObjectstore_Delete_0(ctx context.Context, marshaler runt _ = err ) - val, ok = pathParams["objectstore_id"] + val, ok = pathParams["volume_id"] if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "objectstore_id") + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "volume_id") } - protoReq.ObjectstoreId, err = runtime.String(val) + protoReq.VolumeId, err = runtime.String(val) if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "objectstore_id", err) + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "volume_id", err) } - msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.SnapshotScheduleUpdate(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_OpenStorageObjectstore_Update_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageObjectstoreClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq SdkObjectstoreUpdateRequest +func request_OpenStorageVolume_VolumeCatalog_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageVolumeClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeCatalogRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.VolumeCatalog(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageMountAttach_Attach_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMountAttachClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeAttachRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Attach(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageMountAttach_Detach_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMountAttachClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeDetachRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Detach(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageMountAttach_Mount_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMountAttachClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeMountRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Mount(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageMountAttach_Unmount_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMountAttachClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkVolumeUnmountRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Unmount(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageMigrate_Start_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMigrateClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkCloudMigrateStartRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Start(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageMigrate_Cancel_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMigrateClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkCloudMigrateCancelRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Cancel(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +var ( + filter_OpenStorageMigrate_Status_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_OpenStorageMigrate_Status_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageMigrateClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkCloudMigrateStatusRequest + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageMigrate_Status_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Status(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageObjectstore_Inspect_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageObjectstoreClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkObjectstoreInspectRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["objectstore_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "objectstore_id") + } + + protoReq.ObjectstoreId, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "objectstore_id", err) + } + + msg, err := client.Inspect(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageObjectstore_Create_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageObjectstoreClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkObjectstoreCreateRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Create(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageObjectstore_Delete_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageObjectstoreClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkObjectstoreDeleteRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["objectstore_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "objectstore_id") + } + + protoReq.ObjectstoreId, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "objectstore_id", err) + } + + msg, err := client.Delete(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func request_OpenStorageObjectstore_Update_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageObjectstoreClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkObjectstoreUpdateRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { @@ -1072,6 +1462,33 @@ func request_OpenStorageCredentials_Validate_0(ctx context.Context, marshaler ru } +func request_OpenStorageCredentials_DeleteReferences_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageCredentialsClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkCredentialDeleteReferencesRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["credential_id"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "credential_id") + } + + protoReq.CredentialId, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "credential_id", err) + } + + msg, err := client.DeleteReferences(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + func request_OpenStorageSchedulePolicy_Create_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageSchedulePolicyClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq SdkSchedulePolicyCreateRequest var metadata runtime.ServerMetadata @@ -1389,6 +1806,23 @@ func request_OpenStorageCloudBackup_SchedEnumerate_0(ctx context.Context, marsha } +var ( + filter_OpenStorageCloudBackup_Size_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} +) + +func request_OpenStorageCloudBackup_Size_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStorageCloudBackupClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq SdkCloudBackupSizeRequest + var metadata runtime.ServerMetadata + + if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_OpenStorageCloudBackup_Size_0); err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Size(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + func request_OpenStoragePolicy_Create_0(ctx context.Context, marshaler runtime.Marshaler, client OpenStoragePolicyClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq SdkOpenStoragePolicyCreateRequest var metadata runtime.ServerMetadata @@ -1522,18 +1956,738 @@ func request_OpenStoragePolicy_Release_0(ctx context.Context, marshaler runtime. var protoReq SdkOpenStoragePolicyReleaseRequest var metadata runtime.ServerMetadata - if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Release(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +// RegisterOpenStorageAlertsHandlerFromEndpoint is same as RegisterOpenStorageAlertsHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterOpenStorageAlertsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterOpenStorageAlertsHandler(ctx, mux, conn) +} + +// RegisterOpenStorageAlertsHandler registers the http handlers for service OpenStorageAlerts to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterOpenStorageAlertsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageAlertsHandlerClient(ctx, mux, NewOpenStorageAlertsClient(conn)) +} + +// RegisterOpenStorageAlertsHandler registers the http handlers for service OpenStorageAlerts to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageAlertsClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageAlertsClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "OpenStorageAlertsClient" to call the correct interceptors. +func RegisterOpenStorageAlertsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageAlertsClient) error { + + mux.Handle("POST", pattern_OpenStorageAlerts_EnumerateWithFilters_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageAlerts_EnumerateWithFilters_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageAlerts_EnumerateWithFilters_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_OpenStorageAlerts_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageAlerts_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageAlerts_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_OpenStorageAlerts_EnumerateWithFilters_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "alerts", "filters"}, "")) + + pattern_OpenStorageAlerts_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "alerts"}, "")) +) + +var ( + forward_OpenStorageAlerts_EnumerateWithFilters_0 = runtime.ForwardResponseStream + + forward_OpenStorageAlerts_Delete_0 = runtime.ForwardResponseMessage +) + +// RegisterOpenStorageRoleHandlerFromEndpoint is same as RegisterOpenStorageRoleHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterOpenStorageRoleHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterOpenStorageRoleHandler(ctx, mux, conn) +} + +// RegisterOpenStorageRoleHandler registers the http handlers for service OpenStorageRole to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterOpenStorageRoleHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageRoleHandlerClient(ctx, mux, NewOpenStorageRoleClient(conn)) +} + +// RegisterOpenStorageRoleHandler registers the http handlers for service OpenStorageRole to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageRoleClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageRoleClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "OpenStorageRoleClient" to call the correct interceptors. +func RegisterOpenStorageRoleHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageRoleClient) error { + + mux.Handle("POST", pattern_OpenStorageRole_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageRole_Create_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageRole_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_OpenStorageRole_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageRole_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageRole_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_OpenStorageRole_Inspect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageRole_Inspect_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageRole_Inspect_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_OpenStorageRole_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageRole_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageRole_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("PUT", pattern_OpenStorageRole_Update_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageRole_Update_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageRole_Update_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_OpenStorageRole_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "roles"}, "")) + + pattern_OpenStorageRole_Enumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "roles"}, "")) + + pattern_OpenStorageRole_Inspect_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "roles", "inspect", "name"}, "")) + + pattern_OpenStorageRole_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "roles", "name"}, "")) + + pattern_OpenStorageRole_Update_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "roles"}, "")) +) + +var ( + forward_OpenStorageRole_Create_0 = runtime.ForwardResponseMessage + + forward_OpenStorageRole_Enumerate_0 = runtime.ForwardResponseMessage + + forward_OpenStorageRole_Inspect_0 = runtime.ForwardResponseMessage + + forward_OpenStorageRole_Delete_0 = runtime.ForwardResponseMessage + + forward_OpenStorageRole_Update_0 = runtime.ForwardResponseMessage +) + +// RegisterOpenStorageFilesystemTrimHandlerFromEndpoint is same as RegisterOpenStorageFilesystemTrimHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterOpenStorageFilesystemTrimHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterOpenStorageFilesystemTrimHandler(ctx, mux, conn) +} + +// RegisterOpenStorageFilesystemTrimHandler registers the http handlers for service OpenStorageFilesystemTrim to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterOpenStorageFilesystemTrimHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageFilesystemTrimHandlerClient(ctx, mux, NewOpenStorageFilesystemTrimClient(conn)) +} + +// RegisterOpenStorageFilesystemTrimHandler registers the http handlers for service OpenStorageFilesystemTrim to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageFilesystemTrimClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageFilesystemTrimClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "OpenStorageFilesystemTrimClient" to call the correct interceptors. +func RegisterOpenStorageFilesystemTrimHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageFilesystemTrimClient) error { + + mux.Handle("POST", pattern_OpenStorageFilesystemTrim_Start_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageFilesystemTrim_Start_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageFilesystemTrim_Start_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_OpenStorageFilesystemTrim_Status_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageFilesystemTrim_Status_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageFilesystemTrim_Status_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_OpenStorageFilesystemTrim_Stop_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageFilesystemTrim_Stop_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageFilesystemTrim_Stop_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_OpenStorageFilesystemTrim_Start_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "filesystem-trim", "start"}, "")) + + pattern_OpenStorageFilesystemTrim_Status_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "filesystem-trim", "status"}, "")) + + pattern_OpenStorageFilesystemTrim_Stop_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "filesystem-trim", "stop"}, "")) +) + +var ( + forward_OpenStorageFilesystemTrim_Start_0 = runtime.ForwardResponseMessage + + forward_OpenStorageFilesystemTrim_Status_0 = runtime.ForwardResponseMessage + + forward_OpenStorageFilesystemTrim_Stop_0 = runtime.ForwardResponseMessage +) + +// RegisterOpenStorageFilesystemCheckHandlerFromEndpoint is same as RegisterOpenStorageFilesystemCheckHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterOpenStorageFilesystemCheckHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterOpenStorageFilesystemCheckHandler(ctx, mux, conn) +} + +// RegisterOpenStorageFilesystemCheckHandler registers the http handlers for service OpenStorageFilesystemCheck to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterOpenStorageFilesystemCheckHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageFilesystemCheckHandlerClient(ctx, mux, NewOpenStorageFilesystemCheckClient(conn)) +} + +// RegisterOpenStorageFilesystemCheckHandler registers the http handlers for service OpenStorageFilesystemCheck to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageFilesystemCheckClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageFilesystemCheckClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "OpenStorageFilesystemCheckClient" to call the correct interceptors. +func RegisterOpenStorageFilesystemCheckHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageFilesystemCheckClient) error { + + mux.Handle("POST", pattern_OpenStorageFilesystemCheck_Start_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageFilesystemCheck_Start_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageFilesystemCheck_Start_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_OpenStorageFilesystemCheck_Status_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageFilesystemCheck_Status_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageFilesystemCheck_Status_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_OpenStorageFilesystemCheck_Stop_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageFilesystemCheck_Stop_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageFilesystemCheck_Stop_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_OpenStorageFilesystemCheck_Start_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "filesystem-check", "start"}, "")) + + pattern_OpenStorageFilesystemCheck_Status_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "filesystem-check", "status"}, "")) + + pattern_OpenStorageFilesystemCheck_Stop_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "filesystem-check", "stop"}, "")) +) + +var ( + forward_OpenStorageFilesystemCheck_Start_0 = runtime.ForwardResponseMessage + + forward_OpenStorageFilesystemCheck_Status_0 = runtime.ForwardResponseMessage + + forward_OpenStorageFilesystemCheck_Stop_0 = runtime.ForwardResponseMessage +) + +// RegisterOpenStorageIdentityHandlerFromEndpoint is same as RegisterOpenStorageIdentityHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterOpenStorageIdentityHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterOpenStorageIdentityHandler(ctx, mux, conn) +} + +// RegisterOpenStorageIdentityHandler registers the http handlers for service OpenStorageIdentity to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterOpenStorageIdentityHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageIdentityHandlerClient(ctx, mux, NewOpenStorageIdentityClient(conn)) +} + +// RegisterOpenStorageIdentityHandler registers the http handlers for service OpenStorageIdentity to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageIdentityClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageIdentityClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "OpenStorageIdentityClient" to call the correct interceptors. +func RegisterOpenStorageIdentityHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageIdentityClient) error { + + mux.Handle("GET", pattern_OpenStorageIdentity_Capabilities_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageIdentity_Capabilities_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageIdentity_Capabilities_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_OpenStorageIdentity_Version_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageIdentity_Version_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageIdentity_Version_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_OpenStorageIdentity_Capabilities_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "identities", "capabilities"}, "")) + + pattern_OpenStorageIdentity_Version_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "identities", "version"}, "")) +) - msg, err := client.Release(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err +var ( + forward_OpenStorageIdentity_Capabilities_0 = runtime.ForwardResponseMessage -} + forward_OpenStorageIdentity_Version_0 = runtime.ForwardResponseMessage +) -// RegisterOpenStorageAlertsHandlerFromEndpoint is same as RegisterOpenStorageAlertsHandler but +// RegisterOpenStorageClusterHandlerFromEndpoint is same as RegisterOpenStorageClusterHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterOpenStorageAlertsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { +func RegisterOpenStorageClusterHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { conn, err := grpc.Dial(endpoint, opts...) if err != nil { return err @@ -1553,52 +2707,23 @@ func RegisterOpenStorageAlertsHandlerFromEndpoint(ctx context.Context, mux *runt }() }() - return RegisterOpenStorageAlertsHandler(ctx, mux, conn) + return RegisterOpenStorageClusterHandler(ctx, mux, conn) } -// RegisterOpenStorageAlertsHandler registers the http handlers for service OpenStorageAlerts to "mux". +// RegisterOpenStorageClusterHandler registers the http handlers for service OpenStorageCluster to "mux". // The handlers forward requests to the grpc endpoint over "conn". -func RegisterOpenStorageAlertsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterOpenStorageAlertsHandlerClient(ctx, mux, NewOpenStorageAlertsClient(conn)) +func RegisterOpenStorageClusterHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageClusterHandlerClient(ctx, mux, NewOpenStorageClusterClient(conn)) } -// RegisterOpenStorageAlertsHandler registers the http handlers for service OpenStorageAlerts to "mux". -// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageAlertsClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageAlertsClient" +// RegisterOpenStorageClusterHandler registers the http handlers for service OpenStorageCluster to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageClusterClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageClusterClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "OpenStorageAlertsClient" to call the correct interceptors. -func RegisterOpenStorageAlertsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageAlertsClient) error { - - mux.Handle("POST", pattern_OpenStorageAlerts_EnumerateWithFilters_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - if cn, ok := w.(http.CloseNotifier); ok { - go func(done <-chan struct{}, closed <-chan bool) { - select { - case <-done: - case <-closed: - cancel() - } - }(ctx.Done(), cn.CloseNotify()) - } - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_OpenStorageAlerts_EnumerateWithFilters_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_OpenStorageAlerts_EnumerateWithFilters_0(ctx, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) - - }) +// "OpenStorageClusterClient" to call the correct interceptors. +func RegisterOpenStorageClusterHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageClusterClient) error { - mux.Handle("POST", pattern_OpenStorageAlerts_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageCluster_InspectCurrent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1616,14 +2741,14 @@ func RegisterOpenStorageAlertsHandlerClient(ctx context.Context, mux *runtime.Se runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageAlerts_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageCluster_InspectCurrent_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageAlerts_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageCluster_InspectCurrent_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -1631,20 +2756,16 @@ func RegisterOpenStorageAlertsHandlerClient(ctx context.Context, mux *runtime.Se } var ( - pattern_OpenStorageAlerts_EnumerateWithFilters_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "alerts", "filters"}, "")) - - pattern_OpenStorageAlerts_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "alerts"}, "")) + pattern_OpenStorageCluster_InspectCurrent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "clusters", "inspectcurrent"}, "")) ) var ( - forward_OpenStorageAlerts_EnumerateWithFilters_0 = runtime.ForwardResponseStream - - forward_OpenStorageAlerts_Delete_0 = runtime.ForwardResponseMessage + forward_OpenStorageCluster_InspectCurrent_0 = runtime.ForwardResponseMessage ) -// RegisterOpenStorageRoleHandlerFromEndpoint is same as RegisterOpenStorageRoleHandler but +// RegisterOpenStorageClusterPairHandlerFromEndpoint is same as RegisterOpenStorageClusterPairHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterOpenStorageRoleHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { +func RegisterOpenStorageClusterPairHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { conn, err := grpc.Dial(endpoint, opts...) if err != nil { return err @@ -1664,23 +2785,23 @@ func RegisterOpenStorageRoleHandlerFromEndpoint(ctx context.Context, mux *runtim }() }() - return RegisterOpenStorageRoleHandler(ctx, mux, conn) + return RegisterOpenStorageClusterPairHandler(ctx, mux, conn) } -// RegisterOpenStorageRoleHandler registers the http handlers for service OpenStorageRole to "mux". +// RegisterOpenStorageClusterPairHandler registers the http handlers for service OpenStorageClusterPair to "mux". // The handlers forward requests to the grpc endpoint over "conn". -func RegisterOpenStorageRoleHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterOpenStorageRoleHandlerClient(ctx, mux, NewOpenStorageRoleClient(conn)) +func RegisterOpenStorageClusterPairHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageClusterPairHandlerClient(ctx, mux, NewOpenStorageClusterPairClient(conn)) } -// RegisterOpenStorageRoleHandler registers the http handlers for service OpenStorageRole to "mux". -// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageRoleClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageRoleClient" +// RegisterOpenStorageClusterPairHandler registers the http handlers for service OpenStorageClusterPair to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageClusterPairClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageClusterPairClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "OpenStorageRoleClient" to call the correct interceptors. -func RegisterOpenStorageRoleHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageRoleClient) error { +// "OpenStorageClusterPairClient" to call the correct interceptors. +func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageClusterPairClient) error { - mux.Handle("POST", pattern_OpenStorageRole_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_OpenStorageClusterPair_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1698,18 +2819,18 @@ func RegisterOpenStorageRoleHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageRole_Create_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageClusterPair_Create_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageRole_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageClusterPair_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageRole_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageClusterPair_Inspect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1727,18 +2848,18 @@ func RegisterOpenStorageRoleHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageRole_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageClusterPair_Inspect_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageRole_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageClusterPair_Inspect_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageRole_Inspect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageClusterPair_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1756,18 +2877,18 @@ func RegisterOpenStorageRoleHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageRole_Inspect_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageClusterPair_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageRole_Inspect_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageClusterPair_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("DELETE", pattern_OpenStorageRole_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageClusterPair_GetToken_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1785,18 +2906,18 @@ func RegisterOpenStorageRoleHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageRole_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageClusterPair_GetToken_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageRole_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageClusterPair_GetToken_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("PUT", pattern_OpenStorageRole_Update_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_OpenStorageClusterPair_ResetToken_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1814,14 +2935,43 @@ func RegisterOpenStorageRoleHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageRole_Update_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageClusterPair_ResetToken_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageRole_Update_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageClusterPair_ResetToken_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("DELETE", pattern_OpenStorageClusterPair_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageClusterPair_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageClusterPair_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -1829,32 +2979,36 @@ func RegisterOpenStorageRoleHandlerClient(ctx context.Context, mux *runtime.Serv } var ( - pattern_OpenStorageRole_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "roles"}, "")) + pattern_OpenStorageClusterPair_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "clusterpairs"}, "")) - pattern_OpenStorageRole_Enumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "roles"}, "")) + pattern_OpenStorageClusterPair_Inspect_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "clusterpairs", "inspect", "id"}, "")) - pattern_OpenStorageRole_Inspect_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "roles", "inspect", "name"}, "")) + pattern_OpenStorageClusterPair_Enumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "clusterpairs"}, "")) - pattern_OpenStorageRole_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "roles", "name"}, "")) + pattern_OpenStorageClusterPair_GetToken_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "clusterpairs", "token"}, "")) - pattern_OpenStorageRole_Update_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "roles"}, "")) + pattern_OpenStorageClusterPair_ResetToken_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "clusterpairs", "token"}, "")) + + pattern_OpenStorageClusterPair_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "clusterpairs", "cluster_id"}, "")) ) var ( - forward_OpenStorageRole_Create_0 = runtime.ForwardResponseMessage + forward_OpenStorageClusterPair_Create_0 = runtime.ForwardResponseMessage - forward_OpenStorageRole_Enumerate_0 = runtime.ForwardResponseMessage + forward_OpenStorageClusterPair_Inspect_0 = runtime.ForwardResponseMessage - forward_OpenStorageRole_Inspect_0 = runtime.ForwardResponseMessage + forward_OpenStorageClusterPair_Enumerate_0 = runtime.ForwardResponseMessage - forward_OpenStorageRole_Delete_0 = runtime.ForwardResponseMessage + forward_OpenStorageClusterPair_GetToken_0 = runtime.ForwardResponseMessage - forward_OpenStorageRole_Update_0 = runtime.ForwardResponseMessage + forward_OpenStorageClusterPair_ResetToken_0 = runtime.ForwardResponseMessage + + forward_OpenStorageClusterPair_Delete_0 = runtime.ForwardResponseMessage ) -// RegisterOpenStorageIdentityHandlerFromEndpoint is same as RegisterOpenStorageIdentityHandler but +// RegisterOpenStorageClusterDomainsHandlerFromEndpoint is same as RegisterOpenStorageClusterDomainsHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterOpenStorageIdentityHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { +func RegisterOpenStorageClusterDomainsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { conn, err := grpc.Dial(endpoint, opts...) if err != nil { return err @@ -1874,23 +3028,81 @@ func RegisterOpenStorageIdentityHandlerFromEndpoint(ctx context.Context, mux *ru }() }() - return RegisterOpenStorageIdentityHandler(ctx, mux, conn) + return RegisterOpenStorageClusterDomainsHandler(ctx, mux, conn) } -// RegisterOpenStorageIdentityHandler registers the http handlers for service OpenStorageIdentity to "mux". +// RegisterOpenStorageClusterDomainsHandler registers the http handlers for service OpenStorageClusterDomains to "mux". // The handlers forward requests to the grpc endpoint over "conn". -func RegisterOpenStorageIdentityHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterOpenStorageIdentityHandlerClient(ctx, mux, NewOpenStorageIdentityClient(conn)) +func RegisterOpenStorageClusterDomainsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageClusterDomainsHandlerClient(ctx, mux, NewOpenStorageClusterDomainsClient(conn)) } -// RegisterOpenStorageIdentityHandler registers the http handlers for service OpenStorageIdentity to "mux". -// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageIdentityClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageIdentityClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "OpenStorageIdentityClient" to call the correct interceptors. -func RegisterOpenStorageIdentityHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageIdentityClient) error { +// RegisterOpenStorageClusterDomainsHandler registers the http handlers for service OpenStorageClusterDomains to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageClusterDomainsClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageClusterDomainsClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "OpenStorageClusterDomainsClient" to call the correct interceptors. +func RegisterOpenStorageClusterDomainsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageClusterDomainsClient) error { + + mux.Handle("GET", pattern_OpenStorageClusterDomains_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageClusterDomains_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageClusterDomains_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("GET", pattern_OpenStorageClusterDomains_Inspect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageClusterDomains_Inspect_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageClusterDomains_Inspect_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) - mux.Handle("GET", pattern_OpenStorageIdentity_Capabilities_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_OpenStorageClusterDomains_Activate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1908,18 +3120,18 @@ func RegisterOpenStorageIdentityHandlerClient(ctx context.Context, mux *runtime. runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageIdentity_Capabilities_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageClusterDomains_Activate_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageIdentity_Capabilities_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageClusterDomains_Activate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageIdentity_Version_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_OpenStorageClusterDomains_Deactivate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -1937,14 +3149,14 @@ func RegisterOpenStorageIdentityHandlerClient(ctx context.Context, mux *runtime. runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageIdentity_Version_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageClusterDomains_Deactivate_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageIdentity_Version_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageClusterDomains_Deactivate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -1952,20 +3164,28 @@ func RegisterOpenStorageIdentityHandlerClient(ctx context.Context, mux *runtime. } var ( - pattern_OpenStorageIdentity_Capabilities_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "identities", "capabilities"}, "")) + pattern_OpenStorageClusterDomains_Enumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "clusterdomains"}, "")) - pattern_OpenStorageIdentity_Version_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "identities", "version"}, "")) + pattern_OpenStorageClusterDomains_Inspect_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "clusterdomains", "inspect", "cluster_domain_name"}, "")) + + pattern_OpenStorageClusterDomains_Activate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "clusterdomains", "activate", "cluster_domain_name"}, "")) + + pattern_OpenStorageClusterDomains_Deactivate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "clusterdomains", "deactivate", "cluster_domain_name"}, "")) ) var ( - forward_OpenStorageIdentity_Capabilities_0 = runtime.ForwardResponseMessage + forward_OpenStorageClusterDomains_Enumerate_0 = runtime.ForwardResponseMessage - forward_OpenStorageIdentity_Version_0 = runtime.ForwardResponseMessage + forward_OpenStorageClusterDomains_Inspect_0 = runtime.ForwardResponseMessage + + forward_OpenStorageClusterDomains_Activate_0 = runtime.ForwardResponseMessage + + forward_OpenStorageClusterDomains_Deactivate_0 = runtime.ForwardResponseMessage ) -// RegisterOpenStorageClusterHandlerFromEndpoint is same as RegisterOpenStorageClusterHandler but +// RegisterOpenStoragePoolHandlerFromEndpoint is same as RegisterOpenStoragePoolHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterOpenStorageClusterHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { +func RegisterOpenStoragePoolHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { conn, err := grpc.Dial(endpoint, opts...) if err != nil { return err @@ -1985,23 +3205,23 @@ func RegisterOpenStorageClusterHandlerFromEndpoint(ctx context.Context, mux *run }() }() - return RegisterOpenStorageClusterHandler(ctx, mux, conn) + return RegisterOpenStoragePoolHandler(ctx, mux, conn) } -// RegisterOpenStorageClusterHandler registers the http handlers for service OpenStorageCluster to "mux". +// RegisterOpenStoragePoolHandler registers the http handlers for service OpenStoragePool to "mux". // The handlers forward requests to the grpc endpoint over "conn". -func RegisterOpenStorageClusterHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterOpenStorageClusterHandlerClient(ctx, mux, NewOpenStorageClusterClient(conn)) +func RegisterOpenStoragePoolHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStoragePoolHandlerClient(ctx, mux, NewOpenStoragePoolClient(conn)) } -// RegisterOpenStorageClusterHandler registers the http handlers for service OpenStorageCluster to "mux". -// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageClusterClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageClusterClient" +// RegisterOpenStoragePoolHandler registers the http handlers for service OpenStoragePool to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStoragePoolClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStoragePoolClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "OpenStorageClusterClient" to call the correct interceptors. -func RegisterOpenStorageClusterHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageClusterClient) error { +// "OpenStoragePoolClient" to call the correct interceptors. +func RegisterOpenStoragePoolHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStoragePoolClient) error { - mux.Handle("GET", pattern_OpenStorageCluster_InspectCurrent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("PUT", pattern_OpenStoragePool_Resize_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2019,67 +3239,47 @@ func RegisterOpenStorageClusterHandlerClient(ctx context.Context, mux *runtime.S runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageCluster_InspectCurrent_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStoragePool_Resize_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageCluster_InspectCurrent_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStoragePool_Resize_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - return nil -} - -var ( - pattern_OpenStorageCluster_InspectCurrent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "clusters", "inspectcurrent"}, "")) -) - -var ( - forward_OpenStorageCluster_InspectCurrent_0 = runtime.ForwardResponseMessage -) - -// RegisterOpenStorageClusterPairHandlerFromEndpoint is same as RegisterOpenStorageClusterPairHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterOpenStorageClusterPairHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { + mux.Handle("PUT", pattern_OpenStoragePool_Rebalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) - } + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStoragePool_Rebalance_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterOpenStorageClusterPairHandler(ctx, mux, conn) -} -// RegisterOpenStorageClusterPairHandler registers the http handlers for service OpenStorageClusterPair to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterOpenStorageClusterPairHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterOpenStorageClusterPairHandlerClient(ctx, mux, NewOpenStorageClusterPairClient(conn)) -} + forward_OpenStoragePool_Rebalance_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) -// RegisterOpenStorageClusterPairHandler registers the http handlers for service OpenStorageClusterPair to "mux". -// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageClusterPairClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageClusterPairClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "OpenStorageClusterPairClient" to call the correct interceptors. -func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageClusterPairClient) error { + }) - mux.Handle("POST", pattern_OpenStorageClusterPair_Create_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("PUT", pattern_OpenStoragePool_UpdateRebalanceJobState_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2097,18 +3297,18 @@ func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runti runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterPair_Create_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStoragePool_UpdateRebalanceJobState_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterPair_Create_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStoragePool_UpdateRebalanceJobState_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageClusterPair_Inspect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStoragePool_GetRebalanceJobStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2126,18 +3326,18 @@ func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runti runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterPair_Inspect_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStoragePool_GetRebalanceJobStatus_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterPair_Inspect_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStoragePool_GetRebalanceJobStatus_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageClusterPair_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStoragePool_EnumerateRebalanceJobs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2155,18 +3355,83 @@ func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runti runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterPair_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStoragePool_EnumerateRebalanceJobs_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterPair_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStoragePool_EnumerateRebalanceJobs_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageClusterPair_GetToken_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + return nil +} + +var ( + pattern_OpenStoragePool_Resize_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "storagepools", "resize", "uuid"}, "")) + + pattern_OpenStoragePool_Rebalance_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "storagepools", "rebalance"}, "")) + + pattern_OpenStoragePool_UpdateRebalanceJobState_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "storagepools", "rebalance", "job", "id"}, "")) + + pattern_OpenStoragePool_GetRebalanceJobStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "storagepools", "rebalance", "job", "id"}, "")) + + pattern_OpenStoragePool_EnumerateRebalanceJobs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "storagepools", "rebalance", "job"}, "")) +) + +var ( + forward_OpenStoragePool_Resize_0 = runtime.ForwardResponseMessage + + forward_OpenStoragePool_Rebalance_0 = runtime.ForwardResponseMessage + + forward_OpenStoragePool_UpdateRebalanceJobState_0 = runtime.ForwardResponseMessage + + forward_OpenStoragePool_GetRebalanceJobStatus_0 = runtime.ForwardResponseMessage + + forward_OpenStoragePool_EnumerateRebalanceJobs_0 = runtime.ForwardResponseMessage +) + +// RegisterOpenStorageJobHandlerFromEndpoint is same as RegisterOpenStorageJobHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterOpenStorageJobHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.Dial(endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterOpenStorageJobHandler(ctx, mux, conn) +} + +// RegisterOpenStorageJobHandler registers the http handlers for service OpenStorageJob to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterOpenStorageJobHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageJobHandlerClient(ctx, mux, NewOpenStorageJobClient(conn)) +} + +// RegisterOpenStorageJobHandler registers the http handlers for service OpenStorageJob to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageJobClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageJobClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "OpenStorageJobClient" to call the correct interceptors. +func RegisterOpenStorageJobHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageJobClient) error { + + mux.Handle("PUT", pattern_OpenStorageJob_Update_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2184,18 +3449,18 @@ func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runti runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterPair_GetToken_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageJob_Update_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterPair_GetToken_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageJob_Update_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_OpenStorageClusterPair_ResetToken_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageJob_GetStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2213,18 +3478,18 @@ func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runti runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterPair_ResetToken_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageJob_GetStatus_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterPair_ResetToken_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageJob_GetStatus_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("DELETE", pattern_OpenStorageClusterPair_Delete_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageJob_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2242,14 +3507,14 @@ func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runti runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterPair_Delete_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageJob_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterPair_Delete_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageJob_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -2257,36 +3522,24 @@ func RegisterOpenStorageClusterPairHandlerClient(ctx context.Context, mux *runti } var ( - pattern_OpenStorageClusterPair_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "clusterpairs"}, "")) + pattern_OpenStorageJob_Update_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "jobs", "id"}, "")) - pattern_OpenStorageClusterPair_Inspect_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "clusterpairs", "inspect", "id"}, "")) - - pattern_OpenStorageClusterPair_Enumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "clusterpairs"}, "")) - - pattern_OpenStorageClusterPair_GetToken_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "clusterpairs", "token"}, "")) - - pattern_OpenStorageClusterPair_ResetToken_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "clusterpairs", "token"}, "")) + pattern_OpenStorageJob_GetStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "jobs", "id"}, "")) - pattern_OpenStorageClusterPair_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "clusterpairs", "cluster_id"}, "")) + pattern_OpenStorageJob_Enumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "jobs"}, "")) ) var ( - forward_OpenStorageClusterPair_Create_0 = runtime.ForwardResponseMessage - - forward_OpenStorageClusterPair_Inspect_0 = runtime.ForwardResponseMessage - - forward_OpenStorageClusterPair_Enumerate_0 = runtime.ForwardResponseMessage - - forward_OpenStorageClusterPair_GetToken_0 = runtime.ForwardResponseMessage + forward_OpenStorageJob_Update_0 = runtime.ForwardResponseMessage - forward_OpenStorageClusterPair_ResetToken_0 = runtime.ForwardResponseMessage + forward_OpenStorageJob_GetStatus_0 = runtime.ForwardResponseMessage - forward_OpenStorageClusterPair_Delete_0 = runtime.ForwardResponseMessage + forward_OpenStorageJob_Enumerate_0 = runtime.ForwardResponseMessage ) -// RegisterOpenStorageClusterDomainsHandlerFromEndpoint is same as RegisterOpenStorageClusterDomainsHandler but +// RegisterOpenStorageNodeHandlerFromEndpoint is same as RegisterOpenStorageNodeHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterOpenStorageClusterDomainsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { +func RegisterOpenStorageNodeHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { conn, err := grpc.Dial(endpoint, opts...) if err != nil { return err @@ -2303,55 +3556,26 @@ func RegisterOpenStorageClusterDomainsHandlerFromEndpoint(ctx context.Context, m if cerr := conn.Close(); cerr != nil { grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) } - }() - }() - - return RegisterOpenStorageClusterDomainsHandler(ctx, mux, conn) -} - -// RegisterOpenStorageClusterDomainsHandler registers the http handlers for service OpenStorageClusterDomains to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterOpenStorageClusterDomainsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterOpenStorageClusterDomainsHandlerClient(ctx, mux, NewOpenStorageClusterDomainsClient(conn)) -} - -// RegisterOpenStorageClusterDomainsHandler registers the http handlers for service OpenStorageClusterDomains to "mux". -// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageClusterDomainsClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageClusterDomainsClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "OpenStorageClusterDomainsClient" to call the correct interceptors. -func RegisterOpenStorageClusterDomainsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageClusterDomainsClient) error { - - mux.Handle("GET", pattern_OpenStorageClusterDomains_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - if cn, ok := w.(http.CloseNotifier); ok { - go func(done <-chan struct{}, closed <-chan bool) { - select { - case <-done: - case <-closed: - cancel() - } - }(ctx.Done(), cn.CloseNotify()) - } - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_OpenStorageClusterDomains_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } + }() + }() - forward_OpenStorageClusterDomains_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + return RegisterOpenStorageNodeHandler(ctx, mux, conn) +} - }) +// RegisterOpenStorageNodeHandler registers the http handlers for service OpenStorageNode to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterOpenStorageNodeHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterOpenStorageNodeHandlerClient(ctx, mux, NewOpenStorageNodeClient(conn)) +} - mux.Handle("GET", pattern_OpenStorageClusterDomains_Inspect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { +// RegisterOpenStorageNodeHandler registers the http handlers for service OpenStorageNode to "mux". +// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageNodeClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageNodeClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "OpenStorageNodeClient" to call the correct interceptors. +func RegisterOpenStorageNodeHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageNodeClient) error { + + mux.Handle("GET", pattern_OpenStorageNode_Inspect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2369,18 +3593,18 @@ func RegisterOpenStorageClusterDomainsHandlerClient(ctx context.Context, mux *ru runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterDomains_Inspect_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageNode_Inspect_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterDomains_Inspect_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageNode_Inspect_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_OpenStorageClusterDomains_Activate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageNode_InspectCurrent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2398,18 +3622,18 @@ func RegisterOpenStorageClusterDomainsHandlerClient(ctx context.Context, mux *ru runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterDomains_Activate_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageNode_InspectCurrent_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterDomains_Activate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageNode_InspectCurrent_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_OpenStorageClusterDomains_Deactivate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageNode_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2427,79 +3651,18 @@ func RegisterOpenStorageClusterDomainsHandlerClient(ctx context.Context, mux *ru runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageClusterDomains_Deactivate_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageNode_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageClusterDomains_Deactivate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageNode_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - return nil -} - -var ( - pattern_OpenStorageClusterDomains_Enumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "clusterdomains"}, "")) - - pattern_OpenStorageClusterDomains_Inspect_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "clusterdomains", "inspect", "cluster_domain_name"}, "")) - - pattern_OpenStorageClusterDomains_Activate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "clusterdomains", "activate", "cluster_domain_name"}, "")) - - pattern_OpenStorageClusterDomains_Deactivate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "clusterdomains", "deactivate", "cluster_domain_name"}, "")) -) - -var ( - forward_OpenStorageClusterDomains_Enumerate_0 = runtime.ForwardResponseMessage - - forward_OpenStorageClusterDomains_Inspect_0 = runtime.ForwardResponseMessage - - forward_OpenStorageClusterDomains_Activate_0 = runtime.ForwardResponseMessage - - forward_OpenStorageClusterDomains_Deactivate_0 = runtime.ForwardResponseMessage -) - -// RegisterOpenStoragePoolHandlerFromEndpoint is same as RegisterOpenStoragePoolHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterOpenStoragePoolHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterOpenStoragePoolHandler(ctx, mux, conn) -} - -// RegisterOpenStoragePoolHandler registers the http handlers for service OpenStoragePool to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterOpenStoragePoolHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterOpenStoragePoolHandlerClient(ctx, mux, NewOpenStoragePoolClient(conn)) -} - -// RegisterOpenStoragePoolHandler registers the http handlers for service OpenStoragePool to "mux". -// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStoragePoolClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStoragePoolClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "OpenStoragePoolClient" to call the correct interceptors. -func RegisterOpenStoragePoolHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStoragePoolClient) error { - - mux.Handle("PUT", pattern_OpenStoragePool_Resize_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageNode_EnumerateWithFilters_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2517,67 +3680,18 @@ func RegisterOpenStoragePoolHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStoragePool_Resize_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageNode_EnumerateWithFilters_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStoragePool_Resize_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageNode_EnumerateWithFilters_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - return nil -} - -var ( - pattern_OpenStoragePool_Resize_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "storagepools", "resize", "uuid"}, "")) -) - -var ( - forward_OpenStoragePool_Resize_0 = runtime.ForwardResponseMessage -) - -// RegisterOpenStorageNodeHandlerFromEndpoint is same as RegisterOpenStorageNodeHandler but -// automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterOpenStorageNodeHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { - conn, err := grpc.Dial(endpoint, opts...) - if err != nil { - return err - } - defer func() { - if err != nil { - if cerr := conn.Close(); cerr != nil { - grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) - } - return - } - go func() { - <-ctx.Done() - if cerr := conn.Close(); cerr != nil { - grpclog.Printf("Failed to close conn to %s: %v", endpoint, cerr) - } - }() - }() - - return RegisterOpenStorageNodeHandler(ctx, mux, conn) -} - -// RegisterOpenStorageNodeHandler registers the http handlers for service OpenStorageNode to "mux". -// The handlers forward requests to the grpc endpoint over "conn". -func RegisterOpenStorageNodeHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterOpenStorageNodeHandlerClient(ctx, mux, NewOpenStorageNodeClient(conn)) -} - -// RegisterOpenStorageNodeHandler registers the http handlers for service OpenStorageNode to "mux". -// The handlers forward requests to the grpc endpoint over the given implementation of "OpenStorageNodeClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "OpenStorageNodeClient" -// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "OpenStorageNodeClient" to call the correct interceptors. -func RegisterOpenStorageNodeHandlerClient(ctx context.Context, mux *runtime.ServeMux, client OpenStorageNodeClient) error { - - mux.Handle("GET", pattern_OpenStorageNode_Inspect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("GET", pattern_OpenStorageNode_VolumeUsageByNode_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2595,18 +3709,18 @@ func RegisterOpenStorageNodeHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageNode_Inspect_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageNode_VolumeUsageByNode_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageNode_Inspect_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageNode_VolumeUsageByNode_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageNode_InspectCurrent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("PUT", pattern_OpenStorageNode_DrainAttachments_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2624,18 +3738,18 @@ func RegisterOpenStorageNodeHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageNode_InspectCurrent_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageNode_DrainAttachments_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageNode_InspectCurrent_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageNode_DrainAttachments_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageNode_Enumerate_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("PUT", pattern_OpenStorageNode_CordonAttachments_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2653,18 +3767,18 @@ func RegisterOpenStorageNodeHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageNode_Enumerate_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageNode_CordonAttachments_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageNode_Enumerate_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageNode_CordonAttachments_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("GET", pattern_OpenStorageNode_EnumerateWithFilters_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("PUT", pattern_OpenStorageNode_UncordonAttachments_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() if cn, ok := w.(http.CloseNotifier); ok { @@ -2682,14 +3796,14 @@ func RegisterOpenStorageNodeHandlerClient(ctx context.Context, mux *runtime.Serv runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_OpenStorageNode_EnumerateWithFilters_0(rctx, inboundMarshaler, client, req, pathParams) + resp, md, err := request_OpenStorageNode_UncordonAttachments_0(rctx, inboundMarshaler, client, req, pathParams) ctx = runtime.NewServerMetadataContext(ctx, md) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - forward_OpenStorageNode_EnumerateWithFilters_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_OpenStorageNode_UncordonAttachments_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -2704,6 +3818,14 @@ var ( pattern_OpenStorageNode_Enumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"v1", "nodes"}, "")) pattern_OpenStorageNode_EnumerateWithFilters_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "nodes", "filters"}, "")) + + pattern_OpenStorageNode_VolumeUsageByNode_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "nodes", "usage", "node_id"}, "")) + + pattern_OpenStorageNode_DrainAttachments_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "nodes", "attachments", "drain", "node_id"}, "")) + + pattern_OpenStorageNode_CordonAttachments_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "nodes", "attachments", "disable", "node_id"}, "")) + + pattern_OpenStorageNode_UncordonAttachments_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "nodes", "attachments", "enable", "node_id"}, "")) ) var ( @@ -2714,6 +3836,14 @@ var ( forward_OpenStorageNode_Enumerate_0 = runtime.ForwardResponseMessage forward_OpenStorageNode_EnumerateWithFilters_0 = runtime.ForwardResponseMessage + + forward_OpenStorageNode_VolumeUsageByNode_0 = runtime.ForwardResponseMessage + + forward_OpenStorageNode_DrainAttachments_0 = runtime.ForwardResponseMessage + + forward_OpenStorageNode_CordonAttachments_0 = runtime.ForwardResponseMessage + + forward_OpenStorageNode_UncordonAttachments_0 = runtime.ForwardResponseMessage ) // RegisterOpenStorageVolumeHandlerFromEndpoint is same as RegisterOpenStorageVolumeHandler but @@ -3189,6 +4319,35 @@ func RegisterOpenStorageVolumeHandlerClient(ctx context.Context, mux *runtime.Se }) + mux.Handle("POST", pattern_OpenStorageVolume_VolumeCatalog_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageVolume_VolumeCatalog_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageVolume_VolumeCatalog_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -3219,9 +4378,11 @@ var ( pattern_OpenStorageVolume_SnapshotEnumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "volumes", "snapshots"}, "")) - pattern_OpenStorageVolume_SnapshotEnumerateWithFilters_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 2, 4}, []string{"v1", "volumes", "snapshots", "volume_id", "filters"}, "")) + pattern_OpenStorageVolume_SnapshotEnumerateWithFilters_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "volumes", "snapshots", "filters", "volume_id"}, "")) pattern_OpenStorageVolume_SnapshotScheduleUpdate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"v1", "volumes", "snapshot", "schedules", "volume_id"}, "")) + + pattern_OpenStorageVolume_VolumeCatalog_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "volume", "catalog"}, "")) ) var ( @@ -3254,6 +4415,8 @@ var ( forward_OpenStorageVolume_SnapshotEnumerateWithFilters_0 = runtime.ForwardResponseMessage forward_OpenStorageVolume_SnapshotScheduleUpdate_0 = runtime.ForwardResponseMessage + + forward_OpenStorageVolume_VolumeCatalog_0 = runtime.ForwardResponseMessage ) // RegisterOpenStorageMountAttachHandlerFromEndpoint is same as RegisterOpenStorageMountAttachHandler but @@ -3937,6 +5100,35 @@ func RegisterOpenStorageCredentialsHandlerClient(ctx context.Context, mux *runti }) + mux.Handle("DELETE", pattern_OpenStorageCredentials_DeleteReferences_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageCredentials_DeleteReferences_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageCredentials_DeleteReferences_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -3950,6 +5142,8 @@ var ( pattern_OpenStorageCredentials_Delete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 1, 0, 4, 1, 5, 2}, []string{"v1", "credentials", "credential_id"}, "")) pattern_OpenStorageCredentials_Validate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "credentials", "validate", "credential_id"}, "")) + + pattern_OpenStorageCredentials_DeleteReferences_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "credentials", "references", "credential_id"}, "")) ) var ( @@ -3962,6 +5156,8 @@ var ( forward_OpenStorageCredentials_Delete_0 = runtime.ForwardResponseMessage forward_OpenStorageCredentials_Validate_0 = runtime.ForwardResponseMessage + + forward_OpenStorageCredentials_DeleteReferences_0 = runtime.ForwardResponseMessage ) // RegisterOpenStorageSchedulePolicyHandlerFromEndpoint is same as RegisterOpenStorageSchedulePolicyHandler but @@ -4618,6 +5814,35 @@ func RegisterOpenStorageCloudBackupHandlerClient(ctx context.Context, mux *runti }) + mux.Handle("GET", pattern_OpenStorageCloudBackup_Size_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + if cn, ok := w.(http.CloseNotifier); ok { + go func(done <-chan struct{}, closed <-chan bool) { + select { + case <-done: + case <-closed: + cancel() + } + }(ctx.Done(), cn.CloseNotify()) + } + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_OpenStorageCloudBackup_Size_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_OpenStorageCloudBackup_Size_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -4649,6 +5874,8 @@ var ( pattern_OpenStorageCloudBackup_SchedDelete_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"v1", "cloudbackups", "schedules", "backup_schedule_id"}, "")) pattern_OpenStorageCloudBackup_SchedEnumerate_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "cloudbackups", "schedules"}, "")) + + pattern_OpenStorageCloudBackup_Size_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "cloudbackups", "size"}, "")) ) var ( @@ -4679,6 +5906,8 @@ var ( forward_OpenStorageCloudBackup_SchedDelete_0 = runtime.ForwardResponseMessage forward_OpenStorageCloudBackup_SchedEnumerate_0 = runtime.ForwardResponseMessage + + forward_OpenStorageCloudBackup_Size_0 = runtime.ForwardResponseMessage ) // RegisterOpenStoragePolicyHandlerFromEndpoint is same as RegisterOpenStoragePolicyHandler but From 607cdb098d7c28c6191222d266f576ceee074921 Mon Sep 17 00:00:00 2001 From: Lakshmi Narasimhan Sundararajan Date: Tue, 10 Nov 2020 10:48:18 +0530 Subject: [PATCH 2/2] pretty format Signed-off-by: Lakshmi Narasimhan Sundararajan --- handler/volume/describe.go | 51 ++++++++++++++++++++++++-------------- 1 file changed, 33 insertions(+), 18 deletions(-) diff --git a/handler/volume/describe.go b/handler/volume/describe.go index db90eee2..221709bb 100644 --- a/handler/volume/describe.go +++ b/handler/volume/describe.go @@ -167,6 +167,10 @@ func (p *VolumeDescribeFormatter) AddVolumeDetails( if err != nil { return err } + err = p.addFastpathInfo(v, t) + if err != nil { + return err + } err = p.addVolumeStatsInfo(v, t) if err != nil { return err @@ -314,37 +318,48 @@ func (p *VolumeDescribeFormatter) addVolumeBasicInfo( util.AddMap(t, "Labels:", v.GetLocator().GetVolumeLabels()) } - // Extend for reporting fastpath info - t.AddLine("Fastpath preferred:", spec.GetFpPreference()) + return nil +} + +func (p *VolumeDescribeFormatter) addFastpathInfo( + v *api.Volume, + t *tabby.Tabby, +) error { + spec := v.GetSpec() fpConfig := v.GetFpConfig() + + // Extend for reporting fastpath info + t.AddLine("Fastpath:") + t.AddLine(" Preference:", spec.GetFpPreference()) if spec.GetFpPreference() && fpConfig != nil { - t.AddLine("Fastpath Promoted:", fpConfig.GetPromote()) - t.AddLine("Fastpath dirty:", fpConfig.GetDirty()) - t.AddLine("Fastpath state:", fpConfig.GetStatus()) - t.AddLine("Fastpath Coordinator:", fpConfig.GetCoordUuid()) - t.AddLine("Fastpath replicas:", len(fpConfig.GetReplicas())) + t.AddLine(" Promoted:", fpConfig.GetPromote()) + t.AddLine(" Dirty:", fpConfig.GetDirty()) + t.AddLine(" State:", fpConfig.GetStatus()) + t.AddLine(" Coordinator:", fpConfig.GetCoordUuid()) + t.AddLine(" Replicas:", len(fpConfig.GetReplicas())) for i, r := range fpConfig.GetReplicas() { - t.AddLine("Replica:", i) - t.AddLine("\tOn Node:", r.GetNodeUuid()) - t.AddLine("\tProtocol:", r.GetProtocol()) - t.AddLine("\tSecure:", r.GetAcl()) - t.AddLine("\tExported:", r.GetExported()) + t.AddLine(" Replica:", i) + t.AddLine(" On Node:", r.GetNodeUuid()) + t.AddLine(" Protocol:", r.GetProtocol()) + t.AddLine(" Secure:", r.GetAcl()) + t.AddLine(" Exported:", r.GetExported()) if r.GetExported() { - t.AddLine("\t\tTarget:", r.GetTarget()) - t.AddLine("\t\tSource:", r.GetExportedDevice()) + t.AddLine(" Target:", r.GetTarget()) + t.AddLine(" Source:", r.GetExportedDevice()) if r.GetBlock() { - t.AddLine("\t\tType: BlockDevice") + t.AddLine(" Type: BlockDevice") } else { - t.AddLine("\t\tType: File") + t.AddLine(" Type: File") } } - t.AddLine("\tImported:", r.GetImported()) + t.AddLine(" Imported:", r.GetImported()) if r.Imported { - t.AddLine("\t\tMapped local device:", r.GetDevpath()) + t.AddLine(" Mapped local device:", r.GetDevpath()) } } } + return nil }