// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.6
// 	protoc        v6.30.2
// source: proto/restore_job.proto

package job

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type RestoreJobHooksCapability_Kind int32

const (
	RestoreJobHooksCapability_KIND_UNSPECIFIED RestoreJobHooksCapability_Kind = 0
	// KIND_RESTORE means that the plugin is able to handle
	// Restore requests
	RestoreJobHooksCapability_KIND_RESTORE RestoreJobHooksCapability_Kind = 1
)

// Enum value maps for RestoreJobHooksCapability_Kind.
var (
	RestoreJobHooksCapability_Kind_name = map[int32]string{
		0: "KIND_UNSPECIFIED",
		1: "KIND_RESTORE",
	}
	RestoreJobHooksCapability_Kind_value = map[string]int32{
		"KIND_UNSPECIFIED": 0,
		"KIND_RESTORE":     1,
	}
)

func (x RestoreJobHooksCapability_Kind) Enum() *RestoreJobHooksCapability_Kind {
	p := new(RestoreJobHooksCapability_Kind)
	*p = x
	return p
}

func (x RestoreJobHooksCapability_Kind) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RestoreJobHooksCapability_Kind) Descriptor() protoreflect.EnumDescriptor {
	return file_proto_restore_job_proto_enumTypes[0].Descriptor()
}

func (RestoreJobHooksCapability_Kind) Type() protoreflect.EnumType {
	return &file_proto_restore_job_proto_enumTypes[0]
}

func (x RestoreJobHooksCapability_Kind) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RestoreJobHooksCapability_Kind.Descriptor instead.
func (RestoreJobHooksCapability_Kind) EnumDescriptor() ([]byte, []int) {
	return file_proto_restore_job_proto_rawDescGZIP(), []int{2, 0}
}

type RestoreJobHooksCapabilitiesRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RestoreJobHooksCapabilitiesRequest) Reset() {
	*x = RestoreJobHooksCapabilitiesRequest{}
	mi := &file_proto_restore_job_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RestoreJobHooksCapabilitiesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RestoreJobHooksCapabilitiesRequest) ProtoMessage() {}

func (x *RestoreJobHooksCapabilitiesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_restore_job_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RestoreJobHooksCapabilitiesRequest.ProtoReflect.Descriptor instead.
func (*RestoreJobHooksCapabilitiesRequest) Descriptor() ([]byte, []int) {
	return file_proto_restore_job_proto_rawDescGZIP(), []int{0}
}

type RestoreJobHooksCapabilitiesResult struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// This field is REQUIRED and contains the describe capability
	Capabilities  []*RestoreJobHooksCapability `protobuf:"bytes,1,rep,name=capabilities,proto3" json:"capabilities,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RestoreJobHooksCapabilitiesResult) Reset() {
	*x = RestoreJobHooksCapabilitiesResult{}
	mi := &file_proto_restore_job_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RestoreJobHooksCapabilitiesResult) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RestoreJobHooksCapabilitiesResult) ProtoMessage() {}

func (x *RestoreJobHooksCapabilitiesResult) ProtoReflect() protoreflect.Message {
	mi := &file_proto_restore_job_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RestoreJobHooksCapabilitiesResult.ProtoReflect.Descriptor instead.
func (*RestoreJobHooksCapabilitiesResult) Descriptor() ([]byte, []int) {
	return file_proto_restore_job_proto_rawDescGZIP(), []int{1}
}

func (x *RestoreJobHooksCapabilitiesResult) GetCapabilities() []*RestoreJobHooksCapability {
	if x != nil {
		return x.Capabilities
	}
	return nil
}

type RestoreJobHooksCapability struct {
	state         protoimpl.MessageState         `protogen:"open.v1"`
	Kind          RestoreJobHooksCapability_Kind `protobuf:"varint,1,opt,name=kind,proto3,enum=cnpgi.wal.v1.RestoreJobHooksCapability_Kind" json:"kind,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RestoreJobHooksCapability) Reset() {
	*x = RestoreJobHooksCapability{}
	mi := &file_proto_restore_job_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RestoreJobHooksCapability) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RestoreJobHooksCapability) ProtoMessage() {}

