All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.ads.googleads.v17.resources.AdGroup Maven / Gradle / Ivy

The newest version!
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: google/ads/googleads/v17/resources/ad_group.proto

// Protobuf Java Version: 3.25.3
package com.google.ads.googleads.v17.resources;

/**
 * 
 * An ad group.
 * 
* * Protobuf type {@code google.ads.googleads.v17.resources.AdGroup} */ public final class AdGroup extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:google.ads.googleads.v17.resources.AdGroup) AdGroupOrBuilder { private static final long serialVersionUID = 0L; // Use AdGroup.newBuilder() to construct. private AdGroup(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private AdGroup() { resourceName_ = ""; name_ = ""; status_ = 0; type_ = 0; adRotationMode_ = 0; baseAdGroup_ = ""; trackingUrlTemplate_ = ""; urlCustomParameters_ = java.util.Collections.emptyList(); campaign_ = ""; displayCustomBidDimension_ = 0; finalUrlSuffix_ = ""; effectiveTargetCpaSource_ = 0; effectiveTargetRoasSource_ = 0; labels_ = com.google.protobuf.LazyStringArrayList.emptyList(); excludedParentAssetFieldTypes_ = java.util.Collections.emptyList(); excludedParentAssetSetTypes_ = java.util.Collections.emptyList(); primaryStatus_ = 0; primaryStatusReasons_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new AdGroup(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_fieldAccessorTable .ensureFieldAccessorsInitialized( com.google.ads.googleads.v17.resources.AdGroup.class, com.google.ads.googleads.v17.resources.AdGroup.Builder.class); } public interface AudienceSettingOrBuilder extends // @@protoc_insertion_point(interface_extends:google.ads.googleads.v17.resources.AdGroup.AudienceSetting) com.google.protobuf.MessageOrBuilder { /** *
     * Immutable. If true, this ad group uses an Audience resource for audience
     * targeting. If false, this ad group may use audience segment criteria
     * instead.
     * 
* * bool use_audience_grouped = 1 [(.google.api.field_behavior) = IMMUTABLE]; * @return The useAudienceGrouped. */ boolean getUseAudienceGrouped(); } /** *
   * Settings for the audience targeting.
   * 
* * Protobuf type {@code google.ads.googleads.v17.resources.AdGroup.AudienceSetting} */ public static final class AudienceSetting extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:google.ads.googleads.v17.resources.AdGroup.AudienceSetting) AudienceSettingOrBuilder { private static final long serialVersionUID = 0L; // Use AudienceSetting.newBuilder() to construct. private AudienceSetting(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private AudienceSetting() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new AudienceSetting(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_AudienceSetting_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_AudienceSetting_fieldAccessorTable .ensureFieldAccessorsInitialized( com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.class, com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.Builder.class); } public static final int USE_AUDIENCE_GROUPED_FIELD_NUMBER = 1; private boolean useAudienceGrouped_ = false; /** *
     * Immutable. If true, this ad group uses an Audience resource for audience
     * targeting. If false, this ad group may use audience segment criteria
     * instead.
     * 
* * bool use_audience_grouped = 1 [(.google.api.field_behavior) = IMMUTABLE]; * @return The useAudienceGrouped. */ @java.lang.Override public boolean getUseAudienceGrouped() { return useAudienceGrouped_; } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (useAudienceGrouped_ != false) { output.writeBool(1, useAudienceGrouped_); } getUnknownFields().writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (useAudienceGrouped_ != false) { size += com.google.protobuf.CodedOutputStream .computeBoolSize(1, useAudienceGrouped_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting)) { return super.equals(obj); } com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting other = (com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting) obj; if (getUseAudienceGrouped() != other.getUseAudienceGrouped()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + USE_AUDIENCE_GROUPED_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getUseAudienceGrouped()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * Settings for the audience targeting.
     * 
* * Protobuf type {@code google.ads.googleads.v17.resources.AdGroup.AudienceSetting} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:google.ads.googleads.v17.resources.AdGroup.AudienceSetting) com.google.ads.googleads.v17.resources.AdGroup.AudienceSettingOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_AudienceSetting_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_AudienceSetting_fieldAccessorTable .ensureFieldAccessorsInitialized( com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.class, com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.Builder.class); } // Construct using com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.newBuilder() private Builder() { } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); bitField0_ = 0; useAudienceGrouped_ = false; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_AudienceSetting_descriptor; } @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting getDefaultInstanceForType() { return com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.getDefaultInstance(); } @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting build() { com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting buildPartial() { com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting result = new com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting(this); if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } private void buildPartial0(com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { result.useAudienceGrouped_ = useAudienceGrouped_; } } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting) { return mergeFrom((com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting other) { if (other == com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.getDefaultInstance()) return this; if (other.getUseAudienceGrouped() != false) { setUseAudienceGrouped(other.getUseAudienceGrouped()); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 8: { useAudienceGrouped_ = input.readBool(); bitField0_ |= 0x00000001; break; } // case 8 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag } break; } // default: } // switch (tag) } // while (!done) } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.unwrapIOException(); } finally { onChanged(); } // finally return this; } private int bitField0_; private boolean useAudienceGrouped_ ; /** *
       * Immutable. If true, this ad group uses an Audience resource for audience
       * targeting. If false, this ad group may use audience segment criteria
       * instead.
       * 
* * bool use_audience_grouped = 1 [(.google.api.field_behavior) = IMMUTABLE]; * @return The useAudienceGrouped. */ @java.lang.Override public boolean getUseAudienceGrouped() { return useAudienceGrouped_; } /** *
       * Immutable. If true, this ad group uses an Audience resource for audience
       * targeting. If false, this ad group may use audience segment criteria
       * instead.
       * 
* * bool use_audience_grouped = 1 [(.google.api.field_behavior) = IMMUTABLE]; * @param value The useAudienceGrouped to set. * @return This builder for chaining. */ public Builder setUseAudienceGrouped(boolean value) { useAudienceGrouped_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } /** *
       * Immutable. If true, this ad group uses an Audience resource for audience
       * targeting. If false, this ad group may use audience segment criteria
       * instead.
       * 
* * bool use_audience_grouped = 1 [(.google.api.field_behavior) = IMMUTABLE]; * @return This builder for chaining. */ public Builder clearUseAudienceGrouped() { bitField0_ = (bitField0_ & ~0x00000001); useAudienceGrouped_ = false; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:google.ads.googleads.v17.resources.AdGroup.AudienceSetting) } // @@protoc_insertion_point(class_scope:google.ads.googleads.v17.resources.AdGroup.AudienceSetting) private static final com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting(); } public static com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public AudienceSetting parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { Builder builder = newBuilder(); try { builder.mergeFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(builder.buildPartial()); } catch (com.google.protobuf.UninitializedMessageException e) { throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException(e) .setUnfinishedMessage(builder.buildPartial()); } return builder.buildPartial(); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } private int bitField0_; public static final int RESOURCE_NAME_FIELD_NUMBER = 1; @SuppressWarnings("serial") private volatile java.lang.Object resourceName_ = ""; /** *
   * Immutable. The resource name of the ad group.
   * Ad group resource names have the form:
   *
   * `customers/{customer_id}/adGroups/{ad_group_id}`
   * 
