// Code generated by protoc-gen-go. DO NOT EDIT.
// source: hashicorp/cloud/hcp_link/link_status/v1/link_status.proto

package link_statusv1

import (
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	math "math"
)

// 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

// GetLinkStatusRequest is empty for now as GetLinkStatus does not expect any
// arguments.
type GetLinkStatusRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_GetLinkStatusRequest proto.InternalMessageInfo

// GetLinkStatusResponse contains information about the Link's status. The
// information will be used by the Link service to know the capabilities of the
// Link node and to e.g. enable/disable workflows like polling the node's
// status.
type GetLinkStatusResponse struct {
	// node_id is the ID assigned to the node. It is expected to unique within the
	// link resource (e.g. within the cluster).
	NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	// version is the HCP Link library's version in semantic version format.
	Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
	// features are used to configure optional functionality.
	Features             *Features `protobuf:"bytes,3,opt,name=features,proto3" json:"features,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *GetLinkStatusResponse) Reset()         { *m = GetLinkStatusResponse{} }
func (m *GetLinkStatusResponse) String() string { return proto.CompactTextString(m) }
func (*GetLinkStatusResponse) ProtoMessage()    {}
func (*GetLinkStatusResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_2c2df85e77365bce, []int{1}
}

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

var xxx_messageInfo_GetLinkStatusResponse proto.InternalMessageInfo

func (m *GetLinkStatusResponse) GetNodeId() string {
	if m != nil {
		return m.NodeId
	}
	return ""
}

func (m *GetLinkStatusResponse) GetVersion() string {
	if m != nil {
		return m.Version
	}
	return ""
}

func (m *GetLinkStatusResponse) GetFeatures() *Features {
	if m != nil {
		return m.Features
	}
	return nil
}

// Features are all optional functionality that may be provided by a node.
type Features struct {
	// node_status_reporting is used to configure node status reporting.
	NodeStatusReporting  *FeatureNodeStatusReporting `protobuf:"bytes,1,opt,name=node_status_reporting,json=nodeStatusReporting,proto3" json:"node_status_reporting,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                    `json:"-"`
	XXX_unrecognized     []byte                      `json:"-"`
	XXX_sizecache        int32                       `json:"-"`
}

func (m *Features) Reset()         { *m = Features{} }
func (m *Features) String() string { return proto.CompactTextString(m) }
func (*Features) ProtoMessage()    {}
func (*Features) Descriptor() ([]byte, []int) {
	return fileDescriptor_2c2df85e77365bce, []int{2}
}

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

var xxx_messageInfo_Features proto.InternalMessageInfo

func (m *Features) GetNodeStatusReporting() *FeatureNodeStatusReporting {
	if m != nil {
		return m.NodeStatusReporting
	}
	return nil
}

// FeatureNodeStatusReporting configures a feature that allows HCP to poll
// status information from the node.
type FeatureNodeStatusReporting struct {
	// enabled can be used to toggle the node status reporting feature. If true
	// HCP will regularly retrieve and store the node's status.
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FeatureNodeStatusReporting) Reset()         { *m = FeatureNodeStatusReporting{} }
func (m *FeatureNodeStatusReporting) String() string { return proto.CompactTextString(m) }
func (*FeatureNodeStatusReporting) ProtoMessage()    {}
func (*FeatureNodeStatusReporting) Descriptor() ([]byte, []int) {
	return fileDescriptor_2c2df85e77365bce, []int{3}
}

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

var xxx_messageInfo_FeatureNodeStatusReporting proto.InternalMessageInfo

func (m *FeatureNodeStatusReporting) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func init() {
	proto.RegisterType((*GetLinkStatusRequest)(nil), "hashicorp.cloud.hcp_link.link_status.v1.GetLinkStatusRequest")
	proto.RegisterType((*GetLinkStatusResponse)(nil), "hashicorp.cloud.hcp_link.link_status.v1.GetLinkStatusResponse")
	proto.RegisterType((*Features)(nil), "hashicorp.cloud.hcp_link.link_status.v1.Features")
	proto.RegisterType((*FeatureNodeStatusReporting)(nil), "hashicorp.cloud.hcp_link.link_status.v1.FeatureNodeStatusReporting")
}

func init() {
	proto.RegisterFile("hashicorp/cloud/hcp_link/link_status/v1/link_status.proto", fileDescriptor_2c2df85e77365bce)
}