func (x *RestoreJobHooksCapability) ProtoReflect() protoreflect.Message {
	mi := &file_proto_restore_job_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RestoreJobHooksCapability.ProtoReflect.Descriptor instead.
func (*RestoreJobHooksCapability) Descriptor() ([]byte, []int) {
	return file_proto_restore_job_proto_rawDescGZIP(), []int{2}
}

func (x *RestoreJobHooksCapability) GetKind() RestoreJobHooksCapability_Kind {
	if x != nil {
		return x.Kind
	}
	return RestoreJobHooksCapability_KIND_UNSPECIFIED
}

type RestoreRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// This field is REQUIRED. Value of this field is the JSON
	// serialization of the Cluster.
	ClusterDefinition []byte `protobuf:"bytes,1,opt,name=cluster_definition,json=clusterDefinition,proto3" json:"cluster_definition,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

func (x *RestoreRequest) Reset() {
	*x = RestoreRequest{}
	mi := &file_proto_restore_job_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RestoreRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RestoreRequest) ProtoMessage() {}

func (x *RestoreRequest) ProtoReflect() protoreflect.Message {
	mi := &file_proto_restore_job_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RestoreRequest.ProtoReflect.Descriptor instead.
func (*RestoreRequest) Descriptor() ([]byte, []int) {
	return file_proto_restore_job_proto_rawDescGZIP(), []int{3}
}

func (x *RestoreRequest) GetClusterDefinition() []byte {
	if x != nil {
		return x.ClusterDefinition
	}
	return nil
}

type RestoreResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// This field is REQUIRED. Value of this field is the string
	// representation of PostgreSQL configuration parameters to use
	// for the restore.
	RestoreConfig string `protobuf:"bytes,1,opt,name=restore_config,json=restoreConfig,proto3" json:"restore_config,omitempty"`
	// This field if REQUIRED. Environment variables to be set in the
	// restore job, expressed as NAME=VALUE.
	Envs          []string `protobuf:"bytes,2,rep,name=envs,proto3" json:"envs,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RestoreResponse) Reset() {
	*x = RestoreResponse{}
	mi := &file_proto_restore_job_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RestoreResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RestoreResponse) ProtoMessage() {}

func (x *RestoreResponse) ProtoReflect() protoreflect.Message {
	mi := &file_proto_restore_job_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RestoreResponse.ProtoReflect.Descriptor instead.
func (*RestoreResponse) Descriptor() ([]byte, []int) {
	return file_proto_restore_job_proto_rawDescGZIP(), []int{4}
}

func (x *RestoreResponse) GetRestoreConfig() string {
	if x != nil {
		return x.RestoreConfig
	}
	return ""
}

func (x *RestoreResponse) GetEnvs() []string {
	if x != nil {
		return x.Envs
	}
	return nil
}

var File_proto_restore_job_proto protoreflect.FileDescriptor

const file_proto_restore_job_proto_rawDesc = "" +
	"\n" +
	"\x17proto/restore_job.proto\x12\fcnpgi.wal.v1\"$\n" +
	"\"RestoreJobHooksCapabilitiesRequest\"p\n" +
	"!RestoreJobHooksCapabilitiesResult\x12K\n" +
	"\fcapabilities\x18\x01 \x03(\v2'.cnpgi.wal.v1.RestoreJobHooksCapabilityR\fcapabilities\"\x8d\x01\n" +
	"\x19RestoreJobHooksCapability\x12@\n" +
	"\x04kind\x18\x01 \x01(\x0e2,.cnpgi.wal.v1.RestoreJobHooksCapability.KindR\x04kind\".\n" +
	"\x04Kind\x12\x14\n" +
	"\x10KIND_UNSPECIFIED\x10\x00\x12\x10\n" +
	"\fKIND_RESTORE\x10\x01\"?\n" +
	"\x0eRestoreRequest\x12-\n" +
	"\x12cluster_definition\x18\x01 \x01(\fR\x11clusterDefinition\"L\n" +
	"\x0fRestoreResponse\x12%\n" +
	"\x0erestore_config\x18\x01 \x01(\tR\rrestoreConfig\x12\x12\n" +
	"\x04envs\x18\x02 \x03(\tR\x04envs2\xd3\x01\n" +
	"\x0fRestoreJobHooks\x12v\n" +
	"\x0fGetCapabilities\x120.cnpgi.wal.v1.RestoreJobHooksCapabilitiesRequest\x1a/.cnpgi.wal.v1.RestoreJobHooksCapabilitiesResult\"\x00\x12H\n" +
	"\aRestore\x12\x1c.cnpgi.wal.v1.RestoreRequest\x1a\x1d.cnpgi.wal.v1.RestoreResponse\"\x00B2Z0github.com/cloudnative-pg/cnpg-i/pkg/restore/jobb\x06proto3"

var (
	file_proto_restore_job_proto_rawDescOnce sync.Once
	file_proto_restore_job_proto_rawDescData []byte
)

func file_proto_restore_job_proto_rawDescGZIP() []byte {
	file_proto_restore_job_proto_rawDescOnce.Do(func() {
		file_proto_restore_job_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_proto_restore_job_proto_rawDesc), len(file_proto_restore_job_proto_rawDesc)))
	})
	return file_proto_restore_job_proto_rawDescData
}