* * string resource_name = 1 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return The resourceName. */ @java.lang.Override public java.lang.String getResourceName() { java.lang.Object ref = resourceName_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); resourceName_ = s; return s; } } /** *
   * Immutable. The resource name of the ad group.
   * Ad group resource names have the form:
   *
   * `customers/{customer_id}/adGroups/{ad_group_id}`
   * 
* * string resource_name = 1 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return The bytes for resourceName. */ @java.lang.Override public com.google.protobuf.ByteString getResourceNameBytes() { java.lang.Object ref = resourceName_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); resourceName_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int ID_FIELD_NUMBER = 34; private long id_ = 0L; /** *
   * Output only. The ID of the ad group.
   * 
* * optional int64 id = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return Whether the id field is set. */ @java.lang.Override public boolean hasId() { return ((bitField0_ & 0x00000001) != 0); } /** *
   * Output only. The ID of the ad group.
   * 
* * optional int64 id = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The id. */ @java.lang.Override public long getId() { return id_; } public static final int NAME_FIELD_NUMBER = 35; @SuppressWarnings("serial") private volatile java.lang.Object name_ = ""; /** *
   * The name of the ad group.
   *
   * This field is required and should not be empty when creating new ad
   * groups.
   *
   * It must contain fewer than 255 UTF-8 full-width characters.
   *
   * It must not contain any null (code point 0x0), NL line feed
   * (code point 0xA) or carriage return (code point 0xD) characters.
   * 
* * optional string name = 35; * @return Whether the name field is set. */ @java.lang.Override public boolean hasName() { return ((bitField0_ & 0x00000002) != 0); } /** *
   * The name of the ad group.
   *
   * This field is required and should not be empty when creating new ad
   * groups.
   *
   * It must contain fewer than 255 UTF-8 full-width characters.
   *
   * It must not contain any null (code point 0x0), NL line feed
   * (code point 0xA) or carriage return (code point 0xD) characters.
   * 
* * optional string name = 35; * @return The name. */ @java.lang.Override public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } } /** *
   * The name of the ad group.
   *
   * This field is required and should not be empty when creating new ad
   * groups.
   *
   * It must contain fewer than 255 UTF-8 full-width characters.
   *
   * It must not contain any null (code point 0x0), NL line feed
   * (code point 0xA) or carriage return (code point 0xD) characters.
   * 
* * optional string name = 35; * @return The bytes for name. */ @java.lang.Override public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int STATUS_FIELD_NUMBER = 5; private int status_ = 0; /** *
   * The status of the ad group.
   * 
* * .google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus status = 5; * @return The enum numeric value on the wire for status. */ @java.lang.Override public int getStatusValue() { return status_; } /** *
   * The status of the ad group.
   * 
* * .google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus status = 5; * @return The status. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus getStatus() { com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus result = com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus.forNumber(status_); return result == null ? com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus.UNRECOGNIZED : result; } public static final int TYPE_FIELD_NUMBER = 12; private int type_ = 0; /** *
   * Immutable. The type of the ad group.
   * 
* * .google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType type = 12 [(.google.api.field_behavior) = IMMUTABLE]; * @return The enum numeric value on the wire for type. */ @java.lang.Override public int getTypeValue() { return type_; } /** *
   * Immutable. The type of the ad group.
   * 
* * .google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType type = 12 [(.google.api.field_behavior) = IMMUTABLE]; * @return The type. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType getType() { com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType result = com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType.forNumber(type_); return result == null ? com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType.UNRECOGNIZED : result; } public static final int AD_ROTATION_MODE_FIELD_NUMBER = 22; private int adRotationMode_ = 0; /** *
   * The ad rotation mode of the ad group.
   * 
* * .google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; * @return The enum numeric value on the wire for adRotationMode. */ @java.lang.Override public int getAdRotationModeValue() { return adRotationMode_; } /** *
   * The ad rotation mode of the ad group.
   * 
* * .google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; * @return The adRotationMode. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode getAdRotationMode() { com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode result = com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode.forNumber(adRotationMode_); return result == null ? com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode.UNRECOGNIZED : result; } public static final int BASE_AD_GROUP_FIELD_NUMBER = 36; @SuppressWarnings("serial") private volatile java.lang.Object baseAdGroup_ = ""; /** *
   * Output only. For draft or experiment ad groups, this field is the resource
   * name of the base ad group from which this ad group was created. If a draft
   * or experiment ad group does not have a base ad group, then this field is
   * null.
   *
   * For base ad groups, this field equals the ad group resource name.
   *
   * This field is read-only.
   * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return Whether the baseAdGroup field is set. */ @java.lang.Override public boolean hasBaseAdGroup() { return ((bitField0_ & 0x00000004) != 0); } /** *
   * Output only. For draft or experiment ad groups, this field is the resource
   * name of the base ad group from which this ad group was created. If a draft
   * or experiment ad group does not have a base ad group, then this field is
   * null.
   *
   * For base ad groups, this field equals the ad group resource name.
   *
   * This field is read-only.
   * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return The baseAdGroup. */ @java.lang.Override public java.lang.String getBaseAdGroup() { java.lang.Object ref = baseAdGroup_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); baseAdGroup_ = s; return s; } } /** *
   * Output only. For draft or experiment ad groups, this field is the resource
   * name of the base ad group from which this ad group was created. If a draft
   * or experiment ad group does not have a base ad group, then this field is
   * null.
   *
   * For base ad groups, this field equals the ad group resource name.
   *
   * This field is read-only.
   * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return The bytes for baseAdGroup. */ @java.lang.Override public com.google.protobuf.ByteString getBaseAdGroupBytes() { java.lang.Object ref = baseAdGroup_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); baseAdGroup_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int TRACKING_URL_TEMPLATE_FIELD_NUMBER = 37; @SuppressWarnings("serial") private volatile java.lang.Object trackingUrlTemplate_ = ""; /** *
   * The URL template for constructing a tracking URL.
   * 
* * optional string tracking_url_template = 37; * @return Whether the trackingUrlTemplate field is set. */ @java.lang.Override public boolean hasTrackingUrlTemplate() { return ((bitField0_ & 0x00000008) != 0); } /** *
   * The URL template for constructing a tracking URL.
   * 
* * optional string tracking_url_template = 37; * @return The trackingUrlTemplate. */ @java.lang.Override public java.lang.String getTrackingUrlTemplate() { java.lang.Object ref = trackingUrlTemplate_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); trackingUrlTemplate_ = s; return s; } } /** *
   * The URL template for constructing a tracking URL.
   * 
* * optional string tracking_url_template = 37; * @return The bytes for trackingUrlTemplate. */ @java.lang.Override public com.google.protobuf.ByteString getTrackingUrlTemplateBytes() { java.lang.Object ref = trackingUrlTemplate_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); trackingUrlTemplate_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int URL_CUSTOM_PARAMETERS_FIELD_NUMBER = 6; @SuppressWarnings("serial") private java.util.List urlCustomParameters_; /** *
   * The list of mappings used to substitute custom parameter tags in a
   * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
   * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ @java.lang.Override public java.util.List getUrlCustomParametersList() { return urlCustomParameters_; } /** *
   * The list of mappings used to substitute custom parameter tags in a
   * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
   * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ @java.lang.Override public java.util.List getUrlCustomParametersOrBuilderList() { return urlCustomParameters_; } /** *
   * The list of mappings used to substitute custom parameter tags in a
   * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
   * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ @java.lang.Override public int getUrlCustomParametersCount() { return urlCustomParameters_.size(); } /** *
   * The list of mappings used to substitute custom parameter tags in a
   * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
   * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ @java.lang.Override public com.google.ads.googleads.v17.common.CustomParameter getUrlCustomParameters(int index) { return urlCustomParameters_.get(index); } /** *
   * The list of mappings used to substitute custom parameter tags in a
   * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
   * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ @java.lang.Override public com.google.ads.googleads.v17.common.CustomParameterOrBuilder getUrlCustomParametersOrBuilder( int index) { return urlCustomParameters_.get(index); } public static final int CAMPAIGN_FIELD_NUMBER = 38; @SuppressWarnings("serial") private volatile java.lang.Object campaign_ = ""; /** *
   * Immutable. The campaign to which the ad group belongs.
   * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return Whether the campaign field is set. */ @java.lang.Override public boolean hasCampaign() { return ((bitField0_ & 0x00000010) != 0); } /** *
   * Immutable. The campaign to which the ad group belongs.
   * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return The campaign. */ @java.lang.Override public java.lang.String getCampaign() { java.lang.Object ref = campaign_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); campaign_ = s; return s; } } /** *
   * Immutable. The campaign to which the ad group belongs.
   * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return The bytes for campaign. */ @java.lang.Override public com.google.protobuf.ByteString getCampaignBytes() { java.lang.Object ref = campaign_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); campaign_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int CPC_BID_MICROS_FIELD_NUMBER = 39; private long cpcBidMicros_ = 0L; /** *
   * The maximum CPC (cost-per-click) bid.
   * 
* * optional int64 cpc_bid_micros = 39; * @return Whether the cpcBidMicros field is set. */ @java.lang.Override public boolean hasCpcBidMicros() { return ((bitField0_ & 0x00000020) != 0); } /** *
   * The maximum CPC (cost-per-click) bid.
   * 
* * optional int64 cpc_bid_micros = 39; * @return The cpcBidMicros. */ @java.lang.Override public long getCpcBidMicros() { return cpcBidMicros_; } public static final int EFFECTIVE_CPC_BID_MICROS_FIELD_NUMBER = 57; private long effectiveCpcBidMicros_ = 0L; /** *
   * Output only. Value will be same as that of the CPC (cost-per-click) bid
   * value when the bidding strategy is one of manual cpc, enhanced cpc, page
   * one promoted or target outrank share, otherwise the value will be null.
   * 
* * optional int64 effective_cpc_bid_micros = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return Whether the effectiveCpcBidMicros field is set. */ @java.lang.Override public boolean hasEffectiveCpcBidMicros() { return ((bitField0_ & 0x00000040) != 0); } /** *
   * Output only. Value will be same as that of the CPC (cost-per-click) bid
   * value when the bidding strategy is one of manual cpc, enhanced cpc, page
   * one promoted or target outrank share, otherwise the value will be null.
   * 
* * optional int64 effective_cpc_bid_micros = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveCpcBidMicros. */ @java.lang.Override public long getEffectiveCpcBidMicros() { return effectiveCpcBidMicros_; } public static final int CPM_BID_MICROS_FIELD_NUMBER = 40; private long cpmBidMicros_ = 0L; /** *
   * The maximum CPM (cost-per-thousand viewable impressions) bid.
   * 
* * optional int64 cpm_bid_micros = 40; * @return Whether the cpmBidMicros field is set. */ @java.lang.Override public boolean hasCpmBidMicros() { return ((bitField0_ & 0x00000080) != 0); } /** *
   * The maximum CPM (cost-per-thousand viewable impressions) bid.
   * 
* * optional int64 cpm_bid_micros = 40; * @return The cpmBidMicros. */ @java.lang.Override public long getCpmBidMicros() { return cpmBidMicros_; } public static final int TARGET_CPA_MICROS_FIELD_NUMBER = 41; private long targetCpaMicros_ = 0L; /** *
   * The target CPA (cost-per-acquisition). If the ad group's campaign
   * bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa
   * field set), then this field overrides the target CPA specified in the
   * campaign's bidding strategy.
   * Otherwise, this value is ignored.
   * 
* * optional int64 target_cpa_micros = 41; * @return Whether the targetCpaMicros field is set. */ @java.lang.Override public boolean hasTargetCpaMicros() { return ((bitField0_ & 0x00000100) != 0); } /** *
   * The target CPA (cost-per-acquisition). If the ad group's campaign
   * bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa
   * field set), then this field overrides the target CPA specified in the
   * campaign's bidding strategy.
   * Otherwise, this value is ignored.
   * 
* * optional int64 target_cpa_micros = 41; * @return The targetCpaMicros. */ @java.lang.Override public long getTargetCpaMicros() { return targetCpaMicros_; } public static final int CPV_BID_MICROS_FIELD_NUMBER = 42; private long cpvBidMicros_ = 0L; /** *
   * The CPV (cost-per-view) bid.
   * 
* * optional int64 cpv_bid_micros = 42; * @return Whether the cpvBidMicros field is set. */ @java.lang.Override public boolean hasCpvBidMicros() { return ((bitField0_ & 0x00000200) != 0); } /** *
   * The CPV (cost-per-view) bid.
   * 
* * optional int64 cpv_bid_micros = 42; * @return The cpvBidMicros. */ @java.lang.Override public long getCpvBidMicros() { return cpvBidMicros_; } public static final int TARGET_CPM_MICROS_FIELD_NUMBER = 43; private long targetCpmMicros_ = 0L; /** *
   * Average amount in micros that the advertiser is willing to pay for every
   * thousand times the ad is shown.
   * 
* * optional int64 target_cpm_micros = 43; * @return Whether the targetCpmMicros field is set. */ @java.lang.Override public boolean hasTargetCpmMicros() { return ((bitField0_ & 0x00000400) != 0); } /** *
   * Average amount in micros that the advertiser is willing to pay for every
   * thousand times the ad is shown.
   * 
* * optional int64 target_cpm_micros = 43; * @return The targetCpmMicros. */ @java.lang.Override public long getTargetCpmMicros() { return targetCpmMicros_; } public static final int TARGET_ROAS_FIELD_NUMBER = 44; private double targetRoas_ = 0D; /** *
   * The target ROAS (return-on-ad-spend) override. If the ad group's campaign
   * bidding strategy is TargetRoas or MaximizeConversionValue (with its
   * target_roas field set), then this field overrides the target ROAS specified
   * in the campaign's bidding strategy.
   * Otherwise, this value is ignored.
   * 
* * optional double target_roas = 44; * @return Whether the targetRoas field is set. */ @java.lang.Override public boolean hasTargetRoas() { return ((bitField0_ & 0x00000800) != 0); } /** *
   * The target ROAS (return-on-ad-spend) override. If the ad group's campaign
   * bidding strategy is TargetRoas or MaximizeConversionValue (with its
   * target_roas field set), then this field overrides the target ROAS specified
   * in the campaign's bidding strategy.
   * Otherwise, this value is ignored.
   * 
* * optional double target_roas = 44; * @return The targetRoas. */ @java.lang.Override public double getTargetRoas() { return targetRoas_; } public static final int PERCENT_CPC_BID_MICROS_FIELD_NUMBER = 45; private long percentCpcBidMicros_ = 0L; /** *
   * The percent cpc bid amount, expressed as a fraction of the advertised price
   * for some good or service. The valid range for the fraction is [0,1) and the
   * value stored here is 1,000,000 * [fraction].
   * 
* * optional int64 percent_cpc_bid_micros = 45; * @return Whether the percentCpcBidMicros field is set. */ @java.lang.Override public boolean hasPercentCpcBidMicros() { return ((bitField0_ & 0x00001000) != 0); } /** *
   * The percent cpc bid amount, expressed as a fraction of the advertised price
   * for some good or service. The valid range for the fraction is [0,1) and the
   * value stored here is 1,000,000 * [fraction].
   * 
* * optional int64 percent_cpc_bid_micros = 45; * @return The percentCpcBidMicros. */ @java.lang.Override public long getPercentCpcBidMicros() { return percentCpcBidMicros_; } public static final int FIXED_CPM_MICROS_FIELD_NUMBER = 64; private long fixedCpmMicros_ = 0L; /** *
   * The fixed amount in micros that the advertiser pays for every thousand
   * impressions of the ad.
   * 
* * optional int64 fixed_cpm_micros = 64; * @return Whether the fixedCpmMicros field is set. */ @java.lang.Override public boolean hasFixedCpmMicros() { return ((bitField0_ & 0x00002000) != 0); } /** *
   * The fixed amount in micros that the advertiser pays for every thousand
   * impressions of the ad.
   * 
* * optional int64 fixed_cpm_micros = 64; * @return The fixedCpmMicros. */ @java.lang.Override public long getFixedCpmMicros() { return fixedCpmMicros_; } public static final int TARGET_CPV_MICROS_FIELD_NUMBER = 65; private long targetCpvMicros_ = 0L; /** *
   * Average amount in micros that the advertiser is willing to pay for every ad
   * view.
   * 
* * optional int64 target_cpv_micros = 65; * @return Whether the targetCpvMicros field is set. */ @java.lang.Override public boolean hasTargetCpvMicros() { return ((bitField0_ & 0x00004000) != 0); } /** *
   * Average amount in micros that the advertiser is willing to pay for every ad
   * view.
   * 
* * optional int64 target_cpv_micros = 65; * @return The targetCpvMicros. */ @java.lang.Override public long getTargetCpvMicros() { return targetCpvMicros_; } public static final int OPTIMIZED_TARGETING_ENABLED_FIELD_NUMBER = 59; private boolean optimizedTargetingEnabled_ = false; /** *
   * True if optimized targeting is enabled. Optimized Targeting is the
   * replacement for Audience Expansion.
   * 
* * bool optimized_targeting_enabled = 59; * @return The optimizedTargetingEnabled. */ @java.lang.Override public boolean getOptimizedTargetingEnabled() { return optimizedTargetingEnabled_; } public static final int DISPLAY_CUSTOM_BID_DIMENSION_FIELD_NUMBER = 23; private int displayCustomBidDimension_ = 0; /** *
   * Allows advertisers to specify a targeting dimension on which to place
   * absolute bids. This is only applicable for campaigns that target only the
   * display network and not search.
   * 
* * .google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; * @return The enum numeric value on the wire for displayCustomBidDimension. */ @java.lang.Override public int getDisplayCustomBidDimensionValue() { return displayCustomBidDimension_; } /** *
   * Allows advertisers to specify a targeting dimension on which to place
   * absolute bids. This is only applicable for campaigns that target only the
   * display network and not search.
   * 
* * .google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; * @return The displayCustomBidDimension. */ @java.lang.Override public com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension getDisplayCustomBidDimension() { com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension result = com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension.forNumber(displayCustomBidDimension_); return result == null ? com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension.UNRECOGNIZED : result; } public static final int FINAL_URL_SUFFIX_FIELD_NUMBER = 46; @SuppressWarnings("serial") private volatile java.lang.Object finalUrlSuffix_ = ""; /** *
   * URL template for appending params to Final URL.
   * 
* * optional string final_url_suffix = 46; * @return Whether the finalUrlSuffix field is set. */ @java.lang.Override public boolean hasFinalUrlSuffix() { return ((bitField0_ & 0x00008000) != 0); } /** *
   * URL template for appending params to Final URL.
   * 
* * optional string final_url_suffix = 46; * @return The finalUrlSuffix. */ @java.lang.Override public java.lang.String getFinalUrlSuffix() { java.lang.Object ref = finalUrlSuffix_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); finalUrlSuffix_ = s; return s; } } /** *
   * URL template for appending params to Final URL.
   * 
* * optional string final_url_suffix = 46; * @return The bytes for finalUrlSuffix. */ @java.lang.Override public com.google.protobuf.ByteString getFinalUrlSuffixBytes() { java.lang.Object ref = finalUrlSuffix_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); finalUrlSuffix_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int TARGETING_SETTING_FIELD_NUMBER = 25; private com.google.ads.googleads.v17.common.TargetingSetting targetingSetting_; /** *
   * Setting for targeting related features.
   * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; * @return Whether the targetingSetting field is set. */ @java.lang.Override public boolean hasTargetingSetting() { return ((bitField0_ & 0x00010000) != 0); } /** *
   * Setting for targeting related features.
   * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; * @return The targetingSetting. */ @java.lang.Override public com.google.ads.googleads.v17.common.TargetingSetting getTargetingSetting() { return targetingSetting_ == null ? com.google.ads.googleads.v17.common.TargetingSetting.getDefaultInstance() : targetingSetting_; } /** *
   * Setting for targeting related features.
   * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; */ @java.lang.Override public com.google.ads.googleads.v17.common.TargetingSettingOrBuilder getTargetingSettingOrBuilder() { return targetingSetting_ == null ? com.google.ads.googleads.v17.common.TargetingSetting.getDefaultInstance() : targetingSetting_; } public static final int AUDIENCE_SETTING_FIELD_NUMBER = 56; private com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting audienceSetting_; /** *
   * Immutable. Setting for audience related features.
   * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; * @return Whether the audienceSetting field is set. */ @java.lang.Override public boolean hasAudienceSetting() { return ((bitField0_ & 0x00020000) != 0); } /** *
   * Immutable. Setting for audience related features.
   * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; * @return The audienceSetting. */ @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting getAudienceSetting() { return audienceSetting_ == null ? com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.getDefaultInstance() : audienceSetting_; } /** *
   * Immutable. Setting for audience related features.
   * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; */ @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup.AudienceSettingOrBuilder getAudienceSettingOrBuilder() { return audienceSetting_ == null ? com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.getDefaultInstance() : audienceSetting_; } public static final int EFFECTIVE_TARGET_CPA_MICROS_FIELD_NUMBER = 47; private long effectiveTargetCpaMicros_ = 0L; /** *
   * Output only. The effective target CPA (cost-per-acquisition).
   * This field is read-only.
   * 
* * optional int64 effective_target_cpa_micros = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return Whether the effectiveTargetCpaMicros field is set. */ @java.lang.Override public boolean hasEffectiveTargetCpaMicros() { return ((bitField0_ & 0x00040000) != 0); } /** *
   * Output only. The effective target CPA (cost-per-acquisition).
   * This field is read-only.
   * 
* * optional int64 effective_target_cpa_micros = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveTargetCpaMicros. */ @java.lang.Override public long getEffectiveTargetCpaMicros() { return effectiveTargetCpaMicros_; } public static final int EFFECTIVE_TARGET_CPA_SOURCE_FIELD_NUMBER = 29; private int effectiveTargetCpaSource_ = 0; /** *
   * Output only. Source of the effective target CPA.
   * This field is read-only.
   * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The enum numeric value on the wire for effectiveTargetCpaSource. */ @java.lang.Override public int getEffectiveTargetCpaSourceValue() { return effectiveTargetCpaSource_; } /** *
   * Output only. Source of the effective target CPA.
   * This field is read-only.
   * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveTargetCpaSource. */ @java.lang.Override public com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource getEffectiveTargetCpaSource() { com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource result = com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.forNumber(effectiveTargetCpaSource_); return result == null ? com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.UNRECOGNIZED : result; } public static final int EFFECTIVE_TARGET_ROAS_FIELD_NUMBER = 48; private double effectiveTargetRoas_ = 0D; /** *
   * Output only. The effective target ROAS (return-on-ad-spend).
   * This field is read-only.
   * 
* * optional double effective_target_roas = 48 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return Whether the effectiveTargetRoas field is set. */ @java.lang.Override public boolean hasEffectiveTargetRoas() { return ((bitField0_ & 0x00080000) != 0); } /** *
   * Output only. The effective target ROAS (return-on-ad-spend).
   * This field is read-only.
   * 
* * optional double effective_target_roas = 48 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveTargetRoas. */ @java.lang.Override public double getEffectiveTargetRoas() { return effectiveTargetRoas_; } public static final int EFFECTIVE_TARGET_ROAS_SOURCE_FIELD_NUMBER = 32; private int effectiveTargetRoasSource_ = 0; /** *
   * Output only. Source of the effective target ROAS.
   * This field is read-only.
   * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The enum numeric value on the wire for effectiveTargetRoasSource. */ @java.lang.Override public int getEffectiveTargetRoasSourceValue() { return effectiveTargetRoasSource_; } /** *
   * Output only. Source of the effective target ROAS.
   * This field is read-only.
   * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveTargetRoasSource. */ @java.lang.Override public com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource getEffectiveTargetRoasSource() { com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource result = com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.forNumber(effectiveTargetRoasSource_); return result == null ? com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.UNRECOGNIZED : result; } public static final int LABELS_FIELD_NUMBER = 49; @SuppressWarnings("serial") private com.google.protobuf.LazyStringArrayList labels_ = com.google.protobuf.LazyStringArrayList.emptyList(); /** *
   * Output only. The resource names of labels attached to this ad group.
   * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return A list containing the labels. */ public com.google.protobuf.ProtocolStringList getLabelsList() { return labels_; } /** *
   * Output only. The resource names of labels attached to this ad group.
   * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return The count of labels. */ public int getLabelsCount() { return labels_.size(); } /** *
   * Output only. The resource names of labels attached to this ad group.
   * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param index The index of the element to return. * @return The labels at the given index. */ public java.lang.String getLabels(int index) { return labels_.get(index); } /** *
   * Output only. The resource names of labels attached to this ad group.
   * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param index The index of the value to return. * @return The bytes of the labels at the given index. */ public com.google.protobuf.ByteString getLabelsBytes(int index) { return labels_.getByteString(index); } public static final int EXCLUDED_PARENT_ASSET_FIELD_TYPES_FIELD_NUMBER = 54; @SuppressWarnings("serial") private java.util.List excludedParentAssetFieldTypes_; private static final com.google.protobuf.Internal.ListAdapter.Converter< java.lang.Integer, com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType> excludedParentAssetFieldTypes_converter_ = new com.google.protobuf.Internal.ListAdapter.Converter< java.lang.Integer, com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType>() { public com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType convert(java.lang.Integer from) { com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType result = com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType.forNumber(from); return result == null ? com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType.UNRECOGNIZED : result; } }; /** *
   * The asset field types that should be excluded from this ad group. Asset
   * links with these field types will not be inherited by this ad group from
   * the upper levels.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @return A list containing the excludedParentAssetFieldTypes. */ @java.lang.Override public java.util.List getExcludedParentAssetFieldTypesList() { return new com.google.protobuf.Internal.ListAdapter< java.lang.Integer, com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType>(excludedParentAssetFieldTypes_, excludedParentAssetFieldTypes_converter_); } /** *
   * The asset field types that should be excluded from this ad group. Asset
   * links with these field types will not be inherited by this ad group from
   * the upper levels.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @return The count of excludedParentAssetFieldTypes. */ @java.lang.Override public int getExcludedParentAssetFieldTypesCount() { return excludedParentAssetFieldTypes_.size(); } /** *
   * The asset field types that should be excluded from this ad group. Asset
   * links with these field types will not be inherited by this ad group from
   * the upper levels.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param index The index of the element to return. * @return The excludedParentAssetFieldTypes at the given index. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType getExcludedParentAssetFieldTypes(int index) { return excludedParentAssetFieldTypes_converter_.convert(excludedParentAssetFieldTypes_.get(index)); } /** *
   * The asset field types that should be excluded from this ad group. Asset
   * links with these field types will not be inherited by this ad group from
   * the upper levels.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @return A list containing the enum numeric values on the wire for excludedParentAssetFieldTypes. */ @java.lang.Override public java.util.List getExcludedParentAssetFieldTypesValueList() { return excludedParentAssetFieldTypes_; } /** *
   * The asset field types that should be excluded from this ad group. Asset
   * links with these field types will not be inherited by this ad group from
   * the upper levels.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param index The index of the value to return. * @return The enum numeric value on the wire of excludedParentAssetFieldTypes at the given index. */ @java.lang.Override public int getExcludedParentAssetFieldTypesValue(int index) { return excludedParentAssetFieldTypes_.get(index); } private int excludedParentAssetFieldTypesMemoizedSerializedSize; public static final int EXCLUDED_PARENT_ASSET_SET_TYPES_FIELD_NUMBER = 58; @SuppressWarnings("serial") private java.util.List excludedParentAssetSetTypes_; private static final com.google.protobuf.Internal.ListAdapter.Converter< java.lang.Integer, com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType> excludedParentAssetSetTypes_converter_ = new com.google.protobuf.Internal.ListAdapter.Converter< java.lang.Integer, com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType>() { public com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType convert(java.lang.Integer from) { com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType result = com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType.forNumber(from); return result == null ? com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType.UNRECOGNIZED : result; } }; /** *
   * The asset set types that should be excluded from this ad group. Asset set
   * links with these types will not be inherited by this ad group from the
   * upper levels.
   * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
   * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
   * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
   * location group asset sets are not allowed to be linked to this ad group,
   * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
   * will not be served under this ad group.
   * Only LOCATION_SYNC is currently supported.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @return A list containing the excludedParentAssetSetTypes. */ @java.lang.Override public java.util.List getExcludedParentAssetSetTypesList() { return new com.google.protobuf.Internal.ListAdapter< java.lang.Integer, com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType>(excludedParentAssetSetTypes_, excludedParentAssetSetTypes_converter_); } /** *
   * The asset set types that should be excluded from this ad group. Asset set
   * links with these types will not be inherited by this ad group from the
   * upper levels.
   * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
   * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
   * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
   * location group asset sets are not allowed to be linked to this ad group,
   * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
   * will not be served under this ad group.
   * Only LOCATION_SYNC is currently supported.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @return The count of excludedParentAssetSetTypes. */ @java.lang.Override public int getExcludedParentAssetSetTypesCount() { return excludedParentAssetSetTypes_.size(); } /** *
   * The asset set types that should be excluded from this ad group. Asset set
   * links with these types will not be inherited by this ad group from the
   * upper levels.
   * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
   * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
   * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
   * location group asset sets are not allowed to be linked to this ad group,
   * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
   * will not be served under this ad group.
   * Only LOCATION_SYNC is currently supported.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param index The index of the element to return. * @return The excludedParentAssetSetTypes at the given index. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType getExcludedParentAssetSetTypes(int index) { return excludedParentAssetSetTypes_converter_.convert(excludedParentAssetSetTypes_.get(index)); } /** *
   * The asset set types that should be excluded from this ad group. Asset set
   * links with these types will not be inherited by this ad group from the
   * upper levels.
   * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
   * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
   * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
   * location group asset sets are not allowed to be linked to this ad group,
   * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
   * will not be served under this ad group.
   * Only LOCATION_SYNC is currently supported.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @return A list containing the enum numeric values on the wire for excludedParentAssetSetTypes. */ @java.lang.Override public java.util.List getExcludedParentAssetSetTypesValueList() { return excludedParentAssetSetTypes_; } /** *
   * The asset set types that should be excluded from this ad group. Asset set
   * links with these types will not be inherited by this ad group from the
   * upper levels.
   * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
   * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
   * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
   * location group asset sets are not allowed to be linked to this ad group,
   * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
   * will not be served under this ad group.
   * Only LOCATION_SYNC is currently supported.
   * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param index The index of the value to return. * @return The enum numeric value on the wire of excludedParentAssetSetTypes at the given index. */ @java.lang.Override public int getExcludedParentAssetSetTypesValue(int index) { return excludedParentAssetSetTypes_.get(index); } private int excludedParentAssetSetTypesMemoizedSerializedSize; public static final int PRIMARY_STATUS_FIELD_NUMBER = 62; private int primaryStatus_ = 0; /** *
   * Output only. Provides aggregated view into why an ad group is not serving
   * or not serving optimally.
   * 
* * .google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus primary_status = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The enum numeric value on the wire for primaryStatus. */ @java.lang.Override public int getPrimaryStatusValue() { return primaryStatus_; } /** *
   * Output only. Provides aggregated view into why an ad group is not serving
   * or not serving optimally.
   * 
* * .google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus primary_status = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The primaryStatus. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus getPrimaryStatus() { com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus result = com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus.forNumber(primaryStatus_); return result == null ? com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus.UNRECOGNIZED : result; } public static final int PRIMARY_STATUS_REASONS_FIELD_NUMBER = 63; @SuppressWarnings("serial") private java.util.List primaryStatusReasons_; private static final com.google.protobuf.Internal.ListAdapter.Converter< java.lang.Integer, com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason> primaryStatusReasons_converter_ = new com.google.protobuf.Internal.ListAdapter.Converter< java.lang.Integer, com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason>() { public com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason convert(java.lang.Integer from) { com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason result = com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason.forNumber(from); return result == null ? com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason.UNRECOGNIZED : result; } }; /** *
   * Output only. Provides reasons for why an ad group is not serving or not
   * serving optimally.
   * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return A list containing the primaryStatusReasons. */ @java.lang.Override public java.util.List getPrimaryStatusReasonsList() { return new com.google.protobuf.Internal.ListAdapter< java.lang.Integer, com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason>(primaryStatusReasons_, primaryStatusReasons_converter_); } /** *
   * Output only. Provides reasons for why an ad group is not serving or not
   * serving optimally.
   * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The count of primaryStatusReasons. */ @java.lang.Override public int getPrimaryStatusReasonsCount() { return primaryStatusReasons_.size(); } /** *
   * Output only. Provides reasons for why an ad group is not serving or not
   * serving optimally.
   * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param index The index of the element to return. * @return The primaryStatusReasons at the given index. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason getPrimaryStatusReasons(int index) { return primaryStatusReasons_converter_.convert(primaryStatusReasons_.get(index)); } /** *
   * Output only. Provides reasons for why an ad group is not serving or not
   * serving optimally.
   * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return A list containing the enum numeric values on the wire for primaryStatusReasons. */ @java.lang.Override public java.util.List getPrimaryStatusReasonsValueList() { return primaryStatusReasons_; } /** *
   * Output only. Provides reasons for why an ad group is not serving or not
   * serving optimally.
   * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param index The index of the value to return. * @return The enum numeric value on the wire of primaryStatusReasons at the given index. */ @java.lang.Override public int getPrimaryStatusReasonsValue(int index) { return primaryStatusReasons_.get(index); } private int primaryStatusReasonsMemoizedSerializedSize; private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { getSerializedSize(); if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resourceName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, resourceName_); } if (status_ != com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus.UNSPECIFIED.getNumber()) { output.writeEnum(5, status_); } for (int i = 0; i < urlCustomParameters_.size(); i++) { output.writeMessage(6, urlCustomParameters_.get(i)); } if (type_ != com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType.UNSPECIFIED.getNumber()) { output.writeEnum(12, type_); } if (adRotationMode_ != com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode.UNSPECIFIED.getNumber()) { output.writeEnum(22, adRotationMode_); } if (displayCustomBidDimension_ != com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension.UNSPECIFIED.getNumber()) { output.writeEnum(23, displayCustomBidDimension_); } if (((bitField0_ & 0x00010000) != 0)) { output.writeMessage(25, getTargetingSetting()); } if (effectiveTargetCpaSource_ != com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.UNSPECIFIED.getNumber()) { output.writeEnum(29, effectiveTargetCpaSource_); } if (effectiveTargetRoasSource_ != com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.UNSPECIFIED.getNumber()) { output.writeEnum(32, effectiveTargetRoasSource_); } if (((bitField0_ & 0x00000001) != 0)) { output.writeInt64(34, id_); } if (((bitField0_ & 0x00000002) != 0)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 35, name_); } if (((bitField0_ & 0x00000004) != 0)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 36, baseAdGroup_); } if (((bitField0_ & 0x00000008) != 0)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 37, trackingUrlTemplate_); } if (((bitField0_ & 0x00000010) != 0)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 38, campaign_); } if (((bitField0_ & 0x00000020) != 0)) { output.writeInt64(39, cpcBidMicros_); } if (((bitField0_ & 0x00000080) != 0)) { output.writeInt64(40, cpmBidMicros_); } if (((bitField0_ & 0x00000100) != 0)) { output.writeInt64(41, targetCpaMicros_); } if (((bitField0_ & 0x00000200) != 0)) { output.writeInt64(42, cpvBidMicros_); } if (((bitField0_ & 0x00000400) != 0)) { output.writeInt64(43, targetCpmMicros_); } if (((bitField0_ & 0x00000800) != 0)) { output.writeDouble(44, targetRoas_); } if (((bitField0_ & 0x00001000) != 0)) { output.writeInt64(45, percentCpcBidMicros_); } if (((bitField0_ & 0x00008000) != 0)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 46, finalUrlSuffix_); } if (((bitField0_ & 0x00040000) != 0)) { output.writeInt64(47, effectiveTargetCpaMicros_); } if (((bitField0_ & 0x00080000) != 0)) { output.writeDouble(48, effectiveTargetRoas_); } for (int i = 0; i < labels_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 49, labels_.getRaw(i)); } if (getExcludedParentAssetFieldTypesList().size() > 0) { output.writeUInt32NoTag(434); output.writeUInt32NoTag(excludedParentAssetFieldTypesMemoizedSerializedSize); } for (int i = 0; i < excludedParentAssetFieldTypes_.size(); i++) { output.writeEnumNoTag(excludedParentAssetFieldTypes_.get(i)); } if (((bitField0_ & 0x00020000) != 0)) { output.writeMessage(56, getAudienceSetting()); } if (((bitField0_ & 0x00000040) != 0)) { output.writeInt64(57, effectiveCpcBidMicros_); } if (getExcludedParentAssetSetTypesList().size() > 0) { output.writeUInt32NoTag(466); output.writeUInt32NoTag(excludedParentAssetSetTypesMemoizedSerializedSize); } for (int i = 0; i < excludedParentAssetSetTypes_.size(); i++) { output.writeEnumNoTag(excludedParentAssetSetTypes_.get(i)); } if (optimizedTargetingEnabled_ != false) { output.writeBool(59, optimizedTargetingEnabled_); } if (primaryStatus_ != com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus.UNSPECIFIED.getNumber()) { output.writeEnum(62, primaryStatus_); } if (getPrimaryStatusReasonsList().size() > 0) { output.writeUInt32NoTag(506); output.writeUInt32NoTag(primaryStatusReasonsMemoizedSerializedSize); } for (int i = 0; i < primaryStatusReasons_.size(); i++) { output.writeEnumNoTag(primaryStatusReasons_.get(i)); } if (((bitField0_ & 0x00002000) != 0)) { output.writeInt64(64, fixedCpmMicros_); } if (((bitField0_ & 0x00004000) != 0)) { output.writeInt64(65, targetCpvMicros_); } getUnknownFields().writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(resourceName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, resourceName_); } if (status_ != com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus.UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(5, status_); } for (int i = 0; i < urlCustomParameters_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(6, urlCustomParameters_.get(i)); } if (type_ != com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType.UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(12, type_); } if (adRotationMode_ != com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode.UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(22, adRotationMode_); } if (displayCustomBidDimension_ != com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension.UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(23, displayCustomBidDimension_); } if (((bitField0_ & 0x00010000) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(25, getTargetingSetting()); } if (effectiveTargetCpaSource_ != com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(29, effectiveTargetCpaSource_); } if (effectiveTargetRoasSource_ != com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(32, effectiveTargetRoasSource_); } if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(34, id_); } if (((bitField0_ & 0x00000002) != 0)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(35, name_); } if (((bitField0_ & 0x00000004) != 0)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(36, baseAdGroup_); } if (((bitField0_ & 0x00000008) != 0)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(37, trackingUrlTemplate_); } if (((bitField0_ & 0x00000010) != 0)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(38, campaign_); } if (((bitField0_ & 0x00000020) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(39, cpcBidMicros_); } if (((bitField0_ & 0x00000080) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(40, cpmBidMicros_); } if (((bitField0_ & 0x00000100) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(41, targetCpaMicros_); } if (((bitField0_ & 0x00000200) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(42, cpvBidMicros_); } if (((bitField0_ & 0x00000400) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(43, targetCpmMicros_); } if (((bitField0_ & 0x00000800) != 0)) { size += com.google.protobuf.CodedOutputStream .computeDoubleSize(44, targetRoas_); } if (((bitField0_ & 0x00001000) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(45, percentCpcBidMicros_); } if (((bitField0_ & 0x00008000) != 0)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(46, finalUrlSuffix_); } if (((bitField0_ & 0x00040000) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(47, effectiveTargetCpaMicros_); } if (((bitField0_ & 0x00080000) != 0)) { size += com.google.protobuf.CodedOutputStream .computeDoubleSize(48, effectiveTargetRoas_); } { int dataSize = 0; for (int i = 0; i < labels_.size(); i++) { dataSize += computeStringSizeNoTag(labels_.getRaw(i)); } size += dataSize; size += 2 * getLabelsList().size(); } { int dataSize = 0; for (int i = 0; i < excludedParentAssetFieldTypes_.size(); i++) { dataSize += com.google.protobuf.CodedOutputStream .computeEnumSizeNoTag(excludedParentAssetFieldTypes_.get(i)); } size += dataSize; if (!getExcludedParentAssetFieldTypesList().isEmpty()) { size += 2; size += com.google.protobuf.CodedOutputStream .computeUInt32SizeNoTag(dataSize); }excludedParentAssetFieldTypesMemoizedSerializedSize = dataSize; } if (((bitField0_ & 0x00020000) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(56, getAudienceSetting()); } if (((bitField0_ & 0x00000040) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(57, effectiveCpcBidMicros_); } { int dataSize = 0; for (int i = 0; i < excludedParentAssetSetTypes_.size(); i++) { dataSize += com.google.protobuf.CodedOutputStream .computeEnumSizeNoTag(excludedParentAssetSetTypes_.get(i)); } size += dataSize; if (!getExcludedParentAssetSetTypesList().isEmpty()) { size += 2; size += com.google.protobuf.CodedOutputStream .computeUInt32SizeNoTag(dataSize); }excludedParentAssetSetTypesMemoizedSerializedSize = dataSize; } if (optimizedTargetingEnabled_ != false) { size += com.google.protobuf.CodedOutputStream .computeBoolSize(59, optimizedTargetingEnabled_); } if (primaryStatus_ != com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus.UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(62, primaryStatus_); } { int dataSize = 0; for (int i = 0; i < primaryStatusReasons_.size(); i++) { dataSize += com.google.protobuf.CodedOutputStream .computeEnumSizeNoTag(primaryStatusReasons_.get(i)); } size += dataSize; if (!getPrimaryStatusReasonsList().isEmpty()) { size += 2; size += com.google.protobuf.CodedOutputStream .computeUInt32SizeNoTag(dataSize); }primaryStatusReasonsMemoizedSerializedSize = dataSize; } if (((bitField0_ & 0x00002000) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(64, fixedCpmMicros_); } if (((bitField0_ & 0x00004000) != 0)) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(65, targetCpvMicros_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof com.google.ads.googleads.v17.resources.AdGroup)) { return super.equals(obj); } com.google.ads.googleads.v17.resources.AdGroup other = (com.google.ads.googleads.v17.resources.AdGroup) obj; if (!getResourceName() .equals(other.getResourceName())) return false; if (hasId() != other.hasId()) return false; if (hasId()) { if (getId() != other.getId()) return false; } if (hasName() != other.hasName()) return false; if (hasName()) { if (!getName() .equals(other.getName())) return false; } if (status_ != other.status_) return false; if (type_ != other.type_) return false; if (adRotationMode_ != other.adRotationMode_) return false; if (hasBaseAdGroup() != other.hasBaseAdGroup()) return false; if (hasBaseAdGroup()) { if (!getBaseAdGroup() .equals(other.getBaseAdGroup())) return false; } if (hasTrackingUrlTemplate() != other.hasTrackingUrlTemplate()) return false; if (hasTrackingUrlTemplate()) { if (!getTrackingUrlTemplate() .equals(other.getTrackingUrlTemplate())) return false; } if (!getUrlCustomParametersList() .equals(other.getUrlCustomParametersList())) return false; if (hasCampaign() != other.hasCampaign()) return false; if (hasCampaign()) { if (!getCampaign() .equals(other.getCampaign())) return false; } if (hasCpcBidMicros() != other.hasCpcBidMicros()) return false; if (hasCpcBidMicros()) { if (getCpcBidMicros() != other.getCpcBidMicros()) return false; } if (hasEffectiveCpcBidMicros() != other.hasEffectiveCpcBidMicros()) return false; if (hasEffectiveCpcBidMicros()) { if (getEffectiveCpcBidMicros() != other.getEffectiveCpcBidMicros()) return false; } if (hasCpmBidMicros() != other.hasCpmBidMicros()) return false; if (hasCpmBidMicros()) { if (getCpmBidMicros() != other.getCpmBidMicros()) return false; } if (hasTargetCpaMicros() != other.hasTargetCpaMicros()) return false; if (hasTargetCpaMicros()) { if (getTargetCpaMicros() != other.getTargetCpaMicros()) return false; } if (hasCpvBidMicros() != other.hasCpvBidMicros()) return false; if (hasCpvBidMicros()) { if (getCpvBidMicros() != other.getCpvBidMicros()) return false; } if (hasTargetCpmMicros() != other.hasTargetCpmMicros()) return false; if (hasTargetCpmMicros()) { if (getTargetCpmMicros() != other.getTargetCpmMicros()) return false; } if (hasTargetRoas() != other.hasTargetRoas()) return false; if (hasTargetRoas()) { if (java.lang.Double.doubleToLongBits(getTargetRoas()) != java.lang.Double.doubleToLongBits( other.getTargetRoas())) return false; } if (hasPercentCpcBidMicros() != other.hasPercentCpcBidMicros()) return false; if (hasPercentCpcBidMicros()) { if (getPercentCpcBidMicros() != other.getPercentCpcBidMicros()) return false; } if (hasFixedCpmMicros() != other.hasFixedCpmMicros()) return false; if (hasFixedCpmMicros()) { if (getFixedCpmMicros() != other.getFixedCpmMicros()) return false; } if (hasTargetCpvMicros() != other.hasTargetCpvMicros()) return false; if (hasTargetCpvMicros()) { if (getTargetCpvMicros() != other.getTargetCpvMicros()) return false; } if (getOptimizedTargetingEnabled() != other.getOptimizedTargetingEnabled()) return false; if (displayCustomBidDimension_ != other.displayCustomBidDimension_) return false; if (hasFinalUrlSuffix() != other.hasFinalUrlSuffix()) return false; if (hasFinalUrlSuffix()) { if (!getFinalUrlSuffix() .equals(other.getFinalUrlSuffix())) return false; } if (hasTargetingSetting() != other.hasTargetingSetting()) return false; if (hasTargetingSetting()) { if (!getTargetingSetting() .equals(other.getTargetingSetting())) return false; } if (hasAudienceSetting() != other.hasAudienceSetting()) return false; if (hasAudienceSetting()) { if (!getAudienceSetting() .equals(other.getAudienceSetting())) return false; } if (hasEffectiveTargetCpaMicros() != other.hasEffectiveTargetCpaMicros()) return false; if (hasEffectiveTargetCpaMicros()) { if (getEffectiveTargetCpaMicros() != other.getEffectiveTargetCpaMicros()) return false; } if (effectiveTargetCpaSource_ != other.effectiveTargetCpaSource_) return false; if (hasEffectiveTargetRoas() != other.hasEffectiveTargetRoas()) return false; if (hasEffectiveTargetRoas()) { if (java.lang.Double.doubleToLongBits(getEffectiveTargetRoas()) != java.lang.Double.doubleToLongBits( other.getEffectiveTargetRoas())) return false; } if (effectiveTargetRoasSource_ != other.effectiveTargetRoasSource_) return false; if (!getLabelsList() .equals(other.getLabelsList())) return false; if (!excludedParentAssetFieldTypes_.equals(other.excludedParentAssetFieldTypes_)) return false; if (!excludedParentAssetSetTypes_.equals(other.excludedParentAssetSetTypes_)) return false; if (primaryStatus_ != other.primaryStatus_) return false; if (!primaryStatusReasons_.equals(other.primaryStatusReasons_)) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + RESOURCE_NAME_FIELD_NUMBER; hash = (53 * hash) + getResourceName().hashCode(); if (hasId()) { hash = (37 * hash) + ID_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getId()); } if (hasName()) { hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); } hash = (37 * hash) + STATUS_FIELD_NUMBER; hash = (53 * hash) + status_; hash = (37 * hash) + TYPE_FIELD_NUMBER; hash = (53 * hash) + type_; hash = (37 * hash) + AD_ROTATION_MODE_FIELD_NUMBER; hash = (53 * hash) + adRotationMode_; if (hasBaseAdGroup()) { hash = (37 * hash) + BASE_AD_GROUP_FIELD_NUMBER; hash = (53 * hash) + getBaseAdGroup().hashCode(); } if (hasTrackingUrlTemplate()) { hash = (37 * hash) + TRACKING_URL_TEMPLATE_FIELD_NUMBER; hash = (53 * hash) + getTrackingUrlTemplate().hashCode(); } if (getUrlCustomParametersCount() > 0) { hash = (37 * hash) + URL_CUSTOM_PARAMETERS_FIELD_NUMBER; hash = (53 * hash) + getUrlCustomParametersList().hashCode(); } if (hasCampaign()) { hash = (37 * hash) + CAMPAIGN_FIELD_NUMBER; hash = (53 * hash) + getCampaign().hashCode(); } if (hasCpcBidMicros()) { hash = (37 * hash) + CPC_BID_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getCpcBidMicros()); } if (hasEffectiveCpcBidMicros()) { hash = (37 * hash) + EFFECTIVE_CPC_BID_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getEffectiveCpcBidMicros()); } if (hasCpmBidMicros()) { hash = (37 * hash) + CPM_BID_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getCpmBidMicros()); } if (hasTargetCpaMicros()) { hash = (37 * hash) + TARGET_CPA_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getTargetCpaMicros()); } if (hasCpvBidMicros()) { hash = (37 * hash) + CPV_BID_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getCpvBidMicros()); } if (hasTargetCpmMicros()) { hash = (37 * hash) + TARGET_CPM_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getTargetCpmMicros()); } if (hasTargetRoas()) { hash = (37 * hash) + TARGET_ROAS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( java.lang.Double.doubleToLongBits(getTargetRoas())); } if (hasPercentCpcBidMicros()) { hash = (37 * hash) + PERCENT_CPC_BID_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getPercentCpcBidMicros()); } if (hasFixedCpmMicros()) { hash = (37 * hash) + FIXED_CPM_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getFixedCpmMicros()); } if (hasTargetCpvMicros()) { hash = (37 * hash) + TARGET_CPV_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getTargetCpvMicros()); } hash = (37 * hash) + OPTIMIZED_TARGETING_ENABLED_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getOptimizedTargetingEnabled()); hash = (37 * hash) + DISPLAY_CUSTOM_BID_DIMENSION_FIELD_NUMBER; hash = (53 * hash) + displayCustomBidDimension_; if (hasFinalUrlSuffix()) { hash = (37 * hash) + FINAL_URL_SUFFIX_FIELD_NUMBER; hash = (53 * hash) + getFinalUrlSuffix().hashCode(); } if (hasTargetingSetting()) { hash = (37 * hash) + TARGETING_SETTING_FIELD_NUMBER; hash = (53 * hash) + getTargetingSetting().hashCode(); } if (hasAudienceSetting()) { hash = (37 * hash) + AUDIENCE_SETTING_FIELD_NUMBER; hash = (53 * hash) + getAudienceSetting().hashCode(); } if (hasEffectiveTargetCpaMicros()) { hash = (37 * hash) + EFFECTIVE_TARGET_CPA_MICROS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getEffectiveTargetCpaMicros()); } hash = (37 * hash) + EFFECTIVE_TARGET_CPA_SOURCE_FIELD_NUMBER; hash = (53 * hash) + effectiveTargetCpaSource_; if (hasEffectiveTargetRoas()) { hash = (37 * hash) + EFFECTIVE_TARGET_ROAS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( java.lang.Double.doubleToLongBits(getEffectiveTargetRoas())); } hash = (37 * hash) + EFFECTIVE_TARGET_ROAS_SOURCE_FIELD_NUMBER; hash = (53 * hash) + effectiveTargetRoasSource_; if (getLabelsCount() > 0) { hash = (37 * hash) + LABELS_FIELD_NUMBER; hash = (53 * hash) + getLabelsList().hashCode(); } if (getExcludedParentAssetFieldTypesCount() > 0) { hash = (37 * hash) + EXCLUDED_PARENT_ASSET_FIELD_TYPES_FIELD_NUMBER; hash = (53 * hash) + excludedParentAssetFieldTypes_.hashCode(); } if (getExcludedParentAssetSetTypesCount() > 0) { hash = (37 * hash) + EXCLUDED_PARENT_ASSET_SET_TYPES_FIELD_NUMBER; hash = (53 * hash) + excludedParentAssetSetTypes_.hashCode(); } hash = (37 * hash) + PRIMARY_STATUS_FIELD_NUMBER; hash = (53 * hash) + primaryStatus_; if (getPrimaryStatusReasonsCount() > 0) { hash = (37 * hash) + PRIMARY_STATUS_REASONS_FIELD_NUMBER; hash = (53 * hash) + primaryStatusReasons_.hashCode(); } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static com.google.ads.googleads.v17.resources.AdGroup parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static com.google.ads.googleads.v17.resources.AdGroup parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(com.google.ads.googleads.v17.resources.AdGroup prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
   * An ad group.
   * 
* * Protobuf type {@code google.ads.googleads.v17.resources.AdGroup} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:google.ads.googleads.v17.resources.AdGroup) com.google.ads.googleads.v17.resources.AdGroupOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_fieldAccessorTable .ensureFieldAccessorsInitialized( com.google.ads.googleads.v17.resources.AdGroup.class, com.google.ads.googleads.v17.resources.AdGroup.Builder.class); } // Construct using com.google.ads.googleads.v17.resources.AdGroup.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { getUrlCustomParametersFieldBuilder(); getTargetingSettingFieldBuilder(); getAudienceSettingFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); bitField0_ = 0; bitField1_ = 0; resourceName_ = ""; id_ = 0L; name_ = ""; status_ = 0; type_ = 0; adRotationMode_ = 0; baseAdGroup_ = ""; trackingUrlTemplate_ = ""; if (urlCustomParametersBuilder_ == null) { urlCustomParameters_ = java.util.Collections.emptyList(); } else { urlCustomParameters_ = null; urlCustomParametersBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000100); campaign_ = ""; cpcBidMicros_ = 0L; effectiveCpcBidMicros_ = 0L; cpmBidMicros_ = 0L; targetCpaMicros_ = 0L; cpvBidMicros_ = 0L; targetCpmMicros_ = 0L; targetRoas_ = 0D; percentCpcBidMicros_ = 0L; fixedCpmMicros_ = 0L; targetCpvMicros_ = 0L; optimizedTargetingEnabled_ = false; displayCustomBidDimension_ = 0; finalUrlSuffix_ = ""; targetingSetting_ = null; if (targetingSettingBuilder_ != null) { targetingSettingBuilder_.dispose(); targetingSettingBuilder_ = null; } audienceSetting_ = null; if (audienceSettingBuilder_ != null) { audienceSettingBuilder_.dispose(); audienceSettingBuilder_ = null; } effectiveTargetCpaMicros_ = 0L; effectiveTargetCpaSource_ = 0; effectiveTargetRoas_ = 0D; effectiveTargetRoasSource_ = 0; labels_ = com.google.protobuf.LazyStringArrayList.emptyList(); excludedParentAssetFieldTypes_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x40000000); excludedParentAssetSetTypes_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x80000000); primaryStatus_ = 0; primaryStatusReasons_ = java.util.Collections.emptyList(); bitField1_ = (bitField1_ & ~0x00000002); return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.ads.googleads.v17.resources.AdGroupProto.internal_static_google_ads_googleads_v17_resources_AdGroup_descriptor; } @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup getDefaultInstanceForType() { return com.google.ads.googleads.v17.resources.AdGroup.getDefaultInstance(); } @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup build() { com.google.ads.googleads.v17.resources.AdGroup result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup buildPartial() { com.google.ads.googleads.v17.resources.AdGroup result = new com.google.ads.googleads.v17.resources.AdGroup(this); buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } if (bitField1_ != 0) { buildPartial1(result); } onBuilt(); return result; } private void buildPartialRepeatedFields(com.google.ads.googleads.v17.resources.AdGroup result) { if (urlCustomParametersBuilder_ == null) { if (((bitField0_ & 0x00000100) != 0)) { urlCustomParameters_ = java.util.Collections.unmodifiableList(urlCustomParameters_); bitField0_ = (bitField0_ & ~0x00000100); } result.urlCustomParameters_ = urlCustomParameters_; } else { result.urlCustomParameters_ = urlCustomParametersBuilder_.build(); } if (((bitField0_ & 0x40000000) != 0)) { excludedParentAssetFieldTypes_ = java.util.Collections.unmodifiableList(excludedParentAssetFieldTypes_); bitField0_ = (bitField0_ & ~0x40000000); } result.excludedParentAssetFieldTypes_ = excludedParentAssetFieldTypes_; if (((bitField0_ & 0x80000000) != 0)) { excludedParentAssetSetTypes_ = java.util.Collections.unmodifiableList(excludedParentAssetSetTypes_); bitField0_ = (bitField0_ & ~0x80000000); } result.excludedParentAssetSetTypes_ = excludedParentAssetSetTypes_; if (((bitField1_ & 0x00000002) != 0)) { primaryStatusReasons_ = java.util.Collections.unmodifiableList(primaryStatusReasons_); bitField1_ = (bitField1_ & ~0x00000002); } result.primaryStatusReasons_ = primaryStatusReasons_; } private void buildPartial0(com.google.ads.googleads.v17.resources.AdGroup result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { result.resourceName_ = resourceName_; } int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000002) != 0)) { result.id_ = id_; to_bitField0_ |= 0x00000001; } if (((from_bitField0_ & 0x00000004) != 0)) { result.name_ = name_; to_bitField0_ |= 0x00000002; } if (((from_bitField0_ & 0x00000008) != 0)) { result.status_ = status_; } if (((from_bitField0_ & 0x00000010) != 0)) { result.type_ = type_; } if (((from_bitField0_ & 0x00000020) != 0)) { result.adRotationMode_ = adRotationMode_; } if (((from_bitField0_ & 0x00000040) != 0)) { result.baseAdGroup_ = baseAdGroup_; to_bitField0_ |= 0x00000004; } if (((from_bitField0_ & 0x00000080) != 0)) { result.trackingUrlTemplate_ = trackingUrlTemplate_; to_bitField0_ |= 0x00000008; } if (((from_bitField0_ & 0x00000200) != 0)) { result.campaign_ = campaign_; to_bitField0_ |= 0x00000010; } if (((from_bitField0_ & 0x00000400) != 0)) { result.cpcBidMicros_ = cpcBidMicros_; to_bitField0_ |= 0x00000020; } if (((from_bitField0_ & 0x00000800) != 0)) { result.effectiveCpcBidMicros_ = effectiveCpcBidMicros_; to_bitField0_ |= 0x00000040; } if (((from_bitField0_ & 0x00001000) != 0)) { result.cpmBidMicros_ = cpmBidMicros_; to_bitField0_ |= 0x00000080; } if (((from_bitField0_ & 0x00002000) != 0)) { result.targetCpaMicros_ = targetCpaMicros_; to_bitField0_ |= 0x00000100; } if (((from_bitField0_ & 0x00004000) != 0)) { result.cpvBidMicros_ = cpvBidMicros_; to_bitField0_ |= 0x00000200; } if (((from_bitField0_ & 0x00008000) != 0)) { result.targetCpmMicros_ = targetCpmMicros_; to_bitField0_ |= 0x00000400; } if (((from_bitField0_ & 0x00010000) != 0)) { result.targetRoas_ = targetRoas_; to_bitField0_ |= 0x00000800; } if (((from_bitField0_ & 0x00020000) != 0)) { result.percentCpcBidMicros_ = percentCpcBidMicros_; to_bitField0_ |= 0x00001000; } if (((from_bitField0_ & 0x00040000) != 0)) { result.fixedCpmMicros_ = fixedCpmMicros_; to_bitField0_ |= 0x00002000; } if (((from_bitField0_ & 0x00080000) != 0)) { result.targetCpvMicros_ = targetCpvMicros_; to_bitField0_ |= 0x00004000; } if (((from_bitField0_ & 0x00100000) != 0)) { result.optimizedTargetingEnabled_ = optimizedTargetingEnabled_; } if (((from_bitField0_ & 0x00200000) != 0)) { result.displayCustomBidDimension_ = displayCustomBidDimension_; } if (((from_bitField0_ & 0x00400000) != 0)) { result.finalUrlSuffix_ = finalUrlSuffix_; to_bitField0_ |= 0x00008000; } if (((from_bitField0_ & 0x00800000) != 0)) { result.targetingSetting_ = targetingSettingBuilder_ == null ? targetingSetting_ : targetingSettingBuilder_.build(); to_bitField0_ |= 0x00010000; } if (((from_bitField0_ & 0x01000000) != 0)) { result.audienceSetting_ = audienceSettingBuilder_ == null ? audienceSetting_ : audienceSettingBuilder_.build(); to_bitField0_ |= 0x00020000; } if (((from_bitField0_ & 0x02000000) != 0)) { result.effectiveTargetCpaMicros_ = effectiveTargetCpaMicros_; to_bitField0_ |= 0x00040000; } if (((from_bitField0_ & 0x04000000) != 0)) { result.effectiveTargetCpaSource_ = effectiveTargetCpaSource_; } if (((from_bitField0_ & 0x08000000) != 0)) { result.effectiveTargetRoas_ = effectiveTargetRoas_; to_bitField0_ |= 0x00080000; } if (((from_bitField0_ & 0x10000000) != 0)) { result.effectiveTargetRoasSource_ = effectiveTargetRoasSource_; } if (((from_bitField0_ & 0x20000000) != 0)) { labels_.makeImmutable(); result.labels_ = labels_; } result.bitField0_ |= to_bitField0_; } private void buildPartial1(com.google.ads.googleads.v17.resources.AdGroup result) { int from_bitField1_ = bitField1_; if (((from_bitField1_ & 0x00000001) != 0)) { result.primaryStatus_ = primaryStatus_; } } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof com.google.ads.googleads.v17.resources.AdGroup) { return mergeFrom((com.google.ads.googleads.v17.resources.AdGroup)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(com.google.ads.googleads.v17.resources.AdGroup other) { if (other == com.google.ads.googleads.v17.resources.AdGroup.getDefaultInstance()) return this; if (!other.getResourceName().isEmpty()) { resourceName_ = other.resourceName_; bitField0_ |= 0x00000001; onChanged(); } if (other.hasId()) { setId(other.getId()); } if (other.hasName()) { name_ = other.name_; bitField0_ |= 0x00000004; onChanged(); } if (other.status_ != 0) { setStatusValue(other.getStatusValue()); } if (other.type_ != 0) { setTypeValue(other.getTypeValue()); } if (other.adRotationMode_ != 0) { setAdRotationModeValue(other.getAdRotationModeValue()); } if (other.hasBaseAdGroup()) { baseAdGroup_ = other.baseAdGroup_; bitField0_ |= 0x00000040; onChanged(); } if (other.hasTrackingUrlTemplate()) { trackingUrlTemplate_ = other.trackingUrlTemplate_; bitField0_ |= 0x00000080; onChanged(); } if (urlCustomParametersBuilder_ == null) { if (!other.urlCustomParameters_.isEmpty()) { if (urlCustomParameters_.isEmpty()) { urlCustomParameters_ = other.urlCustomParameters_; bitField0_ = (bitField0_ & ~0x00000100); } else { ensureUrlCustomParametersIsMutable(); urlCustomParameters_.addAll(other.urlCustomParameters_); } onChanged(); } } else { if (!other.urlCustomParameters_.isEmpty()) { if (urlCustomParametersBuilder_.isEmpty()) { urlCustomParametersBuilder_.dispose(); urlCustomParametersBuilder_ = null; urlCustomParameters_ = other.urlCustomParameters_; bitField0_ = (bitField0_ & ~0x00000100); urlCustomParametersBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getUrlCustomParametersFieldBuilder() : null; } else { urlCustomParametersBuilder_.addAllMessages(other.urlCustomParameters_); } } } if (other.hasCampaign()) { campaign_ = other.campaign_; bitField0_ |= 0x00000200; onChanged(); } if (other.hasCpcBidMicros()) { setCpcBidMicros(other.getCpcBidMicros()); } if (other.hasEffectiveCpcBidMicros()) { setEffectiveCpcBidMicros(other.getEffectiveCpcBidMicros()); } if (other.hasCpmBidMicros()) { setCpmBidMicros(other.getCpmBidMicros()); } if (other.hasTargetCpaMicros()) { setTargetCpaMicros(other.getTargetCpaMicros()); } if (other.hasCpvBidMicros()) { setCpvBidMicros(other.getCpvBidMicros()); } if (other.hasTargetCpmMicros()) { setTargetCpmMicros(other.getTargetCpmMicros()); } if (other.hasTargetRoas()) { setTargetRoas(other.getTargetRoas()); } if (other.hasPercentCpcBidMicros()) { setPercentCpcBidMicros(other.getPercentCpcBidMicros()); } if (other.hasFixedCpmMicros()) { setFixedCpmMicros(other.getFixedCpmMicros()); } if (other.hasTargetCpvMicros()) { setTargetCpvMicros(other.getTargetCpvMicros()); } if (other.getOptimizedTargetingEnabled() != false) { setOptimizedTargetingEnabled(other.getOptimizedTargetingEnabled()); } if (other.displayCustomBidDimension_ != 0) { setDisplayCustomBidDimensionValue(other.getDisplayCustomBidDimensionValue()); } if (other.hasFinalUrlSuffix()) { finalUrlSuffix_ = other.finalUrlSuffix_; bitField0_ |= 0x00400000; onChanged(); } if (other.hasTargetingSetting()) { mergeTargetingSetting(other.getTargetingSetting()); } if (other.hasAudienceSetting()) { mergeAudienceSetting(other.getAudienceSetting()); } if (other.hasEffectiveTargetCpaMicros()) { setEffectiveTargetCpaMicros(other.getEffectiveTargetCpaMicros()); } if (other.effectiveTargetCpaSource_ != 0) { setEffectiveTargetCpaSourceValue(other.getEffectiveTargetCpaSourceValue()); } if (other.hasEffectiveTargetRoas()) { setEffectiveTargetRoas(other.getEffectiveTargetRoas()); } if (other.effectiveTargetRoasSource_ != 0) { setEffectiveTargetRoasSourceValue(other.getEffectiveTargetRoasSourceValue()); } if (!other.labels_.isEmpty()) { if (labels_.isEmpty()) { labels_ = other.labels_; bitField0_ |= 0x20000000; } else { ensureLabelsIsMutable(); labels_.addAll(other.labels_); } onChanged(); } if (!other.excludedParentAssetFieldTypes_.isEmpty()) { if (excludedParentAssetFieldTypes_.isEmpty()) { excludedParentAssetFieldTypes_ = other.excludedParentAssetFieldTypes_; bitField0_ = (bitField0_ & ~0x40000000); } else { ensureExcludedParentAssetFieldTypesIsMutable(); excludedParentAssetFieldTypes_.addAll(other.excludedParentAssetFieldTypes_); } onChanged(); } if (!other.excludedParentAssetSetTypes_.isEmpty()) { if (excludedParentAssetSetTypes_.isEmpty()) { excludedParentAssetSetTypes_ = other.excludedParentAssetSetTypes_; bitField0_ = (bitField0_ & ~0x80000000); } else { ensureExcludedParentAssetSetTypesIsMutable(); excludedParentAssetSetTypes_.addAll(other.excludedParentAssetSetTypes_); } onChanged(); } if (other.primaryStatus_ != 0) { setPrimaryStatusValue(other.getPrimaryStatusValue()); } if (!other.primaryStatusReasons_.isEmpty()) { if (primaryStatusReasons_.isEmpty()) { primaryStatusReasons_ = other.primaryStatusReasons_; bitField1_ = (bitField1_ & ~0x00000002); } else { ensurePrimaryStatusReasonsIsMutable(); primaryStatusReasons_.addAll(other.primaryStatusReasons_); } onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { resourceName_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000001; break; } // case 10 case 40: { status_ = input.readEnum(); bitField0_ |= 0x00000008; break; } // case 40 case 50: { com.google.ads.googleads.v17.common.CustomParameter m = input.readMessage( com.google.ads.googleads.v17.common.CustomParameter.parser(), extensionRegistry); if (urlCustomParametersBuilder_ == null) { ensureUrlCustomParametersIsMutable(); urlCustomParameters_.add(m); } else { urlCustomParametersBuilder_.addMessage(m); } break; } // case 50 case 96: { type_ = input.readEnum(); bitField0_ |= 0x00000010; break; } // case 96 case 176: { adRotationMode_ = input.readEnum(); bitField0_ |= 0x00000020; break; } // case 176 case 184: { displayCustomBidDimension_ = input.readEnum(); bitField0_ |= 0x00200000; break; } // case 184 case 202: { input.readMessage( getTargetingSettingFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00800000; break; } // case 202 case 232: { effectiveTargetCpaSource_ = input.readEnum(); bitField0_ |= 0x04000000; break; } // case 232 case 256: { effectiveTargetRoasSource_ = input.readEnum(); bitField0_ |= 0x10000000; break; } // case 256 case 272: { id_ = input.readInt64(); bitField0_ |= 0x00000002; break; } // case 272 case 282: { name_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000004; break; } // case 282 case 290: { baseAdGroup_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000040; break; } // case 290 case 298: { trackingUrlTemplate_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000080; break; } // case 298 case 306: { campaign_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000200; break; } // case 306 case 312: { cpcBidMicros_ = input.readInt64(); bitField0_ |= 0x00000400; break; } // case 312 case 320: { cpmBidMicros_ = input.readInt64(); bitField0_ |= 0x00001000; break; } // case 320 case 328: { targetCpaMicros_ = input.readInt64(); bitField0_ |= 0x00002000; break; } // case 328 case 336: { cpvBidMicros_ = input.readInt64(); bitField0_ |= 0x00004000; break; } // case 336 case 344: { targetCpmMicros_ = input.readInt64(); bitField0_ |= 0x00008000; break; } // case 344 case 353: { targetRoas_ = input.readDouble(); bitField0_ |= 0x00010000; break; } // case 353 case 360: { percentCpcBidMicros_ = input.readInt64(); bitField0_ |= 0x00020000; break; } // case 360 case 370: { finalUrlSuffix_ = input.readStringRequireUtf8(); bitField0_ |= 0x00400000; break; } // case 370 case 376: { effectiveTargetCpaMicros_ = input.readInt64(); bitField0_ |= 0x02000000; break; } // case 376 case 385: { effectiveTargetRoas_ = input.readDouble(); bitField0_ |= 0x08000000; break; } // case 385 case 394: { java.lang.String s = input.readStringRequireUtf8(); ensureLabelsIsMutable(); labels_.add(s); break; } // case 394 case 432: { int tmpRaw = input.readEnum(); ensureExcludedParentAssetFieldTypesIsMutable(); excludedParentAssetFieldTypes_.add(tmpRaw); break; } // case 432 case 434: { int length = input.readRawVarint32(); int oldLimit = input.pushLimit(length); while(input.getBytesUntilLimit() > 0) { int tmpRaw = input.readEnum(); ensureExcludedParentAssetFieldTypesIsMutable(); excludedParentAssetFieldTypes_.add(tmpRaw); } input.popLimit(oldLimit); break; } // case 434 case 450: { input.readMessage( getAudienceSettingFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x01000000; break; } // case 450 case 456: { effectiveCpcBidMicros_ = input.readInt64(); bitField0_ |= 0x00000800; break; } // case 456 case 464: { int tmpRaw = input.readEnum(); ensureExcludedParentAssetSetTypesIsMutable(); excludedParentAssetSetTypes_.add(tmpRaw); break; } // case 464 case 466: { int length = input.readRawVarint32(); int oldLimit = input.pushLimit(length); while(input.getBytesUntilLimit() > 0) { int tmpRaw = input.readEnum(); ensureExcludedParentAssetSetTypesIsMutable(); excludedParentAssetSetTypes_.add(tmpRaw); } input.popLimit(oldLimit); break; } // case 466 case 472: { optimizedTargetingEnabled_ = input.readBool(); bitField0_ |= 0x00100000; break; } // case 472 case 496: { primaryStatus_ = input.readEnum(); bitField1_ |= 0x00000001; break; } // case 496 case 504: { int tmpRaw = input.readEnum(); ensurePrimaryStatusReasonsIsMutable(); primaryStatusReasons_.add(tmpRaw); break; } // case 504 case 506: { int length = input.readRawVarint32(); int oldLimit = input.pushLimit(length); while(input.getBytesUntilLimit() > 0) { int tmpRaw = input.readEnum(); ensurePrimaryStatusReasonsIsMutable(); primaryStatusReasons_.add(tmpRaw); } input.popLimit(oldLimit); break; } // case 506 case 512: { fixedCpmMicros_ = input.readInt64(); bitField0_ |= 0x00040000; break; } // case 512 case 520: { targetCpvMicros_ = input.readInt64(); bitField0_ |= 0x00080000; break; } // case 520 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag } break; } // default: } // switch (tag) } // while (!done) } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.unwrapIOException(); } finally { onChanged(); } // finally return this; } private int bitField0_; private int bitField1_; private java.lang.Object resourceName_ = ""; /** *
     * Immutable. The resource name of the ad group.
     * Ad group resource names have the form:
     *
     * `customers/{customer_id}/adGroups/{ad_group_id}`
     * 
