// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.10
// 	protoc        v6.31.1
// source: bonanza.build/pkg/proto/configuration/mount_directory/mount_directory.proto

package mount_directory

import (
	parser "bonanza.build/pkg/proto/configuration/model/parser"
	core "bonanza.build/pkg/proto/model/core"
	encoding "bonanza.build/pkg/proto/model/encoding"
	object "bonanza.build/pkg/proto/storage/object"
	virtual "github.com/buildbarn/bb-remote-execution/pkg/proto/configuration/filesystem/virtual"
	global "github.com/buildbarn/bb-storage/pkg/proto/configuration/global"
	grpc "github.com/buildbarn/bb-storage/pkg/proto/configuration/grpc"
	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 ApplicationConfiguration struct {
	state                    protoimpl.MessageState       `protogen:"open.v1"`
	Global                   *global.Configuration        `protobuf:"bytes,1,opt,name=global,proto3" json:"global,omitempty"`
	Mount                    *virtual.MountConfiguration  `protobuf:"bytes,2,opt,name=mount,proto3" json:"mount,omitempty"`
	ParsedObjectPool         *parser.ParsedObjectPool     `protobuf:"bytes,3,opt,name=parsed_object_pool,json=parsedObjectPool,proto3" json:"parsed_object_pool,omitempty"`
	GrpcClient               *grpc.ClientConfiguration    `protobuf:"bytes,4,opt,name=grpc_client,json=grpcClient,proto3" json:"grpc_client,omitempty"`
	Namespace                *object.Namespace            `protobuf:"bytes,5,opt,name=namespace,proto3" json:"namespace,omitempty"`
	RootDirectoryReference   *core.WeakDecodableReference `protobuf:"bytes,6,opt,name=root_directory_reference,json=rootDirectoryReference,proto3" json:"root_directory_reference,omitempty"`
	DirectoryEncoders        []*encoding.BinaryEncoder    `protobuf:"bytes,7,rep,name=directory_encoders,json=directoryEncoders,proto3" json:"directory_encoders,omitempty"`
	SmallFileEncoders        []*encoding.BinaryEncoder    `protobuf:"bytes,8,rep,name=small_file_encoders,json=smallFileEncoders,proto3" json:"small_file_encoders,omitempty"`
	ConcatenatedFileEncoders []*encoding.BinaryEncoder    `protobuf:"bytes,9,rep,name=concatenated_file_encoders,json=concatenatedFileEncoders,proto3" json:"concatenated_file_encoders,omitempty"`
	unknownFields            protoimpl.UnknownFields
	sizeCache                protoimpl.SizeCache
}

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

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

func (*ApplicationConfiguration) ProtoMessage() {}

func (x *ApplicationConfiguration) ProtoReflect() protoreflect.Message {
	mi := &file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_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 ApplicationConfiguration.ProtoReflect.Descriptor instead.
func (*ApplicationConfiguration) Descriptor() ([]byte, []int) {
	return file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDescGZIP(), []int{0}
}

func (x *ApplicationConfiguration) GetGlobal() *global.Configuration {
	if x != nil {
		return x.Global
	}
	return nil
}

func (x *ApplicationConfiguration) GetMount() *virtual.MountConfiguration {
	if x != nil {
		return x.Mount
	}
	return nil
}

func (x *ApplicationConfiguration) GetParsedObjectPool() *parser.ParsedObjectPool {
	if x != nil {
		return x.ParsedObjectPool
	}
	return nil
}

func (x *ApplicationConfiguration) GetGrpcClient() *grpc.ClientConfiguration {
	if x != nil {
		return x.GrpcClient
	}
	return nil
}

func (x *ApplicationConfiguration) GetNamespace() *object.Namespace {
	if x != nil {
		return x.Namespace
	}
	return nil
}

func (x *ApplicationConfiguration) GetRootDirectoryReference() *core.WeakDecodableReference {
	if x != nil {
		return x.RootDirectoryReference
	}
	return nil
}

func (x *ApplicationConfiguration) GetDirectoryEncoders() []*encoding.BinaryEncoder {
	if x != nil {
		return x.DirectoryEncoders
	}
	return nil
}

func (x *ApplicationConfiguration) GetSmallFileEncoders() []*encoding.BinaryEncoder {
	if x != nil {
		return x.SmallFileEncoders
	}
	return nil
}

func (x *ApplicationConfiguration) GetConcatenatedFileEncoders() []*encoding.BinaryEncoder {
	if x != nil {
		return x.ConcatenatedFileEncoders
	}
	return nil
}

var File_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto protoreflect.FileDescriptor

const file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDesc = "" +
	"\n" +
	"Kbonanza.build/pkg/proto/configuration/mount_directory/mount_directory.proto\x12%bonanza.configuration.mount_directory\x1a?bonanza.build/pkg/proto/configuration/model/parser/parser.proto\x1a-bonanza.build/pkg/proto/model/core/core.proto\x1a5bonanza.build/pkg/proto/model/encoding/encoding.proto\x1a3bonanza.build/pkg/proto/storage/object/object.proto\x1aagithub.com/buildbarn/bb-remote-execution/pkg/proto/configuration/filesystem/virtual/virtual.proto\x1aKgithub.com/buildbarn/bb-storage/pkg/proto/configuration/global/global.proto\x1aGgithub.com/buildbarn/bb-storage/pkg/proto/configuration/grpc/grpc.proto\"\xdb\x06\n" +
	"\x18ApplicationConfiguration\x12E\n" +
	"\x06global\x18\x01 \x01(\v2-.buildbarn.configuration.global.ConfigurationR\x06global\x12T\n" +
	"\x05mount\x18\x02 \x01(\v2>.buildbarn.configuration.filesystem.virtual.MountConfigurationR\x05mount\x12b\n" +
	"\x12parsed_object_pool\x18\x03 \x01(\v24.bonanza.configuration.model.parser.ParsedObjectPoolR\x10parsedObjectPool\x12R\n" +
	"\vgrpc_client\x18\x04 \x01(\v21.buildbarn.configuration.grpc.ClientConfigurationR\n" +
	"grpcClient\x12?\n" +
	"\tnamespace\x18\x05 \x01(\v2!.bonanza.storage.object.NamespaceR\tnamespace\x12\x96\x01\n" +
	"\x18root_directory_reference\x18\x06 \x01(\v2*.bonanza.model.core.WeakDecodableReferenceB0\xea\xd7 ,\x12*bonanza.model.filesystem.DirectoryContentsR\x16rootDirectoryReference\x12T\n" +
	"\x12directory_encoders\x18\a \x03(\v2%.bonanza.model.encoding.BinaryEncoderR\x11directoryEncoders\x12U\n" +
	"\x13small_file_encoders\x18\b \x03(\v2%.bonanza.model.encoding.BinaryEncoderR\x11smallFileEncoders\x12c\n" +
	"\x1aconcatenated_file_encoders\x18\t \x03(\v2%.bonanza.model.encoding.BinaryEncoderR\x18concatenatedFileEncodersB7Z5bonanza.build/pkg/proto/configuration/mount_directoryb\x06proto3"

var (
	file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDescOnce sync.Once
	file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDescData []byte
)

func file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDescGZIP() []byte {
	file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDescOnce.Do(func() {
		file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDesc), len(file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDesc)))
	})
	return file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDescData
}

var file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_goTypes = []any{
	(*ApplicationConfiguration)(nil),    // 0: bonanza.configuration.mount_directory.ApplicationConfiguration
	(*global.Configuration)(nil),        // 1: buildbarn.configuration.global.Configuration
	(*virtual.MountConfiguration)(nil),  // 2: buildbarn.configuration.filesystem.virtual.MountConfiguration
	(*parser.ParsedObjectPool)(nil),     // 3: bonanza.configuration.model.parser.ParsedObjectPool
	(*grpc.ClientConfiguration)(nil),    // 4: buildbarn.configuration.grpc.ClientConfiguration
	(*object.Namespace)(nil),            // 5: bonanza.storage.object.Namespace
	(*core.WeakDecodableReference)(nil), // 6: bonanza.model.core.WeakDecodableReference
	(*encoding.BinaryEncoder)(nil),      // 7: bonanza.model.encoding.BinaryEncoder
}
var file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_depIdxs = []int32{
	1, // 0: bonanza.configuration.mount_directory.ApplicationConfiguration.global:type_name -> buildbarn.configuration.global.Configuration
	2, // 1: bonanza.configuration.mount_directory.ApplicationConfiguration.mount:type_name -> buildbarn.configuration.filesystem.virtual.MountConfiguration
	3, // 2: bonanza.configuration.mount_directory.ApplicationConfiguration.parsed_object_pool:type_name -> bonanza.configuration.model.parser.ParsedObjectPool
	4, // 3: bonanza.configuration.mount_directory.ApplicationConfiguration.grpc_client:type_name -> buildbarn.configuration.grpc.ClientConfiguration
	5, // 4: bonanza.configuration.mount_directory.ApplicationConfiguration.namespace:type_name -> bonanza.storage.object.Namespace
	6, // 5: bonanza.configuration.mount_directory.ApplicationConfiguration.root_directory_reference:type_name -> bonanza.model.core.WeakDecodableReference
	7, // 6: bonanza.configuration.mount_directory.ApplicationConfiguration.directory_encoders:type_name -> bonanza.model.encoding.BinaryEncoder
	7, // 7: bonanza.configuration.mount_directory.ApplicationConfiguration.small_file_encoders:type_name -> bonanza.model.encoding.BinaryEncoder
	7, // 8: bonanza.configuration.mount_directory.ApplicationConfiguration.concatenated_file_encoders:type_name -> bonanza.model.encoding.BinaryEncoder
	9, // [9:9] is the sub-list for method output_type
	9, // [9:9] is the sub-list for method input_type
	9, // [9:9] is the sub-list for extension type_name
	9, // [9:9] is the sub-list for extension extendee
	0, // [0:9] is the sub-list for field type_name
}

func init() { file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_init() }
func file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_init() {
	if File_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDesc), len(file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   1,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_goTypes,
		DependencyIndexes: file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_depIdxs,
		MessageInfos:      file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_msgTypes,
	}.Build()
	File_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto = out.File
	file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_goTypes = nil
	file_bonanza_build_pkg_proto_configuration_mount_directory_mount_directory_proto_depIdxs = nil
}