var file_proto_restore_job_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_proto_restore_job_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_proto_restore_job_proto_goTypes = []any{
	(RestoreJobHooksCapability_Kind)(0),        // 0: cnpgi.wal.v1.RestoreJobHooksCapability.Kind
	(*RestoreJobHooksCapabilitiesRequest)(nil), // 1: cnpgi.wal.v1.RestoreJobHooksCapabilitiesRequest
	(*RestoreJobHooksCapabilitiesResult)(nil),  // 2: cnpgi.wal.v1.RestoreJobHooksCapabilitiesResult
	(*RestoreJobHooksCapability)(nil),          // 3: cnpgi.wal.v1.RestoreJobHooksCapability
	(*RestoreRequest)(nil),                     // 4: cnpgi.wal.v1.RestoreRequest
	(*RestoreResponse)(nil),                    // 5: cnpgi.wal.v1.RestoreResponse
}
var file_proto_restore_job_proto_depIdxs = []int32{
	3, // 0: cnpgi.wal.v1.RestoreJobHooksCapabilitiesResult.capabilities:type_name -> cnpgi.wal.v1.RestoreJobHooksCapability
	0, // 1: cnpgi.wal.v1.RestoreJobHooksCapability.kind:type_name -> cnpgi.wal.v1.RestoreJobHooksCapability.Kind
	1, // 2: cnpgi.wal.v1.RestoreJobHooks.GetCapabilities:input_type -> cnpgi.wal.v1.RestoreJobHooksCapabilitiesRequest
	4, // 3: cnpgi.wal.v1.RestoreJobHooks.Restore:input_type -> cnpgi.wal.v1.RestoreRequest
	2, // 4: cnpgi.wal.v1.RestoreJobHooks.GetCapabilities:output_type -> cnpgi.wal.v1.RestoreJobHooksCapabilitiesResult
	5, // 5: cnpgi.wal.v1.RestoreJobHooks.Restore:output_type -> cnpgi.wal.v1.RestoreResponse
	4, // [4:6] is the sub-list for method output_type
	2, // [2:4] is the sub-list for method input_type
	2, // [2:2] is the sub-list for extension type_name
	2, // [2:2] is the sub-list for extension extendee
	0, // [0:2] is the sub-list for field type_name
}

func init() { file_proto_restore_job_proto_init() }
func file_proto_restore_job_proto_init() {
	if File_proto_restore_job_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_proto_restore_job_proto_rawDesc), len(file_proto_restore_job_proto_rawDesc)),
			NumEnums:      1,
			NumMessages:   5,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_proto_restore_job_proto_goTypes,
		DependencyIndexes: file_proto_restore_job_proto_depIdxs,
		EnumInfos:         file_proto_restore_job_proto_enumTypes,
		MessageInfos:      file_proto_restore_job_proto_msgTypes,
	}.Build()
	File_proto_restore_job_proto = out.File
	file_proto_restore_job_proto_goTypes = nil
	file_proto_restore_job_proto_depIdxs = nil
}