* * string resource_name = 1 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return The resourceName. */ public java.lang.String getResourceName() { java.lang.Object ref = resourceName_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); resourceName_ = s; return s; } else { return (java.lang.String) ref; } } /** *
     * Immutable. The resource name of the ad group.
     * Ad group resource names have the form:
     *
     * `customers/{customer_id}/adGroups/{ad_group_id}`
     * 
* * string resource_name = 1 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return The bytes for resourceName. */ public com.google.protobuf.ByteString getResourceNameBytes() { java.lang.Object ref = resourceName_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); resourceName_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
     * Immutable. The resource name of the ad group.
     * Ad group resource names have the form:
     *
     * `customers/{customer_id}/adGroups/{ad_group_id}`
     * 
* * string resource_name = 1 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @param value The resourceName to set. * @return This builder for chaining. */ public Builder setResourceName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } resourceName_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } /** *
     * Immutable. The resource name of the ad group.
     * Ad group resource names have the form:
     *
     * `customers/{customer_id}/adGroups/{ad_group_id}`
     * 
* * string resource_name = 1 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return This builder for chaining. */ public Builder clearResourceName() { resourceName_ = getDefaultInstance().getResourceName(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** *
     * Immutable. The resource name of the ad group.
     * Ad group resource names have the form:
     *
     * `customers/{customer_id}/adGroups/{ad_group_id}`
     * 
* * string resource_name = 1 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @param value The bytes for resourceName to set. * @return This builder for chaining. */ public Builder setResourceNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); resourceName_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } private long id_ ; /** *
     * Output only. The ID of the ad group.
     * 
* * optional int64 id = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return Whether the id field is set. */ @java.lang.Override public boolean hasId() { return ((bitField0_ & 0x00000002) != 0); } /** *
     * Output only. The ID of the ad group.
     * 
* * optional int64 id = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The id. */ @java.lang.Override public long getId() { return id_; } /** *
     * Output only. The ID of the ad group.
     * 
* * optional int64 id = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The id to set. * @return This builder for chaining. */ public Builder setId(long value) { id_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } /** *
     * Output only. The ID of the ad group.
     * 
* * optional int64 id = 34 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return This builder for chaining. */ public Builder clearId() { bitField0_ = (bitField0_ & ~0x00000002); id_ = 0L; onChanged(); return this; } private java.lang.Object name_ = ""; /** *
     * The name of the ad group.
     *
     * This field is required and should not be empty when creating new ad
     * groups.
     *
     * It must contain fewer than 255 UTF-8 full-width characters.
     *
     * It must not contain any null (code point 0x0), NL line feed
     * (code point 0xA) or carriage return (code point 0xD) characters.
     * 
* * optional string name = 35; * @return Whether the name field is set. */ public boolean hasName() { return ((bitField0_ & 0x00000004) != 0); } /** *
     * The name of the ad group.
     *
     * This field is required and should not be empty when creating new ad
     * groups.
     *
     * It must contain fewer than 255 UTF-8 full-width characters.
     *
     * It must not contain any null (code point 0x0), NL line feed
     * (code point 0xA) or carriage return (code point 0xD) characters.
     * 
* * optional string name = 35; * @return The name. */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } else { return (java.lang.String) ref; } } /** *
     * The name of the ad group.
     *
     * This field is required and should not be empty when creating new ad
     * groups.
     *
     * It must contain fewer than 255 UTF-8 full-width characters.
     *
     * It must not contain any null (code point 0x0), NL line feed
     * (code point 0xA) or carriage return (code point 0xD) characters.
     * 
* * optional string name = 35; * @return The bytes for name. */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
     * The name of the ad group.
     *
     * This field is required and should not be empty when creating new ad
     * groups.
     *
     * It must contain fewer than 255 UTF-8 full-width characters.
     *
     * It must not contain any null (code point 0x0), NL line feed
     * (code point 0xA) or carriage return (code point 0xD) characters.
     * 
