// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/ads/googleads/v1/resources/campaign_draft.proto

package resources

import (
	fmt "fmt"
	math "math"

	proto "github.com/golang/protobuf/proto"
	wrappers "github.com/golang/protobuf/ptypes/wrappers"
	enums "google.golang.org/genproto/googleapis/ads/googleads/v1/enums"
	_ "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

// A campaign draft.
type CampaignDraft struct {
	// The resource name of the campaign draft.
	// Campaign draft resource names have the form:
	//
	// `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}`
	ResourceName string `protobuf:"bytes,1,opt,name=resource_name,json=resourceName,proto3" json:"resource_name,omitempty"`
	// The ID of the draft.
	//
	// This field is read-only.
	DraftId *wrappers.Int64Value `protobuf:"bytes,2,opt,name=draft_id,json=draftId,proto3" json:"draft_id,omitempty"`
	// The base campaign to which the draft belongs.
	BaseCampaign *wrappers.StringValue `protobuf:"bytes,3,opt,name=base_campaign,json=baseCampaign,proto3" json:"base_campaign,omitempty"`
	// The name of the campaign draft.
	//
	// This field is required and should not be empty when creating new
	// campaign drafts.
	//
	// It must not contain any null (code point 0x0), NL line feed
	// (code point 0xA) or carriage return (code point 0xD) characters.
	Name *wrappers.StringValue `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
	// Resource name of the Campaign that results from overlaying the draft
	// changes onto the base campaign.
	//
	// This field is read-only.
	DraftCampaign *wrappers.StringValue `protobuf:"bytes,5,opt,name=draft_campaign,json=draftCampaign,proto3" json:"draft_campaign,omitempty"`
	// The status of the campaign draft. This field is read-only.
	//
	// When a new campaign draft is added, the status defaults to PROPOSED.
	Status enums.CampaignDraftStatusEnum_CampaignDraftStatus `protobuf:"varint,6,opt,name=status,proto3,enum=google.ads.googleads.v1.enums.CampaignDraftStatusEnum_CampaignDraftStatus" json:"status,omitempty"`
	// Whether there is an experiment based on this draft currently serving.
	HasExperimentRunning *wrappers.BoolValue `protobuf:"bytes,7,opt,name=has_experiment_running,json=hasExperimentRunning,proto3" json:"has_experiment_running,omitempty"`
	// The resource name of the long-running operation that can be used to poll
	// for completion of draft promotion. This is only set if the draft promotion
	// is in progress or finished.
	LongRunningOperation *wrappers.StringValue `protobuf:"bytes,8,opt,name=long_running_operation,json=longRunningOperation,proto3" json:"long_running_operation,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

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

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

var xxx_messageInfo_CampaignDraft proto.InternalMessageInfo

func (m *CampaignDraft) GetResourceName() string {
	if m != nil {
		return m.ResourceName
	}
	return ""
}

func (m *CampaignDraft) GetDraftId() *wrappers.Int64Value {
	if m != nil {
		return m.DraftId
	}
	return nil
}

func (m *CampaignDraft) GetBaseCampaign() *wrappers.StringValue {
	if m != nil {
		return m.BaseCampaign
	}
	return nil
}

func (m *CampaignDraft) GetName() *wrappers.StringValue {
	if m != nil {
		return m.Name
	}
	return nil
}

func (m *CampaignDraft) GetDraftCampaign() *wrappers.StringValue {
	if m != nil {
		return m.DraftCampaign
	}
	return nil
}

func (m *CampaignDraft) GetStatus() enums.CampaignDraftStatusEnum_CampaignDraftStatus {
	if m != nil {
		return m.Status
	}
	return enums.CampaignDraftStatusEnum_UNSPECIFIED
}

func (m *CampaignDraft) GetHasExperimentRunning() *wrappers.BoolValue {
	if m != nil {
		return m.HasExperimentRunning
	}
	return nil
}

func (m *CampaignDraft) GetLongRunningOperation() *wrappers.StringValue {
	if m != nil {
		return m.LongRunningOperation
	}
	return nil
}

func init() {
	proto.RegisterType((*CampaignDraft)(nil), "google.ads.googleads.v1.resources.CampaignDraft")
}

func init() {
	proto.RegisterFile("google/ads/googleads/v1/resources/campaign_draft.proto", fileDescriptor_e11dbb7c593f6fa7)
}

var fileDescriptor_e11dbb7c593f6fa7 = []byte{
	// 487 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0xc1, 0x6e, 0xd3, 0x30,
	0x18, 0xc7, 0x95, 0xae, 0x74, 0xc3, 0xac, 0x3b, 0x58, 0xd3, 0x14, 0x95, 0x09, 0x75, 0xa0, 0x49,
	0x3d, 0x39, 0x64, 0xa0, 0x4a, 0x84, 0x53, 0x3a, 0xa6, 0x69, 0x3b, 0x40, 0x95, 0x49, 0x3d, 0xa0,
	0x4a, 0x91, 0xdb, 0x78, 0x5e, 0xa4, 0xc4, 0xb6, 0x6c, 0x67, 0xf0, 0x3c, 0x1c, 0x39, 0xf1, 0x1c,
	0x3c, 0x0a, 0x2f, 0x01, 0x8a, 0x1d, 0x5b, 0x1a, 0x63, 0xac, 0xb7, 0x2f, 0xf6, 0xff, 0xf7, 0xf7,
	0xdf, 0xdf, 0xe7, 0x80, 0x29, 0xe5, 0x9c, 0x56, 0x24, 0xc2, 0x85, 0x8a, 0x6c, 0xd9, 0x56, 0xb7,
	0x71, 0x24, 0x89, 0xe2, 0x8d, 0x5c, 0x13, 0x15, 0xad, 0x71, 0x2d, 0x70, 0x49, 0x59, 0x5e, 0x48,
	0x7c, 0xad, 0x91, 0x90, 0x5c, 0x73, 0x78, 0x64, 0xc5, 0x08, 0x17, 0x0a, 0x79, 0x0e, 0xdd, 0xc6,
	0xc8, 0x73, 0xa3, 0x77, 0x0f, 0x59, 0x13, 0xd6, 0xd4, 0x7f, 0xdb, 0xe6, 0x4a, 0x63, 0xdd, 0x28,
	0xeb, 0x3e, 0x7a, 0xd1, 0xa1, 0xe6, 0x6b, 0xd5, 0x5c, 0x47, 0x5f, 0x24, 0x16, 0x82, 0x48, 0xb7,
	0x7f, 0xe8, 0xac, 0x45, 0x19, 0x61, 0xc6, 0xb8, 0xc6, 0xba, 0xe4, 0xac, 0xdb, 0x7d, 0xf9, 0xa3,
	0x0f, 0x86, 0xa7, 0x9d, 0xfb, 0x87, 0xd6, 0x1c, 0xbe, 0x02, 0x43, 0x97, 0x2b, 0x67, 0xb8, 0x26,
	0x61, 0x30, 0x0e, 0x26, 0x4f, 0xb3, 0x5d, 0xb7, 0xf8, 0x11, 0xd7, 0x04, 0x4e, 0xc1, 0x8e, 0x8d,
	0x52, 0x16, 0x61, 0x6f, 0x1c, 0x4c, 0x9e, 0x9d, 0x3c, 0xef, 0xae, 0x86, 0x5c, 0x0e, 0x74, 0xc1,
	0xf4, 0xf4, 0xed, 0x02, 0x57, 0x0d, 0xc9, 0xb6, 0x8d, 0xf8, 0xa2, 0x80, 0x29, 0x18, 0xae, 0xb0,
	0x22, 0xb9, 0xbb, 0x50, 0xb8, 0x65, 0xe0, 0xc3, 0x7b, 0xf0, 0x95, 0x96, 0x25, 0xa3, 0x96, 0xde,
	0x6d, 0x11, 0x17, 0x12, 0xbe, 0x06, 0x7d, 0x13, 0xab, 0xbf, 0x01, 0x69, 0x94, 0xf0, 0x14, 0xec,
	0xd9, 0xb0, 0xfe, 0xd4, 0x27, 0x1b, 0xb0, 0x43, 0xc3, 0xf8, 0x63, 0x57, 0x60, 0x60, 0xdb, 0x1e,
	0x0e, 0xc6, 0xc1, 0x64, 0xef, 0xe4, 0x12, 0x3d, 0x34, 0x55, 0x33, 0x32, 0x74, 0xa7, 0xa9, 0x57,
	0x86, 0x3c, 0x63, 0x4d, 0xfd, 0xaf, 0xf5, 0xac, 0x73, 0x86, 0x73, 0x70, 0x70, 0x83, 0x55, 0x4e,
	0xbe, 0x0a, 0x22, 0xcb, 0x9a, 0x30, 0x9d, 0xcb, 0x86, 0xb1, 0x92, 0xd1, 0x70, 0xdb, 0x04, 0x1e,
	0xdd, 0x0b, 0x3c, 0xe3, 0xbc, 0xb2, 0x71, 0xf7, 0x6f, 0xb0, 0x3a, 0xf3, 0x60, 0x66, 0x39, 0x98,
	0x81, 0x83, 0x8a, 0x33, 0xea, 0x7c, 0x72, 0x2e, 0x88, 0x34, 0xf3, 0x0f, 0x77, 0x36, 0x68, 0xc1,
	0x7e, 0xcb, 0x76, 0x56, 0x9f, 0x1c, 0x39, 0xfb, 0x1d, 0x80, 0xe3, 0x35, 0xaf, 0xd1, 0xa3, 0xaf,
	0x7a, 0x06, 0xef, 0x5c, 0x76, 0xde, 0x1e, 0x31, 0x0f, 0x3e, 0x5f, 0x76, 0x20, 0xe5, 0x15, 0x66,
	0x14, 0x71, 0x49, 0x23, 0x4a, 0x98, 0x09, 0xe0, 0xde, 0xbe, 0x28, 0xd5, 0x7f, 0xfe, 0xb2, 0xf7,
	0xbe, 0xfa, 0xd6, 0xdb, 0x3a, 0x4f, 0xd3, 0xef, 0xbd, 0xa3, 0x73, 0x6b, 0x99, 0x16, 0x0a, 0xd9,
	0xb2, 0xad, 0x16, 0x31, 0xca, 0x9c, 0xf2, 0xa7, 0xd3, 0x2c, 0xd3, 0x42, 0x2d, 0xbd, 0x66, 0xb9,
	0x88, 0x97, 0x5e, 0xf3, 0xab, 0x77, 0x6c, 0x37, 0x92, 0x24, 0x2d, 0x54, 0x92, 0x78, 0x55, 0x92,
	0x2c, 0xe2, 0x24, 0xf1, 0xba, 0xd5, 0xc0, 0x84, 0x7d, 0xf3, 0x27, 0x00, 0x00, 0xff, 0xff, 0x86,
	0xe5, 0x2c, 0x39, 0x11, 0x04, 0x00, 0x00,
}