var fileDescriptor_2c2df85e77365bce = []byte{
	// 434 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x93, 0xcd, 0x8a, 0xd4, 0x40,
	0x14, 0x85, 0xa9, 0x28, 0x33, 0x6d, 0x0d, 0x22, 0x46, 0x47, 0x9b, 0x59, 0x0d, 0x0d, 0xe2, 0x88,
	0x58, 0xa1, 0x5a, 0x10, 0x2c, 0xd1, 0x45, 0x37, 0x38, 0x2d, 0xcc, 0x48, 0x93, 0x81, 0x5e, 0x0c,
	0x81, 0x26, 0x5d, 0xb9, 0x26, 0xc5, 0x74, 0x57, 0xc5, 0x54, 0x25, 0x3e, 0x80, 0x7b, 0xf7, 0x6e,
	0xc5, 0x95, 0x8f, 0xe2, 0xd6, 0x37, 0x70, 0xe9, 0x53, 0x48, 0xaa, 0xf3, 0xe7, 0x1f, 0xc4, 0xd9,
	0x04, 0xce, 0xad, 0xf3, 0xdd, 0x9c, 0xdc, 0xba, 0xc1, 0x4f, 0x93, 0x50, 0x27, 0x82, 0xab, 0x2c,
	0xf5, 0xf8, 0x5a, 0xe5, 0x91, 0x97, 0xf0, 0x74, 0xb9, 0x16, 0xf2, 0xc2, 0x2b, 0x1f, 0x4b, 0x6d,
	0x42, 0x93, 0x6b, 0xaf, 0xa0, 0x5d, 0x49, 0xd2, 0x4c, 0x19, 0xe5, 0xde, 0x6f, 0x50, 0x62, 0x51,
	0x52, 0xa3, 0xa4, 0xeb, 0x2d, 0xe8, 0xe8, 0x0e, 0xbe, 0x7d, 0x0c, 0xe6, 0x44, 0xc8, 0x8b, 0x33,
	0x5b, 0xf3, 0xe1, 0x6d, 0x0e, 0xda, 0x8c, 0x3e, 0x22, 0xbc, 0xff, 0xdb, 0x81, 0x4e, 0x95, 0xd4,
	0xe0, 0xde, 0xc5, 0xbb, 0x52, 0x45, 0xb0, 0x14, 0xd1, 0x10, 0x1d, 0xa2, 0xa3, 0x6b, 0xfe, 0x4e,
	0x29, 0x5f, 0x45, 0xee, 0x10, 0xef, 0x16, 0x90, 0x69, 0xa1, 0xe4, 0xd0, 0xb1, 0x07, 0xb5, 0x74,
	0x4f, 0xf1, 0xe0, 0x0d, 0x84, 0x26, 0xcf, 0x40, 0x0f, 0xaf, 0x1c, 0xa2, 0xa3, 0xbd, 0x31, 0x25,
	0x3d, 0x03, 0x92, 0x97, 0x15, 0xe8, 0x37, 0x2d, 0x46, 0xef, 0x11, 0x1e, 0xd4, 0x65, 0xf7, 0x1d,
	0xde, 0xb7, 0x71, 0xb6, 0xc4, 0x32, 0x83, 0x54, 0x65, 0x46, 0xc8, 0xd8, 0x86, 0xdb, 0x1b, 0x4f,
	0xff, 0xf7, 0x45, 0xaf, 0x55, 0x04, 0xf5, 0x17, 0x57, 0xad, 0xfc, 0x5b, 0xf2, 0xcf, 0xe2, 0xe8,
	0x09, 0x3e, 0xf8, 0x37, 0x52, 0x0e, 0x03, 0x64, 0xb8, 0x5a, 0xc3, 0x76, 0x4a, 0x03, 0xbf, 0x96,
	0xe3, 0xcf, 0x08, 0xdf, 0x6c, 0xc7, 0x7a, 0x06, 0x59, 0x21, 0x38, 0xb8, 0x1f, 0x10, 0xbe, 0xfe,
	0xcb, 0xbc, 0xdd, 0xe7, 0xbd, 0x93, 0xff, 0xed, 0x02, 0x0f, 0x5e, 0x5c, 0x16, 0xdf, 0x5e, 0xf3,
	0xe4, 0x9b, 0x83, 0x1f, 0x72, 0xb5, 0xe9, 0xdb, 0x65, 0x72, 0xa3, 0xed, 0x31, 0x2f, 0x57, 0x70,
	0x8e, 0xce, 0xcf, 0x63, 0x61, 0x92, 0x7c, 0x45, 0xb8, 0xda, 0x78, 0xed, 0x2a, 0x27, 0x3c, 0x7d,
	0x64, 0x97, 0x38, 0x06, 0xe9, 0xc5, 0xca, 0xeb, 0xb9, 0xe4, 0xcf, 0x3a, 0xb2, 0xa0, 0x9f, 0x9c,
	0xab, 0xb3, 0xe9, 0xec, 0xe4, 0x8b, 0x73, 0x6f, 0xd6, 0xe4, 0x9b, 0xda, 0x7c, 0x33, 0x9e, 0x96,
	0x49, 0x48, 0x1b, 0x87, 0x2c, 0xe8, 0xd7, 0x8e, 0x2f, 0xb0, 0xbe, 0xa0, 0xf2, 0x05, 0xad, 0x2f,
	0x58, 0xd0, 0xef, 0x0e, 0xed, 0xe5, 0x0b, 0x8e, 0xe7, 0x93, 0x53, 0x30, 0x61, 0x14, 0x9a, 0xf0,
	0x87, 0xf3, 0xa0, 0x61, 0x18, 0xb3, 0x10, 0x63, 0x15, 0xc5, 0x58, 0x8b, 0x31, 0xb6, 0xa0, 0xab,
	0x1d, 0xfb, 0x7b, 0x3e, 0xfe, 0x19, 0x00, 0x00, 0xff, 0xff, 0xd9, 0xbc, 0x1d, 0x98, 0xdb, 0x03,
	0x00, 0x00,
}