* * optional string name = 35; * @param value The name to set. * @return This builder for chaining. */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } name_ = value; bitField0_ |= 0x00000004; onChanged(); return this; } /** *
     * The name of the ad group.
     *
     * This field is required and should not be empty when creating new ad
     * groups.
     *
     * It must contain fewer than 255 UTF-8 full-width characters.
     *
     * It must not contain any null (code point 0x0), NL line feed
     * (code point 0xA) or carriage return (code point 0xD) characters.
     * 
* * optional string name = 35; * @return This builder for chaining. */ public Builder clearName() { name_ = getDefaultInstance().getName(); bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } /** *
     * The name of the ad group.
     *
     * This field is required and should not be empty when creating new ad
     * groups.
     *
     * It must contain fewer than 255 UTF-8 full-width characters.
     *
     * It must not contain any null (code point 0x0), NL line feed
     * (code point 0xA) or carriage return (code point 0xD) characters.
     * 
* * optional string name = 35; * @param value The bytes for name to set. * @return This builder for chaining. */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); name_ = value; bitField0_ |= 0x00000004; onChanged(); return this; } private int status_ = 0; /** *
     * The status of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus status = 5; * @return The enum numeric value on the wire for status. */ @java.lang.Override public int getStatusValue() { return status_; } /** *
     * The status of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus status = 5; * @param value The enum numeric value on the wire for status to set. * @return This builder for chaining. */ public Builder setStatusValue(int value) { status_ = value; bitField0_ |= 0x00000008; onChanged(); return this; } /** *
     * The status of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus status = 5; * @return The status. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus getStatus() { com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus result = com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus.forNumber(status_); return result == null ? com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus.UNRECOGNIZED : result; } /** *
     * The status of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus status = 5; * @param value The status to set. * @return This builder for chaining. */ public Builder setStatus(com.google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000008; status_ = value.getNumber(); onChanged(); return this; } /** *
     * The status of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupStatusEnum.AdGroupStatus status = 5; * @return This builder for chaining. */ public Builder clearStatus() { bitField0_ = (bitField0_ & ~0x00000008); status_ = 0; onChanged(); return this; } private int type_ = 0; /** *
     * Immutable. The type of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType type = 12 [(.google.api.field_behavior) = IMMUTABLE]; * @return The enum numeric value on the wire for type. */ @java.lang.Override public int getTypeValue() { return type_; } /** *
     * Immutable. The type of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType type = 12 [(.google.api.field_behavior) = IMMUTABLE]; * @param value The enum numeric value on the wire for type to set. * @return This builder for chaining. */ public Builder setTypeValue(int value) { type_ = value; bitField0_ |= 0x00000010; onChanged(); return this; } /** *
     * Immutable. The type of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType type = 12 [(.google.api.field_behavior) = IMMUTABLE]; * @return The type. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType getType() { com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType result = com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType.forNumber(type_); return result == null ? com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType.UNRECOGNIZED : result; } /** *
     * Immutable. The type of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType type = 12 [(.google.api.field_behavior) = IMMUTABLE]; * @param value The type to set. * @return This builder for chaining. */ public Builder setType(com.google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000010; type_ = value.getNumber(); onChanged(); return this; } /** *
     * Immutable. The type of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupTypeEnum.AdGroupType type = 12 [(.google.api.field_behavior) = IMMUTABLE]; * @return This builder for chaining. */ public Builder clearType() { bitField0_ = (bitField0_ & ~0x00000010); type_ = 0; onChanged(); return this; } private int adRotationMode_ = 0; /** *
     * The ad rotation mode of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; * @return The enum numeric value on the wire for adRotationMode. */ @java.lang.Override public int getAdRotationModeValue() { return adRotationMode_; } /** *
     * The ad rotation mode of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; * @param value The enum numeric value on the wire for adRotationMode to set. * @return This builder for chaining. */ public Builder setAdRotationModeValue(int value) { adRotationMode_ = value; bitField0_ |= 0x00000020; onChanged(); return this; } /** *
     * The ad rotation mode of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; * @return The adRotationMode. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode getAdRotationMode() { com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode result = com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode.forNumber(adRotationMode_); return result == null ? com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode.UNRECOGNIZED : result; } /** *
     * The ad rotation mode of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; * @param value The adRotationMode to set. * @return This builder for chaining. */ public Builder setAdRotationMode(com.google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000020; adRotationMode_ = value.getNumber(); onChanged(); return this; } /** *
     * The ad rotation mode of the ad group.
     * 
* * .google.ads.googleads.v17.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; * @return This builder for chaining. */ public Builder clearAdRotationMode() { bitField0_ = (bitField0_ & ~0x00000020); adRotationMode_ = 0; onChanged(); return this; } private java.lang.Object baseAdGroup_ = ""; /** *
     * Output only. For draft or experiment ad groups, this field is the resource
     * name of the base ad group from which this ad group was created. If a draft
     * or experiment ad group does not have a base ad group, then this field is
     * null.
     *
     * For base ad groups, this field equals the ad group resource name.
     *
     * This field is read-only.
     * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return Whether the baseAdGroup field is set. */ public boolean hasBaseAdGroup() { return ((bitField0_ & 0x00000040) != 0); } /** *
     * Output only. For draft or experiment ad groups, this field is the resource
     * name of the base ad group from which this ad group was created. If a draft
     * or experiment ad group does not have a base ad group, then this field is
     * null.
     *
     * For base ad groups, this field equals the ad group resource name.
     *
     * This field is read-only.
     * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return The baseAdGroup. */ public java.lang.String getBaseAdGroup() { java.lang.Object ref = baseAdGroup_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); baseAdGroup_ = s; return s; } else { return (java.lang.String) ref; } } /** *
     * Output only. For draft or experiment ad groups, this field is the resource
     * name of the base ad group from which this ad group was created. If a draft
     * or experiment ad group does not have a base ad group, then this field is
     * null.
     *
     * For base ad groups, this field equals the ad group resource name.
     *
     * This field is read-only.
     * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return The bytes for baseAdGroup. */ public com.google.protobuf.ByteString getBaseAdGroupBytes() { java.lang.Object ref = baseAdGroup_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); baseAdGroup_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
     * Output only. For draft or experiment ad groups, this field is the resource
     * name of the base ad group from which this ad group was created. If a draft
     * or experiment ad group does not have a base ad group, then this field is
     * null.
     *
     * For base ad groups, this field equals the ad group resource name.
     *
     * This field is read-only.
     * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param value The baseAdGroup to set. * @return This builder for chaining. */ public Builder setBaseAdGroup( java.lang.String value) { if (value == null) { throw new NullPointerException(); } baseAdGroup_ = value; bitField0_ |= 0x00000040; onChanged(); return this; } /** *
     * Output only. For draft or experiment ad groups, this field is the resource
     * name of the base ad group from which this ad group was created. If a draft
     * or experiment ad group does not have a base ad group, then this field is
     * null.
     *
     * For base ad groups, this field equals the ad group resource name.
     *
     * This field is read-only.
     * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return This builder for chaining. */ public Builder clearBaseAdGroup() { baseAdGroup_ = getDefaultInstance().getBaseAdGroup(); bitField0_ = (bitField0_ & ~0x00000040); onChanged(); return this; } /** *
     * Output only. For draft or experiment ad groups, this field is the resource
     * name of the base ad group from which this ad group was created. If a draft
     * or experiment ad group does not have a base ad group, then this field is
     * null.
     *
     * For base ad groups, this field equals the ad group resource name.
     *
     * This field is read-only.
     * 
* * optional string base_ad_group = 36 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param value The bytes for baseAdGroup to set. * @return This builder for chaining. */ public Builder setBaseAdGroupBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); baseAdGroup_ = value; bitField0_ |= 0x00000040; onChanged(); return this; } private java.lang.Object trackingUrlTemplate_ = ""; /** *
     * The URL template for constructing a tracking URL.
     * 
* * optional string tracking_url_template = 37; * @return Whether the trackingUrlTemplate field is set. */ public boolean hasTrackingUrlTemplate() { return ((bitField0_ & 0x00000080) != 0); } /** *
     * The URL template for constructing a tracking URL.
     * 
* * optional string tracking_url_template = 37; * @return The trackingUrlTemplate. */ public java.lang.String getTrackingUrlTemplate() { java.lang.Object ref = trackingUrlTemplate_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); trackingUrlTemplate_ = s; return s; } else { return (java.lang.String) ref; } } /** *
     * The URL template for constructing a tracking URL.
     * 
* * optional string tracking_url_template = 37; * @return The bytes for trackingUrlTemplate. */ public com.google.protobuf.ByteString getTrackingUrlTemplateBytes() { java.lang.Object ref = trackingUrlTemplate_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); trackingUrlTemplate_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
     * The URL template for constructing a tracking URL.
     * 
