diff --git a/api-tests/backup/backups_test.go b/api-tests/backup/backup_test.go similarity index 67% rename from api-tests/backup/backups_test.go rename to api-tests/backup/backup_test.go index 9d1f5abef6..3031ba1b5b 100644 --- a/api-tests/backup/backups_test.go +++ b/api-tests/backup/backup_test.go @@ -27,7 +27,7 @@ import ( pmmapitests "github.com/percona/pmm/api-tests" "github.com/percona/pmm/api-tests/management" backupClient "github.com/percona/pmm/api/backup/v1/json/client" - backups "github.com/percona/pmm/api/backup/v1/json/client/backups_service" + backup "github.com/percona/pmm/api/backup/v1/json/client/backup_service" locations "github.com/percona/pmm/api/backup/v1/json/client/locations_service" managementClient "github.com/percona/pmm/api/management/v1/json/client" mservice "github.com/percona/pmm/api/management/v1/json/client/management_service" @@ -104,17 +104,17 @@ func TestScheduleBackup(t *testing.T) { defer deleteLocation(t, backupClient.Default.LocationsService, locationID) t.Run("schedule logical backup", func(t *testing.T) { - client := backupClient.Default.BackupsService - backupRes, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + client := backupClient.Default.BackupService + backupRes, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), Enabled: false, - DataModel: pointer.ToString(backups.StartBackupBodyDataModelDATAMODELLOGICAL), + DataModel: pointer.ToString(backup.StartBackupBodyDataModelDATAMODELLOGICAL), Folder: "backup_folder", }, Context: pmmapitests.Context, @@ -123,50 +123,50 @@ func TestScheduleBackup(t *testing.T) { require.NoError(t, err) assert.NotEmpty(t, backupRes.Payload.ScheduledBackupID) - body := backups.ChangeScheduledBackupBody{ + body := backup.ChangeScheduledBackupBody{ ScheduledBackupID: backupRes.Payload.ScheduledBackupID, Enabled: pointer.ToBool(true), CronExpression: pointer.ToString("0 2 2 2 2"), Name: pointer.ToString("test2"), Description: pointer.ToString("test2"), } - changeRes, err := client.ChangeScheduledBackup(&backups.ChangeScheduledBackupParams{ + changeRes, err := client.ChangeScheduledBackup(&backup.ChangeScheduledBackupParams{ Body: body, Context: pmmapitests.Context, }) require.NoError(t, err) assert.NotEmpty(t, changeRes) - listRes, err := client.ListScheduledBackups(&backups.ListScheduledBackupsParams{ + listRes, err := client.ListScheduledBackups(&backup.ListScheduledBackupsParams{ Context: pmmapitests.Context, }) require.NoError(t, err) - var backup *backups.ListScheduledBackupsOKBodyScheduledBackupsItems0 + var bkp *backup.ListScheduledBackupsOKBodyScheduledBackupsItems0 for _, b := range listRes.Payload.ScheduledBackups { if b.ScheduledBackupID == backupRes.Payload.ScheduledBackupID { - backup = b + bkp = b break } } - require.NotNil(t, backup) + require.NotNil(t, bkp) // Assert change - assert.Equal(t, pointer.GetBool(body.Enabled), backup.Enabled) - assert.Equal(t, pointer.GetString(body.Name), backup.Name) - assert.Equal(t, pointer.GetString(body.Description), backup.Description) - assert.Equal(t, pointer.GetString(body.CronExpression), backup.CronExpression) - assert.Equal(t, "backup_folder", backup.Folder) - - _, err = client.RemoveScheduledBackup(&backups.RemoveScheduledBackupParams{ - Body: backups.RemoveScheduledBackupBody{ + assert.Equal(t, pointer.GetBool(body.Enabled), bkp.Enabled) + assert.Equal(t, pointer.GetString(body.Name), bkp.Name) + assert.Equal(t, pointer.GetString(body.Description), bkp.Description) + assert.Equal(t, pointer.GetString(body.CronExpression), bkp.CronExpression) + assert.Equal(t, "backup_folder", bkp.Folder) + + _, err = client.RemoveScheduledBackup(&backup.RemoveScheduledBackupParams{ + Body: backup.RemoveScheduledBackupBody{ ScheduledBackupID: backupRes.Payload.ScheduledBackupID, }, Context: pmmapitests.Context, }) require.NoError(t, err) - find := func(id string, backups []*backups.ListScheduledBackupsOKBodyScheduledBackupsItems0) *backups.ListScheduledBackupsOKBodyScheduledBackupsItems0 { + find := func(id string, backups []*backup.ListScheduledBackupsOKBodyScheduledBackupsItems0) *backup.ListScheduledBackupsOKBodyScheduledBackupsItems0 { for _, b := range backups { if b.ScheduledBackupID == id { return b @@ -174,7 +174,7 @@ func TestScheduleBackup(t *testing.T) { } return nil } - listRes, err = client.ListScheduledBackups(&backups.ListScheduledBackupsParams{ + listRes, err = client.ListScheduledBackups(&backup.ListScheduledBackupsParams{ Context: pmmapitests.Context, }) require.NoError(t, err) @@ -185,17 +185,17 @@ func TestScheduleBackup(t *testing.T) { }) t.Run("create multiple snapshot backups", func(t *testing.T) { - client := backupClient.Default.BackupsService - sb1, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + client := backupClient.Default.BackupService + sb1, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing1", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), Enabled: true, - DataModel: pointer.ToString(backups.StartBackupBodyDataModelDATAMODELLOGICAL), + DataModel: pointer.ToString(backup.StartBackupBodyDataModelDATAMODELLOGICAL), }, Context: pmmapitests.Context, }) @@ -203,16 +203,16 @@ func TestScheduleBackup(t *testing.T) { require.NoError(t, err) defer removeScheduledBackup(t, sb1.Payload.ScheduledBackupID) - sb2, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + sb2, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing2", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), Enabled: true, - DataModel: pointer.ToString(backups.StartBackupBodyDataModelDATAMODELLOGICAL), + DataModel: pointer.ToString(backup.StartBackupBodyDataModelDATAMODELLOGICAL), }, Context: pmmapitests.Context, }) @@ -222,18 +222,18 @@ func TestScheduleBackup(t *testing.T) { }) t.Run("create PITR backup when other backups disabled", func(t *testing.T) { - client := backupClient.Default.BackupsService + client := backupClient.Default.BackupService - sb1, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + sb1, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing1", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), Enabled: false, - DataModel: pointer.ToString(backups.StartBackupBodyDataModelDATAMODELLOGICAL), + DataModel: pointer.ToString(backup.StartBackupBodyDataModelDATAMODELLOGICAL), }, Context: pmmapitests.Context, }) @@ -241,16 +241,16 @@ func TestScheduleBackup(t *testing.T) { require.NoError(t, err) defer removeScheduledBackup(t, sb1.Payload.ScheduledBackupID) - pitrb1, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + pitrb1, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing2", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODEPITR), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODEPITR), Enabled: false, - DataModel: pointer.ToString(backups.StartBackupBodyDataModelDATAMODELLOGICAL), + DataModel: pointer.ToString(backup.StartBackupBodyDataModelDATAMODELLOGICAL), }, Context: pmmapitests.Context, }) @@ -258,16 +258,16 @@ func TestScheduleBackup(t *testing.T) { require.NoError(t, err) defer removeScheduledBackup(t, pitrb1.Payload.ScheduledBackupID) - pitrb2, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + pitrb2, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing3", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODEPITR), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODEPITR), Enabled: true, - DataModel: pointer.ToString(backups.StartBackupBodyDataModelDATAMODELLOGICAL), + DataModel: pointer.ToString(backup.StartBackupBodyDataModelDATAMODELLOGICAL), }, Context: pmmapitests.Context, }) @@ -277,17 +277,17 @@ func TestScheduleBackup(t *testing.T) { }) t.Run("only one enabled PITR backup allowed for the same cluster", func(t *testing.T) { - client := backupClient.Default.BackupsService - sb1, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + client := backupClient.Default.BackupService + sb1, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing1", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODEPITR), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODEPITR), Enabled: true, - DataModel: pointer.ToString(backups.StartBackupBodyDataModelDATAMODELLOGICAL), + DataModel: pointer.ToString(backup.StartBackupBodyDataModelDATAMODELLOGICAL), }, Context: pmmapitests.Context, }) @@ -295,16 +295,16 @@ func TestScheduleBackup(t *testing.T) { require.NoError(t, err) defer removeScheduledBackup(t, sb1.Payload.ScheduledBackupID) - _, err = client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + _, err = client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo2ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing2", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODEPITR), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODEPITR), Enabled: true, - DataModel: pointer.ToString(backups.StartBackupBodyDataModelDATAMODELLOGICAL), + DataModel: pointer.ToString(backup.StartBackupBodyDataModelDATAMODELLOGICAL), }, Context: pmmapitests.Context, }) @@ -313,17 +313,17 @@ func TestScheduleBackup(t *testing.T) { }) t.Run("physical backups fail when PITR is enabled", func(t *testing.T) { - client := backupClient.Default.BackupsService - _, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + client := backupClient.Default.BackupService + _, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "some_backup_name", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODEPITR), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODEPITR), Enabled: true, - DataModel: pointer.ToString(backups.ScheduleBackupBodyDataModelDATAMODELPHYSICAL), + DataModel: pointer.ToString(backup.ScheduleBackupBodyDataModelDATAMODELPHYSICAL), }, Context: pmmapitests.Context, }) @@ -332,17 +332,17 @@ func TestScheduleBackup(t *testing.T) { }) t.Run("physical backup snapshots can be scheduled", func(t *testing.T) { - client := backupClient.Default.BackupsService - backupRes, err := client.ScheduleBackup(&backups.ScheduleBackupParams{ - Body: backups.ScheduleBackupBody{ + client := backupClient.Default.BackupService + backupRes, err := client.ScheduleBackup(&backup.ScheduleBackupParams{ + Body: backup.ScheduleBackupBody{ ServiceID: mongo1ID, LocationID: locationID, CronExpression: "0 1 1 1 1", Name: "testing", Description: "testing", - Mode: pointer.ToString(backups.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), + Mode: pointer.ToString(backup.ScheduleBackupBodyModeBACKUPMODESNAPSHOT), Enabled: true, - DataModel: pointer.ToString(backups.ScheduleBackupBodyDataModelDATAMODELPHYSICAL), + DataModel: pointer.ToString(backup.ScheduleBackupBodyDataModelDATAMODELPHYSICAL), }, Context: pmmapitests.Context, }) @@ -356,8 +356,8 @@ func TestScheduleBackup(t *testing.T) { func removeScheduledBackup(t *testing.T, id string) { t.Helper() - _, err := backupClient.Default.BackupsService.RemoveScheduledBackup(&backups.RemoveScheduledBackupParams{ - Body: backups.RemoveScheduledBackupBody{ + _, err := backupClient.Default.BackupService.RemoveScheduledBackup(&backup.RemoveScheduledBackupParams{ + Body: backup.RemoveScheduledBackupBody{ ScheduledBackupID: id, }, Context: pmmapitests.Context, diff --git a/api/backup/v1/backups.pb.go b/api/backup/v1/backup.pb.go similarity index 56% rename from api/backup/v1/backups.pb.go rename to api/backup/v1/backup.pb.go index 7ec88a013c..f293ccb7e9 100644 --- a/api/backup/v1/backups.pb.go +++ b/api/backup/v1/backup.pb.go @@ -2,7 +2,7 @@ // versions: // protoc-gen-go v1.32.0 // protoc (unknown) -// source: backup/v1/backups.proto +// source: backup/v1/backup.proto package backupv1 @@ -54,7 +54,7 @@ type StartBackupRequest struct { func (x *StartBackupRequest) Reset() { *x = StartBackupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[0] + mi := &file_backup_v1_backup_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -67,7 +67,7 @@ func (x *StartBackupRequest) String() string { func (*StartBackupRequest) ProtoMessage() {} func (x *StartBackupRequest) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[0] + mi := &file_backup_v1_backup_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -80,7 +80,7 @@ func (x *StartBackupRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StartBackupRequest.ProtoReflect.Descriptor instead. func (*StartBackupRequest) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{0} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{0} } func (x *StartBackupRequest) GetServiceId() string { @@ -151,7 +151,7 @@ type StartBackupResponse struct { func (x *StartBackupResponse) Reset() { *x = StartBackupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[1] + mi := &file_backup_v1_backup_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -164,7 +164,7 @@ func (x *StartBackupResponse) String() string { func (*StartBackupResponse) ProtoMessage() {} func (x *StartBackupResponse) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[1] + mi := &file_backup_v1_backup_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -177,7 +177,7 @@ func (x *StartBackupResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use StartBackupResponse.ProtoReflect.Descriptor instead. func (*StartBackupResponse) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{1} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{1} } func (x *StartBackupResponse) GetArtifactId() string { @@ -199,7 +199,7 @@ type ListArtifactCompatibleServicesRequest struct { func (x *ListArtifactCompatibleServicesRequest) Reset() { *x = ListArtifactCompatibleServicesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[2] + mi := &file_backup_v1_backup_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -212,7 +212,7 @@ func (x *ListArtifactCompatibleServicesRequest) String() string { func (*ListArtifactCompatibleServicesRequest) ProtoMessage() {} func (x *ListArtifactCompatibleServicesRequest) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[2] + mi := &file_backup_v1_backup_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -225,7 +225,7 @@ func (x *ListArtifactCompatibleServicesRequest) ProtoReflect() protoreflect.Mess // Deprecated: Use ListArtifactCompatibleServicesRequest.ProtoReflect.Descriptor instead. func (*ListArtifactCompatibleServicesRequest) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{2} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{2} } func (x *ListArtifactCompatibleServicesRequest) GetArtifactId() string { @@ -247,7 +247,7 @@ type ListArtifactCompatibleServicesResponse struct { func (x *ListArtifactCompatibleServicesResponse) Reset() { *x = ListArtifactCompatibleServicesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[3] + mi := &file_backup_v1_backup_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -260,7 +260,7 @@ func (x *ListArtifactCompatibleServicesResponse) String() string { func (*ListArtifactCompatibleServicesResponse) ProtoMessage() {} func (x *ListArtifactCompatibleServicesResponse) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[3] + mi := &file_backup_v1_backup_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -273,7 +273,7 @@ func (x *ListArtifactCompatibleServicesResponse) ProtoReflect() protoreflect.Mes // Deprecated: Use ListArtifactCompatibleServicesResponse.ProtoReflect.Descriptor instead. func (*ListArtifactCompatibleServicesResponse) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{3} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{3} } func (x *ListArtifactCompatibleServicesResponse) GetMysql() []*v1.MySQLService { @@ -339,7 +339,7 @@ type ScheduledBackup struct { func (x *ScheduledBackup) Reset() { *x = ScheduledBackup{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[4] + mi := &file_backup_v1_backup_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -352,7 +352,7 @@ func (x *ScheduledBackup) String() string { func (*ScheduledBackup) ProtoMessage() {} func (x *ScheduledBackup) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[4] + mi := &file_backup_v1_backup_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -365,7 +365,7 @@ func (x *ScheduledBackup) ProtoReflect() protoreflect.Message { // Deprecated: Use ScheduledBackup.ProtoReflect.Descriptor instead. func (*ScheduledBackup) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{4} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{4} } func (x *ScheduledBackup) GetScheduledBackupId() string { @@ -537,7 +537,7 @@ type ScheduleBackupRequest struct { func (x *ScheduleBackupRequest) Reset() { *x = ScheduleBackupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[5] + mi := &file_backup_v1_backup_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -550,7 +550,7 @@ func (x *ScheduleBackupRequest) String() string { func (*ScheduleBackupRequest) ProtoMessage() {} func (x *ScheduleBackupRequest) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[5] + mi := &file_backup_v1_backup_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -563,7 +563,7 @@ func (x *ScheduleBackupRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ScheduleBackupRequest.ProtoReflect.Descriptor instead. func (*ScheduleBackupRequest) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{5} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{5} } func (x *ScheduleBackupRequest) GetServiceId() string { @@ -668,7 +668,7 @@ type ScheduleBackupResponse struct { func (x *ScheduleBackupResponse) Reset() { *x = ScheduleBackupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[6] + mi := &file_backup_v1_backup_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -681,7 +681,7 @@ func (x *ScheduleBackupResponse) String() string { func (*ScheduleBackupResponse) ProtoMessage() {} func (x *ScheduleBackupResponse) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[6] + mi := &file_backup_v1_backup_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -694,7 +694,7 @@ func (x *ScheduleBackupResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ScheduleBackupResponse.ProtoReflect.Descriptor instead. func (*ScheduleBackupResponse) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{6} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{6} } func (x *ScheduleBackupResponse) GetScheduledBackupId() string { @@ -713,7 +713,7 @@ type ListScheduledBackupsRequest struct { func (x *ListScheduledBackupsRequest) Reset() { *x = ListScheduledBackupsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[7] + mi := &file_backup_v1_backup_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -726,7 +726,7 @@ func (x *ListScheduledBackupsRequest) String() string { func (*ListScheduledBackupsRequest) ProtoMessage() {} func (x *ListScheduledBackupsRequest) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[7] + mi := &file_backup_v1_backup_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -739,7 +739,7 @@ func (x *ListScheduledBackupsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListScheduledBackupsRequest.ProtoReflect.Descriptor instead. func (*ListScheduledBackupsRequest) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{7} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{7} } type ListScheduledBackupsResponse struct { @@ -753,7 +753,7 @@ type ListScheduledBackupsResponse struct { func (x *ListScheduledBackupsResponse) Reset() { *x = ListScheduledBackupsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[8] + mi := &file_backup_v1_backup_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -766,7 +766,7 @@ func (x *ListScheduledBackupsResponse) String() string { func (*ListScheduledBackupsResponse) ProtoMessage() {} func (x *ListScheduledBackupsResponse) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[8] + mi := &file_backup_v1_backup_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -779,7 +779,7 @@ func (x *ListScheduledBackupsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListScheduledBackupsResponse.ProtoReflect.Descriptor instead. func (*ListScheduledBackupsResponse) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{8} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{8} } func (x *ListScheduledBackupsResponse) GetScheduledBackups() []*ScheduledBackup { @@ -815,7 +815,7 @@ type ChangeScheduledBackupRequest struct { func (x *ChangeScheduledBackupRequest) Reset() { *x = ChangeScheduledBackupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[9] + mi := &file_backup_v1_backup_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -828,7 +828,7 @@ func (x *ChangeScheduledBackupRequest) String() string { func (*ChangeScheduledBackupRequest) ProtoMessage() {} func (x *ChangeScheduledBackupRequest) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[9] + mi := &file_backup_v1_backup_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -841,7 +841,7 @@ func (x *ChangeScheduledBackupRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeScheduledBackupRequest.ProtoReflect.Descriptor instead. func (*ChangeScheduledBackupRequest) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{9} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{9} } func (x *ChangeScheduledBackupRequest) GetScheduledBackupId() string { @@ -916,7 +916,7 @@ type ChangeScheduledBackupResponse struct { func (x *ChangeScheduledBackupResponse) Reset() { *x = ChangeScheduledBackupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[10] + mi := &file_backup_v1_backup_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -929,7 +929,7 @@ func (x *ChangeScheduledBackupResponse) String() string { func (*ChangeScheduledBackupResponse) ProtoMessage() {} func (x *ChangeScheduledBackupResponse) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[10] + mi := &file_backup_v1_backup_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -942,7 +942,7 @@ func (x *ChangeScheduledBackupResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeScheduledBackupResponse.ProtoReflect.Descriptor instead. func (*ChangeScheduledBackupResponse) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{10} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{10} } type RemoveScheduledBackupRequest struct { @@ -956,7 +956,7 @@ type RemoveScheduledBackupRequest struct { func (x *RemoveScheduledBackupRequest) Reset() { *x = RemoveScheduledBackupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[11] + mi := &file_backup_v1_backup_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -969,7 +969,7 @@ func (x *RemoveScheduledBackupRequest) String() string { func (*RemoveScheduledBackupRequest) ProtoMessage() {} func (x *RemoveScheduledBackupRequest) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[11] + mi := &file_backup_v1_backup_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -982,7 +982,7 @@ func (x *RemoveScheduledBackupRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveScheduledBackupRequest.ProtoReflect.Descriptor instead. func (*RemoveScheduledBackupRequest) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{11} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{11} } func (x *RemoveScheduledBackupRequest) GetScheduledBackupId() string { @@ -1001,7 +1001,7 @@ type RemoveScheduledBackupResponse struct { func (x *RemoveScheduledBackupResponse) Reset() { *x = RemoveScheduledBackupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[12] + mi := &file_backup_v1_backup_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1014,7 +1014,7 @@ func (x *RemoveScheduledBackupResponse) String() string { func (*RemoveScheduledBackupResponse) ProtoMessage() {} func (x *RemoveScheduledBackupResponse) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[12] + mi := &file_backup_v1_backup_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1027,7 +1027,7 @@ func (x *RemoveScheduledBackupResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveScheduledBackupResponse.ProtoReflect.Descriptor instead. func (*RemoveScheduledBackupResponse) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{12} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{12} } type GetLogsRequest struct { @@ -1044,7 +1044,7 @@ type GetLogsRequest struct { func (x *GetLogsRequest) Reset() { *x = GetLogsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[13] + mi := &file_backup_v1_backup_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1057,7 +1057,7 @@ func (x *GetLogsRequest) String() string { func (*GetLogsRequest) ProtoMessage() {} func (x *GetLogsRequest) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[13] + mi := &file_backup_v1_backup_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1070,7 +1070,7 @@ func (x *GetLogsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLogsRequest.ProtoReflect.Descriptor instead. func (*GetLogsRequest) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{13} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{13} } func (x *GetLogsRequest) GetArtifactId() string { @@ -1113,7 +1113,7 @@ type GetLogsResponse struct { func (x *GetLogsResponse) Reset() { *x = GetLogsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[14] + mi := &file_backup_v1_backup_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1126,7 +1126,7 @@ func (x *GetLogsResponse) String() string { func (*GetLogsResponse) ProtoMessage() {} func (x *GetLogsResponse) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[14] + mi := &file_backup_v1_backup_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1139,7 +1139,7 @@ func (x *GetLogsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLogsResponse.ProtoReflect.Descriptor instead. func (*GetLogsResponse) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{14} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{14} } func (x *GetLogsResponse) GetLogs() []*LogChunk { @@ -1169,7 +1169,7 @@ type LogChunk struct { func (x *LogChunk) Reset() { *x = LogChunk{} if protoimpl.UnsafeEnabled { - mi := &file_backup_v1_backups_proto_msgTypes[15] + mi := &file_backup_v1_backup_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1182,7 +1182,7 @@ func (x *LogChunk) String() string { func (*LogChunk) ProtoMessage() {} func (x *LogChunk) ProtoReflect() protoreflect.Message { - mi := &file_backup_v1_backups_proto_msgTypes[15] + mi := &file_backup_v1_backup_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1195,7 +1195,7 @@ func (x *LogChunk) ProtoReflect() protoreflect.Message { // Deprecated: Use LogChunk.ProtoReflect.Descriptor instead. func (*LogChunk) Descriptor() ([]byte, []int) { - return file_backup_v1_backups_proto_rawDescGZIP(), []int{15} + return file_backup_v1_backup_proto_rawDescGZIP(), []int{15} } func (x *LogChunk) GetChunkId() uint32 { @@ -1212,357 +1212,356 @@ func (x *LogChunk) GetData() string { return "" } -var File_backup_v1_backups_proto protoreflect.FileDescriptor - -var file_backup_v1_backups_proto_rawDesc = []byte{ - 0x0a, 0x17, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, - 0x75, 0x70, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x2e, 0x76, 0x31, 0x1a, 0x16, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x76, 0x31, 0x2f, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, - 0x2d, 0x67, 0x65, 0x6e, 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x70, 0x69, 0x76, 0x32, 0x2f, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x22, 0xc5, 0x02, 0x0a, 0x12, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, - 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, - 0x12, 0x28, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, - 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x40, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, - 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, - 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x0a, - 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, +var File_backup_v1_backup_proto protoreflect.FileDescriptor + +var file_backup_v1_backup_proto_rawDesc = []byte{ + 0x0a, 0x16, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x2e, 0x76, 0x31, 0x1a, 0x16, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x76, 0x31, 0x2f, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x2d, + 0x67, 0x65, 0x6e, 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x70, 0x69, 0x76, 0x32, 0x2f, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x22, 0xc5, 0x02, 0x0a, 0x12, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, + 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, + 0x28, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, + 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x40, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, + 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, + 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x0a, 0x64, + 0x61, 0x74, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x14, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, + 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x6c, + 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x22, 0x36, 0x0a, 0x13, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x1f, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x49, 0x64, + 0x22, 0x51, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, + 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, + 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, + 0x74, 0x49, 0x64, 0x22, 0x92, 0x01, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, + 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, + 0x0a, 0x05, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, + 0x51, 0x4c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x05, 0x6d, 0x79, 0x73, 0x71, 0x6c, + 0x12, 0x36, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, + 0x07, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x22, 0xf5, 0x05, 0x0a, 0x0f, 0x53, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x2e, 0x0a, 0x13, + 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x63, 0x68, 0x65, 0x64, + 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, + 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, + 0x63, 0x72, 0x6f, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x72, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x40, 0x0a, 0x0e, 0x72, 0x65, + 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x72, + 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x33, 0x0a, 0x0a, + 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x4d, 0x6f, 0x64, 0x65, - 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x22, 0x36, 0x0a, 0x13, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x49, - 0x64, 0x22, 0x51, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, - 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x0b, 0x61, 0x72, - 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, - 0x63, 0x74, 0x49, 0x64, 0x22, 0x92, 0x01, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, - 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x30, 0x0a, 0x05, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, - 0x53, 0x51, 0x4c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x05, 0x6d, 0x79, 0x73, 0x71, - 0x6c, 0x12, 0x36, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x22, 0xf5, 0x05, 0x0a, 0x0f, 0x53, 0x63, - 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x2e, 0x0a, - 0x13, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x63, 0x68, 0x65, - 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, - 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x27, 0x0a, - 0x0f, 0x63, 0x72, 0x6f, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x72, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x72, + 0x6c, 0x12, 0x29, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x15, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x76, 0x65, + 0x6e, 0x64, 0x6f, 0x72, 0x12, 0x35, 0x0a, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x52, 0x07, 0x6c, 0x61, 0x73, 0x74, 0x52, 0x75, 0x6e, 0x12, 0x35, 0x0a, 0x08, 0x6e, + 0x65, 0x78, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x52, + 0x75, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x98, 0x04, 0x0a, 0x15, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, + 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, + 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, + 0x6c, 0x64, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x0f, 0x63, 0x72, 0x6f, 0x6e, 0x5f, 0x65, 0x78, 0x70, + 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, + 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0e, 0x63, 0x72, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, + 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x40, 0x0a, 0x0e, 0x72, - 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x0d, 0x20, + 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, - 0x72, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x33, 0x0a, - 0x0a, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x14, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, - 0x74, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x12, 0x29, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x15, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x76, - 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x12, 0x35, 0x0a, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x72, 0x75, - 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x07, 0x6c, 0x61, 0x73, 0x74, 0x52, 0x75, 0x6e, 0x12, 0x35, 0x0a, 0x08, - 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, - 0x52, 0x75, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0x98, 0x04, 0x0a, 0x15, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0a, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, - 0x01, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, - 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, - 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x0f, 0x63, 0x72, 0x6f, 0x6e, 0x5f, 0x65, 0x78, - 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, - 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0e, 0x63, 0x72, 0x6f, 0x6e, 0x45, 0x78, 0x70, - 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x40, 0x0a, 0x0e, - 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0d, 0x72, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x29, - 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x62, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x4d, - 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x64, 0x61, 0x74, - 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, - 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4d, 0x6f, - 0x64, 0x65, 0x6c, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x1c, - 0x0a, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x48, 0x0a, 0x16, - 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, - 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x22, 0x1d, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, - 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x67, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, - 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x11, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, - 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x68, - 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x10, 0x73, 0x63, - 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x22, 0xf6, - 0x03, 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, - 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x37, 0x0a, 0x13, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, - 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x11, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, - 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x63, 0x72, 0x6f, 0x6e, 0x5f, - 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x48, 0x01, 0x52, 0x0e, 0x63, 0x72, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, - 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, - 0x12, 0x1d, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0d, 0x48, 0x04, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, - 0x40, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, - 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, - 0x6c, 0x12, 0x21, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, - 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x63, 0x72, 0x6f, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0e, 0x0a, - 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x0a, - 0x08, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, - 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x72, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x29, 0x0a, + 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x62, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x4d, 0x6f, + 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, + 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x62, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4d, 0x6f, 0x64, + 0x65, 0x6c, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x1c, 0x0a, + 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x48, 0x0a, 0x16, 0x53, + 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, + 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x11, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x49, 0x64, 0x22, 0x1d, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x22, 0x67, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, 0x65, + 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x11, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x68, 0x65, + 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x10, 0x73, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x22, 0xf6, 0x03, + 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, + 0x0a, 0x13, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, + 0x72, 0x02, 0x10, 0x01, 0x52, 0x11, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x63, 0x72, 0x6f, 0x6e, 0x5f, 0x65, + 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x01, 0x52, 0x0e, 0x63, 0x72, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, + 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, + 0x1d, 0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, + 0x48, 0x04, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x40, + 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x72, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, + 0x12, 0x21, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, + 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, + 0x12, 0x0a, 0x10, 0x5f, 0x63, 0x72, 0x6f, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0e, 0x0a, 0x0c, + 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x0a, 0x08, + 0x5f, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x74, + 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x57, 0x0a, 0x1c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x57, 0x0a, 0x1c, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x13, 0x73, 0x63, 0x68, 0x65, - 0x64, 0x75, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x11, - 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, - 0x64, 0x22, 0x1f, 0x0a, 0x1d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, - 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x7e, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66, - 0x61, 0x63, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, - 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, - 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x69, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, - 0x49, 0x64, 0x22, 0x4c, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, - 0x4c, 0x6f, 0x67, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x10, - 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x65, 0x6e, 0x64, - 0x22, 0x39, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x12, 0x19, 0x0a, 0x08, - 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x32, 0x97, 0x0e, 0x0a, 0x0e, - 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xee, - 0x03, 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x1d, - 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, - 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9f, 0x03, - 0x92, 0x41, 0xf8, 0x02, 0x12, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x42, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x1a, 0xe5, 0x02, 0x43, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x72, 0x65, 0x74, - 0x75, 0x72, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x20, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, - 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, - 0x64, 0x65, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x61, - 0x69, 0x6c, 0x75, 0x72, 0x65, 0x20, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x3a, 0x0a, 0x45, 0x52, - 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x58, 0x54, 0x52, 0x41, 0x42, 0x41, 0x43, - 0x4b, 0x55, 0x50, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4c, 0x4c, 0x45, - 0x44, 0x20, 0x2d, 0x20, 0x78, 0x74, 0x72, 0x61, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x20, 0x69, - 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x20, - 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x0a, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, - 0x44, 0x5f, 0x58, 0x54, 0x52, 0x41, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x20, 0x2d, 0x20, 0x64, - 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x74, 0x72, 0x61, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x20, - 0x61, 0x6e, 0x64, 0x20, 0x78, 0x62, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x0a, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, - 0x42, 0x4c, 0x45, 0x5f, 0x58, 0x54, 0x52, 0x41, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x20, 0x2d, - 0x20, 0x78, 0x74, 0x72, 0x61, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x20, 0x69, 0x73, 0x20, 0x6e, - 0x6f, 0x74, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x77, 0x69, - 0x74, 0x68, 0x20, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x61, 0x6b, - 0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x1d, 0x3a, 0x01, 0x2a, 0x22, 0x18, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, - 0x9e, 0x02, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, - 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x73, 0x12, 0x30, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x96, 0x01, 0x92, 0x41, 0x57, 0x12, 0x18, 0x4c, - 0x69, 0x73, 0x74, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x1a, 0x3b, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x73, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x61, 0x72, 0x65, 0x20, - 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, - 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x20, 0x61, 0x72, 0x74, 0x69, 0x66, - 0x61, 0x63, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x36, 0x3a, 0x01, 0x2a, 0x22, 0x31, 0x2f, - 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x73, 0x2f, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x13, 0x73, 0x63, 0x68, 0x65, 0x64, + 0x75, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x11, 0x73, + 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x64, + 0x22, 0x1f, 0x0a, 0x1d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, + 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x7e, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, + 0x63, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, + 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x49, + 0x64, 0x22, 0x4c, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4c, + 0x6f, 0x67, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x10, 0x0a, + 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, + 0x39, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x12, 0x19, 0x0a, 0x08, 0x63, + 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, + 0x68, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x32, 0x96, 0x0e, 0x0a, 0x0d, 0x42, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xee, 0x03, 0x0a, + 0x0b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x1d, 0x2e, 0x62, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x62, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9f, 0x03, 0x92, 0x41, + 0xf8, 0x02, 0x12, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x61, 0x20, 0x42, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x1a, 0xe5, 0x02, 0x43, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, + 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x61, 0x69, 0x6c, + 0x75, 0x72, 0x65, 0x20, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x3a, 0x0a, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x58, 0x54, 0x52, 0x41, 0x42, 0x41, 0x43, 0x4b, 0x55, + 0x50, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4c, 0x4c, 0x45, 0x44, 0x20, + 0x2d, 0x20, 0x78, 0x74, 0x72, 0x61, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x20, 0x69, 0x73, 0x20, + 0x6e, 0x6f, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x6f, 0x6e, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x0a, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, + 0x58, 0x54, 0x52, 0x41, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x20, 0x2d, 0x20, 0x64, 0x69, 0x66, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, + 0x6f, 0x66, 0x20, 0x78, 0x74, 0x72, 0x61, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x78, 0x62, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x0a, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, + 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, + 0x45, 0x5f, 0x58, 0x54, 0x52, 0x41, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x20, 0x2d, 0x20, 0x78, + 0x74, 0x72, 0x61, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, + 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x61, 0x6b, 0x69, 0x6e, + 0x67, 0x20, 0x61, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, + 0x3a, 0x01, 0x2a, 0x22, 0x18, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, + 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x9e, 0x02, + 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, - 0x12, 0xc2, 0x01, 0x0a, 0x0e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x12, 0x20, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, + 0x12, 0x30, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, + 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x96, 0x01, 0x92, 0x41, 0x57, 0x12, 0x18, 0x4c, 0x69, 0x73, + 0x74, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x53, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x73, 0x1a, 0x3b, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x61, 0x72, 0x65, 0x20, 0x63, 0x6f, + 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x20, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, + 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x36, 0x3a, 0x01, 0x2a, 0x22, 0x31, 0x2f, 0x76, 0x31, + 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, + 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, + 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0xc2, + 0x01, 0x0a, 0x0e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x12, 0x20, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, + 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, - 0x31, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6b, 0x92, 0x41, 0x42, 0x12, 0x11, 0x53, - 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x61, 0x20, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x1a, 0x2d, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x61, 0x20, 0x62, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x72, 0x75, 0x6e, 0x20, 0x61, 0x74, 0x20, 0x61, 0x20, - 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x3a, 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x53, 0x63, 0x68, - 0x65, 0x64, 0x75, 0x6c, 0x65, 0x12, 0xcc, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, - 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x26, - 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, - 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, - 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, - 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x63, 0x92, 0x41, 0x35, 0x12, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x53, 0x63, 0x68, 0x65, 0x64, - 0x75, 0x6c, 0x65, 0x64, 0x20, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x1a, 0x1b, 0x4c, 0x69, - 0x73, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, - 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, - 0x01, 0x2a, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, 0x65, 0x64, - 0x75, 0x6c, 0x65, 0x64, 0x12, 0xd3, 0x01, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, - 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x27, - 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, - 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x67, 0x92, 0x41, 0x37, 0x12, 0x19, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x61, - 0x20, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x20, 0x42, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x1a, 0x1a, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x61, 0x20, 0x73, 0x63, 0x68, 0x65, - 0x64, 0x75, 0x6c, 0x65, 0x64, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x27, 0x3a, 0x01, 0x2a, 0x22, 0x22, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, - 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x12, 0xd3, 0x01, 0x0a, 0x15, 0x52, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6b, 0x92, 0x41, 0x42, 0x12, 0x11, 0x53, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x61, 0x20, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x1a, 0x2d, + 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x61, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x20, 0x74, 0x6f, 0x20, 0x72, 0x75, 0x6e, 0x20, 0x61, 0x74, 0x20, 0x61, 0x20, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x20, 0x3a, 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x53, 0x63, 0x68, 0x65, 0x64, + 0x75, 0x6c, 0x65, 0x12, 0xcc, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, 0x65, + 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x26, 0x2e, 0x62, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x63, 0x92, + 0x41, 0x35, 0x12, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, + 0x65, 0x64, 0x20, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x1a, 0x1b, 0x4c, 0x69, 0x73, 0x74, + 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x20, 0x62, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, + 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, + 0x65, 0x64, 0x12, 0xd3, 0x01, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x27, 0x2e, 0x62, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, + 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, + 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x67, 0x92, 0x41, 0x37, 0x12, 0x19, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x61, 0x20, 0x53, + 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x20, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x1a, + 0x1a, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x61, 0x20, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, + 0x6c, 0x65, 0x64, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x27, 0x3a, 0x01, 0x2a, 0x22, 0x22, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, + 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x12, 0xd3, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x12, 0x27, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x12, 0x27, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, - 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, - 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, - 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x67, 0x92, 0x41, 0x37, 0x12, 0x19, 0x52, 0x65, - 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x20, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, - 0x20, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x1a, 0x1a, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, - 0x61, 0x20, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x20, 0x62, 0x61, 0x63, 0x6b, - 0x75, 0x70, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x3a, 0x01, 0x2a, 0x22, 0x22, 0x2f, 0x76, - 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, - 0x2f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, - 0x12, 0xb2, 0x01, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x19, 0x2e, 0x62, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x70, 0x92, 0x41, 0x48, 0x12, 0x08, 0x47, 0x65, 0x74, 0x20, 0x4c, 0x6f, - 0x67, 0x73, 0x1a, 0x3c, 0x47, 0x65, 0x74, 0x20, 0x6c, 0x6f, 0x67, 0x73, 0x20, 0x66, 0x72, 0x6f, - 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x79, 0x69, 0x6e, 0x67, - 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x62, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x2f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x20, 0x6a, 0x6f, 0x62, 0x2e, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x3a, 0x01, 0x2a, 0x22, 0x1a, 0x2f, 0x76, 0x31, 0x2f, 0x62, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x47, 0x65, - 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x42, 0x91, 0x01, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x2e, 0x62, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x65, 0x72, 0x63, 0x6f, 0x6e, 0x61, 0x2f, 0x70, 0x6d, 0x6d, 0x2f, - 0x61, 0x70, 0x69, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x76, 0x31, 0x3b, 0x62, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x42, 0x58, 0x58, 0xaa, 0x02, 0x09, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x09, 0x42, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x15, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5c, 0x56, 0x31, - 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0a, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x33, + 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x63, + 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x67, 0x92, 0x41, 0x37, 0x12, 0x19, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x20, 0x61, 0x20, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x20, 0x42, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x1a, 0x1a, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x20, + 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x3a, 0x01, 0x2a, 0x22, 0x22, 0x2f, 0x76, 0x31, 0x2f, + 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x52, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x12, 0xb2, + 0x01, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x19, 0x2e, 0x62, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x76, + 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x70, 0x92, 0x41, 0x48, 0x12, 0x08, 0x47, 0x65, 0x74, 0x20, 0x4c, 0x6f, 0x67, 0x73, + 0x1a, 0x3c, 0x47, 0x65, 0x74, 0x20, 0x6c, 0x6f, 0x67, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, + 0x6f, 0x6f, 0x6c, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x2f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x20, 0x6a, 0x6f, 0x62, 0x2e, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x1f, 0x3a, 0x01, 0x2a, 0x22, 0x1a, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x47, 0x65, 0x74, 0x4c, + 0x6f, 0x67, 0x73, 0x42, 0x90, 0x01, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x2e, 0x62, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x70, 0x65, 0x72, 0x63, 0x6f, 0x6e, 0x61, 0x2f, 0x70, 0x6d, 0x6d, 0x2f, 0x61, 0x70, 0x69, + 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2f, 0x76, 0x31, 0x3b, 0x62, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x42, 0x58, 0x58, 0xaa, 0x02, 0x09, 0x42, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x09, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5c, 0x56, + 0x31, 0xe2, 0x02, 0x15, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, + 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0a, 0x42, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( - file_backup_v1_backups_proto_rawDescOnce sync.Once - file_backup_v1_backups_proto_rawDescData = file_backup_v1_backups_proto_rawDesc + file_backup_v1_backup_proto_rawDescOnce sync.Once + file_backup_v1_backup_proto_rawDescData = file_backup_v1_backup_proto_rawDesc ) -func file_backup_v1_backups_proto_rawDescGZIP() []byte { - file_backup_v1_backups_proto_rawDescOnce.Do(func() { - file_backup_v1_backups_proto_rawDescData = protoimpl.X.CompressGZIP(file_backup_v1_backups_proto_rawDescData) +func file_backup_v1_backup_proto_rawDescGZIP() []byte { + file_backup_v1_backup_proto_rawDescOnce.Do(func() { + file_backup_v1_backup_proto_rawDescData = protoimpl.X.CompressGZIP(file_backup_v1_backup_proto_rawDescData) }) - return file_backup_v1_backups_proto_rawDescData + return file_backup_v1_backup_proto_rawDescData } var ( - file_backup_v1_backups_proto_msgTypes = make([]protoimpl.MessageInfo, 16) - file_backup_v1_backups_proto_goTypes = []interface{}{ + file_backup_v1_backup_proto_msgTypes = make([]protoimpl.MessageInfo, 16) + file_backup_v1_backup_proto_goTypes = []interface{}{ (*StartBackupRequest)(nil), // 0: backup.v1.StartBackupRequest (*StartBackupResponse)(nil), // 1: backup.v1.StartBackupResponse (*ListArtifactCompatibleServicesRequest)(nil), // 2: backup.v1.ListArtifactCompatibleServicesRequest @@ -1588,7 +1587,7 @@ var ( } ) -var file_backup_v1_backups_proto_depIdxs = []int32{ +var file_backup_v1_backup_proto_depIdxs = []int32{ 16, // 0: backup.v1.StartBackupRequest.retry_interval:type_name -> google.protobuf.Duration 17, // 1: backup.v1.StartBackupRequest.data_model:type_name -> backup.v1.DataModel 18, // 2: backup.v1.ListArtifactCompatibleServicesResponse.mysql:type_name -> inventory.v1.MySQLService @@ -1607,20 +1606,20 @@ var file_backup_v1_backups_proto_depIdxs = []int32{ 20, // 15: backup.v1.ChangeScheduledBackupRequest.start_time:type_name -> google.protobuf.Timestamp 16, // 16: backup.v1.ChangeScheduledBackupRequest.retry_interval:type_name -> google.protobuf.Duration 15, // 17: backup.v1.GetLogsResponse.logs:type_name -> backup.v1.LogChunk - 0, // 18: backup.v1.BackupsService.StartBackup:input_type -> backup.v1.StartBackupRequest - 2, // 19: backup.v1.BackupsService.ListArtifactCompatibleServices:input_type -> backup.v1.ListArtifactCompatibleServicesRequest - 5, // 20: backup.v1.BackupsService.ScheduleBackup:input_type -> backup.v1.ScheduleBackupRequest - 7, // 21: backup.v1.BackupsService.ListScheduledBackups:input_type -> backup.v1.ListScheduledBackupsRequest - 9, // 22: backup.v1.BackupsService.ChangeScheduledBackup:input_type -> backup.v1.ChangeScheduledBackupRequest - 11, // 23: backup.v1.BackupsService.RemoveScheduledBackup:input_type -> backup.v1.RemoveScheduledBackupRequest - 13, // 24: backup.v1.BackupsService.GetLogs:input_type -> backup.v1.GetLogsRequest - 1, // 25: backup.v1.BackupsService.StartBackup:output_type -> backup.v1.StartBackupResponse - 3, // 26: backup.v1.BackupsService.ListArtifactCompatibleServices:output_type -> backup.v1.ListArtifactCompatibleServicesResponse - 6, // 27: backup.v1.BackupsService.ScheduleBackup:output_type -> backup.v1.ScheduleBackupResponse - 8, // 28: backup.v1.BackupsService.ListScheduledBackups:output_type -> backup.v1.ListScheduledBackupsResponse - 10, // 29: backup.v1.BackupsService.ChangeScheduledBackup:output_type -> backup.v1.ChangeScheduledBackupResponse - 12, // 30: backup.v1.BackupsService.RemoveScheduledBackup:output_type -> backup.v1.RemoveScheduledBackupResponse - 14, // 31: backup.v1.BackupsService.GetLogs:output_type -> backup.v1.GetLogsResponse + 0, // 18: backup.v1.BackupService.StartBackup:input_type -> backup.v1.StartBackupRequest + 2, // 19: backup.v1.BackupService.ListArtifactCompatibleServices:input_type -> backup.v1.ListArtifactCompatibleServicesRequest + 5, // 20: backup.v1.BackupService.ScheduleBackup:input_type -> backup.v1.ScheduleBackupRequest + 7, // 21: backup.v1.BackupService.ListScheduledBackups:input_type -> backup.v1.ListScheduledBackupsRequest + 9, // 22: backup.v1.BackupService.ChangeScheduledBackup:input_type -> backup.v1.ChangeScheduledBackupRequest + 11, // 23: backup.v1.BackupService.RemoveScheduledBackup:input_type -> backup.v1.RemoveScheduledBackupRequest + 13, // 24: backup.v1.BackupService.GetLogs:input_type -> backup.v1.GetLogsRequest + 1, // 25: backup.v1.BackupService.StartBackup:output_type -> backup.v1.StartBackupResponse + 3, // 26: backup.v1.BackupService.ListArtifactCompatibleServices:output_type -> backup.v1.ListArtifactCompatibleServicesResponse + 6, // 27: backup.v1.BackupService.ScheduleBackup:output_type -> backup.v1.ScheduleBackupResponse + 8, // 28: backup.v1.BackupService.ListScheduledBackups:output_type -> backup.v1.ListScheduledBackupsResponse + 10, // 29: backup.v1.BackupService.ChangeScheduledBackup:output_type -> backup.v1.ChangeScheduledBackupResponse + 12, // 30: backup.v1.BackupService.RemoveScheduledBackup:output_type -> backup.v1.RemoveScheduledBackupResponse + 14, // 31: backup.v1.BackupService.GetLogs:output_type -> backup.v1.GetLogsResponse 25, // [25:32] is the sub-list for method output_type 18, // [18:25] is the sub-list for method input_type 18, // [18:18] is the sub-list for extension type_name @@ -1628,14 +1627,14 @@ var file_backup_v1_backups_proto_depIdxs = []int32{ 0, // [0:18] is the sub-list for field type_name } -func init() { file_backup_v1_backups_proto_init() } -func file_backup_v1_backups_proto_init() { - if File_backup_v1_backups_proto != nil { +func init() { file_backup_v1_backup_proto_init() } +func file_backup_v1_backup_proto_init() { + if File_backup_v1_backup_proto != nil { return } file_backup_v1_common_proto_init() if !protoimpl.UnsafeEnabled { - file_backup_v1_backups_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StartBackupRequest); i { case 0: return &v.state @@ -1647,7 +1646,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StartBackupResponse); i { case 0: return &v.state @@ -1659,7 +1658,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListArtifactCompatibleServicesRequest); i { case 0: return &v.state @@ -1671,7 +1670,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListArtifactCompatibleServicesResponse); i { case 0: return &v.state @@ -1683,7 +1682,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ScheduledBackup); i { case 0: return &v.state @@ -1695,7 +1694,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ScheduleBackupRequest); i { case 0: return &v.state @@ -1707,7 +1706,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ScheduleBackupResponse); i { case 0: return &v.state @@ -1719,7 +1718,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListScheduledBackupsRequest); i { case 0: return &v.state @@ -1731,7 +1730,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListScheduledBackupsResponse); i { case 0: return &v.state @@ -1743,7 +1742,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeScheduledBackupRequest); i { case 0: return &v.state @@ -1755,7 +1754,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeScheduledBackupResponse); i { case 0: return &v.state @@ -1767,7 +1766,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveScheduledBackupRequest); i { case 0: return &v.state @@ -1779,7 +1778,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveScheduledBackupResponse); i { case 0: return &v.state @@ -1791,7 +1790,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetLogsRequest); i { case 0: return &v.state @@ -1803,7 +1802,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetLogsResponse); i { case 0: return &v.state @@ -1815,7 +1814,7 @@ func file_backup_v1_backups_proto_init() { return nil } } - file_backup_v1_backups_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_backup_v1_backup_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*LogChunk); i { case 0: return &v.state @@ -1828,23 +1827,23 @@ func file_backup_v1_backups_proto_init() { } } } - file_backup_v1_backups_proto_msgTypes[9].OneofWrappers = []interface{}{} + file_backup_v1_backup_proto_msgTypes[9].OneofWrappers = []interface{}{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_backup_v1_backups_proto_rawDesc, + RawDescriptor: file_backup_v1_backup_proto_rawDesc, NumEnums: 0, NumMessages: 16, NumExtensions: 0, NumServices: 1, }, - GoTypes: file_backup_v1_backups_proto_goTypes, - DependencyIndexes: file_backup_v1_backups_proto_depIdxs, - MessageInfos: file_backup_v1_backups_proto_msgTypes, + GoTypes: file_backup_v1_backup_proto_goTypes, + DependencyIndexes: file_backup_v1_backup_proto_depIdxs, + MessageInfos: file_backup_v1_backup_proto_msgTypes, }.Build() - File_backup_v1_backups_proto = out.File - file_backup_v1_backups_proto_rawDesc = nil - file_backup_v1_backups_proto_goTypes = nil - file_backup_v1_backups_proto_depIdxs = nil + File_backup_v1_backup_proto = out.File + file_backup_v1_backup_proto_rawDesc = nil + file_backup_v1_backup_proto_goTypes = nil + file_backup_v1_backup_proto_depIdxs = nil } diff --git a/api/backup/v1/backups.pb.gw.go b/api/backup/v1/backup.pb.gw.go similarity index 56% rename from api/backup/v1/backups.pb.gw.go rename to api/backup/v1/backup.pb.gw.go index 156acd1501..05f2aff6d6 100644 --- a/api/backup/v1/backups.pb.gw.go +++ b/api/backup/v1/backup.pb.gw.go @@ -1,5 +1,5 @@ // Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: backup/v1/backups.proto +// source: backup/v1/backup.proto /* Package backupv1 is a reverse proxy. @@ -33,7 +33,7 @@ var ( _ = metadata.Join ) -func request_BackupsService_StartBackup_0(ctx context.Context, marshaler runtime.Marshaler, client BackupsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func request_BackupService_StartBackup_0(ctx context.Context, marshaler runtime.Marshaler, client BackupServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq StartBackupRequest var metadata runtime.ServerMetadata @@ -45,7 +45,7 @@ func request_BackupsService_StartBackup_0(ctx context.Context, marshaler runtime return msg, metadata, err } -func local_request_BackupsService_StartBackup_0(ctx context.Context, marshaler runtime.Marshaler, server BackupsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func local_request_BackupService_StartBackup_0(ctx context.Context, marshaler runtime.Marshaler, server BackupServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq StartBackupRequest var metadata runtime.ServerMetadata @@ -57,7 +57,7 @@ func local_request_BackupsService_StartBackup_0(ctx context.Context, marshaler r return msg, metadata, err } -func request_BackupsService_ListArtifactCompatibleServices_0(ctx context.Context, marshaler runtime.Marshaler, client BackupsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func request_BackupService_ListArtifactCompatibleServices_0(ctx context.Context, marshaler runtime.Marshaler, client BackupServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ListArtifactCompatibleServicesRequest var metadata runtime.ServerMetadata @@ -69,7 +69,7 @@ func request_BackupsService_ListArtifactCompatibleServices_0(ctx context.Context return msg, metadata, err } -func local_request_BackupsService_ListArtifactCompatibleServices_0(ctx context.Context, marshaler runtime.Marshaler, server BackupsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func local_request_BackupService_ListArtifactCompatibleServices_0(ctx context.Context, marshaler runtime.Marshaler, server BackupServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ListArtifactCompatibleServicesRequest var metadata runtime.ServerMetadata @@ -81,7 +81,7 @@ func local_request_BackupsService_ListArtifactCompatibleServices_0(ctx context.C return msg, metadata, err } -func request_BackupsService_ScheduleBackup_0(ctx context.Context, marshaler runtime.Marshaler, client BackupsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func request_BackupService_ScheduleBackup_0(ctx context.Context, marshaler runtime.Marshaler, client BackupServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ScheduleBackupRequest var metadata runtime.ServerMetadata @@ -93,7 +93,7 @@ func request_BackupsService_ScheduleBackup_0(ctx context.Context, marshaler runt return msg, metadata, err } -func local_request_BackupsService_ScheduleBackup_0(ctx context.Context, marshaler runtime.Marshaler, server BackupsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func local_request_BackupService_ScheduleBackup_0(ctx context.Context, marshaler runtime.Marshaler, server BackupServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ScheduleBackupRequest var metadata runtime.ServerMetadata @@ -105,7 +105,7 @@ func local_request_BackupsService_ScheduleBackup_0(ctx context.Context, marshale return msg, metadata, err } -func request_BackupsService_ListScheduledBackups_0(ctx context.Context, marshaler runtime.Marshaler, client BackupsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func request_BackupService_ListScheduledBackups_0(ctx context.Context, marshaler runtime.Marshaler, client BackupServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ListScheduledBackupsRequest var metadata runtime.ServerMetadata @@ -117,7 +117,7 @@ func request_BackupsService_ListScheduledBackups_0(ctx context.Context, marshale return msg, metadata, err } -func local_request_BackupsService_ListScheduledBackups_0(ctx context.Context, marshaler runtime.Marshaler, server BackupsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func local_request_BackupService_ListScheduledBackups_0(ctx context.Context, marshaler runtime.Marshaler, server BackupServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ListScheduledBackupsRequest var metadata runtime.ServerMetadata @@ -129,7 +129,7 @@ func local_request_BackupsService_ListScheduledBackups_0(ctx context.Context, ma return msg, metadata, err } -func request_BackupsService_ChangeScheduledBackup_0(ctx context.Context, marshaler runtime.Marshaler, client BackupsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func request_BackupService_ChangeScheduledBackup_0(ctx context.Context, marshaler runtime.Marshaler, client BackupServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ChangeScheduledBackupRequest var metadata runtime.ServerMetadata @@ -141,7 +141,7 @@ func request_BackupsService_ChangeScheduledBackup_0(ctx context.Context, marshal return msg, metadata, err } -func local_request_BackupsService_ChangeScheduledBackup_0(ctx context.Context, marshaler runtime.Marshaler, server BackupsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func local_request_BackupService_ChangeScheduledBackup_0(ctx context.Context, marshaler runtime.Marshaler, server BackupServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq ChangeScheduledBackupRequest var metadata runtime.ServerMetadata @@ -153,7 +153,7 @@ func local_request_BackupsService_ChangeScheduledBackup_0(ctx context.Context, m return msg, metadata, err } -func request_BackupsService_RemoveScheduledBackup_0(ctx context.Context, marshaler runtime.Marshaler, client BackupsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func request_BackupService_RemoveScheduledBackup_0(ctx context.Context, marshaler runtime.Marshaler, client BackupServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq RemoveScheduledBackupRequest var metadata runtime.ServerMetadata @@ -165,7 +165,7 @@ func request_BackupsService_RemoveScheduledBackup_0(ctx context.Context, marshal return msg, metadata, err } -func local_request_BackupsService_RemoveScheduledBackup_0(ctx context.Context, marshaler runtime.Marshaler, server BackupsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func local_request_BackupService_RemoveScheduledBackup_0(ctx context.Context, marshaler runtime.Marshaler, server BackupServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq RemoveScheduledBackupRequest var metadata runtime.ServerMetadata @@ -177,7 +177,7 @@ func local_request_BackupsService_RemoveScheduledBackup_0(ctx context.Context, m return msg, metadata, err } -func request_BackupsService_GetLogs_0(ctx context.Context, marshaler runtime.Marshaler, client BackupsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func request_BackupService_GetLogs_0(ctx context.Context, marshaler runtime.Marshaler, client BackupServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq GetLogsRequest var metadata runtime.ServerMetadata @@ -189,7 +189,7 @@ func request_BackupsService_GetLogs_0(ctx context.Context, marshaler runtime.Mar return msg, metadata, err } -func local_request_BackupsService_GetLogs_0(ctx context.Context, marshaler runtime.Marshaler, server BackupsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { +func local_request_BackupService_GetLogs_0(ctx context.Context, marshaler runtime.Marshaler, server BackupServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq GetLogsRequest var metadata runtime.ServerMetadata @@ -201,12 +201,12 @@ func local_request_BackupsService_GetLogs_0(ctx context.Context, marshaler runti return msg, metadata, err } -// RegisterBackupsServiceHandlerServer registers the http handlers for service BackupsService to "mux". -// UnaryRPC :call BackupsServiceServer directly. +// RegisterBackupServiceHandlerServer registers the http handlers for service BackupService to "mux". +// UnaryRPC :call BackupServiceServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterBackupsServiceHandlerFromEndpoint instead. -func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server BackupsServiceServer) error { - mux.Handle("POST", pattern_BackupsService_StartBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterBackupServiceHandlerFromEndpoint instead. +func RegisterBackupServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server BackupServiceServer) error { + mux.Handle("POST", pattern_BackupService_StartBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -214,12 +214,12 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupsService/StartBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/Start")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupService/StartBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/Start")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_BackupsService_StartBackup_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_BackupService_StartBackup_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -227,10 +227,10 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve return } - forward_BackupsService_StartBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_StartBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_ListArtifactCompatibleServices_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_ListArtifactCompatibleServices_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -238,12 +238,12 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupsService/ListArtifactCompatibleServices", runtime.WithHTTPPathPattern("/v1/backup/Backups/ListArtifactCompatibleServices")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupService/ListArtifactCompatibleServices", runtime.WithHTTPPathPattern("/v1/backup/Backups/ListArtifactCompatibleServices")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_BackupsService_ListArtifactCompatibleServices_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_BackupService_ListArtifactCompatibleServices_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -251,10 +251,10 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve return } - forward_BackupsService_ListArtifactCompatibleServices_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_ListArtifactCompatibleServices_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_ScheduleBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_ScheduleBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -262,12 +262,12 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupsService/ScheduleBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/Schedule")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupService/ScheduleBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/Schedule")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_BackupsService_ScheduleBackup_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_BackupService_ScheduleBackup_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -275,10 +275,10 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve return } - forward_BackupsService_ScheduleBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_ScheduleBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_ListScheduledBackups_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_ListScheduledBackups_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -286,12 +286,12 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupsService/ListScheduledBackups", runtime.WithHTTPPathPattern("/v1/backup/Backups/ListScheduled")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupService/ListScheduledBackups", runtime.WithHTTPPathPattern("/v1/backup/Backups/ListScheduled")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_BackupsService_ListScheduledBackups_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_BackupService_ListScheduledBackups_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -299,10 +299,10 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve return } - forward_BackupsService_ListScheduledBackups_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_ListScheduledBackups_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_ChangeScheduledBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_ChangeScheduledBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -310,12 +310,12 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupsService/ChangeScheduledBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/ChangeScheduled")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupService/ChangeScheduledBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/ChangeScheduled")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_BackupsService_ChangeScheduledBackup_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_BackupService_ChangeScheduledBackup_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -323,10 +323,10 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve return } - forward_BackupsService_ChangeScheduledBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_ChangeScheduledBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_RemoveScheduledBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_RemoveScheduledBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -334,12 +334,12 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupsService/RemoveScheduledBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/RemoveScheduled")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupService/RemoveScheduledBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/RemoveScheduled")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_BackupsService_RemoveScheduledBackup_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_BackupService_RemoveScheduledBackup_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -347,10 +347,10 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve return } - forward_BackupsService_RemoveScheduledBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_RemoveScheduledBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_GetLogs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_GetLogs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -358,12 +358,12 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupsService/GetLogs", runtime.WithHTTPPathPattern("/v1/backup/Backups/GetLogs")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/backup.v1.BackupService/GetLogs", runtime.WithHTTPPathPattern("/v1/backup/Backups/GetLogs")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_BackupsService_GetLogs_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_BackupService_GetLogs_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -371,15 +371,15 @@ func RegisterBackupsServiceHandlerServer(ctx context.Context, mux *runtime.Serve return } - forward_BackupsService_GetLogs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_GetLogs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) return nil } -// RegisterBackupsServiceHandlerFromEndpoint is same as RegisterBackupsServiceHandler but +// RegisterBackupServiceHandlerFromEndpoint is same as RegisterBackupServiceHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. -func RegisterBackupsServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { +func RegisterBackupServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { conn, err := grpc.DialContext(ctx, endpoint, opts...) if err != nil { return err @@ -399,199 +399,199 @@ func RegisterBackupsServiceHandlerFromEndpoint(ctx context.Context, mux *runtime }() }() - return RegisterBackupsServiceHandler(ctx, mux, conn) + return RegisterBackupServiceHandler(ctx, mux, conn) } -// RegisterBackupsServiceHandler registers the http handlers for service BackupsService to "mux". +// RegisterBackupServiceHandler registers the http handlers for service BackupService to "mux". // The handlers forward requests to the grpc endpoint over "conn". -func RegisterBackupsServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { - return RegisterBackupsServiceHandlerClient(ctx, mux, NewBackupsServiceClient(conn)) +func RegisterBackupServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterBackupServiceHandlerClient(ctx, mux, NewBackupServiceClient(conn)) } -// RegisterBackupsServiceHandlerClient registers the http handlers for service BackupsService -// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "BackupsServiceClient". -// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "BackupsServiceClient" +// RegisterBackupServiceHandlerClient registers the http handlers for service BackupService +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "BackupServiceClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "BackupServiceClient" // doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in -// "BackupsServiceClient" to call the correct interceptors. -func RegisterBackupsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client BackupsServiceClient) error { - mux.Handle("POST", pattern_BackupsService_StartBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { +// "BackupServiceClient" to call the correct interceptors. +func RegisterBackupServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client BackupServiceClient) error { + mux.Handle("POST", pattern_BackupService_StartBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupsService/StartBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/Start")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupService/StartBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/Start")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_BackupsService_StartBackup_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_BackupService_StartBackup_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_BackupsService_StartBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_StartBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_ListArtifactCompatibleServices_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_ListArtifactCompatibleServices_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupsService/ListArtifactCompatibleServices", runtime.WithHTTPPathPattern("/v1/backup/Backups/ListArtifactCompatibleServices")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupService/ListArtifactCompatibleServices", runtime.WithHTTPPathPattern("/v1/backup/Backups/ListArtifactCompatibleServices")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_BackupsService_ListArtifactCompatibleServices_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_BackupService_ListArtifactCompatibleServices_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_BackupsService_ListArtifactCompatibleServices_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_ListArtifactCompatibleServices_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_ScheduleBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_ScheduleBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupsService/ScheduleBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/Schedule")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupService/ScheduleBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/Schedule")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_BackupsService_ScheduleBackup_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_BackupService_ScheduleBackup_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_BackupsService_ScheduleBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_ScheduleBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_ListScheduledBackups_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_ListScheduledBackups_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupsService/ListScheduledBackups", runtime.WithHTTPPathPattern("/v1/backup/Backups/ListScheduled")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupService/ListScheduledBackups", runtime.WithHTTPPathPattern("/v1/backup/Backups/ListScheduled")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_BackupsService_ListScheduledBackups_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_BackupService_ListScheduledBackups_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_BackupsService_ListScheduledBackups_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_ListScheduledBackups_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_ChangeScheduledBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_ChangeScheduledBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupsService/ChangeScheduledBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/ChangeScheduled")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupService/ChangeScheduledBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/ChangeScheduled")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_BackupsService_ChangeScheduledBackup_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_BackupService_ChangeScheduledBackup_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_BackupsService_ChangeScheduledBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_ChangeScheduledBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_RemoveScheduledBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_RemoveScheduledBackup_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupsService/RemoveScheduledBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/RemoveScheduled")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupService/RemoveScheduledBackup", runtime.WithHTTPPathPattern("/v1/backup/Backups/RemoveScheduled")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_BackupsService_RemoveScheduledBackup_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_BackupService_RemoveScheduledBackup_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_BackupsService_RemoveScheduledBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_RemoveScheduledBackup_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_BackupsService_GetLogs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_BackupService_GetLogs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupsService/GetLogs", runtime.WithHTTPPathPattern("/v1/backup/Backups/GetLogs")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/backup.v1.BackupService/GetLogs", runtime.WithHTTPPathPattern("/v1/backup/Backups/GetLogs")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_BackupsService_GetLogs_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_BackupService_GetLogs_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_BackupsService_GetLogs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_BackupService_GetLogs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) return nil } var ( - pattern_BackupsService_StartBackup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "Start"}, "")) + pattern_BackupService_StartBackup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "Start"}, "")) - pattern_BackupsService_ListArtifactCompatibleServices_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "ListArtifactCompatibleServices"}, "")) + pattern_BackupService_ListArtifactCompatibleServices_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "ListArtifactCompatibleServices"}, "")) - pattern_BackupsService_ScheduleBackup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "Schedule"}, "")) + pattern_BackupService_ScheduleBackup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "Schedule"}, "")) - pattern_BackupsService_ListScheduledBackups_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "ListScheduled"}, "")) + pattern_BackupService_ListScheduledBackups_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "ListScheduled"}, "")) - pattern_BackupsService_ChangeScheduledBackup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "ChangeScheduled"}, "")) + pattern_BackupService_ChangeScheduledBackup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "ChangeScheduled"}, "")) - pattern_BackupsService_RemoveScheduledBackup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "RemoveScheduled"}, "")) + pattern_BackupService_RemoveScheduledBackup_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "RemoveScheduled"}, "")) - pattern_BackupsService_GetLogs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "GetLogs"}, "")) + pattern_BackupService_GetLogs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "backup", "Backups", "GetLogs"}, "")) ) var ( - forward_BackupsService_StartBackup_0 = runtime.ForwardResponseMessage + forward_BackupService_StartBackup_0 = runtime.ForwardResponseMessage - forward_BackupsService_ListArtifactCompatibleServices_0 = runtime.ForwardResponseMessage + forward_BackupService_ListArtifactCompatibleServices_0 = runtime.ForwardResponseMessage - forward_BackupsService_ScheduleBackup_0 = runtime.ForwardResponseMessage + forward_BackupService_ScheduleBackup_0 = runtime.ForwardResponseMessage - forward_BackupsService_ListScheduledBackups_0 = runtime.ForwardResponseMessage + forward_BackupService_ListScheduledBackups_0 = runtime.ForwardResponseMessage - forward_BackupsService_ChangeScheduledBackup_0 = runtime.ForwardResponseMessage + forward_BackupService_ChangeScheduledBackup_0 = runtime.ForwardResponseMessage - forward_BackupsService_RemoveScheduledBackup_0 = runtime.ForwardResponseMessage + forward_BackupService_RemoveScheduledBackup_0 = runtime.ForwardResponseMessage - forward_BackupsService_GetLogs_0 = runtime.ForwardResponseMessage + forward_BackupService_GetLogs_0 = runtime.ForwardResponseMessage ) diff --git a/api/backup/v1/backups.pb.validate.go b/api/backup/v1/backup.pb.validate.go similarity index 99% rename from api/backup/v1/backups.pb.validate.go rename to api/backup/v1/backup.pb.validate.go index 84d2eda331..716f932f13 100644 --- a/api/backup/v1/backups.pb.validate.go +++ b/api/backup/v1/backup.pb.validate.go @@ -1,5 +1,5 @@ // Code generated by protoc-gen-validate. DO NOT EDIT. -// source: backup/v1/backups.proto +// source: backup/v1/backup.proto package backupv1 diff --git a/api/backup/v1/backups.proto b/api/backup/v1/backup.proto similarity index 99% rename from api/backup/v1/backups.proto rename to api/backup/v1/backup.proto index 9d124f4fe8..c6bd9fdc31 100644 --- a/api/backup/v1/backups.proto +++ b/api/backup/v1/backup.proto @@ -171,7 +171,7 @@ message LogChunk { } // Backups service handles backup operations to DB. -service BackupsService { +service BackupService { // StartBackup request backup specified service to location. rpc StartBackup(StartBackupRequest) returns (StartBackupResponse) { option (google.api.http) = { diff --git a/api/backup/v1/backup_grpc.pb.go b/api/backup/v1/backup_grpc.pb.go new file mode 100644 index 0000000000..39930dbcf1 --- /dev/null +++ b/api/backup/v1/backup_grpc.pb.go @@ -0,0 +1,351 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc (unknown) +// source: backup/v1/backup.proto + +package backupv1 + +import ( + context "context" + + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + BackupService_StartBackup_FullMethodName = "/backup.v1.BackupService/StartBackup" + BackupService_ListArtifactCompatibleServices_FullMethodName = "/backup.v1.BackupService/ListArtifactCompatibleServices" + BackupService_ScheduleBackup_FullMethodName = "/backup.v1.BackupService/ScheduleBackup" + BackupService_ListScheduledBackups_FullMethodName = "/backup.v1.BackupService/ListScheduledBackups" + BackupService_ChangeScheduledBackup_FullMethodName = "/backup.v1.BackupService/ChangeScheduledBackup" + BackupService_RemoveScheduledBackup_FullMethodName = "/backup.v1.BackupService/RemoveScheduledBackup" + BackupService_GetLogs_FullMethodName = "/backup.v1.BackupService/GetLogs" +) + +// BackupServiceClient is the client API for BackupService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type BackupServiceClient interface { + // StartBackup request backup specified service to location. + StartBackup(ctx context.Context, in *StartBackupRequest, opts ...grpc.CallOption) (*StartBackupResponse, error) + // ListArtifactCompatibleServices lists compatible services for restoring a backup. + ListArtifactCompatibleServices(ctx context.Context, in *ListArtifactCompatibleServicesRequest, opts ...grpc.CallOption) (*ListArtifactCompatibleServicesResponse, error) + // ScheduleBackup schedules repeated backup. + ScheduleBackup(ctx context.Context, in *ScheduleBackupRequest, opts ...grpc.CallOption) (*ScheduleBackupResponse, error) + // ListScheduledBackups returns all scheduled backups. + ListScheduledBackups(ctx context.Context, in *ListScheduledBackupsRequest, opts ...grpc.CallOption) (*ListScheduledBackupsResponse, error) + // ChangeScheduledBackup changes existing scheduled backup. + ChangeScheduledBackup(ctx context.Context, in *ChangeScheduledBackupRequest, opts ...grpc.CallOption) (*ChangeScheduledBackupResponse, error) + // RemoveScheduledBackup removes existing scheduled backup. + RemoveScheduledBackup(ctx context.Context, in *RemoveScheduledBackupRequest, opts ...grpc.CallOption) (*RemoveScheduledBackupResponse, error) + // GetLogs returns logs from the underlying tools for a backup/restore job. + GetLogs(ctx context.Context, in *GetLogsRequest, opts ...grpc.CallOption) (*GetLogsResponse, error) +} + +type backupServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewBackupServiceClient(cc grpc.ClientConnInterface) BackupServiceClient { + return &backupServiceClient{cc} +} + +func (c *backupServiceClient) StartBackup(ctx context.Context, in *StartBackupRequest, opts ...grpc.CallOption) (*StartBackupResponse, error) { + out := new(StartBackupResponse) + err := c.cc.Invoke(ctx, BackupService_StartBackup_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *backupServiceClient) ListArtifactCompatibleServices(ctx context.Context, in *ListArtifactCompatibleServicesRequest, opts ...grpc.CallOption) (*ListArtifactCompatibleServicesResponse, error) { + out := new(ListArtifactCompatibleServicesResponse) + err := c.cc.Invoke(ctx, BackupService_ListArtifactCompatibleServices_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *backupServiceClient) ScheduleBackup(ctx context.Context, in *ScheduleBackupRequest, opts ...grpc.CallOption) (*ScheduleBackupResponse, error) { + out := new(ScheduleBackupResponse) + err := c.cc.Invoke(ctx, BackupService_ScheduleBackup_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *backupServiceClient) ListScheduledBackups(ctx context.Context, in *ListScheduledBackupsRequest, opts ...grpc.CallOption) (*ListScheduledBackupsResponse, error) { + out := new(ListScheduledBackupsResponse) + err := c.cc.Invoke(ctx, BackupService_ListScheduledBackups_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *backupServiceClient) ChangeScheduledBackup(ctx context.Context, in *ChangeScheduledBackupRequest, opts ...grpc.CallOption) (*ChangeScheduledBackupResponse, error) { + out := new(ChangeScheduledBackupResponse) + err := c.cc.Invoke(ctx, BackupService_ChangeScheduledBackup_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *backupServiceClient) RemoveScheduledBackup(ctx context.Context, in *RemoveScheduledBackupRequest, opts ...grpc.CallOption) (*RemoveScheduledBackupResponse, error) { + out := new(RemoveScheduledBackupResponse) + err := c.cc.Invoke(ctx, BackupService_RemoveScheduledBackup_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *backupServiceClient) GetLogs(ctx context.Context, in *GetLogsRequest, opts ...grpc.CallOption) (*GetLogsResponse, error) { + out := new(GetLogsResponse) + err := c.cc.Invoke(ctx, BackupService_GetLogs_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// BackupServiceServer is the server API for BackupService service. +// All implementations must embed UnimplementedBackupServiceServer +// for forward compatibility +type BackupServiceServer interface { + // StartBackup request backup specified service to location. + StartBackup(context.Context, *StartBackupRequest) (*StartBackupResponse, error) + // ListArtifactCompatibleServices lists compatible services for restoring a backup. + ListArtifactCompatibleServices(context.Context, *ListArtifactCompatibleServicesRequest) (*ListArtifactCompatibleServicesResponse, error) + // ScheduleBackup schedules repeated backup. + ScheduleBackup(context.Context, *ScheduleBackupRequest) (*ScheduleBackupResponse, error) + // ListScheduledBackups returns all scheduled backups. + ListScheduledBackups(context.Context, *ListScheduledBackupsRequest) (*ListScheduledBackupsResponse, error) + // ChangeScheduledBackup changes existing scheduled backup. + ChangeScheduledBackup(context.Context, *ChangeScheduledBackupRequest) (*ChangeScheduledBackupResponse, error) + // RemoveScheduledBackup removes existing scheduled backup. + RemoveScheduledBackup(context.Context, *RemoveScheduledBackupRequest) (*RemoveScheduledBackupResponse, error) + // GetLogs returns logs from the underlying tools for a backup/restore job. + GetLogs(context.Context, *GetLogsRequest) (*GetLogsResponse, error) + mustEmbedUnimplementedBackupServiceServer() +} + +// UnimplementedBackupServiceServer must be embedded to have forward compatible implementations. +type UnimplementedBackupServiceServer struct{} + +func (UnimplementedBackupServiceServer) StartBackup(context.Context, *StartBackupRequest) (*StartBackupResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method StartBackup not implemented") +} + +func (UnimplementedBackupServiceServer) ListArtifactCompatibleServices(context.Context, *ListArtifactCompatibleServicesRequest) (*ListArtifactCompatibleServicesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListArtifactCompatibleServices not implemented") +} + +func (UnimplementedBackupServiceServer) ScheduleBackup(context.Context, *ScheduleBackupRequest) (*ScheduleBackupResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ScheduleBackup not implemented") +} + +func (UnimplementedBackupServiceServer) ListScheduledBackups(context.Context, *ListScheduledBackupsRequest) (*ListScheduledBackupsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListScheduledBackups not implemented") +} + +func (UnimplementedBackupServiceServer) ChangeScheduledBackup(context.Context, *ChangeScheduledBackupRequest) (*ChangeScheduledBackupResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ChangeScheduledBackup not implemented") +} + +func (UnimplementedBackupServiceServer) RemoveScheduledBackup(context.Context, *RemoveScheduledBackupRequest) (*RemoveScheduledBackupResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method RemoveScheduledBackup not implemented") +} + +func (UnimplementedBackupServiceServer) GetLogs(context.Context, *GetLogsRequest) (*GetLogsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetLogs not implemented") +} +func (UnimplementedBackupServiceServer) mustEmbedUnimplementedBackupServiceServer() {} + +// UnsafeBackupServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to BackupServiceServer will +// result in compilation errors. +type UnsafeBackupServiceServer interface { + mustEmbedUnimplementedBackupServiceServer() +} + +func RegisterBackupServiceServer(s grpc.ServiceRegistrar, srv BackupServiceServer) { + s.RegisterService(&BackupService_ServiceDesc, srv) +} + +func _BackupService_StartBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(StartBackupRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BackupServiceServer).StartBackup(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BackupService_StartBackup_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BackupServiceServer).StartBackup(ctx, req.(*StartBackupRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BackupService_ListArtifactCompatibleServices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListArtifactCompatibleServicesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BackupServiceServer).ListArtifactCompatibleServices(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BackupService_ListArtifactCompatibleServices_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BackupServiceServer).ListArtifactCompatibleServices(ctx, req.(*ListArtifactCompatibleServicesRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BackupService_ScheduleBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ScheduleBackupRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BackupServiceServer).ScheduleBackup(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BackupService_ScheduleBackup_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BackupServiceServer).ScheduleBackup(ctx, req.(*ScheduleBackupRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BackupService_ListScheduledBackups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListScheduledBackupsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BackupServiceServer).ListScheduledBackups(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BackupService_ListScheduledBackups_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BackupServiceServer).ListScheduledBackups(ctx, req.(*ListScheduledBackupsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BackupService_ChangeScheduledBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ChangeScheduledBackupRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BackupServiceServer).ChangeScheduledBackup(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BackupService_ChangeScheduledBackup_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BackupServiceServer).ChangeScheduledBackup(ctx, req.(*ChangeScheduledBackupRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BackupService_RemoveScheduledBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(RemoveScheduledBackupRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BackupServiceServer).RemoveScheduledBackup(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BackupService_RemoveScheduledBackup_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BackupServiceServer).RemoveScheduledBackup(ctx, req.(*RemoveScheduledBackupRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BackupService_GetLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetLogsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BackupServiceServer).GetLogs(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: BackupService_GetLogs_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BackupServiceServer).GetLogs(ctx, req.(*GetLogsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// BackupService_ServiceDesc is the grpc.ServiceDesc for BackupService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var BackupService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "backup.v1.BackupService", + HandlerType: (*BackupServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "StartBackup", + Handler: _BackupService_StartBackup_Handler, + }, + { + MethodName: "ListArtifactCompatibleServices", + Handler: _BackupService_ListArtifactCompatibleServices_Handler, + }, + { + MethodName: "ScheduleBackup", + Handler: _BackupService_ScheduleBackup_Handler, + }, + { + MethodName: "ListScheduledBackups", + Handler: _BackupService_ListScheduledBackups_Handler, + }, + { + MethodName: "ChangeScheduledBackup", + Handler: _BackupService_ChangeScheduledBackup_Handler, + }, + { + MethodName: "RemoveScheduledBackup", + Handler: _BackupService_RemoveScheduledBackup_Handler, + }, + { + MethodName: "GetLogs", + Handler: _BackupService_GetLogs_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "backup/v1/backup.proto", +} diff --git a/api/backup/v1/backups_grpc.pb.go b/api/backup/v1/backups_grpc.pb.go deleted file mode 100644 index 28855dcc80..0000000000 --- a/api/backup/v1/backups_grpc.pb.go +++ /dev/null @@ -1,351 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.3.0 -// - protoc (unknown) -// source: backup/v1/backups.proto - -package backupv1 - -import ( - context "context" - - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 - -const ( - BackupsService_StartBackup_FullMethodName = "/backup.v1.BackupsService/StartBackup" - BackupsService_ListArtifactCompatibleServices_FullMethodName = "/backup.v1.BackupsService/ListArtifactCompatibleServices" - BackupsService_ScheduleBackup_FullMethodName = "/backup.v1.BackupsService/ScheduleBackup" - BackupsService_ListScheduledBackups_FullMethodName = "/backup.v1.BackupsService/ListScheduledBackups" - BackupsService_ChangeScheduledBackup_FullMethodName = "/backup.v1.BackupsService/ChangeScheduledBackup" - BackupsService_RemoveScheduledBackup_FullMethodName = "/backup.v1.BackupsService/RemoveScheduledBackup" - BackupsService_GetLogs_FullMethodName = "/backup.v1.BackupsService/GetLogs" -) - -// BackupsServiceClient is the client API for BackupsService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type BackupsServiceClient interface { - // StartBackup request backup specified service to location. - StartBackup(ctx context.Context, in *StartBackupRequest, opts ...grpc.CallOption) (*StartBackupResponse, error) - // ListArtifactCompatibleServices lists compatible services for restoring a backup. - ListArtifactCompatibleServices(ctx context.Context, in *ListArtifactCompatibleServicesRequest, opts ...grpc.CallOption) (*ListArtifactCompatibleServicesResponse, error) - // ScheduleBackup schedules repeated backup. - ScheduleBackup(ctx context.Context, in *ScheduleBackupRequest, opts ...grpc.CallOption) (*ScheduleBackupResponse, error) - // ListScheduledBackups returns all scheduled backups. - ListScheduledBackups(ctx context.Context, in *ListScheduledBackupsRequest, opts ...grpc.CallOption) (*ListScheduledBackupsResponse, error) - // ChangeScheduledBackup changes existing scheduled backup. - ChangeScheduledBackup(ctx context.Context, in *ChangeScheduledBackupRequest, opts ...grpc.CallOption) (*ChangeScheduledBackupResponse, error) - // RemoveScheduledBackup removes existing scheduled backup. - RemoveScheduledBackup(ctx context.Context, in *RemoveScheduledBackupRequest, opts ...grpc.CallOption) (*RemoveScheduledBackupResponse, error) - // GetLogs returns logs from the underlying tools for a backup/restore job. - GetLogs(ctx context.Context, in *GetLogsRequest, opts ...grpc.CallOption) (*GetLogsResponse, error) -} - -type backupsServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewBackupsServiceClient(cc grpc.ClientConnInterface) BackupsServiceClient { - return &backupsServiceClient{cc} -} - -func (c *backupsServiceClient) StartBackup(ctx context.Context, in *StartBackupRequest, opts ...grpc.CallOption) (*StartBackupResponse, error) { - out := new(StartBackupResponse) - err := c.cc.Invoke(ctx, BackupsService_StartBackup_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *backupsServiceClient) ListArtifactCompatibleServices(ctx context.Context, in *ListArtifactCompatibleServicesRequest, opts ...grpc.CallOption) (*ListArtifactCompatibleServicesResponse, error) { - out := new(ListArtifactCompatibleServicesResponse) - err := c.cc.Invoke(ctx, BackupsService_ListArtifactCompatibleServices_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *backupsServiceClient) ScheduleBackup(ctx context.Context, in *ScheduleBackupRequest, opts ...grpc.CallOption) (*ScheduleBackupResponse, error) { - out := new(ScheduleBackupResponse) - err := c.cc.Invoke(ctx, BackupsService_ScheduleBackup_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *backupsServiceClient) ListScheduledBackups(ctx context.Context, in *ListScheduledBackupsRequest, opts ...grpc.CallOption) (*ListScheduledBackupsResponse, error) { - out := new(ListScheduledBackupsResponse) - err := c.cc.Invoke(ctx, BackupsService_ListScheduledBackups_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *backupsServiceClient) ChangeScheduledBackup(ctx context.Context, in *ChangeScheduledBackupRequest, opts ...grpc.CallOption) (*ChangeScheduledBackupResponse, error) { - out := new(ChangeScheduledBackupResponse) - err := c.cc.Invoke(ctx, BackupsService_ChangeScheduledBackup_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *backupsServiceClient) RemoveScheduledBackup(ctx context.Context, in *RemoveScheduledBackupRequest, opts ...grpc.CallOption) (*RemoveScheduledBackupResponse, error) { - out := new(RemoveScheduledBackupResponse) - err := c.cc.Invoke(ctx, BackupsService_RemoveScheduledBackup_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *backupsServiceClient) GetLogs(ctx context.Context, in *GetLogsRequest, opts ...grpc.CallOption) (*GetLogsResponse, error) { - out := new(GetLogsResponse) - err := c.cc.Invoke(ctx, BackupsService_GetLogs_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// BackupsServiceServer is the server API for BackupsService service. -// All implementations must embed UnimplementedBackupsServiceServer -// for forward compatibility -type BackupsServiceServer interface { - // StartBackup request backup specified service to location. - StartBackup(context.Context, *StartBackupRequest) (*StartBackupResponse, error) - // ListArtifactCompatibleServices lists compatible services for restoring a backup. - ListArtifactCompatibleServices(context.Context, *ListArtifactCompatibleServicesRequest) (*ListArtifactCompatibleServicesResponse, error) - // ScheduleBackup schedules repeated backup. - ScheduleBackup(context.Context, *ScheduleBackupRequest) (*ScheduleBackupResponse, error) - // ListScheduledBackups returns all scheduled backups. - ListScheduledBackups(context.Context, *ListScheduledBackupsRequest) (*ListScheduledBackupsResponse, error) - // ChangeScheduledBackup changes existing scheduled backup. - ChangeScheduledBackup(context.Context, *ChangeScheduledBackupRequest) (*ChangeScheduledBackupResponse, error) - // RemoveScheduledBackup removes existing scheduled backup. - RemoveScheduledBackup(context.Context, *RemoveScheduledBackupRequest) (*RemoveScheduledBackupResponse, error) - // GetLogs returns logs from the underlying tools for a backup/restore job. - GetLogs(context.Context, *GetLogsRequest) (*GetLogsResponse, error) - mustEmbedUnimplementedBackupsServiceServer() -} - -// UnimplementedBackupsServiceServer must be embedded to have forward compatible implementations. -type UnimplementedBackupsServiceServer struct{} - -func (UnimplementedBackupsServiceServer) StartBackup(context.Context, *StartBackupRequest) (*StartBackupResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method StartBackup not implemented") -} - -func (UnimplementedBackupsServiceServer) ListArtifactCompatibleServices(context.Context, *ListArtifactCompatibleServicesRequest) (*ListArtifactCompatibleServicesResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ListArtifactCompatibleServices not implemented") -} - -func (UnimplementedBackupsServiceServer) ScheduleBackup(context.Context, *ScheduleBackupRequest) (*ScheduleBackupResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ScheduleBackup not implemented") -} - -func (UnimplementedBackupsServiceServer) ListScheduledBackups(context.Context, *ListScheduledBackupsRequest) (*ListScheduledBackupsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ListScheduledBackups not implemented") -} - -func (UnimplementedBackupsServiceServer) ChangeScheduledBackup(context.Context, *ChangeScheduledBackupRequest) (*ChangeScheduledBackupResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeScheduledBackup not implemented") -} - -func (UnimplementedBackupsServiceServer) RemoveScheduledBackup(context.Context, *RemoveScheduledBackupRequest) (*RemoveScheduledBackupResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method RemoveScheduledBackup not implemented") -} - -func (UnimplementedBackupsServiceServer) GetLogs(context.Context, *GetLogsRequest) (*GetLogsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetLogs not implemented") -} -func (UnimplementedBackupsServiceServer) mustEmbedUnimplementedBackupsServiceServer() {} - -// UnsafeBackupsServiceServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to BackupsServiceServer will -// result in compilation errors. -type UnsafeBackupsServiceServer interface { - mustEmbedUnimplementedBackupsServiceServer() -} - -func RegisterBackupsServiceServer(s grpc.ServiceRegistrar, srv BackupsServiceServer) { - s.RegisterService(&BackupsService_ServiceDesc, srv) -} - -func _BackupsService_StartBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(StartBackupRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BackupsServiceServer).StartBackup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: BackupsService_StartBackup_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BackupsServiceServer).StartBackup(ctx, req.(*StartBackupRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _BackupsService_ListArtifactCompatibleServices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListArtifactCompatibleServicesRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BackupsServiceServer).ListArtifactCompatibleServices(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: BackupsService_ListArtifactCompatibleServices_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BackupsServiceServer).ListArtifactCompatibleServices(ctx, req.(*ListArtifactCompatibleServicesRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _BackupsService_ScheduleBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ScheduleBackupRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BackupsServiceServer).ScheduleBackup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: BackupsService_ScheduleBackup_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BackupsServiceServer).ScheduleBackup(ctx, req.(*ScheduleBackupRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _BackupsService_ListScheduledBackups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListScheduledBackupsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BackupsServiceServer).ListScheduledBackups(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: BackupsService_ListScheduledBackups_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BackupsServiceServer).ListScheduledBackups(ctx, req.(*ListScheduledBackupsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _BackupsService_ChangeScheduledBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeScheduledBackupRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BackupsServiceServer).ChangeScheduledBackup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: BackupsService_ChangeScheduledBackup_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BackupsServiceServer).ChangeScheduledBackup(ctx, req.(*ChangeScheduledBackupRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _BackupsService_RemoveScheduledBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RemoveScheduledBackupRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BackupsServiceServer).RemoveScheduledBackup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: BackupsService_RemoveScheduledBackup_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BackupsServiceServer).RemoveScheduledBackup(ctx, req.(*RemoveScheduledBackupRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _BackupsService_GetLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetLogsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BackupsServiceServer).GetLogs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: BackupsService_GetLogs_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BackupsServiceServer).GetLogs(ctx, req.(*GetLogsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// BackupsService_ServiceDesc is the grpc.ServiceDesc for BackupsService service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var BackupsService_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "backup.v1.BackupsService", - HandlerType: (*BackupsServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "StartBackup", - Handler: _BackupsService_StartBackup_Handler, - }, - { - MethodName: "ListArtifactCompatibleServices", - Handler: _BackupsService_ListArtifactCompatibleServices_Handler, - }, - { - MethodName: "ScheduleBackup", - Handler: _BackupsService_ScheduleBackup_Handler, - }, - { - MethodName: "ListScheduledBackups", - Handler: _BackupsService_ListScheduledBackups_Handler, - }, - { - MethodName: "ChangeScheduledBackup", - Handler: _BackupsService_ChangeScheduledBackup_Handler, - }, - { - MethodName: "RemoveScheduledBackup", - Handler: _BackupsService_RemoveScheduledBackup_Handler, - }, - { - MethodName: "GetLogs", - Handler: _BackupsService_GetLogs_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "backup/v1/backups.proto", -} diff --git a/api/backup/v1/json/client/backups_service/backups_service_client.go b/api/backup/v1/json/client/backup_service/backup_service_client.go similarity index 99% rename from api/backup/v1/json/client/backups_service/backups_service_client.go rename to api/backup/v1/json/client/backup_service/backup_service_client.go index f4d5218743..db0e4fe4eb 100644 --- a/api/backup/v1/json/client/backups_service/backups_service_client.go +++ b/api/backup/v1/json/client/backup_service/backup_service_client.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command @@ -10,13 +10,13 @@ import ( "github.com/go-openapi/strfmt" ) -// New creates a new backups service API client. +// New creates a new backup service API client. func New(transport runtime.ClientTransport, formats strfmt.Registry) ClientService { return &Client{transport: transport, formats: formats} } /* -Client for backups service API +Client for backup service API */ type Client struct { transport runtime.ClientTransport diff --git a/api/backup/v1/json/client/backups_service/change_scheduled_backup_parameters.go b/api/backup/v1/json/client/backup_service/change_scheduled_backup_parameters.go similarity index 99% rename from api/backup/v1/json/client/backups_service/change_scheduled_backup_parameters.go rename to api/backup/v1/json/client/backup_service/change_scheduled_backup_parameters.go index 52b6ba7258..484dc341fb 100644 --- a/api/backup/v1/json/client/backups_service/change_scheduled_backup_parameters.go +++ b/api/backup/v1/json/client/backup_service/change_scheduled_backup_parameters.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/change_scheduled_backup_responses.go b/api/backup/v1/json/client/backup_service/change_scheduled_backup_responses.go similarity index 99% rename from api/backup/v1/json/client/backups_service/change_scheduled_backup_responses.go rename to api/backup/v1/json/client/backup_service/change_scheduled_backup_responses.go index 8f3703bac7..0da9c6276f 100644 --- a/api/backup/v1/json/client/backups_service/change_scheduled_backup_responses.go +++ b/api/backup/v1/json/client/backup_service/change_scheduled_backup_responses.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/get_logs_parameters.go b/api/backup/v1/json/client/backup_service/get_logs_parameters.go similarity index 99% rename from api/backup/v1/json/client/backups_service/get_logs_parameters.go rename to api/backup/v1/json/client/backup_service/get_logs_parameters.go index 00c76ba126..776bd4425c 100644 --- a/api/backup/v1/json/client/backups_service/get_logs_parameters.go +++ b/api/backup/v1/json/client/backup_service/get_logs_parameters.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/get_logs_responses.go b/api/backup/v1/json/client/backup_service/get_logs_responses.go similarity index 99% rename from api/backup/v1/json/client/backups_service/get_logs_responses.go rename to api/backup/v1/json/client/backup_service/get_logs_responses.go index a6ca6cf5f7..578b5cd237 100644 --- a/api/backup/v1/json/client/backups_service/get_logs_responses.go +++ b/api/backup/v1/json/client/backup_service/get_logs_responses.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/list_artifact_compatible_services_parameters.go b/api/backup/v1/json/client/backup_service/list_artifact_compatible_services_parameters.go similarity index 99% rename from api/backup/v1/json/client/backups_service/list_artifact_compatible_services_parameters.go rename to api/backup/v1/json/client/backup_service/list_artifact_compatible_services_parameters.go index 16e8f56d82..0b84ddc613 100644 --- a/api/backup/v1/json/client/backups_service/list_artifact_compatible_services_parameters.go +++ b/api/backup/v1/json/client/backup_service/list_artifact_compatible_services_parameters.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/list_artifact_compatible_services_responses.go b/api/backup/v1/json/client/backup_service/list_artifact_compatible_services_responses.go similarity index 99% rename from api/backup/v1/json/client/backups_service/list_artifact_compatible_services_responses.go rename to api/backup/v1/json/client/backup_service/list_artifact_compatible_services_responses.go index 868994d251..57b8e34154 100644 --- a/api/backup/v1/json/client/backups_service/list_artifact_compatible_services_responses.go +++ b/api/backup/v1/json/client/backup_service/list_artifact_compatible_services_responses.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/list_scheduled_backups_parameters.go b/api/backup/v1/json/client/backup_service/list_scheduled_backups_parameters.go similarity index 99% rename from api/backup/v1/json/client/backups_service/list_scheduled_backups_parameters.go rename to api/backup/v1/json/client/backup_service/list_scheduled_backups_parameters.go index 65440ef0b8..91eb13a138 100644 --- a/api/backup/v1/json/client/backups_service/list_scheduled_backups_parameters.go +++ b/api/backup/v1/json/client/backup_service/list_scheduled_backups_parameters.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/list_scheduled_backups_responses.go b/api/backup/v1/json/client/backup_service/list_scheduled_backups_responses.go similarity index 99% rename from api/backup/v1/json/client/backups_service/list_scheduled_backups_responses.go rename to api/backup/v1/json/client/backup_service/list_scheduled_backups_responses.go index 5e1e729536..b50637a36e 100644 --- a/api/backup/v1/json/client/backups_service/list_scheduled_backups_responses.go +++ b/api/backup/v1/json/client/backup_service/list_scheduled_backups_responses.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/remove_scheduled_backup_parameters.go b/api/backup/v1/json/client/backup_service/remove_scheduled_backup_parameters.go similarity index 99% rename from api/backup/v1/json/client/backups_service/remove_scheduled_backup_parameters.go rename to api/backup/v1/json/client/backup_service/remove_scheduled_backup_parameters.go index 38cfb288dc..5bcbf71737 100644 --- a/api/backup/v1/json/client/backups_service/remove_scheduled_backup_parameters.go +++ b/api/backup/v1/json/client/backup_service/remove_scheduled_backup_parameters.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/remove_scheduled_backup_responses.go b/api/backup/v1/json/client/backup_service/remove_scheduled_backup_responses.go similarity index 99% rename from api/backup/v1/json/client/backups_service/remove_scheduled_backup_responses.go rename to api/backup/v1/json/client/backup_service/remove_scheduled_backup_responses.go index 5bd77fbe5e..86a9fba529 100644 --- a/api/backup/v1/json/client/backups_service/remove_scheduled_backup_responses.go +++ b/api/backup/v1/json/client/backup_service/remove_scheduled_backup_responses.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/schedule_backup_parameters.go b/api/backup/v1/json/client/backup_service/schedule_backup_parameters.go similarity index 99% rename from api/backup/v1/json/client/backups_service/schedule_backup_parameters.go rename to api/backup/v1/json/client/backup_service/schedule_backup_parameters.go index abf643ea25..843f97f8cd 100644 --- a/api/backup/v1/json/client/backups_service/schedule_backup_parameters.go +++ b/api/backup/v1/json/client/backup_service/schedule_backup_parameters.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/schedule_backup_responses.go b/api/backup/v1/json/client/backup_service/schedule_backup_responses.go similarity index 99% rename from api/backup/v1/json/client/backups_service/schedule_backup_responses.go rename to api/backup/v1/json/client/backup_service/schedule_backup_responses.go index 2ec1884c7b..38f7b6de42 100644 --- a/api/backup/v1/json/client/backups_service/schedule_backup_responses.go +++ b/api/backup/v1/json/client/backup_service/schedule_backup_responses.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/start_backup_parameters.go b/api/backup/v1/json/client/backup_service/start_backup_parameters.go similarity index 99% rename from api/backup/v1/json/client/backups_service/start_backup_parameters.go rename to api/backup/v1/json/client/backup_service/start_backup_parameters.go index 3eb2253b03..c886e6520d 100644 --- a/api/backup/v1/json/client/backups_service/start_backup_parameters.go +++ b/api/backup/v1/json/client/backup_service/start_backup_parameters.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/backups_service/start_backup_responses.go b/api/backup/v1/json/client/backup_service/start_backup_responses.go similarity index 99% rename from api/backup/v1/json/client/backups_service/start_backup_responses.go rename to api/backup/v1/json/client/backup_service/start_backup_responses.go index 8d061d1045..6d6345d475 100644 --- a/api/backup/v1/json/client/backups_service/start_backup_responses.go +++ b/api/backup/v1/json/client/backup_service/start_backup_responses.go @@ -1,6 +1,6 @@ // Code generated by go-swagger; DO NOT EDIT. -package backups_service +package backup_service // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command diff --git a/api/backup/v1/json/client/pmm_backup_management_api_client.go b/api/backup/v1/json/client/pmm_backup_management_api_client.go index 3d5d56ef62..dc6b95a107 100644 --- a/api/backup/v1/json/client/pmm_backup_management_api_client.go +++ b/api/backup/v1/json/client/pmm_backup_management_api_client.go @@ -11,7 +11,7 @@ import ( "github.com/go-openapi/strfmt" "github.com/percona/pmm/api/backup/v1/json/client/artifacts_service" - "github.com/percona/pmm/api/backup/v1/json/client/backups_service" + "github.com/percona/pmm/api/backup/v1/json/client/backup_service" "github.com/percona/pmm/api/backup/v1/json/client/locations_service" "github.com/percona/pmm/api/backup/v1/json/client/restore_service" ) @@ -59,7 +59,7 @@ func New(transport runtime.ClientTransport, formats strfmt.Registry) *PMMBackupM cli := new(PMMBackupManagementAPI) cli.Transport = transport cli.ArtifactsService = artifacts_service.New(transport, formats) - cli.BackupsService = backups_service.New(transport, formats) + cli.BackupService = backup_service.New(transport, formats) cli.LocationsService = locations_service.New(transport, formats) cli.RestoreService = restore_service.New(transport, formats) return cli @@ -108,7 +108,7 @@ func (cfg *TransportConfig) WithSchemes(schemes []string) *TransportConfig { type PMMBackupManagementAPI struct { ArtifactsService artifacts_service.ClientService - BackupsService backups_service.ClientService + BackupService backup_service.ClientService LocationsService locations_service.ClientService @@ -121,7 +121,7 @@ type PMMBackupManagementAPI struct { func (c *PMMBackupManagementAPI) SetTransport(transport runtime.ClientTransport) { c.Transport = transport c.ArtifactsService.SetTransport(transport) - c.BackupsService.SetTransport(transport) + c.BackupService.SetTransport(transport) c.LocationsService.SetTransport(transport) c.RestoreService.SetTransport(transport) } diff --git a/api/backup/v1/json/v1.json b/api/backup/v1/json/v1.json index 2bd84e5261..9f12d9e7e5 100644 --- a/api/backup/v1/json/v1.json +++ b/api/backup/v1/json/v1.json @@ -386,7 +386,7 @@ "post": { "description": "Change a scheduled backup.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Change a Scheduled Backup", "operationId": "ChangeScheduledBackup", @@ -499,7 +499,7 @@ "post": { "description": "Get logs from the underlying tools for a backup/restore job.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Get Logs", "operationId": "GetLogs", @@ -603,7 +603,7 @@ "post": { "description": "List services that are compatible with the backup artifact.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "List Compatible Services", "operationId": "ListArtifactCompatibleServices", @@ -809,7 +809,7 @@ "post": { "description": "List all scheduled backups.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "List Scheduled Backups", "operationId": "ListScheduledBackups", @@ -993,7 +993,7 @@ "post": { "description": "Remove a scheduled backup.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Remove a Scheduled Backup", "operationId": "RemoveScheduledBackup", @@ -1142,7 +1142,7 @@ "post": { "description": "Schedule a backup to run at a specified time.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Schedule a Backup", "operationId": "ScheduleBackup", @@ -1289,7 +1289,7 @@ "post": { "description": "Could return the Error message in the details containing specific ErrorCode indicating failure reason:\nERROR_CODE_XTRABACKUP_NOT_INSTALLED - xtrabackup is not installed on the service\nERROR_CODE_INVALID_XTRABACKUP - different versions of xtrabackup and xbcloud\nERROR_CODE_INCOMPATIBLE_XTRABACKUP - xtrabackup is not compatible with MySQL for taking a backup", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Start a Backup", "operationId": "StartBackup", @@ -2059,7 +2059,7 @@ "name": "ArtifactsService" }, { - "name": "BackupsService" + "name": "BackupService" }, { "name": "LocationsService" diff --git a/api/swagger/swagger-dev.json b/api/swagger/swagger-dev.json index f9fc5608a8..8aaba3e711 100644 --- a/api/swagger/swagger-dev.json +++ b/api/swagger/swagger-dev.json @@ -2522,7 +2522,7 @@ "post": { "description": "Change a scheduled backup.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Change a Scheduled Backup", "operationId": "ChangeScheduledBackup", @@ -2635,7 +2635,7 @@ "post": { "description": "Get logs from the underlying tools for a backup/restore job.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Get Logs", "operationId": "GetLogs", @@ -2739,7 +2739,7 @@ "post": { "description": "List services that are compatible with the backup artifact.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "List Compatible Services", "operationId": "ListArtifactCompatibleServices", @@ -2945,7 +2945,7 @@ "post": { "description": "List all scheduled backups.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "List Scheduled Backups", "operationId": "ListScheduledBackups", @@ -3129,7 +3129,7 @@ "post": { "description": "Remove a scheduled backup.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Remove a Scheduled Backup", "operationId": "RemoveScheduledBackup", @@ -3278,7 +3278,7 @@ "post": { "description": "Schedule a backup to run at a specified time.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Schedule a Backup", "operationId": "ScheduleBackup", @@ -3425,7 +3425,7 @@ "post": { "description": "Could return the Error message in the details containing specific ErrorCode indicating failure reason:\nERROR_CODE_XTRABACKUP_NOT_INSTALLED - xtrabackup is not installed on the service\nERROR_CODE_INVALID_XTRABACKUP - different versions of xtrabackup and xbcloud\nERROR_CODE_INCOMPATIBLE_XTRABACKUP - xtrabackup is not compatible with MySQL for taking a backup", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Start a Backup", "operationId": "StartBackup", @@ -26983,7 +26983,7 @@ "name": "ArtifactsService" }, { - "name": "BackupsService" + "name": "BackupService" }, { "name": "LocationsService" diff --git a/api/swagger/swagger.json b/api/swagger/swagger.json index 936adfcff6..5fde2b3c9e 100644 --- a/api/swagger/swagger.json +++ b/api/swagger/swagger.json @@ -2521,7 +2521,7 @@ "post": { "description": "Change a scheduled backup.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Change a Scheduled Backup", "operationId": "ChangeScheduledBackup", @@ -2634,7 +2634,7 @@ "post": { "description": "Get logs from the underlying tools for a backup/restore job.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Get Logs", "operationId": "GetLogs", @@ -2738,7 +2738,7 @@ "post": { "description": "List services that are compatible with the backup artifact.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "List Compatible Services", "operationId": "ListArtifactCompatibleServices", @@ -2944,7 +2944,7 @@ "post": { "description": "List all scheduled backups.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "List Scheduled Backups", "operationId": "ListScheduledBackups", @@ -3128,7 +3128,7 @@ "post": { "description": "Remove a scheduled backup.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Remove a Scheduled Backup", "operationId": "RemoveScheduledBackup", @@ -3277,7 +3277,7 @@ "post": { "description": "Schedule a backup to run at a specified time.", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Schedule a Backup", "operationId": "ScheduleBackup", @@ -3424,7 +3424,7 @@ "post": { "description": "Could return the Error message in the details containing specific ErrorCode indicating failure reason:\nERROR_CODE_XTRABACKUP_NOT_INSTALLED - xtrabackup is not installed on the service\nERROR_CODE_INVALID_XTRABACKUP - different versions of xtrabackup and xbcloud\nERROR_CODE_INCOMPATIBLE_XTRABACKUP - xtrabackup is not compatible with MySQL for taking a backup", "tags": [ - "BackupsService" + "BackupService" ], "summary": "Start a Backup", "operationId": "StartBackup", @@ -12841,7 +12841,7 @@ "name": "ArtifactsService" }, { - "name": "BackupsService" + "name": "BackupService" }, { "name": "LocationsService" diff --git a/descriptor.bin b/descriptor.bin index df1167ce37..d455074be3 100644 Binary files a/descriptor.bin and b/descriptor.bin differ diff --git a/managed/cmd/pmm-managed/main.go b/managed/cmd/pmm-managed/main.go index 1f4c07c241..bb25c480bd 100644 --- a/managed/cmd/pmm-managed/main.go +++ b/managed/cmd/pmm-managed/main.go @@ -252,10 +252,10 @@ func runGRPCServer(ctx context.Context, deps *gRPCServerDeps) { deps.db, deps.agentsRegistry, deps.agentsStateUpdater, deps.vmdb, deps.connectionCheck, deps.serviceInfoBroker, deps.agentService) - mgmtBackupsService := managementbackup.NewBackupsService(deps.db, deps.backupService, deps.compatibilityService, deps.schedulerService) + mgmtBackupService := managementbackup.NewBackupsService(deps.db, deps.backupService, deps.compatibilityService, deps.schedulerService) mgmtArtifactsService := managementbackup.NewArtifactsService(deps.db, deps.backupRemovalService, deps.pbmPITRService) mgmtRestoreService := managementbackup.NewRestoreService(deps.db) - mgmtServices := common.NewMgmtServices(mgmtBackupsService, mgmtArtifactsService, mgmtRestoreService) + mgmtServices := common.NewMgmtServices(mgmtBackupService, mgmtArtifactsService, mgmtRestoreService) servicesSvc := inventory.NewServicesService(deps.db, deps.agentsRegistry, deps.agentsStateUpdater, deps.vmdb, deps.versionCache, mgmtServices) inventoryv1.RegisterNodesServiceServer(gRPCServer, inventorygrpc.NewNodesServer(nodesSvc)) @@ -273,7 +273,7 @@ func runGRPCServer(ctx context.Context, deps *gRPCServerDeps) { alertingpb.RegisterAlertingServiceServer(gRPCServer, deps.templatesService) - backuppb.RegisterBackupsServiceServer(gRPCServer, mgmtBackupsService) + backuppb.RegisterBackupServiceServer(gRPCServer, mgmtBackupService) backuppb.RegisterLocationsServiceServer(gRPCServer, managementbackup.NewLocationsService(deps.db, deps.minioClient)) backuppb.RegisterArtifactsServiceServer(gRPCServer, mgmtArtifactsService) backuppb.RegisterRestoreServiceServer(gRPCServer, mgmtRestoreService) @@ -365,7 +365,7 @@ func runHTTP1Server(ctx context.Context, deps *http1ServerDeps) { alertingpb.RegisterAlertingServiceHandlerFromEndpoint, - backuppb.RegisterBackupsServiceHandlerFromEndpoint, + backuppb.RegisterBackupServiceHandlerFromEndpoint, backuppb.RegisterLocationsServiceHandlerFromEndpoint, backuppb.RegisterArtifactsServiceHandlerFromEndpoint, backuppb.RegisterRestoreServiceHandlerFromEndpoint, diff --git a/managed/services/grafana/auth_server.go b/managed/services/grafana/auth_server.go index 4974914faf..9c39bd0346 100644 --- a/managed/services/grafana/auth_server.go +++ b/managed/services/grafana/auth_server.go @@ -45,7 +45,7 @@ const ( // rules maps original URL prefix to minimal required role. var rules = map[string]role{ // TODO https://jira.percona.com/browse/PMM-4420 - "/agent.Agent/Connect": none, // NOTE: remove before v3 GA + "/agent.Agent/Connect": admin, // NOTE: remove before v3 GA connectionEndpoint: admin, "/inventory.": admin, diff --git a/managed/services/inventory/services_test.go b/managed/services/inventory/services_test.go index 5bcd3a427c..48fc495bc9 100644 --- a/managed/services/inventory/services_test.go +++ b/managed/services/inventory/services_test.go @@ -70,7 +70,7 @@ func setup(t *testing.T) (*ServicesService, *AgentsService, *NodesService, func( sib.Test(t) mgmtServices := &common.MgmtServices{ - BackupsService: nil, // FIXME: &backup.mockBackupService{} is not public + BackupService: nil, // FIXME: &backup.mockBackupService{} is not public ArtifactsService: nil, // FIXME: &backup.mockArtifactsService{} does not exist RestoreService: nil, // FIXME: &backup.mockRestoreService{} does not exist } diff --git a/managed/services/management/backup/backups_service.go b/managed/services/management/backup/backups_service.go index 5e2f62aebc..c7a19785cc 100644 --- a/managed/services/management/backup/backups_service.go +++ b/managed/services/management/backup/backups_service.go @@ -40,15 +40,15 @@ import ( "github.com/percona/pmm/managed/services/scheduler" ) -// BackupsService represents backups API. -type BackupsService struct { +// BackupService represents backups API. +type BackupService struct { db *reform.DB backupService backupService compatibilityService compatibilityService scheduleService scheduleService l *logrus.Entry - backuppb.UnimplementedBackupsServiceServer + backuppb.UnimplementedBackupServiceServer } const ( @@ -67,8 +67,8 @@ func NewBackupsService( backupService backupService, cSvc compatibilityService, scheduleService scheduleService, -) *BackupsService { - return &BackupsService{ +) *BackupService { + return &BackupService{ l: logrus.WithField("component", "management/backup/backups"), db: db, backupService: backupService, @@ -78,7 +78,7 @@ func NewBackupsService( } // StartBackup starts on-demand backup. -func (s *BackupsService) StartBackup(ctx context.Context, req *backuppb.StartBackupRequest) (*backuppb.StartBackupResponse, error) { +func (s *BackupService) StartBackup(ctx context.Context, req *backuppb.StartBackupRequest) (*backuppb.StartBackupResponse, error) { if req.Retries > maxRetriesAttempts { return nil, status.Errorf(codes.InvalidArgument, "Exceeded max retries %d.", maxRetriesAttempts) } @@ -131,7 +131,7 @@ func (s *BackupsService) StartBackup(ctx context.Context, req *backuppb.StartBac } // RestoreBackup starts restore backup job. -func (s *BackupsService) RestoreBackup( +func (s *BackupService) RestoreBackup( ctx context.Context, req *backuppb.RestoreBackupRequest, ) (*backuppb.RestoreBackupResponse, error) { @@ -161,7 +161,7 @@ func (s *BackupsService) RestoreBackup( } // ScheduleBackup add new backup task to scheduler. -func (s *BackupsService) ScheduleBackup(ctx context.Context, req *backuppb.ScheduleBackupRequest) (*backuppb.ScheduleBackupResponse, error) { +func (s *BackupService) ScheduleBackup(ctx context.Context, req *backuppb.ScheduleBackupRequest) (*backuppb.ScheduleBackupResponse, error) { var id string if req.Retries > maxRetriesAttempts { @@ -264,7 +264,7 @@ func (s *BackupsService) ScheduleBackup(ctx context.Context, req *backuppb.Sched } // ListScheduledBackups lists all tasks related to a backup. -func (s *BackupsService) ListScheduledBackups(ctx context.Context, req *backuppb.ListScheduledBackupsRequest) (*backuppb.ListScheduledBackupsResponse, error) { //nolint:revive,lll +func (s *BackupService) ListScheduledBackups(ctx context.Context, req *backuppb.ListScheduledBackupsRequest) (*backuppb.ListScheduledBackupsResponse, error) { //nolint:revive,lll tasks, err := models.FindScheduledTasks(s.db.Querier, models.ScheduledTasksFilter{ Types: []models.ScheduledTaskType{ models.ScheduledMySQLBackupTask, @@ -319,7 +319,7 @@ func (s *BackupsService) ListScheduledBackups(ctx context.Context, req *backuppb } // ChangeScheduledBackup changes existing scheduled backup task. -func (s *BackupsService) ChangeScheduledBackup(ctx context.Context, req *backuppb.ChangeScheduledBackupRequest) (*backuppb.ChangeScheduledBackupResponse, error) { +func (s *BackupService) ChangeScheduledBackup(ctx context.Context, req *backuppb.ChangeScheduledBackupRequest) (*backuppb.ChangeScheduledBackupResponse, error) { var disablePITR bool var serviceID string @@ -392,7 +392,7 @@ func (s *BackupsService) ChangeScheduledBackup(ctx context.Context, req *backupp } // RemoveScheduledBackup stops and removes existing scheduled backup task. -func (s *BackupsService) RemoveScheduledBackup(ctx context.Context, req *backuppb.RemoveScheduledBackupRequest) (*backuppb.RemoveScheduledBackupResponse, error) { +func (s *BackupService) RemoveScheduledBackup(ctx context.Context, req *backuppb.RemoveScheduledBackupRequest) (*backuppb.RemoveScheduledBackupResponse, error) { task, err := models.FindScheduledTaskByID(s.db.Querier, req.ScheduledBackupId) if err != nil { return nil, err @@ -442,7 +442,7 @@ func (s *BackupsService) RemoveScheduledBackup(ctx context.Context, req *backupp } // GetLogs returns logs from the underlying tools for a backup/restore job. -func (s *BackupsService) GetLogs(_ context.Context, req *backuppb.GetLogsRequest) (*backuppb.GetLogsResponse, error) { +func (s *BackupService) GetLogs(_ context.Context, req *backuppb.GetLogsRequest) (*backuppb.GetLogsResponse, error) { jobsFilter := models.JobsFilter{ Types: []models.JobType{ models.MySQLBackupJob, @@ -505,7 +505,7 @@ func (s *BackupsService) GetLogs(_ context.Context, req *backuppb.GetLogsRequest } // ListArtifactCompatibleServices lists compatible service for restoring given artifact. -func (s *BackupsService) ListArtifactCompatibleServices( +func (s *BackupService) ListArtifactCompatibleServices( ctx context.Context, req *backuppb.ListArtifactCompatibleServicesRequest, ) (*backuppb.ListArtifactCompatibleServicesResponse, error) { @@ -729,5 +729,5 @@ func isNameSafe(name string) error { // Check interfaces. var ( - _ backuppb.BackupsServiceServer = (*BackupsService)(nil) + _ backuppb.BackupServiceServer = (*BackupService)(nil) ) diff --git a/managed/services/management/common/common.go b/managed/services/management/common/common.go index 928cc589c5..b703ca1fd0 100644 --- a/managed/services/management/common/common.go +++ b/managed/services/management/common/common.go @@ -32,15 +32,15 @@ var ErrClusterLocked = errors.New("cluster/service is locked") // MgmtServices represents a collection of management services. type MgmtServices struct { - BackupsService *managementbackup.BackupsService + BackupService *managementbackup.BackupService ArtifactsService *managementbackup.ArtifactsService RestoreService *managementbackup.RestoreService } // NewMgmtServices creates a new MgmtServices instance. -func NewMgmtServices(bs *managementbackup.BackupsService, as *managementbackup.ArtifactsService, rs *managementbackup.RestoreService) *MgmtServices { +func NewMgmtServices(bs *managementbackup.BackupService, as *managementbackup.ArtifactsService, rs *managementbackup.RestoreService) *MgmtServices { return &MgmtServices{ - BackupsService: bs, + BackupService: bs, ArtifactsService: as, RestoreService: rs, } @@ -79,7 +79,7 @@ func (s *MgmtServices) RemoveScheduledTasks(ctx context.Context, db *reform.DB, sMap[service.ServiceID] = struct{}{} } - scheduledTasks, err := s.BackupsService.ListScheduledBackups(ctx, &backuppb.ListScheduledBackupsRequest{}) + scheduledTasks, err := s.BackupService.ListScheduledBackups(ctx, &backuppb.ListScheduledBackupsRequest{}) if err != nil { return err } @@ -87,7 +87,7 @@ func (s *MgmtServices) RemoveScheduledTasks(ctx context.Context, db *reform.DB, // Remove scheduled tasks. for _, task := range scheduledTasks.ScheduledBackups { if _, ok := sMap[task.ServiceId]; ok { - _, err = s.BackupsService.RemoveScheduledBackup(ctx, &backuppb.RemoveScheduledBackupRequest{ScheduledBackupId: task.ScheduledBackupId}) + _, err = s.BackupService.RemoveScheduledBackup(ctx, &backuppb.RemoveScheduledBackupRequest{ScheduledBackupId: task.ScheduledBackupId}) if err != nil { return err }