// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/cloud/datacatalog/v1beta1/search.proto

package datacatalog

import (
	fmt "fmt"
	math "math"

	proto "github.com/golang/protobuf/proto"
	_ "github.com/golang/protobuf/ptypes/timestamp"
	_ "google.golang.org/genproto/googleapis/api/annotations"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

// The different types of resources that can be returned in search.
type SearchResultType int32

const (
	// Default unknown type.
	SearchResultType_SEARCH_RESULT_TYPE_UNSPECIFIED SearchResultType = 0
	// An [Entry][google.cloud.datacatalog.v1beta1.Entry].
	SearchResultType_ENTRY SearchResultType = 1
	// A [TagTemplate][google.cloud.datacatalog.v1beta1.TagTemplate].
	SearchResultType_TAG_TEMPLATE SearchResultType = 2
	// An [EntryGroup][google.cloud.datacatalog.v1beta1.EntryGroup].
	SearchResultType_ENTRY_GROUP SearchResultType = 3
)

var SearchResultType_name = map[int32]string{
	0: "SEARCH_RESULT_TYPE_UNSPECIFIED",
	1: "ENTRY",
	2: "TAG_TEMPLATE",
	3: "ENTRY_GROUP",
}

var SearchResultType_value = map[string]int32{
	"SEARCH_RESULT_TYPE_UNSPECIFIED": 0,
	"ENTRY":                          1,
	"TAG_TEMPLATE":                   2,
	"ENTRY_GROUP":                    3,
}

func (x SearchResultType) String() string {
	return proto.EnumName(SearchResultType_name, int32(x))
}

func (SearchResultType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_075a004a2049c613, []int{0}
}

// A result that appears in the response of a search request. Each result
// captures details of one entry that matches the search.
type SearchCatalogResult struct {
	// Type of the search result. This field can be used to determine which Get
	// method to call to fetch the full resource.
	SearchResultType SearchResultType `protobuf:"varint,1,opt,name=search_result_type,json=searchResultType,proto3,enum=google.cloud.datacatalog.v1beta1.SearchResultType" json:"search_result_type,omitempty"`
	// Sub-type of the search result. This is a dot-delimited description of the
	// resource's full type, and is the same as the value callers would provide in
	// the "type" search facet.  Examples: `entry.table`, `entry.dataStream`,
	// `tagTemplate`.
	SearchResultSubtype string `protobuf:"bytes,2,opt,name=search_result_subtype,json=searchResultSubtype,proto3" json:"search_result_subtype,omitempty"`
	// The relative resource name of the resource in URL format.
	// Examples:
	//
	//  * `projects/{project_id}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}`
	//  * `projects/{project_id}/tagTemplates/{tag_template_id}`
	RelativeResourceName string `protobuf:"bytes,3,opt,name=relative_resource_name,json=relativeResourceName,proto3" json:"relative_resource_name,omitempty"`
	// The full name of the cloud resource the entry belongs to. See:
	// https://cloud.google.com/apis/design/resource_names#full_resource_name.
	// Example:
	//
	//  * `//bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId`
	LinkedResource       string   `protobuf:"bytes,4,opt,name=linked_resource,json=linkedResource,proto3" json:"linked_resource,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SearchCatalogResult) Reset()         { *m = SearchCatalogResult{} }
func (m *SearchCatalogResult) String() string { return proto.CompactTextString(m) }
func (*SearchCatalogResult) ProtoMessage()    {}
func (*SearchCatalogResult) Descriptor() ([]byte, []int) {
	return fileDescriptor_075a004a2049c613, []int{0}
}

func (m *SearchCatalogResult) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SearchCatalogResult.Unmarshal(m, b)
}
func (m *SearchCatalogResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SearchCatalogResult.Marshal(b, m, deterministic)
}
func (m *SearchCatalogResult) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SearchCatalogResult.Merge(m, src)
}
func (m *SearchCatalogResult) XXX_Size() int {
	return xxx_messageInfo_SearchCatalogResult.Size(m)
}
func (m *SearchCatalogResult) XXX_DiscardUnknown() {
	xxx_messageInfo_SearchCatalogResult.DiscardUnknown(m)
}

var xxx_messageInfo_SearchCatalogResult proto.InternalMessageInfo

func (m *SearchCatalogResult) GetSearchResultType() SearchResultType {
	if m != nil {
		return m.SearchResultType
	}
	return SearchResultType_SEARCH_RESULT_TYPE_UNSPECIFIED
}

func (m *SearchCatalogResult) GetSearchResultSubtype() string {
	if m != nil {
		return m.SearchResultSubtype
	}
	return ""
}

func (m *SearchCatalogResult) GetRelativeResourceName() string {
	if m != nil {
		return m.RelativeResourceName
	}
	return ""
}

func (m *SearchCatalogResult) GetLinkedResource() string {
	if m != nil {
		return m.LinkedResource
	}
	return ""
}

func init() {
	proto.RegisterEnum("google.cloud.datacatalog.v1beta1.SearchResultType", SearchResultType_name, SearchResultType_value)
	proto.RegisterType((*SearchCatalogResult)(nil), "google.cloud.datacatalog.v1beta1.SearchCatalogResult")
}

func init() {
	proto.RegisterFile("google/cloud/datacatalog/v1beta1/search.proto", fileDescriptor_075a004a2049c613)
}

var fileDescriptor_075a004a2049c613 = []byte{
	// 384 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x92, 0xd1, 0xaf, 0xd2, 0x30,
	0x18, 0xc5, 0x1d, 0x57, 0x4d, 0x6e, 0x35, 0xf7, 0x2e, 0x45, 0x0d, 0x31, 0x46, 0x09, 0x2f, 0x12,
	0x13, 0xd7, 0x80, 0xbe, 0xf9, 0x84, 0x58, 0x91, 0x88, 0xb8, 0x74, 0xe3, 0x01, 0x5f, 0x6a, 0xb7,
	0x7d, 0x8c, 0xc5, 0x6e, 0x5d, 0xb6, 0x8e, 0x84, 0x7f, 0xc1, 0xbf, 0xd8, 0x47, 0x63, 0x3b, 0x08,
	0x92, 0x90, 0xfb, 0xd8, 0x73, 0x7e, 0xe7, 0x7c, 0x5f, 0xda, 0xa2, 0xb7, 0xa9, 0x52, 0xa9, 0x04,
	0x12, 0x4b, 0xd5, 0x24, 0x24, 0x11, 0x5a, 0xc4, 0x42, 0x0b, 0xa9, 0x52, 0xb2, 0x1b, 0x45, 0xa0,
	0xc5, 0x88, 0xd4, 0x20, 0xaa, 0x78, 0xeb, 0x95, 0x95, 0xd2, 0x0a, 0xf7, 0x2d, 0xee, 0x19, 0xdc,
	0x3b, 0xc1, 0xbd, 0x16, 0x7f, 0xfe, 0xaa, 0x2d, 0x14, 0x65, 0x46, 0x36, 0x19, 0xc8, 0x84, 0x47,
	0xb0, 0x15, 0xbb, 0x4c, 0x55, 0xb6, 0xe2, 0x08, 0x98, 0x53, 0xd4, 0x6c, 0x88, 0xce, 0x72, 0xa8,
	0xb5, 0xc8, 0x4b, 0x0b, 0x0c, 0x7e, 0x77, 0x50, 0x37, 0x30, 0x43, 0xa7, 0xb6, 0x9b, 0x41, 0xdd,
	0x48, 0x8d, 0x7f, 0x22, 0x6c, 0x77, 0xe1, 0x95, 0x11, 0xb8, 0xde, 0x97, 0xd0, 0x73, 0xfa, 0xce,
	0xf0, 0x66, 0x3c, 0xf6, 0xee, 0x5a, 0xcc, 0xb3, 0x95, 0xb6, 0x2b, 0xdc, 0x97, 0xc0, 0xdc, 0xfa,
	0x4c, 0xc1, 0x63, 0xf4, 0xf4, 0xff, 0x09, 0x75, 0x13, 0x99, 0x21, 0x9d, 0xbe, 0x33, 0xbc, 0x66,
	0xdd, 0xd3, 0x40, 0x60, 0x2d, 0xfc, 0x1e, 0x3d, 0xab, 0x40, 0x0a, 0x9d, 0xed, 0xe0, 0x5f, 0x4a,
	0x35, 0x55, 0x0c, 0xbc, 0x10, 0x39, 0xf4, 0xae, 0x4c, 0xe8, 0xc9, 0xc1, 0x65, 0xad, 0xb9, 0x14,
	0x39, 0xe0, 0xd7, 0xe8, 0x56, 0x66, 0xc5, 0x2f, 0x48, 0x8e, 0x99, 0xde, 0x7d, 0x83, 0xdf, 0x58,
	0xf9, 0x00, 0xbf, 0x49, 0x90, 0x7b, 0xbe, 0x38, 0x1e, 0xa0, 0x97, 0x01, 0x9d, 0xb0, 0xe9, 0x17,
	0xce, 0x68, 0xb0, 0x5a, 0x84, 0x3c, 0x5c, 0xfb, 0x94, 0xaf, 0x96, 0x81, 0x4f, 0xa7, 0xf3, 0xcf,
	0x73, 0xfa, 0xc9, 0xbd, 0x87, 0xaf, 0xd1, 0x03, 0xba, 0x0c, 0xd9, 0xda, 0x75, 0xb0, 0x8b, 0x1e,
	0x87, 0x93, 0x19, 0x0f, 0xe9, 0x37, 0x7f, 0x31, 0x09, 0xa9, 0xdb, 0xc1, 0xb7, 0xe8, 0x91, 0x31,
	0xf9, 0x8c, 0x7d, 0x5f, 0xf9, 0xee, 0xd5, 0xc7, 0x12, 0xbd, 0x88, 0x55, 0x7e, 0xf1, 0x0e, 0x7d,
	0xe7, 0xc7, 0xd7, 0xd6, 0x4b, 0x95, 0x14, 0x45, 0xea, 0xa9, 0x2a, 0x25, 0x29, 0x14, 0xe6, 0xc1,
	0x88, 0xb5, 0x44, 0x99, 0xd5, 0x97, 0xbf, 0xd1, 0x87, 0x13, 0xed, 0x8f, 0xe3, 0x44, 0x0f, 0x4d,
	0xf4, 0xdd, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xaa, 0xb0, 0x1c, 0x8d, 0x80, 0x02, 0x00, 0x00,
}