* * optional string tracking_url_template = 37; * @param value The trackingUrlTemplate to set. * @return This builder for chaining. */ public Builder setTrackingUrlTemplate( java.lang.String value) { if (value == null) { throw new NullPointerException(); } trackingUrlTemplate_ = value; bitField0_ |= 0x00000080; onChanged(); return this; } /** *
     * The URL template for constructing a tracking URL.
     * 
* * optional string tracking_url_template = 37; * @return This builder for chaining. */ public Builder clearTrackingUrlTemplate() { trackingUrlTemplate_ = getDefaultInstance().getTrackingUrlTemplate(); bitField0_ = (bitField0_ & ~0x00000080); onChanged(); return this; } /** *
     * The URL template for constructing a tracking URL.
     * 
* * optional string tracking_url_template = 37; * @param value The bytes for trackingUrlTemplate to set. * @return This builder for chaining. */ public Builder setTrackingUrlTemplateBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); trackingUrlTemplate_ = value; bitField0_ |= 0x00000080; onChanged(); return this; } private java.util.List urlCustomParameters_ = java.util.Collections.emptyList(); private void ensureUrlCustomParametersIsMutable() { if (!((bitField0_ & 0x00000100) != 0)) { urlCustomParameters_ = new java.util.ArrayList(urlCustomParameters_); bitField0_ |= 0x00000100; } } private com.google.protobuf.RepeatedFieldBuilderV3< com.google.ads.googleads.v17.common.CustomParameter, com.google.ads.googleads.v17.common.CustomParameter.Builder, com.google.ads.googleads.v17.common.CustomParameterOrBuilder> urlCustomParametersBuilder_; /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public java.util.List getUrlCustomParametersList() { if (urlCustomParametersBuilder_ == null) { return java.util.Collections.unmodifiableList(urlCustomParameters_); } else { return urlCustomParametersBuilder_.getMessageList(); } } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public int getUrlCustomParametersCount() { if (urlCustomParametersBuilder_ == null) { return urlCustomParameters_.size(); } else { return urlCustomParametersBuilder_.getCount(); } } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public com.google.ads.googleads.v17.common.CustomParameter getUrlCustomParameters(int index) { if (urlCustomParametersBuilder_ == null) { return urlCustomParameters_.get(index); } else { return urlCustomParametersBuilder_.getMessage(index); } } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder setUrlCustomParameters( int index, com.google.ads.googleads.v17.common.CustomParameter value) { if (urlCustomParametersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureUrlCustomParametersIsMutable(); urlCustomParameters_.set(index, value); onChanged(); } else { urlCustomParametersBuilder_.setMessage(index, value); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder setUrlCustomParameters( int index, com.google.ads.googleads.v17.common.CustomParameter.Builder builderForValue) { if (urlCustomParametersBuilder_ == null) { ensureUrlCustomParametersIsMutable(); urlCustomParameters_.set(index, builderForValue.build()); onChanged(); } else { urlCustomParametersBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder addUrlCustomParameters(com.google.ads.googleads.v17.common.CustomParameter value) { if (urlCustomParametersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureUrlCustomParametersIsMutable(); urlCustomParameters_.add(value); onChanged(); } else { urlCustomParametersBuilder_.addMessage(value); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder addUrlCustomParameters( int index, com.google.ads.googleads.v17.common.CustomParameter value) { if (urlCustomParametersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureUrlCustomParametersIsMutable(); urlCustomParameters_.add(index, value); onChanged(); } else { urlCustomParametersBuilder_.addMessage(index, value); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder addUrlCustomParameters( com.google.ads.googleads.v17.common.CustomParameter.Builder builderForValue) { if (urlCustomParametersBuilder_ == null) { ensureUrlCustomParametersIsMutable(); urlCustomParameters_.add(builderForValue.build()); onChanged(); } else { urlCustomParametersBuilder_.addMessage(builderForValue.build()); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder addUrlCustomParameters( int index, com.google.ads.googleads.v17.common.CustomParameter.Builder builderForValue) { if (urlCustomParametersBuilder_ == null) { ensureUrlCustomParametersIsMutable(); urlCustomParameters_.add(index, builderForValue.build()); onChanged(); } else { urlCustomParametersBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder addAllUrlCustomParameters( java.lang.Iterable values) { if (urlCustomParametersBuilder_ == null) { ensureUrlCustomParametersIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, urlCustomParameters_); onChanged(); } else { urlCustomParametersBuilder_.addAllMessages(values); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder clearUrlCustomParameters() { if (urlCustomParametersBuilder_ == null) { urlCustomParameters_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000100); onChanged(); } else { urlCustomParametersBuilder_.clear(); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public Builder removeUrlCustomParameters(int index) { if (urlCustomParametersBuilder_ == null) { ensureUrlCustomParametersIsMutable(); urlCustomParameters_.remove(index); onChanged(); } else { urlCustomParametersBuilder_.remove(index); } return this; } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public com.google.ads.googleads.v17.common.CustomParameter.Builder getUrlCustomParametersBuilder( int index) { return getUrlCustomParametersFieldBuilder().getBuilder(index); } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public com.google.ads.googleads.v17.common.CustomParameterOrBuilder getUrlCustomParametersOrBuilder( int index) { if (urlCustomParametersBuilder_ == null) { return urlCustomParameters_.get(index); } else { return urlCustomParametersBuilder_.getMessageOrBuilder(index); } } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public java.util.List getUrlCustomParametersOrBuilderList() { if (urlCustomParametersBuilder_ != null) { return urlCustomParametersBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(urlCustomParameters_); } } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public com.google.ads.googleads.v17.common.CustomParameter.Builder addUrlCustomParametersBuilder() { return getUrlCustomParametersFieldBuilder().addBuilder( com.google.ads.googleads.v17.common.CustomParameter.getDefaultInstance()); } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public com.google.ads.googleads.v17.common.CustomParameter.Builder addUrlCustomParametersBuilder( int index) { return getUrlCustomParametersFieldBuilder().addBuilder( index, com.google.ads.googleads.v17.common.CustomParameter.getDefaultInstance()); } /** *
     * The list of mappings used to substitute custom parameter tags in a
     * `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
     * 
* * repeated .google.ads.googleads.v17.common.CustomParameter url_custom_parameters = 6; */ public java.util.List getUrlCustomParametersBuilderList() { return getUrlCustomParametersFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< com.google.ads.googleads.v17.common.CustomParameter, com.google.ads.googleads.v17.common.CustomParameter.Builder, com.google.ads.googleads.v17.common.CustomParameterOrBuilder> getUrlCustomParametersFieldBuilder() { if (urlCustomParametersBuilder_ == null) { urlCustomParametersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< com.google.ads.googleads.v17.common.CustomParameter, com.google.ads.googleads.v17.common.CustomParameter.Builder, com.google.ads.googleads.v17.common.CustomParameterOrBuilder>( urlCustomParameters_, ((bitField0_ & 0x00000100) != 0), getParentForChildren(), isClean()); urlCustomParameters_ = null; } return urlCustomParametersBuilder_; } private java.lang.Object campaign_ = ""; /** *
     * Immutable. The campaign to which the ad group belongs.
     * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return Whether the campaign field is set. */ public boolean hasCampaign() { return ((bitField0_ & 0x00000200) != 0); } /** *
     * Immutable. The campaign to which the ad group belongs.
     * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return The campaign. */ public java.lang.String getCampaign() { java.lang.Object ref = campaign_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); campaign_ = s; return s; } else { return (java.lang.String) ref; } } /** *
     * Immutable. The campaign to which the ad group belongs.
     * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return The bytes for campaign. */ public com.google.protobuf.ByteString getCampaignBytes() { java.lang.Object ref = campaign_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); campaign_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
     * Immutable. The campaign to which the ad group belongs.
     * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @param value The campaign to set. * @return This builder for chaining. */ public Builder setCampaign( java.lang.String value) { if (value == null) { throw new NullPointerException(); } campaign_ = value; bitField0_ |= 0x00000200; onChanged(); return this; } /** *
     * Immutable. The campaign to which the ad group belongs.
     * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @return This builder for chaining. */ public Builder clearCampaign() { campaign_ = getDefaultInstance().getCampaign(); bitField0_ = (bitField0_ & ~0x00000200); onChanged(); return this; } /** *
     * Immutable. The campaign to which the ad group belongs.
     * 
* * optional string campaign = 38 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } * @param value The bytes for campaign to set. * @return This builder for chaining. */ public Builder setCampaignBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); campaign_ = value; bitField0_ |= 0x00000200; onChanged(); return this; } private long cpcBidMicros_ ; /** *
     * The maximum CPC (cost-per-click) bid.
     * 
* * optional int64 cpc_bid_micros = 39; * @return Whether the cpcBidMicros field is set. */ @java.lang.Override public boolean hasCpcBidMicros() { return ((bitField0_ & 0x00000400) != 0); } /** *
     * The maximum CPC (cost-per-click) bid.
     * 
* * optional int64 cpc_bid_micros = 39; * @return The cpcBidMicros. */ @java.lang.Override public long getCpcBidMicros() { return cpcBidMicros_; } /** *
     * The maximum CPC (cost-per-click) bid.
     * 
* * optional int64 cpc_bid_micros = 39; * @param value The cpcBidMicros to set. * @return This builder for chaining. */ public Builder setCpcBidMicros(long value) { cpcBidMicros_ = value; bitField0_ |= 0x00000400; onChanged(); return this; } /** *
     * The maximum CPC (cost-per-click) bid.
     * 
* * optional int64 cpc_bid_micros = 39; * @return This builder for chaining. */ public Builder clearCpcBidMicros() { bitField0_ = (bitField0_ & ~0x00000400); cpcBidMicros_ = 0L; onChanged(); return this; } private long effectiveCpcBidMicros_ ; /** *
     * Output only. Value will be same as that of the CPC (cost-per-click) bid
     * value when the bidding strategy is one of manual cpc, enhanced cpc, page
     * one promoted or target outrank share, otherwise the value will be null.
     * 
* * optional int64 effective_cpc_bid_micros = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return Whether the effectiveCpcBidMicros field is set. */ @java.lang.Override public boolean hasEffectiveCpcBidMicros() { return ((bitField0_ & 0x00000800) != 0); } /** *
     * Output only. Value will be same as that of the CPC (cost-per-click) bid
     * value when the bidding strategy is one of manual cpc, enhanced cpc, page
     * one promoted or target outrank share, otherwise the value will be null.
     * 
* * optional int64 effective_cpc_bid_micros = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveCpcBidMicros. */ @java.lang.Override public long getEffectiveCpcBidMicros() { return effectiveCpcBidMicros_; } /** *
     * Output only. Value will be same as that of the CPC (cost-per-click) bid
     * value when the bidding strategy is one of manual cpc, enhanced cpc, page
     * one promoted or target outrank share, otherwise the value will be null.
     * 
* * optional int64 effective_cpc_bid_micros = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The effectiveCpcBidMicros to set. * @return This builder for chaining. */ public Builder setEffectiveCpcBidMicros(long value) { effectiveCpcBidMicros_ = value; bitField0_ |= 0x00000800; onChanged(); return this; } /** *
     * Output only. Value will be same as that of the CPC (cost-per-click) bid
     * value when the bidding strategy is one of manual cpc, enhanced cpc, page
     * one promoted or target outrank share, otherwise the value will be null.
     * 
* * optional int64 effective_cpc_bid_micros = 57 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return This builder for chaining. */ public Builder clearEffectiveCpcBidMicros() { bitField0_ = (bitField0_ & ~0x00000800); effectiveCpcBidMicros_ = 0L; onChanged(); return this; } private long cpmBidMicros_ ; /** *
     * The maximum CPM (cost-per-thousand viewable impressions) bid.
     * 
* * optional int64 cpm_bid_micros = 40; * @return Whether the cpmBidMicros field is set. */ @java.lang.Override public boolean hasCpmBidMicros() { return ((bitField0_ & 0x00001000) != 0); } /** *
     * The maximum CPM (cost-per-thousand viewable impressions) bid.
     * 
* * optional int64 cpm_bid_micros = 40; * @return The cpmBidMicros. */ @java.lang.Override public long getCpmBidMicros() { return cpmBidMicros_; } /** *
     * The maximum CPM (cost-per-thousand viewable impressions) bid.
     * 
* * optional int64 cpm_bid_micros = 40; * @param value The cpmBidMicros to set. * @return This builder for chaining. */ public Builder setCpmBidMicros(long value) { cpmBidMicros_ = value; bitField0_ |= 0x00001000; onChanged(); return this; } /** *
     * The maximum CPM (cost-per-thousand viewable impressions) bid.
     * 
* * optional int64 cpm_bid_micros = 40; * @return This builder for chaining. */ public Builder clearCpmBidMicros() { bitField0_ = (bitField0_ & ~0x00001000); cpmBidMicros_ = 0L; onChanged(); return this; } private long targetCpaMicros_ ; /** *
     * The target CPA (cost-per-acquisition). If the ad group's campaign
     * bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa
     * field set), then this field overrides the target CPA specified in the
     * campaign's bidding strategy.
     * Otherwise, this value is ignored.
     * 
* * optional int64 target_cpa_micros = 41; * @return Whether the targetCpaMicros field is set. */ @java.lang.Override public boolean hasTargetCpaMicros() { return ((bitField0_ & 0x00002000) != 0); } /** *
     * The target CPA (cost-per-acquisition). If the ad group's campaign
     * bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa
     * field set), then this field overrides the target CPA specified in the
     * campaign's bidding strategy.
     * Otherwise, this value is ignored.
     * 
* * optional int64 target_cpa_micros = 41; * @return The targetCpaMicros. */ @java.lang.Override public long getTargetCpaMicros() { return targetCpaMicros_; } /** *
     * The target CPA (cost-per-acquisition). If the ad group's campaign
     * bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa
     * field set), then this field overrides the target CPA specified in the
     * campaign's bidding strategy.
     * Otherwise, this value is ignored.
     * 
* * optional int64 target_cpa_micros = 41; * @param value The targetCpaMicros to set. * @return This builder for chaining. */ public Builder setTargetCpaMicros(long value) { targetCpaMicros_ = value; bitField0_ |= 0x00002000; onChanged(); return this; } /** *
     * The target CPA (cost-per-acquisition). If the ad group's campaign
     * bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa
     * field set), then this field overrides the target CPA specified in the
     * campaign's bidding strategy.
     * Otherwise, this value is ignored.
     * 
* * optional int64 target_cpa_micros = 41; * @return This builder for chaining. */ public Builder clearTargetCpaMicros() { bitField0_ = (bitField0_ & ~0x00002000); targetCpaMicros_ = 0L; onChanged(); return this; } private long cpvBidMicros_ ; /** *
     * The CPV (cost-per-view) bid.
     * 
* * optional int64 cpv_bid_micros = 42; * @return Whether the cpvBidMicros field is set. */ @java.lang.Override public boolean hasCpvBidMicros() { return ((bitField0_ & 0x00004000) != 0); } /** *
     * The CPV (cost-per-view) bid.
     * 
* * optional int64 cpv_bid_micros = 42; * @return The cpvBidMicros. */ @java.lang.Override public long getCpvBidMicros() { return cpvBidMicros_; } /** *
     * The CPV (cost-per-view) bid.
     * 
* * optional int64 cpv_bid_micros = 42; * @param value The cpvBidMicros to set. * @return This builder for chaining. */ public Builder setCpvBidMicros(long value) { cpvBidMicros_ = value; bitField0_ |= 0x00004000; onChanged(); return this; } /** *
     * The CPV (cost-per-view) bid.
     * 
* * optional int64 cpv_bid_micros = 42; * @return This builder for chaining. */ public Builder clearCpvBidMicros() { bitField0_ = (bitField0_ & ~0x00004000); cpvBidMicros_ = 0L; onChanged(); return this; } private long targetCpmMicros_ ; /** *
     * Average amount in micros that the advertiser is willing to pay for every
     * thousand times the ad is shown.
     * 
* * optional int64 target_cpm_micros = 43; * @return Whether the targetCpmMicros field is set. */ @java.lang.Override public boolean hasTargetCpmMicros() { return ((bitField0_ & 0x00008000) != 0); } /** *
     * Average amount in micros that the advertiser is willing to pay for every
     * thousand times the ad is shown.
     * 
* * optional int64 target_cpm_micros = 43; * @return The targetCpmMicros. */ @java.lang.Override public long getTargetCpmMicros() { return targetCpmMicros_; } /** *
     * Average amount in micros that the advertiser is willing to pay for every
     * thousand times the ad is shown.
     * 
* * optional int64 target_cpm_micros = 43; * @param value The targetCpmMicros to set. * @return This builder for chaining. */ public Builder setTargetCpmMicros(long value) { targetCpmMicros_ = value; bitField0_ |= 0x00008000; onChanged(); return this; } /** *
     * Average amount in micros that the advertiser is willing to pay for every
     * thousand times the ad is shown.
     * 
* * optional int64 target_cpm_micros = 43; * @return This builder for chaining. */ public Builder clearTargetCpmMicros() { bitField0_ = (bitField0_ & ~0x00008000); targetCpmMicros_ = 0L; onChanged(); return this; } private double targetRoas_ ; /** *
     * The target ROAS (return-on-ad-spend) override. If the ad group's campaign
     * bidding strategy is TargetRoas or MaximizeConversionValue (with its
     * target_roas field set), then this field overrides the target ROAS specified
     * in the campaign's bidding strategy.
     * Otherwise, this value is ignored.
     * 
* * optional double target_roas = 44; * @return Whether the targetRoas field is set. */ @java.lang.Override public boolean hasTargetRoas() { return ((bitField0_ & 0x00010000) != 0); } /** *
     * The target ROAS (return-on-ad-spend) override. If the ad group's campaign
     * bidding strategy is TargetRoas or MaximizeConversionValue (with its
     * target_roas field set), then this field overrides the target ROAS specified
     * in the campaign's bidding strategy.
     * Otherwise, this value is ignored.
     * 
* * optional double target_roas = 44; * @return The targetRoas. */ @java.lang.Override public double getTargetRoas() { return targetRoas_; } /** *
     * The target ROAS (return-on-ad-spend) override. If the ad group's campaign
     * bidding strategy is TargetRoas or MaximizeConversionValue (with its
     * target_roas field set), then this field overrides the target ROAS specified
     * in the campaign's bidding strategy.
     * Otherwise, this value is ignored.
     * 
* * optional double target_roas = 44; * @param value The targetRoas to set. * @return This builder for chaining. */ public Builder setTargetRoas(double value) { targetRoas_ = value; bitField0_ |= 0x00010000; onChanged(); return this; } /** *
     * The target ROAS (return-on-ad-spend) override. If the ad group's campaign
     * bidding strategy is TargetRoas or MaximizeConversionValue (with its
     * target_roas field set), then this field overrides the target ROAS specified
     * in the campaign's bidding strategy.
     * Otherwise, this value is ignored.
     * 
* * optional double target_roas = 44; * @return This builder for chaining. */ public Builder clearTargetRoas() { bitField0_ = (bitField0_ & ~0x00010000); targetRoas_ = 0D; onChanged(); return this; } private long percentCpcBidMicros_ ; /** *
     * The percent cpc bid amount, expressed as a fraction of the advertised price
     * for some good or service. The valid range for the fraction is [0,1) and the
     * value stored here is 1,000,000 * [fraction].
     * 
* * optional int64 percent_cpc_bid_micros = 45; * @return Whether the percentCpcBidMicros field is set. */ @java.lang.Override public boolean hasPercentCpcBidMicros() { return ((bitField0_ & 0x00020000) != 0); } /** *
     * The percent cpc bid amount, expressed as a fraction of the advertised price
     * for some good or service. The valid range for the fraction is [0,1) and the
     * value stored here is 1,000,000 * [fraction].
     * 
* * optional int64 percent_cpc_bid_micros = 45; * @return The percentCpcBidMicros. */ @java.lang.Override public long getPercentCpcBidMicros() { return percentCpcBidMicros_; } /** *
     * The percent cpc bid amount, expressed as a fraction of the advertised price
     * for some good or service. The valid range for the fraction is [0,1) and the
     * value stored here is 1,000,000 * [fraction].
     * 
* * optional int64 percent_cpc_bid_micros = 45; * @param value The percentCpcBidMicros to set. * @return This builder for chaining. */ public Builder setPercentCpcBidMicros(long value) { percentCpcBidMicros_ = value; bitField0_ |= 0x00020000; onChanged(); return this; } /** *
     * The percent cpc bid amount, expressed as a fraction of the advertised price
     * for some good or service. The valid range for the fraction is [0,1) and the
     * value stored here is 1,000,000 * [fraction].
     * 
* * optional int64 percent_cpc_bid_micros = 45; * @return This builder for chaining. */ public Builder clearPercentCpcBidMicros() { bitField0_ = (bitField0_ & ~0x00020000); percentCpcBidMicros_ = 0L; onChanged(); return this; } private long fixedCpmMicros_ ; /** *
     * The fixed amount in micros that the advertiser pays for every thousand
     * impressions of the ad.
     * 
* * optional int64 fixed_cpm_micros = 64; * @return Whether the fixedCpmMicros field is set. */ @java.lang.Override public boolean hasFixedCpmMicros() { return ((bitField0_ & 0x00040000) != 0); } /** *
     * The fixed amount in micros that the advertiser pays for every thousand
     * impressions of the ad.
     * 
* * optional int64 fixed_cpm_micros = 64; * @return The fixedCpmMicros. */ @java.lang.Override public long getFixedCpmMicros() { return fixedCpmMicros_; } /** *
     * The fixed amount in micros that the advertiser pays for every thousand
     * impressions of the ad.
     * 
* * optional int64 fixed_cpm_micros = 64; * @param value The fixedCpmMicros to set. * @return This builder for chaining. */ public Builder setFixedCpmMicros(long value) { fixedCpmMicros_ = value; bitField0_ |= 0x00040000; onChanged(); return this; } /** *
     * The fixed amount in micros that the advertiser pays for every thousand
     * impressions of the ad.
     * 
* * optional int64 fixed_cpm_micros = 64; * @return This builder for chaining. */ public Builder clearFixedCpmMicros() { bitField0_ = (bitField0_ & ~0x00040000); fixedCpmMicros_ = 0L; onChanged(); return this; } private long targetCpvMicros_ ; /** *
     * Average amount in micros that the advertiser is willing to pay for every ad
     * view.
     * 
* * optional int64 target_cpv_micros = 65; * @return Whether the targetCpvMicros field is set. */ @java.lang.Override public boolean hasTargetCpvMicros() { return ((bitField0_ & 0x00080000) != 0); } /** *
     * Average amount in micros that the advertiser is willing to pay for every ad
     * view.
     * 
* * optional int64 target_cpv_micros = 65; * @return The targetCpvMicros. */ @java.lang.Override public long getTargetCpvMicros() { return targetCpvMicros_; } /** *
     * Average amount in micros that the advertiser is willing to pay for every ad
     * view.
     * 
* * optional int64 target_cpv_micros = 65; * @param value The targetCpvMicros to set. * @return This builder for chaining. */ public Builder setTargetCpvMicros(long value) { targetCpvMicros_ = value; bitField0_ |= 0x00080000; onChanged(); return this; } /** *
     * Average amount in micros that the advertiser is willing to pay for every ad
     * view.
     * 
* * optional int64 target_cpv_micros = 65; * @return This builder for chaining. */ public Builder clearTargetCpvMicros() { bitField0_ = (bitField0_ & ~0x00080000); targetCpvMicros_ = 0L; onChanged(); return this; } private boolean optimizedTargetingEnabled_ ; /** *
     * True if optimized targeting is enabled. Optimized Targeting is the
     * replacement for Audience Expansion.
     * 
* * bool optimized_targeting_enabled = 59; * @return The optimizedTargetingEnabled. */ @java.lang.Override public boolean getOptimizedTargetingEnabled() { return optimizedTargetingEnabled_; } /** *
     * True if optimized targeting is enabled. Optimized Targeting is the
     * replacement for Audience Expansion.
     * 
* * bool optimized_targeting_enabled = 59; * @param value The optimizedTargetingEnabled to set. * @return This builder for chaining. */ public Builder setOptimizedTargetingEnabled(boolean value) { optimizedTargetingEnabled_ = value; bitField0_ |= 0x00100000; onChanged(); return this; } /** *
     * True if optimized targeting is enabled. Optimized Targeting is the
     * replacement for Audience Expansion.
     * 
* * bool optimized_targeting_enabled = 59; * @return This builder for chaining. */ public Builder clearOptimizedTargetingEnabled() { bitField0_ = (bitField0_ & ~0x00100000); optimizedTargetingEnabled_ = false; onChanged(); return this; } private int displayCustomBidDimension_ = 0; /** *
     * Allows advertisers to specify a targeting dimension on which to place
     * absolute bids. This is only applicable for campaigns that target only the
     * display network and not search.
     * 
* * .google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; * @return The enum numeric value on the wire for displayCustomBidDimension. */ @java.lang.Override public int getDisplayCustomBidDimensionValue() { return displayCustomBidDimension_; } /** *
     * Allows advertisers to specify a targeting dimension on which to place
     * absolute bids. This is only applicable for campaigns that target only the
     * display network and not search.
     * 
* * .google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; * @param value The enum numeric value on the wire for displayCustomBidDimension to set. * @return This builder for chaining. */ public Builder setDisplayCustomBidDimensionValue(int value) { displayCustomBidDimension_ = value; bitField0_ |= 0x00200000; onChanged(); return this; } /** *
     * Allows advertisers to specify a targeting dimension on which to place
     * absolute bids. This is only applicable for campaigns that target only the
     * display network and not search.
     * 
* * .google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; * @return The displayCustomBidDimension. */ @java.lang.Override public com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension getDisplayCustomBidDimension() { com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension result = com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension.forNumber(displayCustomBidDimension_); return result == null ? com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension.UNRECOGNIZED : result; } /** *
     * Allows advertisers to specify a targeting dimension on which to place
     * absolute bids. This is only applicable for campaigns that target only the
     * display network and not search.
     * 
* * .google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; * @param value The displayCustomBidDimension to set. * @return This builder for chaining. */ public Builder setDisplayCustomBidDimension(com.google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00200000; displayCustomBidDimension_ = value.getNumber(); onChanged(); return this; } /** *
     * Allows advertisers to specify a targeting dimension on which to place
     * absolute bids. This is only applicable for campaigns that target only the
     * display network and not search.
     * 
* * .google.ads.googleads.v17.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; * @return This builder for chaining. */ public Builder clearDisplayCustomBidDimension() { bitField0_ = (bitField0_ & ~0x00200000); displayCustomBidDimension_ = 0; onChanged(); return this; } private java.lang.Object finalUrlSuffix_ = ""; /** *
     * URL template for appending params to Final URL.
     * 
* * optional string final_url_suffix = 46; * @return Whether the finalUrlSuffix field is set. */ public boolean hasFinalUrlSuffix() { return ((bitField0_ & 0x00400000) != 0); } /** *
     * URL template for appending params to Final URL.
     * 
* * optional string final_url_suffix = 46; * @return The finalUrlSuffix. */ public java.lang.String getFinalUrlSuffix() { java.lang.Object ref = finalUrlSuffix_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); finalUrlSuffix_ = s; return s; } else { return (java.lang.String) ref; } } /** *
     * URL template for appending params to Final URL.
     * 
* * optional string final_url_suffix = 46; * @return The bytes for finalUrlSuffix. */ public com.google.protobuf.ByteString getFinalUrlSuffixBytes() { java.lang.Object ref = finalUrlSuffix_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); finalUrlSuffix_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
     * URL template for appending params to Final URL.
     * 
* * optional string final_url_suffix = 46; * @param value The finalUrlSuffix to set. * @return This builder for chaining. */ public Builder setFinalUrlSuffix( java.lang.String value) { if (value == null) { throw new NullPointerException(); } finalUrlSuffix_ = value; bitField0_ |= 0x00400000; onChanged(); return this; } /** *
     * URL template for appending params to Final URL.
     * 
* * optional string final_url_suffix = 46; * @return This builder for chaining. */ public Builder clearFinalUrlSuffix() { finalUrlSuffix_ = getDefaultInstance().getFinalUrlSuffix(); bitField0_ = (bitField0_ & ~0x00400000); onChanged(); return this; } /** *
     * URL template for appending params to Final URL.
     * 
* * optional string final_url_suffix = 46; * @param value The bytes for finalUrlSuffix to set. * @return This builder for chaining. */ public Builder setFinalUrlSuffixBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); finalUrlSuffix_ = value; bitField0_ |= 0x00400000; onChanged(); return this; } private com.google.ads.googleads.v17.common.TargetingSetting targetingSetting_; private com.google.protobuf.SingleFieldBuilderV3< com.google.ads.googleads.v17.common.TargetingSetting, com.google.ads.googleads.v17.common.TargetingSetting.Builder, com.google.ads.googleads.v17.common.TargetingSettingOrBuilder> targetingSettingBuilder_; /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; * @return Whether the targetingSetting field is set. */ public boolean hasTargetingSetting() { return ((bitField0_ & 0x00800000) != 0); } /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; * @return The targetingSetting. */ public com.google.ads.googleads.v17.common.TargetingSetting getTargetingSetting() { if (targetingSettingBuilder_ == null) { return targetingSetting_ == null ? com.google.ads.googleads.v17.common.TargetingSetting.getDefaultInstance() : targetingSetting_; } else { return targetingSettingBuilder_.getMessage(); } } /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; */ public Builder setTargetingSetting(com.google.ads.googleads.v17.common.TargetingSetting value) { if (targetingSettingBuilder_ == null) { if (value == null) { throw new NullPointerException(); } targetingSetting_ = value; } else { targetingSettingBuilder_.setMessage(value); } bitField0_ |= 0x00800000; onChanged(); return this; } /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; */ public Builder setTargetingSetting( com.google.ads.googleads.v17.common.TargetingSetting.Builder builderForValue) { if (targetingSettingBuilder_ == null) { targetingSetting_ = builderForValue.build(); } else { targetingSettingBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00800000; onChanged(); return this; } /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; */ public Builder mergeTargetingSetting(com.google.ads.googleads.v17.common.TargetingSetting value) { if (targetingSettingBuilder_ == null) { if (((bitField0_ & 0x00800000) != 0) && targetingSetting_ != null && targetingSetting_ != com.google.ads.googleads.v17.common.TargetingSetting.getDefaultInstance()) { getTargetingSettingBuilder().mergeFrom(value); } else { targetingSetting_ = value; } } else { targetingSettingBuilder_.mergeFrom(value); } if (targetingSetting_ != null) { bitField0_ |= 0x00800000; onChanged(); } return this; } /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; */ public Builder clearTargetingSetting() { bitField0_ = (bitField0_ & ~0x00800000); targetingSetting_ = null; if (targetingSettingBuilder_ != null) { targetingSettingBuilder_.dispose(); targetingSettingBuilder_ = null; } onChanged(); return this; } /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; */ public com.google.ads.googleads.v17.common.TargetingSetting.Builder getTargetingSettingBuilder() { bitField0_ |= 0x00800000; onChanged(); return getTargetingSettingFieldBuilder().getBuilder(); } /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; */ public com.google.ads.googleads.v17.common.TargetingSettingOrBuilder getTargetingSettingOrBuilder() { if (targetingSettingBuilder_ != null) { return targetingSettingBuilder_.getMessageOrBuilder(); } else { return targetingSetting_ == null ? com.google.ads.googleads.v17.common.TargetingSetting.getDefaultInstance() : targetingSetting_; } } /** *
     * Setting for targeting related features.
     * 
* * .google.ads.googleads.v17.common.TargetingSetting targeting_setting = 25; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.ads.googleads.v17.common.TargetingSetting, com.google.ads.googleads.v17.common.TargetingSetting.Builder, com.google.ads.googleads.v17.common.TargetingSettingOrBuilder> getTargetingSettingFieldBuilder() { if (targetingSettingBuilder_ == null) { targetingSettingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.ads.googleads.v17.common.TargetingSetting, com.google.ads.googleads.v17.common.TargetingSetting.Builder, com.google.ads.googleads.v17.common.TargetingSettingOrBuilder>( getTargetingSetting(), getParentForChildren(), isClean()); targetingSetting_ = null; } return targetingSettingBuilder_; } private com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting audienceSetting_; private com.google.protobuf.SingleFieldBuilderV3< com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting, com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.Builder, com.google.ads.googleads.v17.resources.AdGroup.AudienceSettingOrBuilder> audienceSettingBuilder_; /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; * @return Whether the audienceSetting field is set. */ public boolean hasAudienceSetting() { return ((bitField0_ & 0x01000000) != 0); } /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; * @return The audienceSetting. */ public com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting getAudienceSetting() { if (audienceSettingBuilder_ == null) { return audienceSetting_ == null ? com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.getDefaultInstance() : audienceSetting_; } else { return audienceSettingBuilder_.getMessage(); } } /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; */ public Builder setAudienceSetting(com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting value) { if (audienceSettingBuilder_ == null) { if (value == null) { throw new NullPointerException(); } audienceSetting_ = value; } else { audienceSettingBuilder_.setMessage(value); } bitField0_ |= 0x01000000; onChanged(); return this; } /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; */ public Builder setAudienceSetting( com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.Builder builderForValue) { if (audienceSettingBuilder_ == null) { audienceSetting_ = builderForValue.build(); } else { audienceSettingBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x01000000; onChanged(); return this; } /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; */ public Builder mergeAudienceSetting(com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting value) { if (audienceSettingBuilder_ == null) { if (((bitField0_ & 0x01000000) != 0) && audienceSetting_ != null && audienceSetting_ != com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.getDefaultInstance()) { getAudienceSettingBuilder().mergeFrom(value); } else { audienceSetting_ = value; } } else { audienceSettingBuilder_.mergeFrom(value); } if (audienceSetting_ != null) { bitField0_ |= 0x01000000; onChanged(); } return this; } /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; */ public Builder clearAudienceSetting() { bitField0_ = (bitField0_ & ~0x01000000); audienceSetting_ = null; if (audienceSettingBuilder_ != null) { audienceSettingBuilder_.dispose(); audienceSettingBuilder_ = null; } onChanged(); return this; } /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; */ public com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.Builder getAudienceSettingBuilder() { bitField0_ |= 0x01000000; onChanged(); return getAudienceSettingFieldBuilder().getBuilder(); } /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; */ public com.google.ads.googleads.v17.resources.AdGroup.AudienceSettingOrBuilder getAudienceSettingOrBuilder() { if (audienceSettingBuilder_ != null) { return audienceSettingBuilder_.getMessageOrBuilder(); } else { return audienceSetting_ == null ? com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.getDefaultInstance() : audienceSetting_; } } /** *
     * Immutable. Setting for audience related features.
     * 
* * .google.ads.googleads.v17.resources.AdGroup.AudienceSetting audience_setting = 56 [(.google.api.field_behavior) = IMMUTABLE]; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting, com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.Builder, com.google.ads.googleads.v17.resources.AdGroup.AudienceSettingOrBuilder> getAudienceSettingFieldBuilder() { if (audienceSettingBuilder_ == null) { audienceSettingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting, com.google.ads.googleads.v17.resources.AdGroup.AudienceSetting.Builder, com.google.ads.googleads.v17.resources.AdGroup.AudienceSettingOrBuilder>( getAudienceSetting(), getParentForChildren(), isClean()); audienceSetting_ = null; } return audienceSettingBuilder_; } private long effectiveTargetCpaMicros_ ; /** *
     * Output only. The effective target CPA (cost-per-acquisition).
     * This field is read-only.
     * 
* * optional int64 effective_target_cpa_micros = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return Whether the effectiveTargetCpaMicros field is set. */ @java.lang.Override public boolean hasEffectiveTargetCpaMicros() { return ((bitField0_ & 0x02000000) != 0); } /** *
     * Output only. The effective target CPA (cost-per-acquisition).
     * This field is read-only.
     * 
* * optional int64 effective_target_cpa_micros = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveTargetCpaMicros. */ @java.lang.Override public long getEffectiveTargetCpaMicros() { return effectiveTargetCpaMicros_; } /** *
     * Output only. The effective target CPA (cost-per-acquisition).
     * This field is read-only.
     * 
* * optional int64 effective_target_cpa_micros = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The effectiveTargetCpaMicros to set. * @return This builder for chaining. */ public Builder setEffectiveTargetCpaMicros(long value) { effectiveTargetCpaMicros_ = value; bitField0_ |= 0x02000000; onChanged(); return this; } /** *
     * Output only. The effective target CPA (cost-per-acquisition).
     * This field is read-only.
     * 
* * optional int64 effective_target_cpa_micros = 47 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return This builder for chaining. */ public Builder clearEffectiveTargetCpaMicros() { bitField0_ = (bitField0_ & ~0x02000000); effectiveTargetCpaMicros_ = 0L; onChanged(); return this; } private int effectiveTargetCpaSource_ = 0; /** *
     * Output only. Source of the effective target CPA.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The enum numeric value on the wire for effectiveTargetCpaSource. */ @java.lang.Override public int getEffectiveTargetCpaSourceValue() { return effectiveTargetCpaSource_; } /** *
     * Output only. Source of the effective target CPA.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The enum numeric value on the wire for effectiveTargetCpaSource to set. * @return This builder for chaining. */ public Builder setEffectiveTargetCpaSourceValue(int value) { effectiveTargetCpaSource_ = value; bitField0_ |= 0x04000000; onChanged(); return this; } /** *
     * Output only. Source of the effective target CPA.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveTargetCpaSource. */ @java.lang.Override public com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource getEffectiveTargetCpaSource() { com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource result = com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.forNumber(effectiveTargetCpaSource_); return result == null ? com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.UNRECOGNIZED : result; } /** *
     * Output only. Source of the effective target CPA.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The effectiveTargetCpaSource to set. * @return This builder for chaining. */ public Builder setEffectiveTargetCpaSource(com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x04000000; effectiveTargetCpaSource_ = value.getNumber(); onChanged(); return this; } /** *
     * Output only. Source of the effective target CPA.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return This builder for chaining. */ public Builder clearEffectiveTargetCpaSource() { bitField0_ = (bitField0_ & ~0x04000000); effectiveTargetCpaSource_ = 0; onChanged(); return this; } private double effectiveTargetRoas_ ; /** *
     * Output only. The effective target ROAS (return-on-ad-spend).
     * This field is read-only.
     * 
* * optional double effective_target_roas = 48 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return Whether the effectiveTargetRoas field is set. */ @java.lang.Override public boolean hasEffectiveTargetRoas() { return ((bitField0_ & 0x08000000) != 0); } /** *
     * Output only. The effective target ROAS (return-on-ad-spend).
     * This field is read-only.
     * 
* * optional double effective_target_roas = 48 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveTargetRoas. */ @java.lang.Override public double getEffectiveTargetRoas() { return effectiveTargetRoas_; } /** *
     * Output only. The effective target ROAS (return-on-ad-spend).
     * This field is read-only.
     * 
* * optional double effective_target_roas = 48 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The effectiveTargetRoas to set. * @return This builder for chaining. */ public Builder setEffectiveTargetRoas(double value) { effectiveTargetRoas_ = value; bitField0_ |= 0x08000000; onChanged(); return this; } /** *
     * Output only. The effective target ROAS (return-on-ad-spend).
     * This field is read-only.
     * 
* * optional double effective_target_roas = 48 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return This builder for chaining. */ public Builder clearEffectiveTargetRoas() { bitField0_ = (bitField0_ & ~0x08000000); effectiveTargetRoas_ = 0D; onChanged(); return this; } private int effectiveTargetRoasSource_ = 0; /** *
     * Output only. Source of the effective target ROAS.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The enum numeric value on the wire for effectiveTargetRoasSource. */ @java.lang.Override public int getEffectiveTargetRoasSourceValue() { return effectiveTargetRoasSource_; } /** *
     * Output only. Source of the effective target ROAS.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The enum numeric value on the wire for effectiveTargetRoasSource to set. * @return This builder for chaining. */ public Builder setEffectiveTargetRoasSourceValue(int value) { effectiveTargetRoasSource_ = value; bitField0_ |= 0x10000000; onChanged(); return this; } /** *
     * Output only. Source of the effective target ROAS.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The effectiveTargetRoasSource. */ @java.lang.Override public com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource getEffectiveTargetRoasSource() { com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource result = com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.forNumber(effectiveTargetRoasSource_); return result == null ? com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource.UNRECOGNIZED : result; } /** *
     * Output only. Source of the effective target ROAS.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The effectiveTargetRoasSource to set. * @return This builder for chaining. */ public Builder setEffectiveTargetRoasSource(com.google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x10000000; effectiveTargetRoasSource_ = value.getNumber(); onChanged(); return this; } /** *
     * Output only. Source of the effective target ROAS.
     * This field is read-only.
     * 
* * .google.ads.googleads.v17.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return This builder for chaining. */ public Builder clearEffectiveTargetRoasSource() { bitField0_ = (bitField0_ & ~0x10000000); effectiveTargetRoasSource_ = 0; onChanged(); return this; } private com.google.protobuf.LazyStringArrayList labels_ = com.google.protobuf.LazyStringArrayList.emptyList(); private void ensureLabelsIsMutable() { if (!labels_.isModifiable()) { labels_ = new com.google.protobuf.LazyStringArrayList(labels_); } bitField0_ |= 0x20000000; } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return A list containing the labels. */ public com.google.protobuf.ProtocolStringList getLabelsList() { labels_.makeImmutable(); return labels_; } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return The count of labels. */ public int getLabelsCount() { return labels_.size(); } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param index The index of the element to return. * @return The labels at the given index. */ public java.lang.String getLabels(int index) { return labels_.get(index); } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param index The index of the value to return. * @return The bytes of the labels at the given index. */ public com.google.protobuf.ByteString getLabelsBytes(int index) { return labels_.getByteString(index); } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param index The index to set the value at. * @param value The labels to set. * @return This builder for chaining. */ public Builder setLabels( int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureLabelsIsMutable(); labels_.set(index, value); bitField0_ |= 0x20000000; onChanged(); return this; } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param value The labels to add. * @return This builder for chaining. */ public Builder addLabels( java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureLabelsIsMutable(); labels_.add(value); bitField0_ |= 0x20000000; onChanged(); return this; } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param values The labels to add. * @return This builder for chaining. */ public Builder addAllLabels( java.lang.Iterable values) { ensureLabelsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, labels_); bitField0_ |= 0x20000000; onChanged(); return this; } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @return This builder for chaining. */ public Builder clearLabels() { labels_ = com.google.protobuf.LazyStringArrayList.emptyList(); bitField0_ = (bitField0_ & ~0x20000000);; onChanged(); return this; } /** *
     * Output only. The resource names of labels attached to this ad group.
     * 
* * repeated string labels = 49 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } * @param value The bytes of the labels to add. * @return This builder for chaining. */ public Builder addLabelsBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); ensureLabelsIsMutable(); labels_.add(value); bitField0_ |= 0x20000000; onChanged(); return this; } private java.util.List excludedParentAssetFieldTypes_ = java.util.Collections.emptyList(); private void ensureExcludedParentAssetFieldTypesIsMutable() { if (!((bitField0_ & 0x40000000) != 0)) { excludedParentAssetFieldTypes_ = new java.util.ArrayList(excludedParentAssetFieldTypes_); bitField0_ |= 0x40000000; } } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @return A list containing the excludedParentAssetFieldTypes. */ public java.util.List getExcludedParentAssetFieldTypesList() { return new com.google.protobuf.Internal.ListAdapter< java.lang.Integer, com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType>(excludedParentAssetFieldTypes_, excludedParentAssetFieldTypes_converter_); } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @return The count of excludedParentAssetFieldTypes. */ public int getExcludedParentAssetFieldTypesCount() { return excludedParentAssetFieldTypes_.size(); } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param index The index of the element to return. * @return The excludedParentAssetFieldTypes at the given index. */ public com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType getExcludedParentAssetFieldTypes(int index) { return excludedParentAssetFieldTypes_converter_.convert(excludedParentAssetFieldTypes_.get(index)); } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param index The index to set the value at. * @param value The excludedParentAssetFieldTypes to set. * @return This builder for chaining. */ public Builder setExcludedParentAssetFieldTypes( int index, com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType value) { if (value == null) { throw new NullPointerException(); } ensureExcludedParentAssetFieldTypesIsMutable(); excludedParentAssetFieldTypes_.set(index, value.getNumber()); onChanged(); return this; } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param value The excludedParentAssetFieldTypes to add. * @return This builder for chaining. */ public Builder addExcludedParentAssetFieldTypes(com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType value) { if (value == null) { throw new NullPointerException(); } ensureExcludedParentAssetFieldTypesIsMutable(); excludedParentAssetFieldTypes_.add(value.getNumber()); onChanged(); return this; } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param values The excludedParentAssetFieldTypes to add. * @return This builder for chaining. */ public Builder addAllExcludedParentAssetFieldTypes( java.lang.Iterable values) { ensureExcludedParentAssetFieldTypesIsMutable(); for (com.google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType value : values) { excludedParentAssetFieldTypes_.add(value.getNumber()); } onChanged(); return this; } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @return This builder for chaining. */ public Builder clearExcludedParentAssetFieldTypes() { excludedParentAssetFieldTypes_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x40000000); onChanged(); return this; } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @return A list containing the enum numeric values on the wire for excludedParentAssetFieldTypes. */ public java.util.List getExcludedParentAssetFieldTypesValueList() { return java.util.Collections.unmodifiableList(excludedParentAssetFieldTypes_); } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param index The index of the value to return. * @return The enum numeric value on the wire of excludedParentAssetFieldTypes at the given index. */ public int getExcludedParentAssetFieldTypesValue(int index) { return excludedParentAssetFieldTypes_.get(index); } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param index The index to set the value at. * @param value The enum numeric value on the wire for excludedParentAssetFieldTypes to set. * @return This builder for chaining. */ public Builder setExcludedParentAssetFieldTypesValue( int index, int value) { ensureExcludedParentAssetFieldTypesIsMutable(); excludedParentAssetFieldTypes_.set(index, value); onChanged(); return this; } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param value The enum numeric value on the wire for excludedParentAssetFieldTypes to add. * @return This builder for chaining. */ public Builder addExcludedParentAssetFieldTypesValue(int value) { ensureExcludedParentAssetFieldTypesIsMutable(); excludedParentAssetFieldTypes_.add(value); onChanged(); return this; } /** *
     * The asset field types that should be excluded from this ad group. Asset
     * links with these field types will not be inherited by this ad group from
     * the upper levels.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; * @param values The enum numeric values on the wire for excludedParentAssetFieldTypes to add. * @return This builder for chaining. */ public Builder addAllExcludedParentAssetFieldTypesValue( java.lang.Iterable values) { ensureExcludedParentAssetFieldTypesIsMutable(); for (int value : values) { excludedParentAssetFieldTypes_.add(value); } onChanged(); return this; } private java.util.List excludedParentAssetSetTypes_ = java.util.Collections.emptyList(); private void ensureExcludedParentAssetSetTypesIsMutable() { if (!((bitField0_ & 0x80000000) != 0)) { excludedParentAssetSetTypes_ = new java.util.ArrayList(excludedParentAssetSetTypes_); bitField0_ |= 0x80000000; } } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @return A list containing the excludedParentAssetSetTypes. */ public java.util.List getExcludedParentAssetSetTypesList() { return new com.google.protobuf.Internal.ListAdapter< java.lang.Integer, com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType>(excludedParentAssetSetTypes_, excludedParentAssetSetTypes_converter_); } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @return The count of excludedParentAssetSetTypes. */ public int getExcludedParentAssetSetTypesCount() { return excludedParentAssetSetTypes_.size(); } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param index The index of the element to return. * @return The excludedParentAssetSetTypes at the given index. */ public com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType getExcludedParentAssetSetTypes(int index) { return excludedParentAssetSetTypes_converter_.convert(excludedParentAssetSetTypes_.get(index)); } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param index The index to set the value at. * @param value The excludedParentAssetSetTypes to set. * @return This builder for chaining. */ public Builder setExcludedParentAssetSetTypes( int index, com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType value) { if (value == null) { throw new NullPointerException(); } ensureExcludedParentAssetSetTypesIsMutable(); excludedParentAssetSetTypes_.set(index, value.getNumber()); onChanged(); return this; } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param value The excludedParentAssetSetTypes to add. * @return This builder for chaining. */ public Builder addExcludedParentAssetSetTypes(com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType value) { if (value == null) { throw new NullPointerException(); } ensureExcludedParentAssetSetTypesIsMutable(); excludedParentAssetSetTypes_.add(value.getNumber()); onChanged(); return this; } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param values The excludedParentAssetSetTypes to add. * @return This builder for chaining. */ public Builder addAllExcludedParentAssetSetTypes( java.lang.Iterable values) { ensureExcludedParentAssetSetTypesIsMutable(); for (com.google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType value : values) { excludedParentAssetSetTypes_.add(value.getNumber()); } onChanged(); return this; } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @return This builder for chaining. */ public Builder clearExcludedParentAssetSetTypes() { excludedParentAssetSetTypes_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x80000000); onChanged(); return this; } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @return A list containing the enum numeric values on the wire for excludedParentAssetSetTypes. */ public java.util.List getExcludedParentAssetSetTypesValueList() { return java.util.Collections.unmodifiableList(excludedParentAssetSetTypes_); } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param index The index of the value to return. * @return The enum numeric value on the wire of excludedParentAssetSetTypes at the given index. */ public int getExcludedParentAssetSetTypesValue(int index) { return excludedParentAssetSetTypes_.get(index); } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param index The index to set the value at. * @param value The enum numeric value on the wire for excludedParentAssetSetTypes to set. * @return This builder for chaining. */ public Builder setExcludedParentAssetSetTypesValue( int index, int value) { ensureExcludedParentAssetSetTypesIsMutable(); excludedParentAssetSetTypes_.set(index, value); onChanged(); return this; } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param value The enum numeric value on the wire for excludedParentAssetSetTypes to add. * @return This builder for chaining. */ public Builder addExcludedParentAssetSetTypesValue(int value) { ensureExcludedParentAssetSetTypesIsMutable(); excludedParentAssetSetTypes_.add(value); onChanged(); return this; } /** *
     * The asset set types that should be excluded from this ad group. Asset set
     * links with these types will not be inherited by this ad group from the
     * upper levels.
     * Location group types (GMB_DYNAMIC_LOCATION_GROUP,
     * CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of
     * LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all
     * location group asset sets are not allowed to be linked to this ad group,
     * and all Location Extension (LE) and Affiliate Location Extensions (ALE)
     * will not be served under this ad group.
     * Only LOCATION_SYNC is currently supported.
     * 
* * repeated .google.ads.googleads.v17.enums.AssetSetTypeEnum.AssetSetType excluded_parent_asset_set_types = 58; * @param values The enum numeric values on the wire for excludedParentAssetSetTypes to add. * @return This builder for chaining. */ public Builder addAllExcludedParentAssetSetTypesValue( java.lang.Iterable values) { ensureExcludedParentAssetSetTypesIsMutable(); for (int value : values) { excludedParentAssetSetTypes_.add(value); } onChanged(); return this; } private int primaryStatus_ = 0; /** *
     * Output only. Provides aggregated view into why an ad group is not serving
     * or not serving optimally.
     * 
* * .google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus primary_status = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The enum numeric value on the wire for primaryStatus. */ @java.lang.Override public int getPrimaryStatusValue() { return primaryStatus_; } /** *
     * Output only. Provides aggregated view into why an ad group is not serving
     * or not serving optimally.
     * 
* * .google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus primary_status = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The enum numeric value on the wire for primaryStatus to set. * @return This builder for chaining. */ public Builder setPrimaryStatusValue(int value) { primaryStatus_ = value; bitField1_ |= 0x00000001; onChanged(); return this; } /** *
     * Output only. Provides aggregated view into why an ad group is not serving
     * or not serving optimally.
     * 
* * .google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus primary_status = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The primaryStatus. */ @java.lang.Override public com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus getPrimaryStatus() { com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus result = com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus.forNumber(primaryStatus_); return result == null ? com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus.UNRECOGNIZED : result; } /** *
     * Output only. Provides aggregated view into why an ad group is not serving
     * or not serving optimally.
     * 
* * .google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus primary_status = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The primaryStatus to set. * @return This builder for chaining. */ public Builder setPrimaryStatus(com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus value) { if (value == null) { throw new NullPointerException(); } bitField1_ |= 0x00000001; primaryStatus_ = value.getNumber(); onChanged(); return this; } /** *
     * Output only. Provides aggregated view into why an ad group is not serving
     * or not serving optimally.
     * 
* * .google.ads.googleads.v17.enums.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus primary_status = 62 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return This builder for chaining. */ public Builder clearPrimaryStatus() { bitField1_ = (bitField1_ & ~0x00000001); primaryStatus_ = 0; onChanged(); return this; } private java.util.List primaryStatusReasons_ = java.util.Collections.emptyList(); private void ensurePrimaryStatusReasonsIsMutable() { if (!((bitField1_ & 0x00000002) != 0)) { primaryStatusReasons_ = new java.util.ArrayList(primaryStatusReasons_); bitField1_ |= 0x00000002; } } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return A list containing the primaryStatusReasons. */ public java.util.List getPrimaryStatusReasonsList() { return new com.google.protobuf.Internal.ListAdapter< java.lang.Integer, com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason>(primaryStatusReasons_, primaryStatusReasons_converter_); } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return The count of primaryStatusReasons. */ public int getPrimaryStatusReasonsCount() { return primaryStatusReasons_.size(); } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param index The index of the element to return. * @return The primaryStatusReasons at the given index. */ public com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason getPrimaryStatusReasons(int index) { return primaryStatusReasons_converter_.convert(primaryStatusReasons_.get(index)); } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param index The index to set the value at. * @param value The primaryStatusReasons to set. * @return This builder for chaining. */ public Builder setPrimaryStatusReasons( int index, com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason value) { if (value == null) { throw new NullPointerException(); } ensurePrimaryStatusReasonsIsMutable(); primaryStatusReasons_.set(index, value.getNumber()); onChanged(); return this; } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The primaryStatusReasons to add. * @return This builder for chaining. */ public Builder addPrimaryStatusReasons(com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason value) { if (value == null) { throw new NullPointerException(); } ensurePrimaryStatusReasonsIsMutable(); primaryStatusReasons_.add(value.getNumber()); onChanged(); return this; } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param values The primaryStatusReasons to add. * @return This builder for chaining. */ public Builder addAllPrimaryStatusReasons( java.lang.Iterable values) { ensurePrimaryStatusReasonsIsMutable(); for (com.google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason value : values) { primaryStatusReasons_.add(value.getNumber()); } onChanged(); return this; } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return This builder for chaining. */ public Builder clearPrimaryStatusReasons() { primaryStatusReasons_ = java.util.Collections.emptyList(); bitField1_ = (bitField1_ & ~0x00000002); onChanged(); return this; } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @return A list containing the enum numeric values on the wire for primaryStatusReasons. */ public java.util.List getPrimaryStatusReasonsValueList() { return java.util.Collections.unmodifiableList(primaryStatusReasons_); } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param index The index of the value to return. * @return The enum numeric value on the wire of primaryStatusReasons at the given index. */ public int getPrimaryStatusReasonsValue(int index) { return primaryStatusReasons_.get(index); } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param index The index to set the value at. * @param value The enum numeric value on the wire for primaryStatusReasons to set. * @return This builder for chaining. */ public Builder setPrimaryStatusReasonsValue( int index, int value) { ensurePrimaryStatusReasonsIsMutable(); primaryStatusReasons_.set(index, value); onChanged(); return this; } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param value The enum numeric value on the wire for primaryStatusReasons to add. * @return This builder for chaining. */ public Builder addPrimaryStatusReasonsValue(int value) { ensurePrimaryStatusReasonsIsMutable(); primaryStatusReasons_.add(value); onChanged(); return this; } /** *
     * Output only. Provides reasons for why an ad group is not serving or not
     * serving optimally.
     * 
* * repeated .google.ads.googleads.v17.enums.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason primary_status_reasons = 63 [(.google.api.field_behavior) = OUTPUT_ONLY]; * @param values The enum numeric values on the wire for primaryStatusReasons to add. * @return This builder for chaining. */ public Builder addAllPrimaryStatusReasonsValue( java.lang.Iterable values) { ensurePrimaryStatusReasonsIsMutable(); for (int value : values) { primaryStatusReasons_.add(value); } onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:google.ads.googleads.v17.resources.AdGroup) } // @@protoc_insertion_point(class_scope:google.ads.googleads.v17.resources.AdGroup) private static final com.google.ads.googleads.v17.resources.AdGroup DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new com.google.ads.googleads.v17.resources.AdGroup(); } public static com.google.ads.googleads.v17.resources.AdGroup getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public AdGroup parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { Builder builder = newBuilder(); try { builder.mergeFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(builder.buildPartial()); } catch (com.google.protobuf.UninitializedMessageException e) { throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException(e) .setUnfinishedMessage(builder.buildPartial()); } return builder.buildPartial(); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public com.google.ads.googleads.v17.resources.AdGroup getDefaultInstanceForType() { return DEFAULT_INSTANCE; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy