com.google.ads.googleads.v10.common.Metrics Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of google-ads-stubs-v10 Show documentation
Show all versions of google-ads-stubs-v10 Show documentation
Stubs for GAAPI version google-ads-stubs-v10
The newest version!
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: google/ads/googleads/v10/common/metrics.proto
package com.google.ads.googleads.v10.common;
/**
*
* Metrics data.
*
*
* Protobuf type {@code google.ads.googleads.v10.common.Metrics}
*/
public final class Metrics extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:google.ads.googleads.v10.common.Metrics)
MetricsOrBuilder {
private static final long serialVersionUID = 0L;
// Use Metrics.newBuilder() to construct.
private Metrics(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private Metrics() {
conversionLastReceivedRequestDateTime_ = "";
conversionLastConversionDate_ = "";
historicalCreativeQualityScore_ = 0;
historicalLandingPageQualityScore_ = 0;
historicalSearchPredictedCtr_ = 0;
interactionEventTypes_ = java.util.Collections.emptyList();
optimizationScoreUrl_ = "";
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Metrics();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return com.google.ads.googleads.v10.common.MetricsProto.internal_static_google_ads_googleads_v10_common_Metrics_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return com.google.ads.googleads.v10.common.MetricsProto.internal_static_google_ads_googleads_v10_common_Metrics_fieldAccessorTable
.ensureFieldAccessorsInitialized(
com.google.ads.googleads.v10.common.Metrics.class, com.google.ads.googleads.v10.common.Metrics.Builder.class);
}
private int bitField0_;
private int bitField1_;
private int bitField2_;
private int bitField3_;
public static final int ABSOLUTE_TOP_IMPRESSION_PERCENTAGE_FIELD_NUMBER = 183;
private double absoluteTopImpressionPercentage_;
/**
*
* The percent of your ad impressions that are shown as the very first ad
* above the organic search results.
*
*
* optional double absolute_top_impression_percentage = 183;
* @return Whether the absoluteTopImpressionPercentage field is set.
*/
@java.lang.Override
public boolean hasAbsoluteTopImpressionPercentage() {
return ((bitField0_ & 0x00000001) != 0);
}
/**
*
* The percent of your ad impressions that are shown as the very first ad
* above the organic search results.
*
*
* optional double absolute_top_impression_percentage = 183;
* @return The absoluteTopImpressionPercentage.
*/
@java.lang.Override
public double getAbsoluteTopImpressionPercentage() {
return absoluteTopImpressionPercentage_;
}
public static final int ACTIVE_VIEW_CPM_FIELD_NUMBER = 184;
private double activeViewCpm_;
/**
*
* Average cost of viewable impressions (`active_view_impressions`).
*
*
* optional double active_view_cpm = 184;
* @return Whether the activeViewCpm field is set.
*/
@java.lang.Override
public boolean hasActiveViewCpm() {
return ((bitField0_ & 0x00000002) != 0);
}
/**
*
* Average cost of viewable impressions (`active_view_impressions`).
*
*
* optional double active_view_cpm = 184;
* @return The activeViewCpm.
*/
@java.lang.Override
public double getActiveViewCpm() {
return activeViewCpm_;
}
public static final int ACTIVE_VIEW_CTR_FIELD_NUMBER = 185;
private double activeViewCtr_;
/**
*
* Active view measurable clicks divided by active view viewable impressions.
* This metric is reported only for display network.
*
*
* optional double active_view_ctr = 185;
* @return Whether the activeViewCtr field is set.
*/
@java.lang.Override
public boolean hasActiveViewCtr() {
return ((bitField0_ & 0x00000004) != 0);
}
/**
*
* Active view measurable clicks divided by active view viewable impressions.
* This metric is reported only for display network.
*
*
* optional double active_view_ctr = 185;
* @return The activeViewCtr.
*/
@java.lang.Override
public double getActiveViewCtr() {
return activeViewCtr_;
}
public static final int ACTIVE_VIEW_IMPRESSIONS_FIELD_NUMBER = 186;
private long activeViewImpressions_;
/**
*
* A measurement of how often your ad has become viewable on a Display
* Network site.
*
*
* optional int64 active_view_impressions = 186;
* @return Whether the activeViewImpressions field is set.
*/
@java.lang.Override
public boolean hasActiveViewImpressions() {
return ((bitField0_ & 0x00000008) != 0);
}
/**
*
* A measurement of how often your ad has become viewable on a Display
* Network site.
*
*
* optional int64 active_view_impressions = 186;
* @return The activeViewImpressions.
*/
@java.lang.Override
public long getActiveViewImpressions() {
return activeViewImpressions_;
}
public static final int ACTIVE_VIEW_MEASURABILITY_FIELD_NUMBER = 187;
private double activeViewMeasurability_;
/**
*
* The ratio of impressions that could be measured by Active View over the
* number of served impressions.
*
*
* optional double active_view_measurability = 187;
* @return Whether the activeViewMeasurability field is set.
*/
@java.lang.Override
public boolean hasActiveViewMeasurability() {
return ((bitField0_ & 0x00000010) != 0);
}
/**
*
* The ratio of impressions that could be measured by Active View over the
* number of served impressions.
*
*
* optional double active_view_measurability = 187;
* @return The activeViewMeasurability.
*/
@java.lang.Override
public double getActiveViewMeasurability() {
return activeViewMeasurability_;
}
public static final int ACTIVE_VIEW_MEASURABLE_COST_MICROS_FIELD_NUMBER = 188;
private long activeViewMeasurableCostMicros_;
/**
*
* The cost of the impressions you received that were measurable by Active
* View.
*
*
* optional int64 active_view_measurable_cost_micros = 188;
* @return Whether the activeViewMeasurableCostMicros field is set.
*/
@java.lang.Override
public boolean hasActiveViewMeasurableCostMicros() {
return ((bitField0_ & 0x00000020) != 0);
}
/**
*
* The cost of the impressions you received that were measurable by Active
* View.
*
*
* optional int64 active_view_measurable_cost_micros = 188;
* @return The activeViewMeasurableCostMicros.
*/
@java.lang.Override
public long getActiveViewMeasurableCostMicros() {
return activeViewMeasurableCostMicros_;
}
public static final int ACTIVE_VIEW_MEASURABLE_IMPRESSIONS_FIELD_NUMBER = 189;
private long activeViewMeasurableImpressions_;
/**
*
* The number of times your ads are appearing on placements in positions
* where they can be seen.
*
*
* optional int64 active_view_measurable_impressions = 189;
* @return Whether the activeViewMeasurableImpressions field is set.
*/
@java.lang.Override
public boolean hasActiveViewMeasurableImpressions() {
return ((bitField0_ & 0x00000040) != 0);
}
/**
*
* The number of times your ads are appearing on placements in positions
* where they can be seen.
*
*
* optional int64 active_view_measurable_impressions = 189;
* @return The activeViewMeasurableImpressions.
*/
@java.lang.Override
public long getActiveViewMeasurableImpressions() {
return activeViewMeasurableImpressions_;
}
public static final int ACTIVE_VIEW_VIEWABILITY_FIELD_NUMBER = 190;
private double activeViewViewability_;
/**
*
* The percentage of time when your ad appeared on an Active View enabled site
* (measurable impressions) and was viewable (viewable impressions).
*
*
* optional double active_view_viewability = 190;
* @return Whether the activeViewViewability field is set.
*/
@java.lang.Override
public boolean hasActiveViewViewability() {
return ((bitField0_ & 0x00000080) != 0);
}
/**
*
* The percentage of time when your ad appeared on an Active View enabled site
* (measurable impressions) and was viewable (viewable impressions).
*
*
* optional double active_view_viewability = 190;
* @return The activeViewViewability.
*/
@java.lang.Override
public double getActiveViewViewability() {
return activeViewViewability_;
}
public static final int ALL_CONVERSIONS_FROM_INTERACTIONS_RATE_FIELD_NUMBER = 191;
private double allConversionsFromInteractionsRate_;
/**
*
* All conversions from interactions (as oppose to view through conversions)
* divided by the number of ad interactions.
*
*
* optional double all_conversions_from_interactions_rate = 191;
* @return Whether the allConversionsFromInteractionsRate field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromInteractionsRate() {
return ((bitField0_ & 0x00000100) != 0);
}
/**
*
* All conversions from interactions (as oppose to view through conversions)
* divided by the number of ad interactions.
*
*
* optional double all_conversions_from_interactions_rate = 191;
* @return The allConversionsFromInteractionsRate.
*/
@java.lang.Override
public double getAllConversionsFromInteractionsRate() {
return allConversionsFromInteractionsRate_;
}
public static final int ALL_CONVERSIONS_VALUE_FIELD_NUMBER = 192;
private double allConversionsValue_;
/**
*
* The value of all conversions.
*
*
* optional double all_conversions_value = 192;
* @return Whether the allConversionsValue field is set.
*/
@java.lang.Override
public boolean hasAllConversionsValue() {
return ((bitField0_ & 0x00000200) != 0);
}
/**
*
* The value of all conversions.
*
*
* optional double all_conversions_value = 192;
* @return The allConversionsValue.
*/
@java.lang.Override
public double getAllConversionsValue() {
return allConversionsValue_;
}
public static final int ALL_CONVERSIONS_VALUE_BY_CONVERSION_DATE_FIELD_NUMBER = 240;
private double allConversionsValueByConversionDate_;
/**
*
* The value of all conversions. When this column is selected with date, the
* values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double all_conversions_value_by_conversion_date = 240;
* @return The allConversionsValueByConversionDate.
*/
@java.lang.Override
public double getAllConversionsValueByConversionDate() {
return allConversionsValueByConversionDate_;
}
public static final int ALL_CONVERSIONS_FIELD_NUMBER = 193;
private double allConversions_;
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric.
*
*
* optional double all_conversions = 193;
* @return Whether the allConversions field is set.
*/
@java.lang.Override
public boolean hasAllConversions() {
return ((bitField0_ & 0x00000400) != 0);
}
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric.
*
*
* optional double all_conversions = 193;
* @return The allConversions.
*/
@java.lang.Override
public double getAllConversions() {
return allConversions_;
}
public static final int ALL_CONVERSIONS_BY_CONVERSION_DATE_FIELD_NUMBER = 241;
private double allConversionsByConversionDate_;
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric. When this column is selected
* with date, the values in date column means the conversion date. Details for
* the by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double all_conversions_by_conversion_date = 241;
* @return The allConversionsByConversionDate.
*/
@java.lang.Override
public double getAllConversionsByConversionDate() {
return allConversionsByConversionDate_;
}
public static final int ALL_CONVERSIONS_VALUE_PER_COST_FIELD_NUMBER = 194;
private double allConversionsValuePerCost_;
/**
*
* The value of all conversions divided by the total cost of ad interactions
* (such as clicks for text ads or views for video ads).
*
*
* optional double all_conversions_value_per_cost = 194;
* @return Whether the allConversionsValuePerCost field is set.
*/
@java.lang.Override
public boolean hasAllConversionsValuePerCost() {
return ((bitField0_ & 0x00000800) != 0);
}
/**
*
* The value of all conversions divided by the total cost of ad interactions
* (such as clicks for text ads or views for video ads).
*
*
* optional double all_conversions_value_per_cost = 194;
* @return The allConversionsValuePerCost.
*/
@java.lang.Override
public double getAllConversionsValuePerCost() {
return allConversionsValuePerCost_;
}
public static final int ALL_CONVERSIONS_FROM_CLICK_TO_CALL_FIELD_NUMBER = 195;
private double allConversionsFromClickToCall_;
/**
*
* The number of times people clicked the "Call" button to call a store during
* or after clicking an ad. This number doesn't include whether or not calls
* were connected, or the duration of any calls.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_click_to_call = 195;
* @return Whether the allConversionsFromClickToCall field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromClickToCall() {
return ((bitField0_ & 0x00001000) != 0);
}
/**
*
* The number of times people clicked the "Call" button to call a store during
* or after clicking an ad. This number doesn't include whether or not calls
* were connected, or the duration of any calls.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_click_to_call = 195;
* @return The allConversionsFromClickToCall.
*/
@java.lang.Override
public double getAllConversionsFromClickToCall() {
return allConversionsFromClickToCall_;
}
public static final int ALL_CONVERSIONS_FROM_DIRECTIONS_FIELD_NUMBER = 196;
private double allConversionsFromDirections_;
/**
*
* The number of times people clicked a "Get directions" button to navigate to
* a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_directions = 196;
* @return Whether the allConversionsFromDirections field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromDirections() {
return ((bitField0_ & 0x00002000) != 0);
}
/**
*
* The number of times people clicked a "Get directions" button to navigate to
* a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_directions = 196;
* @return The allConversionsFromDirections.
*/
@java.lang.Override
public double getAllConversionsFromDirections() {
return allConversionsFromDirections_;
}
public static final int ALL_CONVERSIONS_FROM_INTERACTIONS_VALUE_PER_INTERACTION_FIELD_NUMBER = 197;
private double allConversionsFromInteractionsValuePerInteraction_;
/**
*
* The value of all conversions from interactions divided by the total number
* of interactions.
*
*
* optional double all_conversions_from_interactions_value_per_interaction = 197;
* @return Whether the allConversionsFromInteractionsValuePerInteraction field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromInteractionsValuePerInteraction() {
return ((bitField0_ & 0x00004000) != 0);
}
/**
*
* The value of all conversions from interactions divided by the total number
* of interactions.
*
*
* optional double all_conversions_from_interactions_value_per_interaction = 197;
* @return The allConversionsFromInteractionsValuePerInteraction.
*/
@java.lang.Override
public double getAllConversionsFromInteractionsValuePerInteraction() {
return allConversionsFromInteractionsValuePerInteraction_;
}
public static final int ALL_CONVERSIONS_FROM_MENU_FIELD_NUMBER = 198;
private double allConversionsFromMenu_;
/**
*
* The number of times people clicked a link to view a store's menu after
* clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_menu = 198;
* @return Whether the allConversionsFromMenu field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromMenu() {
return ((bitField0_ & 0x00008000) != 0);
}
/**
*
* The number of times people clicked a link to view a store's menu after
* clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_menu = 198;
* @return The allConversionsFromMenu.
*/
@java.lang.Override
public double getAllConversionsFromMenu() {
return allConversionsFromMenu_;
}
public static final int ALL_CONVERSIONS_FROM_ORDER_FIELD_NUMBER = 199;
private double allConversionsFromOrder_;
/**
*
* The number of times people placed an order at a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_order = 199;
* @return Whether the allConversionsFromOrder field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromOrder() {
return ((bitField0_ & 0x00010000) != 0);
}
/**
*
* The number of times people placed an order at a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_order = 199;
* @return The allConversionsFromOrder.
*/
@java.lang.Override
public double getAllConversionsFromOrder() {
return allConversionsFromOrder_;
}
public static final int ALL_CONVERSIONS_FROM_OTHER_ENGAGEMENT_FIELD_NUMBER = 200;
private double allConversionsFromOtherEngagement_;
/**
*
* The number of other conversions (for example, posting a review or saving a
* location for a store) that occurred after people clicked an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_other_engagement = 200;
* @return Whether the allConversionsFromOtherEngagement field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromOtherEngagement() {
return ((bitField0_ & 0x00020000) != 0);
}
/**
*
* The number of other conversions (for example, posting a review or saving a
* location for a store) that occurred after people clicked an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_other_engagement = 200;
* @return The allConversionsFromOtherEngagement.
*/
@java.lang.Override
public double getAllConversionsFromOtherEngagement() {
return allConversionsFromOtherEngagement_;
}
public static final int ALL_CONVERSIONS_FROM_STORE_VISIT_FIELD_NUMBER = 201;
private double allConversionsFromStoreVisit_;
/**
*
* Estimated number of times people visited a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_visit = 201;
* @return Whether the allConversionsFromStoreVisit field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromStoreVisit() {
return ((bitField0_ & 0x00040000) != 0);
}
/**
*
* Estimated number of times people visited a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_visit = 201;
* @return The allConversionsFromStoreVisit.
*/
@java.lang.Override
public double getAllConversionsFromStoreVisit() {
return allConversionsFromStoreVisit_;
}
public static final int ALL_CONVERSIONS_FROM_STORE_WEBSITE_FIELD_NUMBER = 202;
private double allConversionsFromStoreWebsite_;
/**
*
* The number of times that people were taken to a store's URL after clicking
* an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_website = 202;
* @return Whether the allConversionsFromStoreWebsite field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromStoreWebsite() {
return ((bitField0_ & 0x00080000) != 0);
}
/**
*
* The number of times that people were taken to a store's URL after clicking
* an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_website = 202;
* @return The allConversionsFromStoreWebsite.
*/
@java.lang.Override
public double getAllConversionsFromStoreWebsite() {
return allConversionsFromStoreWebsite_;
}
public static final int AVERAGE_COST_FIELD_NUMBER = 203;
private double averageCost_;
/**
*
* The average amount you pay per interaction. This amount is the total cost
* of your ads divided by the total number of interactions.
*
*
* optional double average_cost = 203;
* @return Whether the averageCost field is set.
*/
@java.lang.Override
public boolean hasAverageCost() {
return ((bitField0_ & 0x00100000) != 0);
}
/**
*
* The average amount you pay per interaction. This amount is the total cost
* of your ads divided by the total number of interactions.
*
*
* optional double average_cost = 203;
* @return The averageCost.
*/
@java.lang.Override
public double getAverageCost() {
return averageCost_;
}
public static final int AVERAGE_CPC_FIELD_NUMBER = 204;
private double averageCpc_;
/**
*
* The total cost of all clicks divided by the total number of clicks
* received.
*
*
* optional double average_cpc = 204;
* @return Whether the averageCpc field is set.
*/
@java.lang.Override
public boolean hasAverageCpc() {
return ((bitField0_ & 0x00200000) != 0);
}
/**
*
* The total cost of all clicks divided by the total number of clicks
* received.
*
*
* optional double average_cpc = 204;
* @return The averageCpc.
*/
@java.lang.Override
public double getAverageCpc() {
return averageCpc_;
}
public static final int AVERAGE_CPE_FIELD_NUMBER = 205;
private double averageCpe_;
/**
*
* The average amount that you've been charged for an ad engagement. This
* amount is the total cost of all ad engagements divided by the total number
* of ad engagements.
*
*
* optional double average_cpe = 205;
* @return Whether the averageCpe field is set.
*/
@java.lang.Override
public boolean hasAverageCpe() {
return ((bitField0_ & 0x00400000) != 0);
}
/**
*
* The average amount that you've been charged for an ad engagement. This
* amount is the total cost of all ad engagements divided by the total number
* of ad engagements.
*
*
* optional double average_cpe = 205;
* @return The averageCpe.
*/
@java.lang.Override
public double getAverageCpe() {
return averageCpe_;
}
public static final int AVERAGE_CPM_FIELD_NUMBER = 206;
private double averageCpm_;
/**
*
* Average cost-per-thousand impressions (CPM).
*
*
* optional double average_cpm = 206;
* @return Whether the averageCpm field is set.
*/
@java.lang.Override
public boolean hasAverageCpm() {
return ((bitField0_ & 0x00800000) != 0);
}
/**
*
* Average cost-per-thousand impressions (CPM).
*
*
* optional double average_cpm = 206;
* @return The averageCpm.
*/
@java.lang.Override
public double getAverageCpm() {
return averageCpm_;
}
public static final int AVERAGE_CPV_FIELD_NUMBER = 207;
private double averageCpv_;
/**
*
* The average amount you pay each time someone views your ad.
* The average CPV is defined by the total cost of all ad views divided by
* the number of views.
*
*
* optional double average_cpv = 207;
* @return Whether the averageCpv field is set.
*/
@java.lang.Override
public boolean hasAverageCpv() {
return ((bitField0_ & 0x01000000) != 0);
}
/**
*
* The average amount you pay each time someone views your ad.
* The average CPV is defined by the total cost of all ad views divided by
* the number of views.
*
*
* optional double average_cpv = 207;
* @return The averageCpv.
*/
@java.lang.Override
public double getAverageCpv() {
return averageCpv_;
}
public static final int AVERAGE_PAGE_VIEWS_FIELD_NUMBER = 208;
private double averagePageViews_;
/**
*
* Average number of pages viewed per session.
*
*
* optional double average_page_views = 208;
* @return Whether the averagePageViews field is set.
*/
@java.lang.Override
public boolean hasAveragePageViews() {
return ((bitField0_ & 0x02000000) != 0);
}
/**
*
* Average number of pages viewed per session.
*
*
* optional double average_page_views = 208;
* @return The averagePageViews.
*/
@java.lang.Override
public double getAveragePageViews() {
return averagePageViews_;
}
public static final int AVERAGE_TIME_ON_SITE_FIELD_NUMBER = 209;
private double averageTimeOnSite_;
/**
*
* Total duration of all sessions (in seconds) / number of sessions. Imported
* from Google Analytics.
*
*
* optional double average_time_on_site = 209;
* @return Whether the averageTimeOnSite field is set.
*/
@java.lang.Override
public boolean hasAverageTimeOnSite() {
return ((bitField0_ & 0x04000000) != 0);
}
/**
*
* Total duration of all sessions (in seconds) / number of sessions. Imported
* from Google Analytics.
*
*
* optional double average_time_on_site = 209;
* @return The averageTimeOnSite.
*/
@java.lang.Override
public double getAverageTimeOnSite() {
return averageTimeOnSite_;
}
public static final int BENCHMARK_AVERAGE_MAX_CPC_FIELD_NUMBER = 210;
private double benchmarkAverageMaxCpc_;
/**
*
* An indication of how other advertisers are bidding on similar products.
*
*
* optional double benchmark_average_max_cpc = 210;
* @return Whether the benchmarkAverageMaxCpc field is set.
*/
@java.lang.Override
public boolean hasBenchmarkAverageMaxCpc() {
return ((bitField0_ & 0x08000000) != 0);
}
/**
*
* An indication of how other advertisers are bidding on similar products.
*
*
* optional double benchmark_average_max_cpc = 210;
* @return The benchmarkAverageMaxCpc.
*/
@java.lang.Override
public double getBenchmarkAverageMaxCpc() {
return benchmarkAverageMaxCpc_;
}
public static final int BIDDABLE_APP_INSTALL_CONVERSIONS_FIELD_NUMBER = 254;
private double biddableAppInstallConversions_;
/**
*
* Number of app installs.
*
*
* optional double biddable_app_install_conversions = 254;
* @return Whether the biddableAppInstallConversions field is set.
*/
@java.lang.Override
public boolean hasBiddableAppInstallConversions() {
return ((bitField0_ & 0x10000000) != 0);
}
/**
*
* Number of app installs.
*
*
* optional double biddable_app_install_conversions = 254;
* @return The biddableAppInstallConversions.
*/
@java.lang.Override
public double getBiddableAppInstallConversions() {
return biddableAppInstallConversions_;
}
public static final int BIDDABLE_APP_POST_INSTALL_CONVERSIONS_FIELD_NUMBER = 255;
private double biddableAppPostInstallConversions_;
/**
*
* Number of in-app actions.
*
*
* optional double biddable_app_post_install_conversions = 255;
* @return Whether the biddableAppPostInstallConversions field is set.
*/
@java.lang.Override
public boolean hasBiddableAppPostInstallConversions() {
return ((bitField0_ & 0x20000000) != 0);
}
/**
*
* Number of in-app actions.
*
*
* optional double biddable_app_post_install_conversions = 255;
* @return The biddableAppPostInstallConversions.
*/
@java.lang.Override
public double getBiddableAppPostInstallConversions() {
return biddableAppPostInstallConversions_;
}
public static final int BENCHMARK_CTR_FIELD_NUMBER = 211;
private double benchmarkCtr_;
/**
*
* An indication on how other advertisers' Shopping ads for similar products
* are performing based on how often people who see their ad click on it.
*
*
* optional double benchmark_ctr = 211;
* @return Whether the benchmarkCtr field is set.
*/
@java.lang.Override
public boolean hasBenchmarkCtr() {
return ((bitField0_ & 0x40000000) != 0);
}
/**
*
* An indication on how other advertisers' Shopping ads for similar products
* are performing based on how often people who see their ad click on it.
*
*
* optional double benchmark_ctr = 211;
* @return The benchmarkCtr.
*/
@java.lang.Override
public double getBenchmarkCtr() {
return benchmarkCtr_;
}
public static final int BOUNCE_RATE_FIELD_NUMBER = 212;
private double bounceRate_;
/**
*
* Percentage of clicks where the user only visited a single page on your
* site. Imported from Google Analytics.
*
*
* optional double bounce_rate = 212;
* @return Whether the bounceRate field is set.
*/
@java.lang.Override
public boolean hasBounceRate() {
return ((bitField0_ & 0x80000000) != 0);
}
/**
*
* Percentage of clicks where the user only visited a single page on your
* site. Imported from Google Analytics.
*
*
* optional double bounce_rate = 212;
* @return The bounceRate.
*/
@java.lang.Override
public double getBounceRate() {
return bounceRate_;
}
public static final int CLICKS_FIELD_NUMBER = 131;
private long clicks_;
/**
*
* The number of clicks.
*
*
* optional int64 clicks = 131;
* @return Whether the clicks field is set.
*/
@java.lang.Override
public boolean hasClicks() {
return ((bitField1_ & 0x00000001) != 0);
}
/**
*
* The number of clicks.
*
*
* optional int64 clicks = 131;
* @return The clicks.
*/
@java.lang.Override
public long getClicks() {
return clicks_;
}
public static final int COMBINED_CLICKS_FIELD_NUMBER = 156;
private long combinedClicks_;
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_clicks = 156;
* @return Whether the combinedClicks field is set.
*/
@java.lang.Override
public boolean hasCombinedClicks() {
return ((bitField1_ & 0x00000002) != 0);
}
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_clicks = 156;
* @return The combinedClicks.
*/
@java.lang.Override
public long getCombinedClicks() {
return combinedClicks_;
}
public static final int COMBINED_CLICKS_PER_QUERY_FIELD_NUMBER = 157;
private double combinedClicksPerQuery_;
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked (combined_clicks) divided by combined_queries. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional double combined_clicks_per_query = 157;
* @return Whether the combinedClicksPerQuery field is set.
*/
@java.lang.Override
public boolean hasCombinedClicksPerQuery() {
return ((bitField1_ & 0x00000004) != 0);
}
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked (combined_clicks) divided by combined_queries. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional double combined_clicks_per_query = 157;
* @return The combinedClicksPerQuery.
*/
@java.lang.Override
public double getCombinedClicksPerQuery() {
return combinedClicksPerQuery_;
}
public static final int COMBINED_QUERIES_FIELD_NUMBER = 158;
private long combinedQueries_;
/**
*
* The number of searches that returned pages from your site in the unpaid
* results or showed one of your text ads. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_queries = 158;
* @return Whether the combinedQueries field is set.
*/
@java.lang.Override
public boolean hasCombinedQueries() {
return ((bitField1_ & 0x00000008) != 0);
}
/**
*
* The number of searches that returned pages from your site in the unpaid
* results or showed one of your text ads. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_queries = 158;
* @return The combinedQueries.
*/
@java.lang.Override
public long getCombinedQueries() {
return combinedQueries_;
}
public static final int CONTENT_BUDGET_LOST_IMPRESSION_SHARE_FIELD_NUMBER = 159;
private double contentBudgetLostImpressionShare_;
/**
*
* The estimated percent of times that your ad was eligible to show
* on the Display Network but didn't because your budget was too low.
* Note: Content budget lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_budget_lost_impression_share = 159;
* @return Whether the contentBudgetLostImpressionShare field is set.
*/
@java.lang.Override
public boolean hasContentBudgetLostImpressionShare() {
return ((bitField1_ & 0x00000010) != 0);
}
/**
*
* The estimated percent of times that your ad was eligible to show
* on the Display Network but didn't because your budget was too low.
* Note: Content budget lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_budget_lost_impression_share = 159;
* @return The contentBudgetLostImpressionShare.
*/
@java.lang.Override
public double getContentBudgetLostImpressionShare() {
return contentBudgetLostImpressionShare_;
}
public static final int CONTENT_IMPRESSION_SHARE_FIELD_NUMBER = 160;
private double contentImpressionShare_;
/**
*
* The impressions you've received on the Display Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Content impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double content_impression_share = 160;
* @return Whether the contentImpressionShare field is set.
*/
@java.lang.Override
public boolean hasContentImpressionShare() {
return ((bitField1_ & 0x00000020) != 0);
}
/**
*
* The impressions you've received on the Display Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Content impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double content_impression_share = 160;
* @return The contentImpressionShare.
*/
@java.lang.Override
public double getContentImpressionShare() {
return contentImpressionShare_;
}
public static final int CONVERSION_LAST_RECEIVED_REQUEST_DATE_TIME_FIELD_NUMBER = 161;
private volatile java.lang.Object conversionLastReceivedRequestDateTime_;
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @return Whether the conversionLastReceivedRequestDateTime field is set.
*/
@java.lang.Override
public boolean hasConversionLastReceivedRequestDateTime() {
return ((bitField1_ & 0x00000040) != 0);
}
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @return The conversionLastReceivedRequestDateTime.
*/
@java.lang.Override
public java.lang.String getConversionLastReceivedRequestDateTime() {
java.lang.Object ref = conversionLastReceivedRequestDateTime_;
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();
conversionLastReceivedRequestDateTime_ = s;
return s;
}
}
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @return The bytes for conversionLastReceivedRequestDateTime.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getConversionLastReceivedRequestDateTimeBytes() {
java.lang.Object ref = conversionLastReceivedRequestDateTime_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
conversionLastReceivedRequestDateTime_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int CONVERSION_LAST_CONVERSION_DATE_FIELD_NUMBER = 162;
private volatile java.lang.Object conversionLastConversionDate_;
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @return Whether the conversionLastConversionDate field is set.
*/
@java.lang.Override
public boolean hasConversionLastConversionDate() {
return ((bitField1_ & 0x00000080) != 0);
}
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @return The conversionLastConversionDate.
*/
@java.lang.Override
public java.lang.String getConversionLastConversionDate() {
java.lang.Object ref = conversionLastConversionDate_;
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();
conversionLastConversionDate_ = s;
return s;
}
}
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @return The bytes for conversionLastConversionDate.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getConversionLastConversionDateBytes() {
java.lang.Object ref = conversionLastConversionDate_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
conversionLastConversionDate_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int CONTENT_RANK_LOST_IMPRESSION_SHARE_FIELD_NUMBER = 163;
private double contentRankLostImpressionShare_;
/**
*
* The estimated percentage of impressions on the Display Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Content rank lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_rank_lost_impression_share = 163;
* @return Whether the contentRankLostImpressionShare field is set.
*/
@java.lang.Override
public boolean hasContentRankLostImpressionShare() {
return ((bitField1_ & 0x00000100) != 0);
}
/**
*
* The estimated percentage of impressions on the Display Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Content rank lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_rank_lost_impression_share = 163;
* @return The contentRankLostImpressionShare.
*/
@java.lang.Override
public double getContentRankLostImpressionShare() {
return contentRankLostImpressionShare_;
}
public static final int CONVERSIONS_FROM_INTERACTIONS_RATE_FIELD_NUMBER = 164;
private double conversionsFromInteractionsRate_;
/**
*
* Conversions from interactions divided by the number of ad interactions
* (such as clicks for text ads or views for video ads). This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double conversions_from_interactions_rate = 164;
* @return Whether the conversionsFromInteractionsRate field is set.
*/
@java.lang.Override
public boolean hasConversionsFromInteractionsRate() {
return ((bitField1_ & 0x00000200) != 0);
}
/**
*
* Conversions from interactions divided by the number of ad interactions
* (such as clicks for text ads or views for video ads). This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double conversions_from_interactions_rate = 164;
* @return The conversionsFromInteractionsRate.
*/
@java.lang.Override
public double getConversionsFromInteractionsRate() {
return conversionsFromInteractionsRate_;
}
public static final int CONVERSIONS_VALUE_FIELD_NUMBER = 165;
private double conversionsValue_;
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_value = 165;
* @return Whether the conversionsValue field is set.
*/
@java.lang.Override
public boolean hasConversionsValue() {
return ((bitField1_ & 0x00000400) != 0);
}
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_value = 165;
* @return The conversionsValue.
*/
@java.lang.Override
public double getConversionsValue() {
return conversionsValue_;
}
public static final int CONVERSIONS_VALUE_BY_CONVERSION_DATE_FIELD_NUMBER = 242;
private double conversionsValueByConversionDate_;
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions. When this column is selected with date, the values in date
* column means the conversion date. Details for the by_conversion_date
* columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double conversions_value_by_conversion_date = 242;
* @return The conversionsValueByConversionDate.
*/
@java.lang.Override
public double getConversionsValueByConversionDate() {
return conversionsValueByConversionDate_;
}
public static final int CONVERSIONS_VALUE_PER_COST_FIELD_NUMBER = 166;
private double conversionsValuePerCost_;
/**
*
* The value of conversions divided by the cost of ad interactions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double conversions_value_per_cost = 166;
* @return Whether the conversionsValuePerCost field is set.
*/
@java.lang.Override
public boolean hasConversionsValuePerCost() {
return ((bitField1_ & 0x00000800) != 0);
}
/**
*
* The value of conversions divided by the cost of ad interactions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double conversions_value_per_cost = 166;
* @return The conversionsValuePerCost.
*/
@java.lang.Override
public double getConversionsValuePerCost() {
return conversionsValuePerCost_;
}
public static final int CONVERSIONS_FROM_INTERACTIONS_VALUE_PER_INTERACTION_FIELD_NUMBER = 167;
private double conversionsFromInteractionsValuePerInteraction_;
/**
*
* The value of conversions from interactions divided by the number of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_from_interactions_value_per_interaction = 167;
* @return Whether the conversionsFromInteractionsValuePerInteraction field is set.
*/
@java.lang.Override
public boolean hasConversionsFromInteractionsValuePerInteraction() {
return ((bitField1_ & 0x00001000) != 0);
}
/**
*
* The value of conversions from interactions divided by the number of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_from_interactions_value_per_interaction = 167;
* @return The conversionsFromInteractionsValuePerInteraction.
*/
@java.lang.Override
public double getConversionsFromInteractionsValuePerInteraction() {
return conversionsFromInteractionsValuePerInteraction_;
}
public static final int CONVERSIONS_FIELD_NUMBER = 168;
private double conversions_;
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions = 168;
* @return Whether the conversions field is set.
*/
@java.lang.Override
public boolean hasConversions() {
return ((bitField1_ & 0x00002000) != 0);
}
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions = 168;
* @return The conversions.
*/
@java.lang.Override
public double getConversions() {
return conversions_;
}
public static final int CONVERSIONS_BY_CONVERSION_DATE_FIELD_NUMBER = 243;
private double conversionsByConversionDate_;
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions. When this column is selected with date, the values in date
* column means the conversion date. Details for the by_conversion_date
* columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double conversions_by_conversion_date = 243;
* @return The conversionsByConversionDate.
*/
@java.lang.Override
public double getConversionsByConversionDate() {
return conversionsByConversionDate_;
}
public static final int COST_MICROS_FIELD_NUMBER = 169;
private long costMicros_;
/**
*
* The sum of your cost-per-click (CPC) and cost-per-thousand impressions
* (CPM) costs during this period.
*
*
* optional int64 cost_micros = 169;
* @return Whether the costMicros field is set.
*/
@java.lang.Override
public boolean hasCostMicros() {
return ((bitField1_ & 0x00004000) != 0);
}
/**
*
* The sum of your cost-per-click (CPC) and cost-per-thousand impressions
* (CPM) costs during this period.
*
*
* optional int64 cost_micros = 169;
* @return The costMicros.
*/
@java.lang.Override
public long getCostMicros() {
return costMicros_;
}
public static final int COST_PER_ALL_CONVERSIONS_FIELD_NUMBER = 170;
private double costPerAllConversions_;
/**
*
* The cost of ad interactions divided by all conversions.
*
*
* optional double cost_per_all_conversions = 170;
* @return Whether the costPerAllConversions field is set.
*/
@java.lang.Override
public boolean hasCostPerAllConversions() {
return ((bitField1_ & 0x00008000) != 0);
}
/**
*
* The cost of ad interactions divided by all conversions.
*
*
* optional double cost_per_all_conversions = 170;
* @return The costPerAllConversions.
*/
@java.lang.Override
public double getCostPerAllConversions() {
return costPerAllConversions_;
}
public static final int COST_PER_CONVERSION_FIELD_NUMBER = 171;
private double costPerConversion_;
/**
*
* The cost of ad interactions divided by conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double cost_per_conversion = 171;
* @return Whether the costPerConversion field is set.
*/
@java.lang.Override
public boolean hasCostPerConversion() {
return ((bitField1_ & 0x00010000) != 0);
}
/**
*
* The cost of ad interactions divided by conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double cost_per_conversion = 171;
* @return The costPerConversion.
*/
@java.lang.Override
public double getCostPerConversion() {
return costPerConversion_;
}
public static final int COST_PER_CURRENT_MODEL_ATTRIBUTED_CONVERSION_FIELD_NUMBER = 172;
private double costPerCurrentModelAttributedConversion_;
/**
*
* The cost of ad interactions divided by current model attributed
* conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double cost_per_current_model_attributed_conversion = 172;
* @return Whether the costPerCurrentModelAttributedConversion field is set.
*/
@java.lang.Override
public boolean hasCostPerCurrentModelAttributedConversion() {
return ((bitField1_ & 0x00020000) != 0);
}
/**
*
* The cost of ad interactions divided by current model attributed
* conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double cost_per_current_model_attributed_conversion = 172;
* @return The costPerCurrentModelAttributedConversion.
*/
@java.lang.Override
public double getCostPerCurrentModelAttributedConversion() {
return costPerCurrentModelAttributedConversion_;
}
public static final int CROSS_DEVICE_CONVERSIONS_FIELD_NUMBER = 173;
private double crossDeviceConversions_;
/**
*
* Conversions from when a customer clicks on a Google Ads ad on one device,
* then converts on a different device or browser.
* Cross-device conversions are already included in all_conversions.
*
*
* optional double cross_device_conversions = 173;
* @return Whether the crossDeviceConversions field is set.
*/
@java.lang.Override
public boolean hasCrossDeviceConversions() {
return ((bitField1_ & 0x00040000) != 0);
}
/**
*
* Conversions from when a customer clicks on a Google Ads ad on one device,
* then converts on a different device or browser.
* Cross-device conversions are already included in all_conversions.
*
*
* optional double cross_device_conversions = 173;
* @return The crossDeviceConversions.
*/
@java.lang.Override
public double getCrossDeviceConversions() {
return crossDeviceConversions_;
}
public static final int CTR_FIELD_NUMBER = 174;
private double ctr_;
/**
*
* The number of clicks your ad receives (Clicks) divided by the number
* of times your ad is shown (Impressions).
*
*
* optional double ctr = 174;
* @return Whether the ctr field is set.
*/
@java.lang.Override
public boolean hasCtr() {
return ((bitField1_ & 0x00080000) != 0);
}
/**
*
* The number of clicks your ad receives (Clicks) divided by the number
* of times your ad is shown (Impressions).
*
*
* optional double ctr = 174;
* @return The ctr.
*/
@java.lang.Override
public double getCtr() {
return ctr_;
}
public static final int CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_FIELD_NUMBER = 175;
private double currentModelAttributedConversions_;
/**
*
* Shows how your historic conversions data would look under the attribution
* model you've currently selected. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions = 175;
* @return Whether the currentModelAttributedConversions field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversions() {
return ((bitField1_ & 0x00100000) != 0);
}
/**
*
* Shows how your historic conversions data would look under the attribution
* model you've currently selected. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions = 175;
* @return The currentModelAttributedConversions.
*/
@java.lang.Override
public double getCurrentModelAttributedConversions() {
return currentModelAttributedConversions_;
}
public static final int CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_FROM_INTERACTIONS_RATE_FIELD_NUMBER = 176;
private double currentModelAttributedConversionsFromInteractionsRate_;
/**
*
* Current model attributed conversions from interactions divided by the
* number of ad interactions (such as clicks for text ads or views for video
* ads). This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_rate = 176;
* @return Whether the currentModelAttributedConversionsFromInteractionsRate field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversionsFromInteractionsRate() {
return ((bitField1_ & 0x00200000) != 0);
}
/**
*
* Current model attributed conversions from interactions divided by the
* number of ad interactions (such as clicks for text ads or views for video
* ads). This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_rate = 176;
* @return The currentModelAttributedConversionsFromInteractionsRate.
*/
@java.lang.Override
public double getCurrentModelAttributedConversionsFromInteractionsRate() {
return currentModelAttributedConversionsFromInteractionsRate_;
}
public static final int CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_FROM_INTERACTIONS_VALUE_PER_INTERACTION_FIELD_NUMBER = 177;
private double currentModelAttributedConversionsFromInteractionsValuePerInteraction_;
/**
*
* The value of current model attributed conversions from interactions divided
* by the number of ad interactions. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177;
* @return Whether the currentModelAttributedConversionsFromInteractionsValuePerInteraction field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversionsFromInteractionsValuePerInteraction() {
return ((bitField1_ & 0x00400000) != 0);
}
/**
*
* The value of current model attributed conversions from interactions divided
* by the number of ad interactions. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177;
* @return The currentModelAttributedConversionsFromInteractionsValuePerInteraction.
*/
@java.lang.Override
public double getCurrentModelAttributedConversionsFromInteractionsValuePerInteraction() {
return currentModelAttributedConversionsFromInteractionsValuePerInteraction_;
}
public static final int CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_VALUE_FIELD_NUMBER = 178;
private double currentModelAttributedConversionsValue_;
/**
*
* The value of current model attributed conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double current_model_attributed_conversions_value = 178;
* @return Whether the currentModelAttributedConversionsValue field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversionsValue() {
return ((bitField1_ & 0x00800000) != 0);
}
/**
*
* The value of current model attributed conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double current_model_attributed_conversions_value = 178;
* @return The currentModelAttributedConversionsValue.
*/
@java.lang.Override
public double getCurrentModelAttributedConversionsValue() {
return currentModelAttributedConversionsValue_;
}
public static final int CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_VALUE_PER_COST_FIELD_NUMBER = 179;
private double currentModelAttributedConversionsValuePerCost_;
/**
*
* The value of current model attributed conversions divided by the cost of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_value_per_cost = 179;
* @return Whether the currentModelAttributedConversionsValuePerCost field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversionsValuePerCost() {
return ((bitField1_ & 0x01000000) != 0);
}
/**
*
* The value of current model attributed conversions divided by the cost of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_value_per_cost = 179;
* @return The currentModelAttributedConversionsValuePerCost.
*/
@java.lang.Override
public double getCurrentModelAttributedConversionsValuePerCost() {
return currentModelAttributedConversionsValuePerCost_;
}
public static final int ENGAGEMENT_RATE_FIELD_NUMBER = 180;
private double engagementRate_;
/**
*
* How often people engage with your ad after it's shown to them. This is the
* number of ad expansions divided by the number of times your ad is shown.
*
*
* optional double engagement_rate = 180;
* @return Whether the engagementRate field is set.
*/
@java.lang.Override
public boolean hasEngagementRate() {
return ((bitField1_ & 0x02000000) != 0);
}
/**
*
* How often people engage with your ad after it's shown to them. This is the
* number of ad expansions divided by the number of times your ad is shown.
*
*
* optional double engagement_rate = 180;
* @return The engagementRate.
*/
@java.lang.Override
public double getEngagementRate() {
return engagementRate_;
}
public static final int ENGAGEMENTS_FIELD_NUMBER = 181;
private long engagements_;
/**
*
* The number of engagements.
* An engagement occurs when a viewer expands your Lightbox ad. Also, in the
* future, other ad types may support engagement metrics.
*
*
* optional int64 engagements = 181;
* @return Whether the engagements field is set.
*/
@java.lang.Override
public boolean hasEngagements() {
return ((bitField1_ & 0x04000000) != 0);
}
/**
*
* The number of engagements.
* An engagement occurs when a viewer expands your Lightbox ad. Also, in the
* future, other ad types may support engagement metrics.
*
*
* optional int64 engagements = 181;
* @return The engagements.
*/
@java.lang.Override
public long getEngagements() {
return engagements_;
}
public static final int HOTEL_AVERAGE_LEAD_VALUE_MICROS_FIELD_NUMBER = 213;
private double hotelAverageLeadValueMicros_;
/**
*
* Average lead value based on clicks.
*
*
* optional double hotel_average_lead_value_micros = 213;
* @return Whether the hotelAverageLeadValueMicros field is set.
*/
@java.lang.Override
public boolean hasHotelAverageLeadValueMicros() {
return ((bitField1_ & 0x08000000) != 0);
}
/**
*
* Average lead value based on clicks.
*
*
* optional double hotel_average_lead_value_micros = 213;
* @return The hotelAverageLeadValueMicros.
*/
@java.lang.Override
public double getHotelAverageLeadValueMicros() {
return hotelAverageLeadValueMicros_;
}
public static final int HOTEL_COMMISSION_RATE_MICROS_FIELD_NUMBER = 256;
private long hotelCommissionRateMicros_;
/**
*
* Commission bid rate in micros. A 20% commission is represented as
* 200,000.
*
*
* optional int64 hotel_commission_rate_micros = 256;
* @return Whether the hotelCommissionRateMicros field is set.
*/
@java.lang.Override
public boolean hasHotelCommissionRateMicros() {
return ((bitField1_ & 0x10000000) != 0);
}
/**
*
* Commission bid rate in micros. A 20% commission is represented as
* 200,000.
*
*
* optional int64 hotel_commission_rate_micros = 256;
* @return The hotelCommissionRateMicros.
*/
@java.lang.Override
public long getHotelCommissionRateMicros() {
return hotelCommissionRateMicros_;
}
public static final int HOTEL_EXPECTED_COMMISSION_COST_FIELD_NUMBER = 257;
private double hotelExpectedCommissionCost_;
/**
*
* Expected commission cost. The result of multiplying the commission value
* times the hotel_commission_rate in advertiser currency.
*
*
* optional double hotel_expected_commission_cost = 257;
* @return Whether the hotelExpectedCommissionCost field is set.
*/
@java.lang.Override
public boolean hasHotelExpectedCommissionCost() {
return ((bitField1_ & 0x20000000) != 0);
}
/**
*
* Expected commission cost. The result of multiplying the commission value
* times the hotel_commission_rate in advertiser currency.
*
*
* optional double hotel_expected_commission_cost = 257;
* @return The hotelExpectedCommissionCost.
*/
@java.lang.Override
public double getHotelExpectedCommissionCost() {
return hotelExpectedCommissionCost_;
}
public static final int HOTEL_PRICE_DIFFERENCE_PERCENTAGE_FIELD_NUMBER = 214;
private double hotelPriceDifferencePercentage_;
/**
*
* The average price difference between the price offered by reporting hotel
* advertiser and the cheapest price offered by the competing advertiser.
*
*
* optional double hotel_price_difference_percentage = 214;
* @return Whether the hotelPriceDifferencePercentage field is set.
*/
@java.lang.Override
public boolean hasHotelPriceDifferencePercentage() {
return ((bitField1_ & 0x40000000) != 0);
}
/**
*
* The average price difference between the price offered by reporting hotel
* advertiser and the cheapest price offered by the competing advertiser.
*
*
* optional double hotel_price_difference_percentage = 214;
* @return The hotelPriceDifferencePercentage.
*/
@java.lang.Override
public double getHotelPriceDifferencePercentage() {
return hotelPriceDifferencePercentage_;
}
public static final int HOTEL_ELIGIBLE_IMPRESSIONS_FIELD_NUMBER = 215;
private long hotelEligibleImpressions_;
/**
*
* The number of impressions that hotel partners could have had given their
* feed performance.
*
*
* optional int64 hotel_eligible_impressions = 215;
* @return Whether the hotelEligibleImpressions field is set.
*/
@java.lang.Override
public boolean hasHotelEligibleImpressions() {
return ((bitField1_ & 0x80000000) != 0);
}
/**
*
* The number of impressions that hotel partners could have had given their
* feed performance.
*
*
* optional int64 hotel_eligible_impressions = 215;
* @return The hotelEligibleImpressions.
*/
@java.lang.Override
public long getHotelEligibleImpressions() {
return hotelEligibleImpressions_;
}
public static final int HISTORICAL_CREATIVE_QUALITY_SCORE_FIELD_NUMBER = 80;
private int historicalCreativeQualityScore_;
/**
*
* The creative historical quality score.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80;
* @return The enum numeric value on the wire for historicalCreativeQualityScore.
*/
@java.lang.Override public int getHistoricalCreativeQualityScoreValue() {
return historicalCreativeQualityScore_;
}
/**
*
* The creative historical quality score.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80;
* @return The historicalCreativeQualityScore.
*/
@java.lang.Override public com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket getHistoricalCreativeQualityScore() {
@SuppressWarnings("deprecation")
com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket result = com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.valueOf(historicalCreativeQualityScore_);
return result == null ? com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNRECOGNIZED : result;
}
public static final int HISTORICAL_LANDING_PAGE_QUALITY_SCORE_FIELD_NUMBER = 81;
private int historicalLandingPageQualityScore_;
/**
*
* The quality of historical landing page experience.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81;
* @return The enum numeric value on the wire for historicalLandingPageQualityScore.
*/
@java.lang.Override public int getHistoricalLandingPageQualityScoreValue() {
return historicalLandingPageQualityScore_;
}
/**
*
* The quality of historical landing page experience.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81;
* @return The historicalLandingPageQualityScore.
*/
@java.lang.Override public com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket getHistoricalLandingPageQualityScore() {
@SuppressWarnings("deprecation")
com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket result = com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.valueOf(historicalLandingPageQualityScore_);
return result == null ? com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNRECOGNIZED : result;
}
public static final int HISTORICAL_QUALITY_SCORE_FIELD_NUMBER = 216;
private long historicalQualityScore_;
/**
*
* The historical quality score.
*
*
* optional int64 historical_quality_score = 216;
* @return Whether the historicalQualityScore field is set.
*/
@java.lang.Override
public boolean hasHistoricalQualityScore() {
return ((bitField2_ & 0x00000001) != 0);
}
/**
*
* The historical quality score.
*
*
* optional int64 historical_quality_score = 216;
* @return The historicalQualityScore.
*/
@java.lang.Override
public long getHistoricalQualityScore() {
return historicalQualityScore_;
}
public static final int HISTORICAL_SEARCH_PREDICTED_CTR_FIELD_NUMBER = 83;
private int historicalSearchPredictedCtr_;
/**
*
* The historical search predicted click through rate (CTR).
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83;
* @return The enum numeric value on the wire for historicalSearchPredictedCtr.
*/
@java.lang.Override public int getHistoricalSearchPredictedCtrValue() {
return historicalSearchPredictedCtr_;
}
/**
*
* The historical search predicted click through rate (CTR).
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83;
* @return The historicalSearchPredictedCtr.
*/
@java.lang.Override public com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket getHistoricalSearchPredictedCtr() {
@SuppressWarnings("deprecation")
com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket result = com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.valueOf(historicalSearchPredictedCtr_);
return result == null ? com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNRECOGNIZED : result;
}
public static final int GMAIL_FORWARDS_FIELD_NUMBER = 217;
private long gmailForwards_;
/**
*
* The number of times the ad was forwarded to someone else as a message.
*
*
* optional int64 gmail_forwards = 217;
* @return Whether the gmailForwards field is set.
*/
@java.lang.Override
public boolean hasGmailForwards() {
return ((bitField2_ & 0x00000002) != 0);
}
/**
*
* The number of times the ad was forwarded to someone else as a message.
*
*
* optional int64 gmail_forwards = 217;
* @return The gmailForwards.
*/
@java.lang.Override
public long getGmailForwards() {
return gmailForwards_;
}
public static final int GMAIL_SAVES_FIELD_NUMBER = 218;
private long gmailSaves_;
/**
*
* The number of times someone has saved your Gmail ad to their inbox as a
* message.
*
*
* optional int64 gmail_saves = 218;
* @return Whether the gmailSaves field is set.
*/
@java.lang.Override
public boolean hasGmailSaves() {
return ((bitField2_ & 0x00000004) != 0);
}
/**
*
* The number of times someone has saved your Gmail ad to their inbox as a
* message.
*
*
* optional int64 gmail_saves = 218;
* @return The gmailSaves.
*/
@java.lang.Override
public long getGmailSaves() {
return gmailSaves_;
}
public static final int GMAIL_SECONDARY_CLICKS_FIELD_NUMBER = 219;
private long gmailSecondaryClicks_;
/**
*
* The number of clicks to the landing page on the expanded state of Gmail
* ads.
*
*
* optional int64 gmail_secondary_clicks = 219;
* @return Whether the gmailSecondaryClicks field is set.
*/
@java.lang.Override
public boolean hasGmailSecondaryClicks() {
return ((bitField2_ & 0x00000008) != 0);
}
/**
*
* The number of clicks to the landing page on the expanded state of Gmail
* ads.
*
*
* optional int64 gmail_secondary_clicks = 219;
* @return The gmailSecondaryClicks.
*/
@java.lang.Override
public long getGmailSecondaryClicks() {
return gmailSecondaryClicks_;
}
public static final int IMPRESSIONS_FROM_STORE_REACH_FIELD_NUMBER = 220;
private long impressionsFromStoreReach_;
/**
*
* The number of times a store's location-based ad was shown.
* This metric applies to feed items only.
*
*
* optional int64 impressions_from_store_reach = 220;
* @return Whether the impressionsFromStoreReach field is set.
*/
@java.lang.Override
public boolean hasImpressionsFromStoreReach() {
return ((bitField2_ & 0x00000010) != 0);
}
/**
*
* The number of times a store's location-based ad was shown.
* This metric applies to feed items only.
*
*
* optional int64 impressions_from_store_reach = 220;
* @return The impressionsFromStoreReach.
*/
@java.lang.Override
public long getImpressionsFromStoreReach() {
return impressionsFromStoreReach_;
}
public static final int IMPRESSIONS_FIELD_NUMBER = 221;
private long impressions_;
/**
*
* Count of how often your ad has appeared on a search results page or
* website on the Google Network.
*
*
* optional int64 impressions = 221;
* @return Whether the impressions field is set.
*/
@java.lang.Override
public boolean hasImpressions() {
return ((bitField2_ & 0x00000020) != 0);
}
/**
*
* Count of how often your ad has appeared on a search results page or
* website on the Google Network.
*
*
* optional int64 impressions = 221;
* @return The impressions.
*/
@java.lang.Override
public long getImpressions() {
return impressions_;
}
public static final int INTERACTION_RATE_FIELD_NUMBER = 222;
private double interactionRate_;
/**
*
* How often people interact with your ad after it is shown to them.
* This is the number of interactions divided by the number of times your ad
* is shown.
*
*
* optional double interaction_rate = 222;
* @return Whether the interactionRate field is set.
*/
@java.lang.Override
public boolean hasInteractionRate() {
return ((bitField2_ & 0x00000040) != 0);
}
/**
*
* How often people interact with your ad after it is shown to them.
* This is the number of interactions divided by the number of times your ad
* is shown.
*
*
* optional double interaction_rate = 222;
* @return The interactionRate.
*/
@java.lang.Override
public double getInteractionRate() {
return interactionRate_;
}
public static final int INTERACTIONS_FIELD_NUMBER = 223;
private long interactions_;
/**
*
* The number of interactions.
* An interaction is the main user action associated with an ad format-clicks
* for text and shopping ads, views for video ads, and so on.
*
*
* optional int64 interactions = 223;
* @return Whether the interactions field is set.
*/
@java.lang.Override
public boolean hasInteractions() {
return ((bitField2_ & 0x00000080) != 0);
}
/**
*
* The number of interactions.
* An interaction is the main user action associated with an ad format-clicks
* for text and shopping ads, views for video ads, and so on.
*
*
* optional int64 interactions = 223;
* @return The interactions.
*/
@java.lang.Override
public long getInteractions() {
return interactions_;
}
public static final int INTERACTION_EVENT_TYPES_FIELD_NUMBER = 100;
private java.util.List interactionEventTypes_;
private static final com.google.protobuf.Internal.ListAdapter.Converter<
java.lang.Integer, com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType> interactionEventTypes_converter_ =
new com.google.protobuf.Internal.ListAdapter.Converter<
java.lang.Integer, com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType>() {
public com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType convert(java.lang.Integer from) {
@SuppressWarnings("deprecation")
com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType result = com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType.valueOf(from);
return result == null ? com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType.UNRECOGNIZED : result;
}
};
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @return A list containing the interactionEventTypes.
*/
@java.lang.Override
public java.util.List getInteractionEventTypesList() {
return new com.google.protobuf.Internal.ListAdapter<
java.lang.Integer, com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType>(interactionEventTypes_, interactionEventTypes_converter_);
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @return The count of interactionEventTypes.
*/
@java.lang.Override
public int getInteractionEventTypesCount() {
return interactionEventTypes_.size();
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param index The index of the element to return.
* @return The interactionEventTypes at the given index.
*/
@java.lang.Override
public com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType getInteractionEventTypes(int index) {
return interactionEventTypes_converter_.convert(interactionEventTypes_.get(index));
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @return A list containing the enum numeric values on the wire for interactionEventTypes.
*/
@java.lang.Override
public java.util.List
getInteractionEventTypesValueList() {
return interactionEventTypes_;
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param index The index of the value to return.
* @return The enum numeric value on the wire of interactionEventTypes at the given index.
*/
@java.lang.Override
public int getInteractionEventTypesValue(int index) {
return interactionEventTypes_.get(index);
}
private int interactionEventTypesMemoizedSerializedSize;
public static final int INVALID_CLICK_RATE_FIELD_NUMBER = 224;
private double invalidClickRate_;
/**
*
* The percentage of clicks filtered out of your total number of clicks
* (filtered + non-filtered clicks) during the reporting period.
*
*
* optional double invalid_click_rate = 224;
* @return Whether the invalidClickRate field is set.
*/
@java.lang.Override
public boolean hasInvalidClickRate() {
return ((bitField2_ & 0x00000100) != 0);
}
/**
*
* The percentage of clicks filtered out of your total number of clicks
* (filtered + non-filtered clicks) during the reporting period.
*
*
* optional double invalid_click_rate = 224;
* @return The invalidClickRate.
*/
@java.lang.Override
public double getInvalidClickRate() {
return invalidClickRate_;
}
public static final int INVALID_CLICKS_FIELD_NUMBER = 225;
private long invalidClicks_;
/**
*
* Number of clicks Google considers illegitimate and doesn't charge you for.
*
*
* optional int64 invalid_clicks = 225;
* @return Whether the invalidClicks field is set.
*/
@java.lang.Override
public boolean hasInvalidClicks() {
return ((bitField2_ & 0x00000200) != 0);
}
/**
*
* Number of clicks Google considers illegitimate and doesn't charge you for.
*
*
* optional int64 invalid_clicks = 225;
* @return The invalidClicks.
*/
@java.lang.Override
public long getInvalidClicks() {
return invalidClicks_;
}
public static final int MESSAGE_CHATS_FIELD_NUMBER = 226;
private long messageChats_;
/**
*
* Number of message chats initiated for Click To Message impressions that
* were message tracking eligible.
*
*
* optional int64 message_chats = 226;
* @return Whether the messageChats field is set.
*/
@java.lang.Override
public boolean hasMessageChats() {
return ((bitField2_ & 0x00000400) != 0);
}
/**
*
* Number of message chats initiated for Click To Message impressions that
* were message tracking eligible.
*
*
* optional int64 message_chats = 226;
* @return The messageChats.
*/
@java.lang.Override
public long getMessageChats() {
return messageChats_;
}
public static final int MESSAGE_IMPRESSIONS_FIELD_NUMBER = 227;
private long messageImpressions_;
/**
*
* Number of Click To Message impressions that were message tracking eligible.
*
*
* optional int64 message_impressions = 227;
* @return Whether the messageImpressions field is set.
*/
@java.lang.Override
public boolean hasMessageImpressions() {
return ((bitField2_ & 0x00000800) != 0);
}
/**
*
* Number of Click To Message impressions that were message tracking eligible.
*
*
* optional int64 message_impressions = 227;
* @return The messageImpressions.
*/
@java.lang.Override
public long getMessageImpressions() {
return messageImpressions_;
}
public static final int MESSAGE_CHAT_RATE_FIELD_NUMBER = 228;
private double messageChatRate_;
/**
*
* Number of message chats initiated (message_chats) divided by the number
* of message impressions (message_impressions).
* Rate at which a user initiates a message chat from an ad impression with
* a messaging option and message tracking enabled.
* Note that this rate can be more than 1.0 for a given message impression.
*
*
* optional double message_chat_rate = 228;
* @return Whether the messageChatRate field is set.
*/
@java.lang.Override
public boolean hasMessageChatRate() {
return ((bitField2_ & 0x00001000) != 0);
}
/**
*
* Number of message chats initiated (message_chats) divided by the number
* of message impressions (message_impressions).
* Rate at which a user initiates a message chat from an ad impression with
* a messaging option and message tracking enabled.
* Note that this rate can be more than 1.0 for a given message impression.
*
*
* optional double message_chat_rate = 228;
* @return The messageChatRate.
*/
@java.lang.Override
public double getMessageChatRate() {
return messageChatRate_;
}
public static final int MOBILE_FRIENDLY_CLICKS_PERCENTAGE_FIELD_NUMBER = 229;
private double mobileFriendlyClicksPercentage_;
/**
*
* The percentage of mobile clicks that go to a mobile-friendly page.
*
*
* optional double mobile_friendly_clicks_percentage = 229;
* @return Whether the mobileFriendlyClicksPercentage field is set.
*/
@java.lang.Override
public boolean hasMobileFriendlyClicksPercentage() {
return ((bitField2_ & 0x00002000) != 0);
}
/**
*
* The percentage of mobile clicks that go to a mobile-friendly page.
*
*
* optional double mobile_friendly_clicks_percentage = 229;
* @return The mobileFriendlyClicksPercentage.
*/
@java.lang.Override
public double getMobileFriendlyClicksPercentage() {
return mobileFriendlyClicksPercentage_;
}
public static final int OPTIMIZATION_SCORE_UPLIFT_FIELD_NUMBER = 247;
private double optimizationScoreUplift_;
/**
*
* Total optimization score uplift of all recommendations.
*
*
* optional double optimization_score_uplift = 247;
* @return Whether the optimizationScoreUplift field is set.
*/
@java.lang.Override
public boolean hasOptimizationScoreUplift() {
return ((bitField2_ & 0x00004000) != 0);
}
/**
*
* Total optimization score uplift of all recommendations.
*
*
* optional double optimization_score_uplift = 247;
* @return The optimizationScoreUplift.
*/
@java.lang.Override
public double getOptimizationScoreUplift() {
return optimizationScoreUplift_;
}
public static final int OPTIMIZATION_SCORE_URL_FIELD_NUMBER = 248;
private volatile java.lang.Object optimizationScoreUrl_;
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @return Whether the optimizationScoreUrl field is set.
*/
@java.lang.Override
public boolean hasOptimizationScoreUrl() {
return ((bitField2_ & 0x00008000) != 0);
}
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @return The optimizationScoreUrl.
*/
@java.lang.Override
public java.lang.String getOptimizationScoreUrl() {
java.lang.Object ref = optimizationScoreUrl_;
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();
optimizationScoreUrl_ = s;
return s;
}
}
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @return The bytes for optimizationScoreUrl.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getOptimizationScoreUrlBytes() {
java.lang.Object ref = optimizationScoreUrl_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
optimizationScoreUrl_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int ORGANIC_CLICKS_FIELD_NUMBER = 230;
private long organicClicks_;
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results for a particular query. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_clicks = 230;
* @return Whether the organicClicks field is set.
*/
@java.lang.Override
public boolean hasOrganicClicks() {
return ((bitField2_ & 0x00010000) != 0);
}
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results for a particular query. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_clicks = 230;
* @return The organicClicks.
*/
@java.lang.Override
public long getOrganicClicks() {
return organicClicks_;
}
public static final int ORGANIC_CLICKS_PER_QUERY_FIELD_NUMBER = 231;
private double organicClicksPerQuery_;
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results (organic_clicks) divided by the total number of searches that
* returned pages from your site (organic_queries). See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_clicks_per_query = 231;
* @return Whether the organicClicksPerQuery field is set.
*/
@java.lang.Override
public boolean hasOrganicClicksPerQuery() {
return ((bitField2_ & 0x00020000) != 0);
}
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results (organic_clicks) divided by the total number of searches that
* returned pages from your site (organic_queries). See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_clicks_per_query = 231;
* @return The organicClicksPerQuery.
*/
@java.lang.Override
public double getOrganicClicksPerQuery() {
return organicClicksPerQuery_;
}
public static final int ORGANIC_IMPRESSIONS_FIELD_NUMBER = 232;
private long organicImpressions_;
/**
*
* The number of listings for your site in the unpaid search results. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional int64 organic_impressions = 232;
* @return Whether the organicImpressions field is set.
*/
@java.lang.Override
public boolean hasOrganicImpressions() {
return ((bitField2_ & 0x00040000) != 0);
}
/**
*
* The number of listings for your site in the unpaid search results. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional int64 organic_impressions = 232;
* @return The organicImpressions.
*/
@java.lang.Override
public long getOrganicImpressions() {
return organicImpressions_;
}
public static final int ORGANIC_IMPRESSIONS_PER_QUERY_FIELD_NUMBER = 233;
private double organicImpressionsPerQuery_;
/**
*
* The number of times a page from your site was listed in the unpaid search
* results (organic_impressions) divided by the number of searches returning
* your site's listing in the unpaid results (organic_queries). See the help
* page at https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_impressions_per_query = 233;
* @return Whether the organicImpressionsPerQuery field is set.
*/
@java.lang.Override
public boolean hasOrganicImpressionsPerQuery() {
return ((bitField2_ & 0x00080000) != 0);
}
/**
*
* The number of times a page from your site was listed in the unpaid search
* results (organic_impressions) divided by the number of searches returning
* your site's listing in the unpaid results (organic_queries). See the help
* page at https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_impressions_per_query = 233;
* @return The organicImpressionsPerQuery.
*/
@java.lang.Override
public double getOrganicImpressionsPerQuery() {
return organicImpressionsPerQuery_;
}
public static final int ORGANIC_QUERIES_FIELD_NUMBER = 234;
private long organicQueries_;
/**
*
* The total number of searches that returned your site's listing in the
* unpaid results. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_queries = 234;
* @return Whether the organicQueries field is set.
*/
@java.lang.Override
public boolean hasOrganicQueries() {
return ((bitField2_ & 0x00100000) != 0);
}
/**
*
* The total number of searches that returned your site's listing in the
* unpaid results. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_queries = 234;
* @return The organicQueries.
*/
@java.lang.Override
public long getOrganicQueries() {
return organicQueries_;
}
public static final int PERCENT_NEW_VISITORS_FIELD_NUMBER = 235;
private double percentNewVisitors_;
/**
*
* Percentage of first-time sessions (from people who had never visited your
* site before). Imported from Google Analytics.
*
*
* optional double percent_new_visitors = 235;
* @return Whether the percentNewVisitors field is set.
*/
@java.lang.Override
public boolean hasPercentNewVisitors() {
return ((bitField2_ & 0x00200000) != 0);
}
/**
*
* Percentage of first-time sessions (from people who had never visited your
* site before). Imported from Google Analytics.
*
*
* optional double percent_new_visitors = 235;
* @return The percentNewVisitors.
*/
@java.lang.Override
public double getPercentNewVisitors() {
return percentNewVisitors_;
}
public static final int PHONE_CALLS_FIELD_NUMBER = 236;
private long phoneCalls_;
/**
*
* Number of offline phone calls.
*
*
* optional int64 phone_calls = 236;
* @return Whether the phoneCalls field is set.
*/
@java.lang.Override
public boolean hasPhoneCalls() {
return ((bitField2_ & 0x00400000) != 0);
}
/**
*
* Number of offline phone calls.
*
*
* optional int64 phone_calls = 236;
* @return The phoneCalls.
*/
@java.lang.Override
public long getPhoneCalls() {
return phoneCalls_;
}
public static final int PHONE_IMPRESSIONS_FIELD_NUMBER = 237;
private long phoneImpressions_;
/**
*
* Number of offline phone impressions.
*
*
* optional int64 phone_impressions = 237;
* @return Whether the phoneImpressions field is set.
*/
@java.lang.Override
public boolean hasPhoneImpressions() {
return ((bitField2_ & 0x00800000) != 0);
}
/**
*
* Number of offline phone impressions.
*
*
* optional int64 phone_impressions = 237;
* @return The phoneImpressions.
*/
@java.lang.Override
public long getPhoneImpressions() {
return phoneImpressions_;
}
public static final int PHONE_THROUGH_RATE_FIELD_NUMBER = 238;
private double phoneThroughRate_;
/**
*
* Number of phone calls received (phone_calls) divided by the number of
* times your phone number is shown (phone_impressions).
*
*
* optional double phone_through_rate = 238;
* @return Whether the phoneThroughRate field is set.
*/
@java.lang.Override
public boolean hasPhoneThroughRate() {
return ((bitField2_ & 0x01000000) != 0);
}
/**
*
* Number of phone calls received (phone_calls) divided by the number of
* times your phone number is shown (phone_impressions).
*
*
* optional double phone_through_rate = 238;
* @return The phoneThroughRate.
*/
@java.lang.Override
public double getPhoneThroughRate() {
return phoneThroughRate_;
}
public static final int RELATIVE_CTR_FIELD_NUMBER = 239;
private double relativeCtr_;
/**
*
* Your clickthrough rate (Ctr) divided by the average clickthrough rate of
* all advertisers on the websites that show your ads. Measures how your ads
* perform on Display Network sites compared to other ads on the same sites.
*
*
* optional double relative_ctr = 239;
* @return Whether the relativeCtr field is set.
*/
@java.lang.Override
public boolean hasRelativeCtr() {
return ((bitField2_ & 0x02000000) != 0);
}
/**
*
* Your clickthrough rate (Ctr) divided by the average clickthrough rate of
* all advertisers on the websites that show your ads. Measures how your ads
* perform on Display Network sites compared to other ads on the same sites.
*
*
* optional double relative_ctr = 239;
* @return The relativeCtr.
*/
@java.lang.Override
public double getRelativeCtr() {
return relativeCtr_;
}
public static final int SEARCH_ABSOLUTE_TOP_IMPRESSION_SHARE_FIELD_NUMBER = 136;
private double searchAbsoluteTopImpressionShare_;
/**
*
* The percentage of the customer's Shopping or Search ad impressions that are
* shown in the most prominent Shopping position. See
* https://support.google.com/google-ads/answer/7501826
* for details. Any value below 0.1 is reported as 0.0999.
*
*
* optional double search_absolute_top_impression_share = 136;
* @return Whether the searchAbsoluteTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchAbsoluteTopImpressionShare() {
return ((bitField2_ & 0x04000000) != 0);
}
/**
*
* The percentage of the customer's Shopping or Search ad impressions that are
* shown in the most prominent Shopping position. See
* https://support.google.com/google-ads/answer/7501826
* for details. Any value below 0.1 is reported as 0.0999.
*
*
* optional double search_absolute_top_impression_share = 136;
* @return The searchAbsoluteTopImpressionShare.
*/
@java.lang.Override
public double getSearchAbsoluteTopImpressionShare() {
return searchAbsoluteTopImpressionShare_;
}
public static final int SEARCH_BUDGET_LOST_ABSOLUTE_TOP_IMPRESSION_SHARE_FIELD_NUMBER = 137;
private double searchBudgetLostAbsoluteTopImpressionShare_;
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to a low budget. Note: Search
* budget lost absolute top impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_absolute_top_impression_share = 137;
* @return Whether the searchBudgetLostAbsoluteTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchBudgetLostAbsoluteTopImpressionShare() {
return ((bitField2_ & 0x08000000) != 0);
}
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to a low budget. Note: Search
* budget lost absolute top impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_absolute_top_impression_share = 137;
* @return The searchBudgetLostAbsoluteTopImpressionShare.
*/
@java.lang.Override
public double getSearchBudgetLostAbsoluteTopImpressionShare() {
return searchBudgetLostAbsoluteTopImpressionShare_;
}
public static final int SEARCH_BUDGET_LOST_IMPRESSION_SHARE_FIELD_NUMBER = 138;
private double searchBudgetLostImpressionShare_;
/**
*
* The estimated percent of times that your ad was eligible to show on the
* Search Network but didn't because your budget was too low. Note: Search
* budget lost impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_impression_share = 138;
* @return Whether the searchBudgetLostImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchBudgetLostImpressionShare() {
return ((bitField2_ & 0x10000000) != 0);
}
/**
*
* The estimated percent of times that your ad was eligible to show on the
* Search Network but didn't because your budget was too low. Note: Search
* budget lost impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_impression_share = 138;
* @return The searchBudgetLostImpressionShare.
*/
@java.lang.Override
public double getSearchBudgetLostImpressionShare() {
return searchBudgetLostImpressionShare_;
}
public static final int SEARCH_BUDGET_LOST_TOP_IMPRESSION_SHARE_FIELD_NUMBER = 139;
private double searchBudgetLostTopImpressionShare_;
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to a low budget. Note: Search
* budget lost top impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_top_impression_share = 139;
* @return Whether the searchBudgetLostTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchBudgetLostTopImpressionShare() {
return ((bitField2_ & 0x20000000) != 0);
}
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to a low budget. Note: Search
* budget lost top impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_top_impression_share = 139;
* @return The searchBudgetLostTopImpressionShare.
*/
@java.lang.Override
public double getSearchBudgetLostTopImpressionShare() {
return searchBudgetLostTopImpressionShare_;
}
public static final int SEARCH_CLICK_SHARE_FIELD_NUMBER = 140;
private double searchClickShare_;
/**
*
* The number of clicks you've received on the Search Network
* divided by the estimated number of clicks you were eligible to receive.
* Note: Search click share is reported in the range of 0.1 to 1. Any value
* below 0.1 is reported as 0.0999.
*
*
* optional double search_click_share = 140;
* @return Whether the searchClickShare field is set.
*/
@java.lang.Override
public boolean hasSearchClickShare() {
return ((bitField2_ & 0x40000000) != 0);
}
/**
*
* The number of clicks you've received on the Search Network
* divided by the estimated number of clicks you were eligible to receive.
* Note: Search click share is reported in the range of 0.1 to 1. Any value
* below 0.1 is reported as 0.0999.
*
*
* optional double search_click_share = 140;
* @return The searchClickShare.
*/
@java.lang.Override
public double getSearchClickShare() {
return searchClickShare_;
}
public static final int SEARCH_EXACT_MATCH_IMPRESSION_SHARE_FIELD_NUMBER = 141;
private double searchExactMatchImpressionShare_;
/**
*
* The impressions you've received divided by the estimated number of
* impressions you were eligible to receive on the Search Network for search
* terms that matched your keywords exactly (or were close variants of your
* keyword), regardless of your keyword match types. Note: Search exact match
* impression share is reported in the range of 0.1 to 1. Any value below 0.1
* is reported as 0.0999.
*
*
* optional double search_exact_match_impression_share = 141;
* @return Whether the searchExactMatchImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchExactMatchImpressionShare() {
return ((bitField2_ & 0x80000000) != 0);
}
/**
*
* The impressions you've received divided by the estimated number of
* impressions you were eligible to receive on the Search Network for search
* terms that matched your keywords exactly (or were close variants of your
* keyword), regardless of your keyword match types. Note: Search exact match
* impression share is reported in the range of 0.1 to 1. Any value below 0.1
* is reported as 0.0999.
*
*
* optional double search_exact_match_impression_share = 141;
* @return The searchExactMatchImpressionShare.
*/
@java.lang.Override
public double getSearchExactMatchImpressionShare() {
return searchExactMatchImpressionShare_;
}
public static final int SEARCH_IMPRESSION_SHARE_FIELD_NUMBER = 142;
private double searchImpressionShare_;
/**
*
* The impressions you've received on the Search Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Search impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_impression_share = 142;
* @return Whether the searchImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchImpressionShare() {
return ((bitField3_ & 0x00000001) != 0);
}
/**
*
* The impressions you've received on the Search Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Search impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_impression_share = 142;
* @return The searchImpressionShare.
*/
@java.lang.Override
public double getSearchImpressionShare() {
return searchImpressionShare_;
}
public static final int SEARCH_RANK_LOST_ABSOLUTE_TOP_IMPRESSION_SHARE_FIELD_NUMBER = 143;
private double searchRankLostAbsoluteTopImpressionShare_;
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost absolute top impression share is reported in the
* range of 0 to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_absolute_top_impression_share = 143;
* @return Whether the searchRankLostAbsoluteTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchRankLostAbsoluteTopImpressionShare() {
return ((bitField3_ & 0x00000002) != 0);
}
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost absolute top impression share is reported in the
* range of 0 to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_absolute_top_impression_share = 143;
* @return The searchRankLostAbsoluteTopImpressionShare.
*/
@java.lang.Override
public double getSearchRankLostAbsoluteTopImpressionShare() {
return searchRankLostAbsoluteTopImpressionShare_;
}
public static final int SEARCH_RANK_LOST_IMPRESSION_SHARE_FIELD_NUMBER = 144;
private double searchRankLostImpressionShare_;
/**
*
* The estimated percentage of impressions on the Search Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Search rank lost impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_impression_share = 144;
* @return Whether the searchRankLostImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchRankLostImpressionShare() {
return ((bitField3_ & 0x00000004) != 0);
}
/**
*
* The estimated percentage of impressions on the Search Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Search rank lost impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_impression_share = 144;
* @return The searchRankLostImpressionShare.
*/
@java.lang.Override
public double getSearchRankLostImpressionShare() {
return searchRankLostImpressionShare_;
}
public static final int SEARCH_RANK_LOST_TOP_IMPRESSION_SHARE_FIELD_NUMBER = 145;
private double searchRankLostTopImpressionShare_;
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost top impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_top_impression_share = 145;
* @return Whether the searchRankLostTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchRankLostTopImpressionShare() {
return ((bitField3_ & 0x00000008) != 0);
}
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost top impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_top_impression_share = 145;
* @return The searchRankLostTopImpressionShare.
*/
@java.lang.Override
public double getSearchRankLostTopImpressionShare() {
return searchRankLostTopImpressionShare_;
}
public static final int SEARCH_TOP_IMPRESSION_SHARE_FIELD_NUMBER = 146;
private double searchTopImpressionShare_;
/**
*
* The impressions you've received in the top location (anywhere above the
* organic search results) compared to the estimated number of impressions you
* were eligible to receive in the top location.
* Note: Search top impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_top_impression_share = 146;
* @return Whether the searchTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchTopImpressionShare() {
return ((bitField3_ & 0x00000010) != 0);
}
/**
*
* The impressions you've received in the top location (anywhere above the
* organic search results) compared to the estimated number of impressions you
* were eligible to receive in the top location.
* Note: Search top impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_top_impression_share = 146;
* @return The searchTopImpressionShare.
*/
@java.lang.Override
public double getSearchTopImpressionShare() {
return searchTopImpressionShare_;
}
public static final int SPEED_SCORE_FIELD_NUMBER = 147;
private long speedScore_;
/**
*
* A measure of how quickly your page loads after clicks on your mobile ads.
* The score is a range from 1 to 10, 10 being the fastest.
*
*
* optional int64 speed_score = 147;
* @return Whether the speedScore field is set.
*/
@java.lang.Override
public boolean hasSpeedScore() {
return ((bitField3_ & 0x00000020) != 0);
}
/**
*
* A measure of how quickly your page loads after clicks on your mobile ads.
* The score is a range from 1 to 10, 10 being the fastest.
*
*
* optional int64 speed_score = 147;
* @return The speedScore.
*/
@java.lang.Override
public long getSpeedScore() {
return speedScore_;
}
public static final int TOP_IMPRESSION_PERCENTAGE_FIELD_NUMBER = 148;
private double topImpressionPercentage_;
/**
*
* The percent of your ad impressions that are shown anywhere above the
* organic search results.
*
*
* optional double top_impression_percentage = 148;
* @return Whether the topImpressionPercentage field is set.
*/
@java.lang.Override
public boolean hasTopImpressionPercentage() {
return ((bitField3_ & 0x00000040) != 0);
}
/**
*
* The percent of your ad impressions that are shown anywhere above the
* organic search results.
*
*
* optional double top_impression_percentage = 148;
* @return The topImpressionPercentage.
*/
@java.lang.Override
public double getTopImpressionPercentage() {
return topImpressionPercentage_;
}
public static final int VALID_ACCELERATED_MOBILE_PAGES_CLICKS_PERCENTAGE_FIELD_NUMBER = 149;
private double validAcceleratedMobilePagesClicksPercentage_;
/**
*
* The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages
* that reach a valid AMP page.
*
*
* optional double valid_accelerated_mobile_pages_clicks_percentage = 149;
* @return Whether the validAcceleratedMobilePagesClicksPercentage field is set.
*/
@java.lang.Override
public boolean hasValidAcceleratedMobilePagesClicksPercentage() {
return ((bitField3_ & 0x00000080) != 0);
}
/**
*
* The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages
* that reach a valid AMP page.
*
*
* optional double valid_accelerated_mobile_pages_clicks_percentage = 149;
* @return The validAcceleratedMobilePagesClicksPercentage.
*/
@java.lang.Override
public double getValidAcceleratedMobilePagesClicksPercentage() {
return validAcceleratedMobilePagesClicksPercentage_;
}
public static final int VALUE_PER_ALL_CONVERSIONS_FIELD_NUMBER = 150;
private double valuePerAllConversions_;
/**
*
* The value of all conversions divided by the number of all conversions.
*
*
* optional double value_per_all_conversions = 150;
* @return Whether the valuePerAllConversions field is set.
*/
@java.lang.Override
public boolean hasValuePerAllConversions() {
return ((bitField3_ & 0x00000100) != 0);
}
/**
*
* The value of all conversions divided by the number of all conversions.
*
*
* optional double value_per_all_conversions = 150;
* @return The valuePerAllConversions.
*/
@java.lang.Override
public double getValuePerAllConversions() {
return valuePerAllConversions_;
}
public static final int VALUE_PER_ALL_CONVERSIONS_BY_CONVERSION_DATE_FIELD_NUMBER = 244;
private double valuePerAllConversionsByConversionDate_;
/**
*
* The value of all conversions divided by the number of all conversions. When
* this column is selected with date, the values in date column means the
* conversion date. Details for the by_conversion_date columns are available
* at https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_all_conversions_by_conversion_date = 244;
* @return Whether the valuePerAllConversionsByConversionDate field is set.
*/
@java.lang.Override
public boolean hasValuePerAllConversionsByConversionDate() {
return ((bitField3_ & 0x00000200) != 0);
}
/**
*
* The value of all conversions divided by the number of all conversions. When
* this column is selected with date, the values in date column means the
* conversion date. Details for the by_conversion_date columns are available
* at https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_all_conversions_by_conversion_date = 244;
* @return The valuePerAllConversionsByConversionDate.
*/
@java.lang.Override
public double getValuePerAllConversionsByConversionDate() {
return valuePerAllConversionsByConversionDate_;
}
public static final int VALUE_PER_CONVERSION_FIELD_NUMBER = 151;
private double valuePerConversion_;
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double value_per_conversion = 151;
* @return Whether the valuePerConversion field is set.
*/
@java.lang.Override
public boolean hasValuePerConversion() {
return ((bitField3_ & 0x00000400) != 0);
}
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double value_per_conversion = 151;
* @return The valuePerConversion.
*/
@java.lang.Override
public double getValuePerConversion() {
return valuePerConversion_;
}
public static final int VALUE_PER_CONVERSIONS_BY_CONVERSION_DATE_FIELD_NUMBER = 245;
private double valuePerConversionsByConversionDate_;
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions. When this column is selected with
* date, the values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_conversions_by_conversion_date = 245;
* @return Whether the valuePerConversionsByConversionDate field is set.
*/
@java.lang.Override
public boolean hasValuePerConversionsByConversionDate() {
return ((bitField3_ & 0x00000800) != 0);
}
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions. When this column is selected with
* date, the values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_conversions_by_conversion_date = 245;
* @return The valuePerConversionsByConversionDate.
*/
@java.lang.Override
public double getValuePerConversionsByConversionDate() {
return valuePerConversionsByConversionDate_;
}
public static final int VALUE_PER_CURRENT_MODEL_ATTRIBUTED_CONVERSION_FIELD_NUMBER = 152;
private double valuePerCurrentModelAttributedConversion_;
/**
*
* The value of current model attributed conversions divided by the number of
* the conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double value_per_current_model_attributed_conversion = 152;
* @return Whether the valuePerCurrentModelAttributedConversion field is set.
*/
@java.lang.Override
public boolean hasValuePerCurrentModelAttributedConversion() {
return ((bitField3_ & 0x00001000) != 0);
}
/**
*
* The value of current model attributed conversions divided by the number of
* the conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double value_per_current_model_attributed_conversion = 152;
* @return The valuePerCurrentModelAttributedConversion.
*/
@java.lang.Override
public double getValuePerCurrentModelAttributedConversion() {
return valuePerCurrentModelAttributedConversion_;
}
public static final int VIDEO_QUARTILE_P100_RATE_FIELD_NUMBER = 132;
private double videoQuartileP100Rate_;
/**
*
* Percentage of impressions where the viewer watched all of your video.
*
*
* optional double video_quartile_p100_rate = 132;
* @return Whether the videoQuartileP100Rate field is set.
*/
@java.lang.Override
public boolean hasVideoQuartileP100Rate() {
return ((bitField3_ & 0x00002000) != 0);
}
/**
*
* Percentage of impressions where the viewer watched all of your video.
*
*
* optional double video_quartile_p100_rate = 132;
* @return The videoQuartileP100Rate.
*/
@java.lang.Override
public double getVideoQuartileP100Rate() {
return videoQuartileP100Rate_;
}
public static final int VIDEO_QUARTILE_P25_RATE_FIELD_NUMBER = 133;
private double videoQuartileP25Rate_;
/**
*
* Percentage of impressions where the viewer watched 25% of your video.
*
*
* optional double video_quartile_p25_rate = 133;
* @return Whether the videoQuartileP25Rate field is set.
*/
@java.lang.Override
public boolean hasVideoQuartileP25Rate() {
return ((bitField3_ & 0x00004000) != 0);
}
/**
*
* Percentage of impressions where the viewer watched 25% of your video.
*
*
* optional double video_quartile_p25_rate = 133;
* @return The videoQuartileP25Rate.
*/
@java.lang.Override
public double getVideoQuartileP25Rate() {
return videoQuartileP25Rate_;
}
public static final int VIDEO_QUARTILE_P50_RATE_FIELD_NUMBER = 134;
private double videoQuartileP50Rate_;
/**
*
* Percentage of impressions where the viewer watched 50% of your video.
*
*
* optional double video_quartile_p50_rate = 134;
* @return Whether the videoQuartileP50Rate field is set.
*/
@java.lang.Override
public boolean hasVideoQuartileP50Rate() {
return ((bitField3_ & 0x00008000) != 0);
}
/**
*
* Percentage of impressions where the viewer watched 50% of your video.
*
*
* optional double video_quartile_p50_rate = 134;
* @return The videoQuartileP50Rate.
*/
@java.lang.Override
public double getVideoQuartileP50Rate() {
return videoQuartileP50Rate_;
}
public static final int VIDEO_QUARTILE_P75_RATE_FIELD_NUMBER = 135;
private double videoQuartileP75Rate_;
/**
*
* Percentage of impressions where the viewer watched 75% of your video.
*
*
* optional double video_quartile_p75_rate = 135;
* @return Whether the videoQuartileP75Rate field is set.
*/
@java.lang.Override
public boolean hasVideoQuartileP75Rate() {
return ((bitField3_ & 0x00010000) != 0);
}
/**
*
* Percentage of impressions where the viewer watched 75% of your video.
*
*
* optional double video_quartile_p75_rate = 135;
* @return The videoQuartileP75Rate.
*/
@java.lang.Override
public double getVideoQuartileP75Rate() {
return videoQuartileP75Rate_;
}
public static final int VIDEO_VIEW_RATE_FIELD_NUMBER = 153;
private double videoViewRate_;
/**
*
* The number of views your TrueView video ad receives divided by its number
* of impressions, including thumbnail impressions for TrueView in-display
* ads.
*
*
* optional double video_view_rate = 153;
* @return Whether the videoViewRate field is set.
*/
@java.lang.Override
public boolean hasVideoViewRate() {
return ((bitField3_ & 0x00020000) != 0);
}
/**
*
* The number of views your TrueView video ad receives divided by its number
* of impressions, including thumbnail impressions for TrueView in-display
* ads.
*
*
* optional double video_view_rate = 153;
* @return The videoViewRate.
*/
@java.lang.Override
public double getVideoViewRate() {
return videoViewRate_;
}
public static final int VIDEO_VIEWS_FIELD_NUMBER = 154;
private long videoViews_;
/**
*
* The number of times your video ads were viewed.
*
*
* optional int64 video_views = 154;
* @return Whether the videoViews field is set.
*/
@java.lang.Override
public boolean hasVideoViews() {
return ((bitField3_ & 0x00040000) != 0);
}
/**
*
* The number of times your video ads were viewed.
*
*
* optional int64 video_views = 154;
* @return The videoViews.
*/
@java.lang.Override
public long getVideoViews() {
return videoViews_;
}
public static final int VIEW_THROUGH_CONVERSIONS_FIELD_NUMBER = 155;
private long viewThroughConversions_;
/**
*
* The total number of view-through conversions.
* These happen when a customer sees an image or rich media ad, then later
* completes a conversion on your site without interacting with (for example,
* clicking on) another ad.
*
*
* optional int64 view_through_conversions = 155;
* @return Whether the viewThroughConversions field is set.
*/
@java.lang.Override
public boolean hasViewThroughConversions() {
return ((bitField3_ & 0x00080000) != 0);
}
/**
*
* The total number of view-through conversions.
* These happen when a customer sees an image or rich media ad, then later
* completes a conversion on your site without interacting with (for example,
* clicking on) another ad.
*
*
* optional int64 view_through_conversions = 155;
* @return The viewThroughConversions.
*/
@java.lang.Override
public long getViewThroughConversions() {
return viewThroughConversions_;
}
public static final int SK_AD_NETWORK_CONVERSIONS_FIELD_NUMBER = 246;
private long skAdNetworkConversions_;
/**
*
* The number of iOS Store Kit Ad Network conversions.
*
*
* int64 sk_ad_network_conversions = 246;
* @return The skAdNetworkConversions.
*/
@java.lang.Override
public long getSkAdNetworkConversions() {
return skAdNetworkConversions_;
}
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 (historicalCreativeQualityScore_ != com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNSPECIFIED.getNumber()) {
output.writeEnum(80, historicalCreativeQualityScore_);
}
if (historicalLandingPageQualityScore_ != com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNSPECIFIED.getNumber()) {
output.writeEnum(81, historicalLandingPageQualityScore_);
}
if (historicalSearchPredictedCtr_ != com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNSPECIFIED.getNumber()) {
output.writeEnum(83, historicalSearchPredictedCtr_);
}
if (getInteractionEventTypesList().size() > 0) {
output.writeUInt32NoTag(802);
output.writeUInt32NoTag(interactionEventTypesMemoizedSerializedSize);
}
for (int i = 0; i < interactionEventTypes_.size(); i++) {
output.writeEnumNoTag(interactionEventTypes_.get(i));
}
if (((bitField1_ & 0x00000001) != 0)) {
output.writeInt64(131, clicks_);
}
if (((bitField3_ & 0x00002000) != 0)) {
output.writeDouble(132, videoQuartileP100Rate_);
}
if (((bitField3_ & 0x00004000) != 0)) {
output.writeDouble(133, videoQuartileP25Rate_);
}
if (((bitField3_ & 0x00008000) != 0)) {
output.writeDouble(134, videoQuartileP50Rate_);
}
if (((bitField3_ & 0x00010000) != 0)) {
output.writeDouble(135, videoQuartileP75Rate_);
}
if (((bitField2_ & 0x04000000) != 0)) {
output.writeDouble(136, searchAbsoluteTopImpressionShare_);
}
if (((bitField2_ & 0x08000000) != 0)) {
output.writeDouble(137, searchBudgetLostAbsoluteTopImpressionShare_);
}
if (((bitField2_ & 0x10000000) != 0)) {
output.writeDouble(138, searchBudgetLostImpressionShare_);
}
if (((bitField2_ & 0x20000000) != 0)) {
output.writeDouble(139, searchBudgetLostTopImpressionShare_);
}
if (((bitField2_ & 0x40000000) != 0)) {
output.writeDouble(140, searchClickShare_);
}
if (((bitField2_ & 0x80000000) != 0)) {
output.writeDouble(141, searchExactMatchImpressionShare_);
}
if (((bitField3_ & 0x00000001) != 0)) {
output.writeDouble(142, searchImpressionShare_);
}
if (((bitField3_ & 0x00000002) != 0)) {
output.writeDouble(143, searchRankLostAbsoluteTopImpressionShare_);
}
if (((bitField3_ & 0x00000004) != 0)) {
output.writeDouble(144, searchRankLostImpressionShare_);
}
if (((bitField3_ & 0x00000008) != 0)) {
output.writeDouble(145, searchRankLostTopImpressionShare_);
}
if (((bitField3_ & 0x00000010) != 0)) {
output.writeDouble(146, searchTopImpressionShare_);
}
if (((bitField3_ & 0x00000020) != 0)) {
output.writeInt64(147, speedScore_);
}
if (((bitField3_ & 0x00000040) != 0)) {
output.writeDouble(148, topImpressionPercentage_);
}
if (((bitField3_ & 0x00000080) != 0)) {
output.writeDouble(149, validAcceleratedMobilePagesClicksPercentage_);
}
if (((bitField3_ & 0x00000100) != 0)) {
output.writeDouble(150, valuePerAllConversions_);
}
if (((bitField3_ & 0x00000400) != 0)) {
output.writeDouble(151, valuePerConversion_);
}
if (((bitField3_ & 0x00001000) != 0)) {
output.writeDouble(152, valuePerCurrentModelAttributedConversion_);
}
if (((bitField3_ & 0x00020000) != 0)) {
output.writeDouble(153, videoViewRate_);
}
if (((bitField3_ & 0x00040000) != 0)) {
output.writeInt64(154, videoViews_);
}
if (((bitField3_ & 0x00080000) != 0)) {
output.writeInt64(155, viewThroughConversions_);
}
if (((bitField1_ & 0x00000002) != 0)) {
output.writeInt64(156, combinedClicks_);
}
if (((bitField1_ & 0x00000004) != 0)) {
output.writeDouble(157, combinedClicksPerQuery_);
}
if (((bitField1_ & 0x00000008) != 0)) {
output.writeInt64(158, combinedQueries_);
}
if (((bitField1_ & 0x00000010) != 0)) {
output.writeDouble(159, contentBudgetLostImpressionShare_);
}
if (((bitField1_ & 0x00000020) != 0)) {
output.writeDouble(160, contentImpressionShare_);
}
if (((bitField1_ & 0x00000040) != 0)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 161, conversionLastReceivedRequestDateTime_);
}
if (((bitField1_ & 0x00000080) != 0)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 162, conversionLastConversionDate_);
}
if (((bitField1_ & 0x00000100) != 0)) {
output.writeDouble(163, contentRankLostImpressionShare_);
}
if (((bitField1_ & 0x00000200) != 0)) {
output.writeDouble(164, conversionsFromInteractionsRate_);
}
if (((bitField1_ & 0x00000400) != 0)) {
output.writeDouble(165, conversionsValue_);
}
if (((bitField1_ & 0x00000800) != 0)) {
output.writeDouble(166, conversionsValuePerCost_);
}
if (((bitField1_ & 0x00001000) != 0)) {
output.writeDouble(167, conversionsFromInteractionsValuePerInteraction_);
}
if (((bitField1_ & 0x00002000) != 0)) {
output.writeDouble(168, conversions_);
}
if (((bitField1_ & 0x00004000) != 0)) {
output.writeInt64(169, costMicros_);
}
if (((bitField1_ & 0x00008000) != 0)) {
output.writeDouble(170, costPerAllConversions_);
}
if (((bitField1_ & 0x00010000) != 0)) {
output.writeDouble(171, costPerConversion_);
}
if (((bitField1_ & 0x00020000) != 0)) {
output.writeDouble(172, costPerCurrentModelAttributedConversion_);
}
if (((bitField1_ & 0x00040000) != 0)) {
output.writeDouble(173, crossDeviceConversions_);
}
if (((bitField1_ & 0x00080000) != 0)) {
output.writeDouble(174, ctr_);
}
if (((bitField1_ & 0x00100000) != 0)) {
output.writeDouble(175, currentModelAttributedConversions_);
}
if (((bitField1_ & 0x00200000) != 0)) {
output.writeDouble(176, currentModelAttributedConversionsFromInteractionsRate_);
}
if (((bitField1_ & 0x00400000) != 0)) {
output.writeDouble(177, currentModelAttributedConversionsFromInteractionsValuePerInteraction_);
}
if (((bitField1_ & 0x00800000) != 0)) {
output.writeDouble(178, currentModelAttributedConversionsValue_);
}
if (((bitField1_ & 0x01000000) != 0)) {
output.writeDouble(179, currentModelAttributedConversionsValuePerCost_);
}
if (((bitField1_ & 0x02000000) != 0)) {
output.writeDouble(180, engagementRate_);
}
if (((bitField1_ & 0x04000000) != 0)) {
output.writeInt64(181, engagements_);
}
if (((bitField0_ & 0x00000001) != 0)) {
output.writeDouble(183, absoluteTopImpressionPercentage_);
}
if (((bitField0_ & 0x00000002) != 0)) {
output.writeDouble(184, activeViewCpm_);
}
if (((bitField0_ & 0x00000004) != 0)) {
output.writeDouble(185, activeViewCtr_);
}
if (((bitField0_ & 0x00000008) != 0)) {
output.writeInt64(186, activeViewImpressions_);
}
if (((bitField0_ & 0x00000010) != 0)) {
output.writeDouble(187, activeViewMeasurability_);
}
if (((bitField0_ & 0x00000020) != 0)) {
output.writeInt64(188, activeViewMeasurableCostMicros_);
}
if (((bitField0_ & 0x00000040) != 0)) {
output.writeInt64(189, activeViewMeasurableImpressions_);
}
if (((bitField0_ & 0x00000080) != 0)) {
output.writeDouble(190, activeViewViewability_);
}
if (((bitField0_ & 0x00000100) != 0)) {
output.writeDouble(191, allConversionsFromInteractionsRate_);
}
if (((bitField0_ & 0x00000200) != 0)) {
output.writeDouble(192, allConversionsValue_);
}
if (((bitField0_ & 0x00000400) != 0)) {
output.writeDouble(193, allConversions_);
}
if (((bitField0_ & 0x00000800) != 0)) {
output.writeDouble(194, allConversionsValuePerCost_);
}
if (((bitField0_ & 0x00001000) != 0)) {
output.writeDouble(195, allConversionsFromClickToCall_);
}
if (((bitField0_ & 0x00002000) != 0)) {
output.writeDouble(196, allConversionsFromDirections_);
}
if (((bitField0_ & 0x00004000) != 0)) {
output.writeDouble(197, allConversionsFromInteractionsValuePerInteraction_);
}
if (((bitField0_ & 0x00008000) != 0)) {
output.writeDouble(198, allConversionsFromMenu_);
}
if (((bitField0_ & 0x00010000) != 0)) {
output.writeDouble(199, allConversionsFromOrder_);
}
if (((bitField0_ & 0x00020000) != 0)) {
output.writeDouble(200, allConversionsFromOtherEngagement_);
}
if (((bitField0_ & 0x00040000) != 0)) {
output.writeDouble(201, allConversionsFromStoreVisit_);
}
if (((bitField0_ & 0x00080000) != 0)) {
output.writeDouble(202, allConversionsFromStoreWebsite_);
}
if (((bitField0_ & 0x00100000) != 0)) {
output.writeDouble(203, averageCost_);
}
if (((bitField0_ & 0x00200000) != 0)) {
output.writeDouble(204, averageCpc_);
}
if (((bitField0_ & 0x00400000) != 0)) {
output.writeDouble(205, averageCpe_);
}
if (((bitField0_ & 0x00800000) != 0)) {
output.writeDouble(206, averageCpm_);
}
if (((bitField0_ & 0x01000000) != 0)) {
output.writeDouble(207, averageCpv_);
}
if (((bitField0_ & 0x02000000) != 0)) {
output.writeDouble(208, averagePageViews_);
}
if (((bitField0_ & 0x04000000) != 0)) {
output.writeDouble(209, averageTimeOnSite_);
}
if (((bitField0_ & 0x08000000) != 0)) {
output.writeDouble(210, benchmarkAverageMaxCpc_);
}
if (((bitField0_ & 0x40000000) != 0)) {
output.writeDouble(211, benchmarkCtr_);
}
if (((bitField0_ & 0x80000000) != 0)) {
output.writeDouble(212, bounceRate_);
}
if (((bitField1_ & 0x08000000) != 0)) {
output.writeDouble(213, hotelAverageLeadValueMicros_);
}
if (((bitField1_ & 0x40000000) != 0)) {
output.writeDouble(214, hotelPriceDifferencePercentage_);
}
if (((bitField1_ & 0x80000000) != 0)) {
output.writeInt64(215, hotelEligibleImpressions_);
}
if (((bitField2_ & 0x00000001) != 0)) {
output.writeInt64(216, historicalQualityScore_);
}
if (((bitField2_ & 0x00000002) != 0)) {
output.writeInt64(217, gmailForwards_);
}
if (((bitField2_ & 0x00000004) != 0)) {
output.writeInt64(218, gmailSaves_);
}
if (((bitField2_ & 0x00000008) != 0)) {
output.writeInt64(219, gmailSecondaryClicks_);
}
if (((bitField2_ & 0x00000010) != 0)) {
output.writeInt64(220, impressionsFromStoreReach_);
}
if (((bitField2_ & 0x00000020) != 0)) {
output.writeInt64(221, impressions_);
}
if (((bitField2_ & 0x00000040) != 0)) {
output.writeDouble(222, interactionRate_);
}
if (((bitField2_ & 0x00000080) != 0)) {
output.writeInt64(223, interactions_);
}
if (((bitField2_ & 0x00000100) != 0)) {
output.writeDouble(224, invalidClickRate_);
}
if (((bitField2_ & 0x00000200) != 0)) {
output.writeInt64(225, invalidClicks_);
}
if (((bitField2_ & 0x00000400) != 0)) {
output.writeInt64(226, messageChats_);
}
if (((bitField2_ & 0x00000800) != 0)) {
output.writeInt64(227, messageImpressions_);
}
if (((bitField2_ & 0x00001000) != 0)) {
output.writeDouble(228, messageChatRate_);
}
if (((bitField2_ & 0x00002000) != 0)) {
output.writeDouble(229, mobileFriendlyClicksPercentage_);
}
if (((bitField2_ & 0x00010000) != 0)) {
output.writeInt64(230, organicClicks_);
}
if (((bitField2_ & 0x00020000) != 0)) {
output.writeDouble(231, organicClicksPerQuery_);
}
if (((bitField2_ & 0x00040000) != 0)) {
output.writeInt64(232, organicImpressions_);
}
if (((bitField2_ & 0x00080000) != 0)) {
output.writeDouble(233, organicImpressionsPerQuery_);
}
if (((bitField2_ & 0x00100000) != 0)) {
output.writeInt64(234, organicQueries_);
}
if (((bitField2_ & 0x00200000) != 0)) {
output.writeDouble(235, percentNewVisitors_);
}
if (((bitField2_ & 0x00400000) != 0)) {
output.writeInt64(236, phoneCalls_);
}
if (((bitField2_ & 0x00800000) != 0)) {
output.writeInt64(237, phoneImpressions_);
}
if (((bitField2_ & 0x01000000) != 0)) {
output.writeDouble(238, phoneThroughRate_);
}
if (((bitField2_ & 0x02000000) != 0)) {
output.writeDouble(239, relativeCtr_);
}
if (java.lang.Double.doubleToRawLongBits(allConversionsValueByConversionDate_) != 0) {
output.writeDouble(240, allConversionsValueByConversionDate_);
}
if (java.lang.Double.doubleToRawLongBits(allConversionsByConversionDate_) != 0) {
output.writeDouble(241, allConversionsByConversionDate_);
}
if (java.lang.Double.doubleToRawLongBits(conversionsValueByConversionDate_) != 0) {
output.writeDouble(242, conversionsValueByConversionDate_);
}
if (java.lang.Double.doubleToRawLongBits(conversionsByConversionDate_) != 0) {
output.writeDouble(243, conversionsByConversionDate_);
}
if (((bitField3_ & 0x00000200) != 0)) {
output.writeDouble(244, valuePerAllConversionsByConversionDate_);
}
if (((bitField3_ & 0x00000800) != 0)) {
output.writeDouble(245, valuePerConversionsByConversionDate_);
}
if (skAdNetworkConversions_ != 0L) {
output.writeInt64(246, skAdNetworkConversions_);
}
if (((bitField2_ & 0x00004000) != 0)) {
output.writeDouble(247, optimizationScoreUplift_);
}
if (((bitField2_ & 0x00008000) != 0)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 248, optimizationScoreUrl_);
}
if (((bitField0_ & 0x10000000) != 0)) {
output.writeDouble(254, biddableAppInstallConversions_);
}
if (((bitField0_ & 0x20000000) != 0)) {
output.writeDouble(255, biddableAppPostInstallConversions_);
}
if (((bitField1_ & 0x10000000) != 0)) {
output.writeInt64(256, hotelCommissionRateMicros_);
}
if (((bitField1_ & 0x20000000) != 0)) {
output.writeDouble(257, hotelExpectedCommissionCost_);
}
getUnknownFields().writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (historicalCreativeQualityScore_ != com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNSPECIFIED.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(80, historicalCreativeQualityScore_);
}
if (historicalLandingPageQualityScore_ != com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNSPECIFIED.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(81, historicalLandingPageQualityScore_);
}
if (historicalSearchPredictedCtr_ != com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNSPECIFIED.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(83, historicalSearchPredictedCtr_);
}
{
int dataSize = 0;
for (int i = 0; i < interactionEventTypes_.size(); i++) {
dataSize += com.google.protobuf.CodedOutputStream
.computeEnumSizeNoTag(interactionEventTypes_.get(i));
}
size += dataSize;
if (!getInteractionEventTypesList().isEmpty()) { size += 2;
size += com.google.protobuf.CodedOutputStream
.computeUInt32SizeNoTag(dataSize);
}interactionEventTypesMemoizedSerializedSize = dataSize;
}
if (((bitField1_ & 0x00000001) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(131, clicks_);
}
if (((bitField3_ & 0x00002000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(132, videoQuartileP100Rate_);
}
if (((bitField3_ & 0x00004000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(133, videoQuartileP25Rate_);
}
if (((bitField3_ & 0x00008000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(134, videoQuartileP50Rate_);
}
if (((bitField3_ & 0x00010000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(135, videoQuartileP75Rate_);
}
if (((bitField2_ & 0x04000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(136, searchAbsoluteTopImpressionShare_);
}
if (((bitField2_ & 0x08000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(137, searchBudgetLostAbsoluteTopImpressionShare_);
}
if (((bitField2_ & 0x10000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(138, searchBudgetLostImpressionShare_);
}
if (((bitField2_ & 0x20000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(139, searchBudgetLostTopImpressionShare_);
}
if (((bitField2_ & 0x40000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(140, searchClickShare_);
}
if (((bitField2_ & 0x80000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(141, searchExactMatchImpressionShare_);
}
if (((bitField3_ & 0x00000001) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(142, searchImpressionShare_);
}
if (((bitField3_ & 0x00000002) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(143, searchRankLostAbsoluteTopImpressionShare_);
}
if (((bitField3_ & 0x00000004) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(144, searchRankLostImpressionShare_);
}
if (((bitField3_ & 0x00000008) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(145, searchRankLostTopImpressionShare_);
}
if (((bitField3_ & 0x00000010) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(146, searchTopImpressionShare_);
}
if (((bitField3_ & 0x00000020) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(147, speedScore_);
}
if (((bitField3_ & 0x00000040) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(148, topImpressionPercentage_);
}
if (((bitField3_ & 0x00000080) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(149, validAcceleratedMobilePagesClicksPercentage_);
}
if (((bitField3_ & 0x00000100) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(150, valuePerAllConversions_);
}
if (((bitField3_ & 0x00000400) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(151, valuePerConversion_);
}
if (((bitField3_ & 0x00001000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(152, valuePerCurrentModelAttributedConversion_);
}
if (((bitField3_ & 0x00020000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(153, videoViewRate_);
}
if (((bitField3_ & 0x00040000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(154, videoViews_);
}
if (((bitField3_ & 0x00080000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(155, viewThroughConversions_);
}
if (((bitField1_ & 0x00000002) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(156, combinedClicks_);
}
if (((bitField1_ & 0x00000004) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(157, combinedClicksPerQuery_);
}
if (((bitField1_ & 0x00000008) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(158, combinedQueries_);
}
if (((bitField1_ & 0x00000010) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(159, contentBudgetLostImpressionShare_);
}
if (((bitField1_ & 0x00000020) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(160, contentImpressionShare_);
}
if (((bitField1_ & 0x00000040) != 0)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(161, conversionLastReceivedRequestDateTime_);
}
if (((bitField1_ & 0x00000080) != 0)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(162, conversionLastConversionDate_);
}
if (((bitField1_ & 0x00000100) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(163, contentRankLostImpressionShare_);
}
if (((bitField1_ & 0x00000200) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(164, conversionsFromInteractionsRate_);
}
if (((bitField1_ & 0x00000400) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(165, conversionsValue_);
}
if (((bitField1_ & 0x00000800) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(166, conversionsValuePerCost_);
}
if (((bitField1_ & 0x00001000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(167, conversionsFromInteractionsValuePerInteraction_);
}
if (((bitField1_ & 0x00002000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(168, conversions_);
}
if (((bitField1_ & 0x00004000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(169, costMicros_);
}
if (((bitField1_ & 0x00008000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(170, costPerAllConversions_);
}
if (((bitField1_ & 0x00010000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(171, costPerConversion_);
}
if (((bitField1_ & 0x00020000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(172, costPerCurrentModelAttributedConversion_);
}
if (((bitField1_ & 0x00040000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(173, crossDeviceConversions_);
}
if (((bitField1_ & 0x00080000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(174, ctr_);
}
if (((bitField1_ & 0x00100000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(175, currentModelAttributedConversions_);
}
if (((bitField1_ & 0x00200000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(176, currentModelAttributedConversionsFromInteractionsRate_);
}
if (((bitField1_ & 0x00400000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(177, currentModelAttributedConversionsFromInteractionsValuePerInteraction_);
}
if (((bitField1_ & 0x00800000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(178, currentModelAttributedConversionsValue_);
}
if (((bitField1_ & 0x01000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(179, currentModelAttributedConversionsValuePerCost_);
}
if (((bitField1_ & 0x02000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(180, engagementRate_);
}
if (((bitField1_ & 0x04000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(181, engagements_);
}
if (((bitField0_ & 0x00000001) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(183, absoluteTopImpressionPercentage_);
}
if (((bitField0_ & 0x00000002) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(184, activeViewCpm_);
}
if (((bitField0_ & 0x00000004) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(185, activeViewCtr_);
}
if (((bitField0_ & 0x00000008) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(186, activeViewImpressions_);
}
if (((bitField0_ & 0x00000010) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(187, activeViewMeasurability_);
}
if (((bitField0_ & 0x00000020) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(188, activeViewMeasurableCostMicros_);
}
if (((bitField0_ & 0x00000040) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(189, activeViewMeasurableImpressions_);
}
if (((bitField0_ & 0x00000080) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(190, activeViewViewability_);
}
if (((bitField0_ & 0x00000100) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(191, allConversionsFromInteractionsRate_);
}
if (((bitField0_ & 0x00000200) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(192, allConversionsValue_);
}
if (((bitField0_ & 0x00000400) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(193, allConversions_);
}
if (((bitField0_ & 0x00000800) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(194, allConversionsValuePerCost_);
}
if (((bitField0_ & 0x00001000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(195, allConversionsFromClickToCall_);
}
if (((bitField0_ & 0x00002000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(196, allConversionsFromDirections_);
}
if (((bitField0_ & 0x00004000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(197, allConversionsFromInteractionsValuePerInteraction_);
}
if (((bitField0_ & 0x00008000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(198, allConversionsFromMenu_);
}
if (((bitField0_ & 0x00010000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(199, allConversionsFromOrder_);
}
if (((bitField0_ & 0x00020000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(200, allConversionsFromOtherEngagement_);
}
if (((bitField0_ & 0x00040000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(201, allConversionsFromStoreVisit_);
}
if (((bitField0_ & 0x00080000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(202, allConversionsFromStoreWebsite_);
}
if (((bitField0_ & 0x00100000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(203, averageCost_);
}
if (((bitField0_ & 0x00200000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(204, averageCpc_);
}
if (((bitField0_ & 0x00400000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(205, averageCpe_);
}
if (((bitField0_ & 0x00800000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(206, averageCpm_);
}
if (((bitField0_ & 0x01000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(207, averageCpv_);
}
if (((bitField0_ & 0x02000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(208, averagePageViews_);
}
if (((bitField0_ & 0x04000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(209, averageTimeOnSite_);
}
if (((bitField0_ & 0x08000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(210, benchmarkAverageMaxCpc_);
}
if (((bitField0_ & 0x40000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(211, benchmarkCtr_);
}
if (((bitField0_ & 0x80000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(212, bounceRate_);
}
if (((bitField1_ & 0x08000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(213, hotelAverageLeadValueMicros_);
}
if (((bitField1_ & 0x40000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(214, hotelPriceDifferencePercentage_);
}
if (((bitField1_ & 0x80000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(215, hotelEligibleImpressions_);
}
if (((bitField2_ & 0x00000001) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(216, historicalQualityScore_);
}
if (((bitField2_ & 0x00000002) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(217, gmailForwards_);
}
if (((bitField2_ & 0x00000004) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(218, gmailSaves_);
}
if (((bitField2_ & 0x00000008) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(219, gmailSecondaryClicks_);
}
if (((bitField2_ & 0x00000010) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(220, impressionsFromStoreReach_);
}
if (((bitField2_ & 0x00000020) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(221, impressions_);
}
if (((bitField2_ & 0x00000040) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(222, interactionRate_);
}
if (((bitField2_ & 0x00000080) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(223, interactions_);
}
if (((bitField2_ & 0x00000100) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(224, invalidClickRate_);
}
if (((bitField2_ & 0x00000200) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(225, invalidClicks_);
}
if (((bitField2_ & 0x00000400) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(226, messageChats_);
}
if (((bitField2_ & 0x00000800) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(227, messageImpressions_);
}
if (((bitField2_ & 0x00001000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(228, messageChatRate_);
}
if (((bitField2_ & 0x00002000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(229, mobileFriendlyClicksPercentage_);
}
if (((bitField2_ & 0x00010000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(230, organicClicks_);
}
if (((bitField2_ & 0x00020000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(231, organicClicksPerQuery_);
}
if (((bitField2_ & 0x00040000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(232, organicImpressions_);
}
if (((bitField2_ & 0x00080000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(233, organicImpressionsPerQuery_);
}
if (((bitField2_ & 0x00100000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(234, organicQueries_);
}
if (((bitField2_ & 0x00200000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(235, percentNewVisitors_);
}
if (((bitField2_ & 0x00400000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(236, phoneCalls_);
}
if (((bitField2_ & 0x00800000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(237, phoneImpressions_);
}
if (((bitField2_ & 0x01000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(238, phoneThroughRate_);
}
if (((bitField2_ & 0x02000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(239, relativeCtr_);
}
if (java.lang.Double.doubleToRawLongBits(allConversionsValueByConversionDate_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(240, allConversionsValueByConversionDate_);
}
if (java.lang.Double.doubleToRawLongBits(allConversionsByConversionDate_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(241, allConversionsByConversionDate_);
}
if (java.lang.Double.doubleToRawLongBits(conversionsValueByConversionDate_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(242, conversionsValueByConversionDate_);
}
if (java.lang.Double.doubleToRawLongBits(conversionsByConversionDate_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(243, conversionsByConversionDate_);
}
if (((bitField3_ & 0x00000200) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(244, valuePerAllConversionsByConversionDate_);
}
if (((bitField3_ & 0x00000800) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(245, valuePerConversionsByConversionDate_);
}
if (skAdNetworkConversions_ != 0L) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(246, skAdNetworkConversions_);
}
if (((bitField2_ & 0x00004000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(247, optimizationScoreUplift_);
}
if (((bitField2_ & 0x00008000) != 0)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(248, optimizationScoreUrl_);
}
if (((bitField0_ & 0x10000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(254, biddableAppInstallConversions_);
}
if (((bitField0_ & 0x20000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(255, biddableAppPostInstallConversions_);
}
if (((bitField1_ & 0x10000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(256, hotelCommissionRateMicros_);
}
if (((bitField1_ & 0x20000000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(257, hotelExpectedCommissionCost_);
}
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.v10.common.Metrics)) {
return super.equals(obj);
}
com.google.ads.googleads.v10.common.Metrics other = (com.google.ads.googleads.v10.common.Metrics) obj;
if (hasAbsoluteTopImpressionPercentage() != other.hasAbsoluteTopImpressionPercentage()) return false;
if (hasAbsoluteTopImpressionPercentage()) {
if (java.lang.Double.doubleToLongBits(getAbsoluteTopImpressionPercentage())
!= java.lang.Double.doubleToLongBits(
other.getAbsoluteTopImpressionPercentage())) return false;
}
if (hasActiveViewCpm() != other.hasActiveViewCpm()) return false;
if (hasActiveViewCpm()) {
if (java.lang.Double.doubleToLongBits(getActiveViewCpm())
!= java.lang.Double.doubleToLongBits(
other.getActiveViewCpm())) return false;
}
if (hasActiveViewCtr() != other.hasActiveViewCtr()) return false;
if (hasActiveViewCtr()) {
if (java.lang.Double.doubleToLongBits(getActiveViewCtr())
!= java.lang.Double.doubleToLongBits(
other.getActiveViewCtr())) return false;
}
if (hasActiveViewImpressions() != other.hasActiveViewImpressions()) return false;
if (hasActiveViewImpressions()) {
if (getActiveViewImpressions()
!= other.getActiveViewImpressions()) return false;
}
if (hasActiveViewMeasurability() != other.hasActiveViewMeasurability()) return false;
if (hasActiveViewMeasurability()) {
if (java.lang.Double.doubleToLongBits(getActiveViewMeasurability())
!= java.lang.Double.doubleToLongBits(
other.getActiveViewMeasurability())) return false;
}
if (hasActiveViewMeasurableCostMicros() != other.hasActiveViewMeasurableCostMicros()) return false;
if (hasActiveViewMeasurableCostMicros()) {
if (getActiveViewMeasurableCostMicros()
!= other.getActiveViewMeasurableCostMicros()) return false;
}
if (hasActiveViewMeasurableImpressions() != other.hasActiveViewMeasurableImpressions()) return false;
if (hasActiveViewMeasurableImpressions()) {
if (getActiveViewMeasurableImpressions()
!= other.getActiveViewMeasurableImpressions()) return false;
}
if (hasActiveViewViewability() != other.hasActiveViewViewability()) return false;
if (hasActiveViewViewability()) {
if (java.lang.Double.doubleToLongBits(getActiveViewViewability())
!= java.lang.Double.doubleToLongBits(
other.getActiveViewViewability())) return false;
}
if (hasAllConversionsFromInteractionsRate() != other.hasAllConversionsFromInteractionsRate()) return false;
if (hasAllConversionsFromInteractionsRate()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromInteractionsRate())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromInteractionsRate())) return false;
}
if (hasAllConversionsValue() != other.hasAllConversionsValue()) return false;
if (hasAllConversionsValue()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsValue())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsValue())) return false;
}
if (java.lang.Double.doubleToLongBits(getAllConversionsValueByConversionDate())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsValueByConversionDate())) return false;
if (hasAllConversions() != other.hasAllConversions()) return false;
if (hasAllConversions()) {
if (java.lang.Double.doubleToLongBits(getAllConversions())
!= java.lang.Double.doubleToLongBits(
other.getAllConversions())) return false;
}
if (java.lang.Double.doubleToLongBits(getAllConversionsByConversionDate())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsByConversionDate())) return false;
if (hasAllConversionsValuePerCost() != other.hasAllConversionsValuePerCost()) return false;
if (hasAllConversionsValuePerCost()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsValuePerCost())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsValuePerCost())) return false;
}
if (hasAllConversionsFromClickToCall() != other.hasAllConversionsFromClickToCall()) return false;
if (hasAllConversionsFromClickToCall()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromClickToCall())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromClickToCall())) return false;
}
if (hasAllConversionsFromDirections() != other.hasAllConversionsFromDirections()) return false;
if (hasAllConversionsFromDirections()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromDirections())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromDirections())) return false;
}
if (hasAllConversionsFromInteractionsValuePerInteraction() != other.hasAllConversionsFromInteractionsValuePerInteraction()) return false;
if (hasAllConversionsFromInteractionsValuePerInteraction()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromInteractionsValuePerInteraction())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromInteractionsValuePerInteraction())) return false;
}
if (hasAllConversionsFromMenu() != other.hasAllConversionsFromMenu()) return false;
if (hasAllConversionsFromMenu()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromMenu())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromMenu())) return false;
}
if (hasAllConversionsFromOrder() != other.hasAllConversionsFromOrder()) return false;
if (hasAllConversionsFromOrder()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromOrder())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromOrder())) return false;
}
if (hasAllConversionsFromOtherEngagement() != other.hasAllConversionsFromOtherEngagement()) return false;
if (hasAllConversionsFromOtherEngagement()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromOtherEngagement())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromOtherEngagement())) return false;
}
if (hasAllConversionsFromStoreVisit() != other.hasAllConversionsFromStoreVisit()) return false;
if (hasAllConversionsFromStoreVisit()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromStoreVisit())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromStoreVisit())) return false;
}
if (hasAllConversionsFromStoreWebsite() != other.hasAllConversionsFromStoreWebsite()) return false;
if (hasAllConversionsFromStoreWebsite()) {
if (java.lang.Double.doubleToLongBits(getAllConversionsFromStoreWebsite())
!= java.lang.Double.doubleToLongBits(
other.getAllConversionsFromStoreWebsite())) return false;
}
if (hasAverageCost() != other.hasAverageCost()) return false;
if (hasAverageCost()) {
if (java.lang.Double.doubleToLongBits(getAverageCost())
!= java.lang.Double.doubleToLongBits(
other.getAverageCost())) return false;
}
if (hasAverageCpc() != other.hasAverageCpc()) return false;
if (hasAverageCpc()) {
if (java.lang.Double.doubleToLongBits(getAverageCpc())
!= java.lang.Double.doubleToLongBits(
other.getAverageCpc())) return false;
}
if (hasAverageCpe() != other.hasAverageCpe()) return false;
if (hasAverageCpe()) {
if (java.lang.Double.doubleToLongBits(getAverageCpe())
!= java.lang.Double.doubleToLongBits(
other.getAverageCpe())) return false;
}
if (hasAverageCpm() != other.hasAverageCpm()) return false;
if (hasAverageCpm()) {
if (java.lang.Double.doubleToLongBits(getAverageCpm())
!= java.lang.Double.doubleToLongBits(
other.getAverageCpm())) return false;
}
if (hasAverageCpv() != other.hasAverageCpv()) return false;
if (hasAverageCpv()) {
if (java.lang.Double.doubleToLongBits(getAverageCpv())
!= java.lang.Double.doubleToLongBits(
other.getAverageCpv())) return false;
}
if (hasAveragePageViews() != other.hasAveragePageViews()) return false;
if (hasAveragePageViews()) {
if (java.lang.Double.doubleToLongBits(getAveragePageViews())
!= java.lang.Double.doubleToLongBits(
other.getAveragePageViews())) return false;
}
if (hasAverageTimeOnSite() != other.hasAverageTimeOnSite()) return false;
if (hasAverageTimeOnSite()) {
if (java.lang.Double.doubleToLongBits(getAverageTimeOnSite())
!= java.lang.Double.doubleToLongBits(
other.getAverageTimeOnSite())) return false;
}
if (hasBenchmarkAverageMaxCpc() != other.hasBenchmarkAverageMaxCpc()) return false;
if (hasBenchmarkAverageMaxCpc()) {
if (java.lang.Double.doubleToLongBits(getBenchmarkAverageMaxCpc())
!= java.lang.Double.doubleToLongBits(
other.getBenchmarkAverageMaxCpc())) return false;
}
if (hasBiddableAppInstallConversions() != other.hasBiddableAppInstallConversions()) return false;
if (hasBiddableAppInstallConversions()) {
if (java.lang.Double.doubleToLongBits(getBiddableAppInstallConversions())
!= java.lang.Double.doubleToLongBits(
other.getBiddableAppInstallConversions())) return false;
}
if (hasBiddableAppPostInstallConversions() != other.hasBiddableAppPostInstallConversions()) return false;
if (hasBiddableAppPostInstallConversions()) {
if (java.lang.Double.doubleToLongBits(getBiddableAppPostInstallConversions())
!= java.lang.Double.doubleToLongBits(
other.getBiddableAppPostInstallConversions())) return false;
}
if (hasBenchmarkCtr() != other.hasBenchmarkCtr()) return false;
if (hasBenchmarkCtr()) {
if (java.lang.Double.doubleToLongBits(getBenchmarkCtr())
!= java.lang.Double.doubleToLongBits(
other.getBenchmarkCtr())) return false;
}
if (hasBounceRate() != other.hasBounceRate()) return false;
if (hasBounceRate()) {
if (java.lang.Double.doubleToLongBits(getBounceRate())
!= java.lang.Double.doubleToLongBits(
other.getBounceRate())) return false;
}
if (hasClicks() != other.hasClicks()) return false;
if (hasClicks()) {
if (getClicks()
!= other.getClicks()) return false;
}
if (hasCombinedClicks() != other.hasCombinedClicks()) return false;
if (hasCombinedClicks()) {
if (getCombinedClicks()
!= other.getCombinedClicks()) return false;
}
if (hasCombinedClicksPerQuery() != other.hasCombinedClicksPerQuery()) return false;
if (hasCombinedClicksPerQuery()) {
if (java.lang.Double.doubleToLongBits(getCombinedClicksPerQuery())
!= java.lang.Double.doubleToLongBits(
other.getCombinedClicksPerQuery())) return false;
}
if (hasCombinedQueries() != other.hasCombinedQueries()) return false;
if (hasCombinedQueries()) {
if (getCombinedQueries()
!= other.getCombinedQueries()) return false;
}
if (hasContentBudgetLostImpressionShare() != other.hasContentBudgetLostImpressionShare()) return false;
if (hasContentBudgetLostImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getContentBudgetLostImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getContentBudgetLostImpressionShare())) return false;
}
if (hasContentImpressionShare() != other.hasContentImpressionShare()) return false;
if (hasContentImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getContentImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getContentImpressionShare())) return false;
}
if (hasConversionLastReceivedRequestDateTime() != other.hasConversionLastReceivedRequestDateTime()) return false;
if (hasConversionLastReceivedRequestDateTime()) {
if (!getConversionLastReceivedRequestDateTime()
.equals(other.getConversionLastReceivedRequestDateTime())) return false;
}
if (hasConversionLastConversionDate() != other.hasConversionLastConversionDate()) return false;
if (hasConversionLastConversionDate()) {
if (!getConversionLastConversionDate()
.equals(other.getConversionLastConversionDate())) return false;
}
if (hasContentRankLostImpressionShare() != other.hasContentRankLostImpressionShare()) return false;
if (hasContentRankLostImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getContentRankLostImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getContentRankLostImpressionShare())) return false;
}
if (hasConversionsFromInteractionsRate() != other.hasConversionsFromInteractionsRate()) return false;
if (hasConversionsFromInteractionsRate()) {
if (java.lang.Double.doubleToLongBits(getConversionsFromInteractionsRate())
!= java.lang.Double.doubleToLongBits(
other.getConversionsFromInteractionsRate())) return false;
}
if (hasConversionsValue() != other.hasConversionsValue()) return false;
if (hasConversionsValue()) {
if (java.lang.Double.doubleToLongBits(getConversionsValue())
!= java.lang.Double.doubleToLongBits(
other.getConversionsValue())) return false;
}
if (java.lang.Double.doubleToLongBits(getConversionsValueByConversionDate())
!= java.lang.Double.doubleToLongBits(
other.getConversionsValueByConversionDate())) return false;
if (hasConversionsValuePerCost() != other.hasConversionsValuePerCost()) return false;
if (hasConversionsValuePerCost()) {
if (java.lang.Double.doubleToLongBits(getConversionsValuePerCost())
!= java.lang.Double.doubleToLongBits(
other.getConversionsValuePerCost())) return false;
}
if (hasConversionsFromInteractionsValuePerInteraction() != other.hasConversionsFromInteractionsValuePerInteraction()) return false;
if (hasConversionsFromInteractionsValuePerInteraction()) {
if (java.lang.Double.doubleToLongBits(getConversionsFromInteractionsValuePerInteraction())
!= java.lang.Double.doubleToLongBits(
other.getConversionsFromInteractionsValuePerInteraction())) return false;
}
if (hasConversions() != other.hasConversions()) return false;
if (hasConversions()) {
if (java.lang.Double.doubleToLongBits(getConversions())
!= java.lang.Double.doubleToLongBits(
other.getConversions())) return false;
}
if (java.lang.Double.doubleToLongBits(getConversionsByConversionDate())
!= java.lang.Double.doubleToLongBits(
other.getConversionsByConversionDate())) return false;
if (hasCostMicros() != other.hasCostMicros()) return false;
if (hasCostMicros()) {
if (getCostMicros()
!= other.getCostMicros()) return false;
}
if (hasCostPerAllConversions() != other.hasCostPerAllConversions()) return false;
if (hasCostPerAllConversions()) {
if (java.lang.Double.doubleToLongBits(getCostPerAllConversions())
!= java.lang.Double.doubleToLongBits(
other.getCostPerAllConversions())) return false;
}
if (hasCostPerConversion() != other.hasCostPerConversion()) return false;
if (hasCostPerConversion()) {
if (java.lang.Double.doubleToLongBits(getCostPerConversion())
!= java.lang.Double.doubleToLongBits(
other.getCostPerConversion())) return false;
}
if (hasCostPerCurrentModelAttributedConversion() != other.hasCostPerCurrentModelAttributedConversion()) return false;
if (hasCostPerCurrentModelAttributedConversion()) {
if (java.lang.Double.doubleToLongBits(getCostPerCurrentModelAttributedConversion())
!= java.lang.Double.doubleToLongBits(
other.getCostPerCurrentModelAttributedConversion())) return false;
}
if (hasCrossDeviceConversions() != other.hasCrossDeviceConversions()) return false;
if (hasCrossDeviceConversions()) {
if (java.lang.Double.doubleToLongBits(getCrossDeviceConversions())
!= java.lang.Double.doubleToLongBits(
other.getCrossDeviceConversions())) return false;
}
if (hasCtr() != other.hasCtr()) return false;
if (hasCtr()) {
if (java.lang.Double.doubleToLongBits(getCtr())
!= java.lang.Double.doubleToLongBits(
other.getCtr())) return false;
}
if (hasCurrentModelAttributedConversions() != other.hasCurrentModelAttributedConversions()) return false;
if (hasCurrentModelAttributedConversions()) {
if (java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversions())
!= java.lang.Double.doubleToLongBits(
other.getCurrentModelAttributedConversions())) return false;
}
if (hasCurrentModelAttributedConversionsFromInteractionsRate() != other.hasCurrentModelAttributedConversionsFromInteractionsRate()) return false;
if (hasCurrentModelAttributedConversionsFromInteractionsRate()) {
if (java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversionsFromInteractionsRate())
!= java.lang.Double.doubleToLongBits(
other.getCurrentModelAttributedConversionsFromInteractionsRate())) return false;
}
if (hasCurrentModelAttributedConversionsFromInteractionsValuePerInteraction() != other.hasCurrentModelAttributedConversionsFromInteractionsValuePerInteraction()) return false;
if (hasCurrentModelAttributedConversionsFromInteractionsValuePerInteraction()) {
if (java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversionsFromInteractionsValuePerInteraction())
!= java.lang.Double.doubleToLongBits(
other.getCurrentModelAttributedConversionsFromInteractionsValuePerInteraction())) return false;
}
if (hasCurrentModelAttributedConversionsValue() != other.hasCurrentModelAttributedConversionsValue()) return false;
if (hasCurrentModelAttributedConversionsValue()) {
if (java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversionsValue())
!= java.lang.Double.doubleToLongBits(
other.getCurrentModelAttributedConversionsValue())) return false;
}
if (hasCurrentModelAttributedConversionsValuePerCost() != other.hasCurrentModelAttributedConversionsValuePerCost()) return false;
if (hasCurrentModelAttributedConversionsValuePerCost()) {
if (java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversionsValuePerCost())
!= java.lang.Double.doubleToLongBits(
other.getCurrentModelAttributedConversionsValuePerCost())) return false;
}
if (hasEngagementRate() != other.hasEngagementRate()) return false;
if (hasEngagementRate()) {
if (java.lang.Double.doubleToLongBits(getEngagementRate())
!= java.lang.Double.doubleToLongBits(
other.getEngagementRate())) return false;
}
if (hasEngagements() != other.hasEngagements()) return false;
if (hasEngagements()) {
if (getEngagements()
!= other.getEngagements()) return false;
}
if (hasHotelAverageLeadValueMicros() != other.hasHotelAverageLeadValueMicros()) return false;
if (hasHotelAverageLeadValueMicros()) {
if (java.lang.Double.doubleToLongBits(getHotelAverageLeadValueMicros())
!= java.lang.Double.doubleToLongBits(
other.getHotelAverageLeadValueMicros())) return false;
}
if (hasHotelCommissionRateMicros() != other.hasHotelCommissionRateMicros()) return false;
if (hasHotelCommissionRateMicros()) {
if (getHotelCommissionRateMicros()
!= other.getHotelCommissionRateMicros()) return false;
}
if (hasHotelExpectedCommissionCost() != other.hasHotelExpectedCommissionCost()) return false;
if (hasHotelExpectedCommissionCost()) {
if (java.lang.Double.doubleToLongBits(getHotelExpectedCommissionCost())
!= java.lang.Double.doubleToLongBits(
other.getHotelExpectedCommissionCost())) return false;
}
if (hasHotelPriceDifferencePercentage() != other.hasHotelPriceDifferencePercentage()) return false;
if (hasHotelPriceDifferencePercentage()) {
if (java.lang.Double.doubleToLongBits(getHotelPriceDifferencePercentage())
!= java.lang.Double.doubleToLongBits(
other.getHotelPriceDifferencePercentage())) return false;
}
if (hasHotelEligibleImpressions() != other.hasHotelEligibleImpressions()) return false;
if (hasHotelEligibleImpressions()) {
if (getHotelEligibleImpressions()
!= other.getHotelEligibleImpressions()) return false;
}
if (historicalCreativeQualityScore_ != other.historicalCreativeQualityScore_) return false;
if (historicalLandingPageQualityScore_ != other.historicalLandingPageQualityScore_) return false;
if (hasHistoricalQualityScore() != other.hasHistoricalQualityScore()) return false;
if (hasHistoricalQualityScore()) {
if (getHistoricalQualityScore()
!= other.getHistoricalQualityScore()) return false;
}
if (historicalSearchPredictedCtr_ != other.historicalSearchPredictedCtr_) return false;
if (hasGmailForwards() != other.hasGmailForwards()) return false;
if (hasGmailForwards()) {
if (getGmailForwards()
!= other.getGmailForwards()) return false;
}
if (hasGmailSaves() != other.hasGmailSaves()) return false;
if (hasGmailSaves()) {
if (getGmailSaves()
!= other.getGmailSaves()) return false;
}
if (hasGmailSecondaryClicks() != other.hasGmailSecondaryClicks()) return false;
if (hasGmailSecondaryClicks()) {
if (getGmailSecondaryClicks()
!= other.getGmailSecondaryClicks()) return false;
}
if (hasImpressionsFromStoreReach() != other.hasImpressionsFromStoreReach()) return false;
if (hasImpressionsFromStoreReach()) {
if (getImpressionsFromStoreReach()
!= other.getImpressionsFromStoreReach()) return false;
}
if (hasImpressions() != other.hasImpressions()) return false;
if (hasImpressions()) {
if (getImpressions()
!= other.getImpressions()) return false;
}
if (hasInteractionRate() != other.hasInteractionRate()) return false;
if (hasInteractionRate()) {
if (java.lang.Double.doubleToLongBits(getInteractionRate())
!= java.lang.Double.doubleToLongBits(
other.getInteractionRate())) return false;
}
if (hasInteractions() != other.hasInteractions()) return false;
if (hasInteractions()) {
if (getInteractions()
!= other.getInteractions()) return false;
}
if (!interactionEventTypes_.equals(other.interactionEventTypes_)) return false;
if (hasInvalidClickRate() != other.hasInvalidClickRate()) return false;
if (hasInvalidClickRate()) {
if (java.lang.Double.doubleToLongBits(getInvalidClickRate())
!= java.lang.Double.doubleToLongBits(
other.getInvalidClickRate())) return false;
}
if (hasInvalidClicks() != other.hasInvalidClicks()) return false;
if (hasInvalidClicks()) {
if (getInvalidClicks()
!= other.getInvalidClicks()) return false;
}
if (hasMessageChats() != other.hasMessageChats()) return false;
if (hasMessageChats()) {
if (getMessageChats()
!= other.getMessageChats()) return false;
}
if (hasMessageImpressions() != other.hasMessageImpressions()) return false;
if (hasMessageImpressions()) {
if (getMessageImpressions()
!= other.getMessageImpressions()) return false;
}
if (hasMessageChatRate() != other.hasMessageChatRate()) return false;
if (hasMessageChatRate()) {
if (java.lang.Double.doubleToLongBits(getMessageChatRate())
!= java.lang.Double.doubleToLongBits(
other.getMessageChatRate())) return false;
}
if (hasMobileFriendlyClicksPercentage() != other.hasMobileFriendlyClicksPercentage()) return false;
if (hasMobileFriendlyClicksPercentage()) {
if (java.lang.Double.doubleToLongBits(getMobileFriendlyClicksPercentage())
!= java.lang.Double.doubleToLongBits(
other.getMobileFriendlyClicksPercentage())) return false;
}
if (hasOptimizationScoreUplift() != other.hasOptimizationScoreUplift()) return false;
if (hasOptimizationScoreUplift()) {
if (java.lang.Double.doubleToLongBits(getOptimizationScoreUplift())
!= java.lang.Double.doubleToLongBits(
other.getOptimizationScoreUplift())) return false;
}
if (hasOptimizationScoreUrl() != other.hasOptimizationScoreUrl()) return false;
if (hasOptimizationScoreUrl()) {
if (!getOptimizationScoreUrl()
.equals(other.getOptimizationScoreUrl())) return false;
}
if (hasOrganicClicks() != other.hasOrganicClicks()) return false;
if (hasOrganicClicks()) {
if (getOrganicClicks()
!= other.getOrganicClicks()) return false;
}
if (hasOrganicClicksPerQuery() != other.hasOrganicClicksPerQuery()) return false;
if (hasOrganicClicksPerQuery()) {
if (java.lang.Double.doubleToLongBits(getOrganicClicksPerQuery())
!= java.lang.Double.doubleToLongBits(
other.getOrganicClicksPerQuery())) return false;
}
if (hasOrganicImpressions() != other.hasOrganicImpressions()) return false;
if (hasOrganicImpressions()) {
if (getOrganicImpressions()
!= other.getOrganicImpressions()) return false;
}
if (hasOrganicImpressionsPerQuery() != other.hasOrganicImpressionsPerQuery()) return false;
if (hasOrganicImpressionsPerQuery()) {
if (java.lang.Double.doubleToLongBits(getOrganicImpressionsPerQuery())
!= java.lang.Double.doubleToLongBits(
other.getOrganicImpressionsPerQuery())) return false;
}
if (hasOrganicQueries() != other.hasOrganicQueries()) return false;
if (hasOrganicQueries()) {
if (getOrganicQueries()
!= other.getOrganicQueries()) return false;
}
if (hasPercentNewVisitors() != other.hasPercentNewVisitors()) return false;
if (hasPercentNewVisitors()) {
if (java.lang.Double.doubleToLongBits(getPercentNewVisitors())
!= java.lang.Double.doubleToLongBits(
other.getPercentNewVisitors())) return false;
}
if (hasPhoneCalls() != other.hasPhoneCalls()) return false;
if (hasPhoneCalls()) {
if (getPhoneCalls()
!= other.getPhoneCalls()) return false;
}
if (hasPhoneImpressions() != other.hasPhoneImpressions()) return false;
if (hasPhoneImpressions()) {
if (getPhoneImpressions()
!= other.getPhoneImpressions()) return false;
}
if (hasPhoneThroughRate() != other.hasPhoneThroughRate()) return false;
if (hasPhoneThroughRate()) {
if (java.lang.Double.doubleToLongBits(getPhoneThroughRate())
!= java.lang.Double.doubleToLongBits(
other.getPhoneThroughRate())) return false;
}
if (hasRelativeCtr() != other.hasRelativeCtr()) return false;
if (hasRelativeCtr()) {
if (java.lang.Double.doubleToLongBits(getRelativeCtr())
!= java.lang.Double.doubleToLongBits(
other.getRelativeCtr())) return false;
}
if (hasSearchAbsoluteTopImpressionShare() != other.hasSearchAbsoluteTopImpressionShare()) return false;
if (hasSearchAbsoluteTopImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchAbsoluteTopImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchAbsoluteTopImpressionShare())) return false;
}
if (hasSearchBudgetLostAbsoluteTopImpressionShare() != other.hasSearchBudgetLostAbsoluteTopImpressionShare()) return false;
if (hasSearchBudgetLostAbsoluteTopImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchBudgetLostAbsoluteTopImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchBudgetLostAbsoluteTopImpressionShare())) return false;
}
if (hasSearchBudgetLostImpressionShare() != other.hasSearchBudgetLostImpressionShare()) return false;
if (hasSearchBudgetLostImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchBudgetLostImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchBudgetLostImpressionShare())) return false;
}
if (hasSearchBudgetLostTopImpressionShare() != other.hasSearchBudgetLostTopImpressionShare()) return false;
if (hasSearchBudgetLostTopImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchBudgetLostTopImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchBudgetLostTopImpressionShare())) return false;
}
if (hasSearchClickShare() != other.hasSearchClickShare()) return false;
if (hasSearchClickShare()) {
if (java.lang.Double.doubleToLongBits(getSearchClickShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchClickShare())) return false;
}
if (hasSearchExactMatchImpressionShare() != other.hasSearchExactMatchImpressionShare()) return false;
if (hasSearchExactMatchImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchExactMatchImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchExactMatchImpressionShare())) return false;
}
if (hasSearchImpressionShare() != other.hasSearchImpressionShare()) return false;
if (hasSearchImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchImpressionShare())) return false;
}
if (hasSearchRankLostAbsoluteTopImpressionShare() != other.hasSearchRankLostAbsoluteTopImpressionShare()) return false;
if (hasSearchRankLostAbsoluteTopImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchRankLostAbsoluteTopImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchRankLostAbsoluteTopImpressionShare())) return false;
}
if (hasSearchRankLostImpressionShare() != other.hasSearchRankLostImpressionShare()) return false;
if (hasSearchRankLostImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchRankLostImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchRankLostImpressionShare())) return false;
}
if (hasSearchRankLostTopImpressionShare() != other.hasSearchRankLostTopImpressionShare()) return false;
if (hasSearchRankLostTopImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchRankLostTopImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchRankLostTopImpressionShare())) return false;
}
if (hasSearchTopImpressionShare() != other.hasSearchTopImpressionShare()) return false;
if (hasSearchTopImpressionShare()) {
if (java.lang.Double.doubleToLongBits(getSearchTopImpressionShare())
!= java.lang.Double.doubleToLongBits(
other.getSearchTopImpressionShare())) return false;
}
if (hasSpeedScore() != other.hasSpeedScore()) return false;
if (hasSpeedScore()) {
if (getSpeedScore()
!= other.getSpeedScore()) return false;
}
if (hasTopImpressionPercentage() != other.hasTopImpressionPercentage()) return false;
if (hasTopImpressionPercentage()) {
if (java.lang.Double.doubleToLongBits(getTopImpressionPercentage())
!= java.lang.Double.doubleToLongBits(
other.getTopImpressionPercentage())) return false;
}
if (hasValidAcceleratedMobilePagesClicksPercentage() != other.hasValidAcceleratedMobilePagesClicksPercentage()) return false;
if (hasValidAcceleratedMobilePagesClicksPercentage()) {
if (java.lang.Double.doubleToLongBits(getValidAcceleratedMobilePagesClicksPercentage())
!= java.lang.Double.doubleToLongBits(
other.getValidAcceleratedMobilePagesClicksPercentage())) return false;
}
if (hasValuePerAllConversions() != other.hasValuePerAllConversions()) return false;
if (hasValuePerAllConversions()) {
if (java.lang.Double.doubleToLongBits(getValuePerAllConversions())
!= java.lang.Double.doubleToLongBits(
other.getValuePerAllConversions())) return false;
}
if (hasValuePerAllConversionsByConversionDate() != other.hasValuePerAllConversionsByConversionDate()) return false;
if (hasValuePerAllConversionsByConversionDate()) {
if (java.lang.Double.doubleToLongBits(getValuePerAllConversionsByConversionDate())
!= java.lang.Double.doubleToLongBits(
other.getValuePerAllConversionsByConversionDate())) return false;
}
if (hasValuePerConversion() != other.hasValuePerConversion()) return false;
if (hasValuePerConversion()) {
if (java.lang.Double.doubleToLongBits(getValuePerConversion())
!= java.lang.Double.doubleToLongBits(
other.getValuePerConversion())) return false;
}
if (hasValuePerConversionsByConversionDate() != other.hasValuePerConversionsByConversionDate()) return false;
if (hasValuePerConversionsByConversionDate()) {
if (java.lang.Double.doubleToLongBits(getValuePerConversionsByConversionDate())
!= java.lang.Double.doubleToLongBits(
other.getValuePerConversionsByConversionDate())) return false;
}
if (hasValuePerCurrentModelAttributedConversion() != other.hasValuePerCurrentModelAttributedConversion()) return false;
if (hasValuePerCurrentModelAttributedConversion()) {
if (java.lang.Double.doubleToLongBits(getValuePerCurrentModelAttributedConversion())
!= java.lang.Double.doubleToLongBits(
other.getValuePerCurrentModelAttributedConversion())) return false;
}
if (hasVideoQuartileP100Rate() != other.hasVideoQuartileP100Rate()) return false;
if (hasVideoQuartileP100Rate()) {
if (java.lang.Double.doubleToLongBits(getVideoQuartileP100Rate())
!= java.lang.Double.doubleToLongBits(
other.getVideoQuartileP100Rate())) return false;
}
if (hasVideoQuartileP25Rate() != other.hasVideoQuartileP25Rate()) return false;
if (hasVideoQuartileP25Rate()) {
if (java.lang.Double.doubleToLongBits(getVideoQuartileP25Rate())
!= java.lang.Double.doubleToLongBits(
other.getVideoQuartileP25Rate())) return false;
}
if (hasVideoQuartileP50Rate() != other.hasVideoQuartileP50Rate()) return false;
if (hasVideoQuartileP50Rate()) {
if (java.lang.Double.doubleToLongBits(getVideoQuartileP50Rate())
!= java.lang.Double.doubleToLongBits(
other.getVideoQuartileP50Rate())) return false;
}
if (hasVideoQuartileP75Rate() != other.hasVideoQuartileP75Rate()) return false;
if (hasVideoQuartileP75Rate()) {
if (java.lang.Double.doubleToLongBits(getVideoQuartileP75Rate())
!= java.lang.Double.doubleToLongBits(
other.getVideoQuartileP75Rate())) return false;
}
if (hasVideoViewRate() != other.hasVideoViewRate()) return false;
if (hasVideoViewRate()) {
if (java.lang.Double.doubleToLongBits(getVideoViewRate())
!= java.lang.Double.doubleToLongBits(
other.getVideoViewRate())) return false;
}
if (hasVideoViews() != other.hasVideoViews()) return false;
if (hasVideoViews()) {
if (getVideoViews()
!= other.getVideoViews()) return false;
}
if (hasViewThroughConversions() != other.hasViewThroughConversions()) return false;
if (hasViewThroughConversions()) {
if (getViewThroughConversions()
!= other.getViewThroughConversions()) return false;
}
if (getSkAdNetworkConversions()
!= other.getSkAdNetworkConversions()) 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();
if (hasAbsoluteTopImpressionPercentage()) {
hash = (37 * hash) + ABSOLUTE_TOP_IMPRESSION_PERCENTAGE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAbsoluteTopImpressionPercentage()));
}
if (hasActiveViewCpm()) {
hash = (37 * hash) + ACTIVE_VIEW_CPM_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getActiveViewCpm()));
}
if (hasActiveViewCtr()) {
hash = (37 * hash) + ACTIVE_VIEW_CTR_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getActiveViewCtr()));
}
if (hasActiveViewImpressions()) {
hash = (37 * hash) + ACTIVE_VIEW_IMPRESSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getActiveViewImpressions());
}
if (hasActiveViewMeasurability()) {
hash = (37 * hash) + ACTIVE_VIEW_MEASURABILITY_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getActiveViewMeasurability()));
}
if (hasActiveViewMeasurableCostMicros()) {
hash = (37 * hash) + ACTIVE_VIEW_MEASURABLE_COST_MICROS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getActiveViewMeasurableCostMicros());
}
if (hasActiveViewMeasurableImpressions()) {
hash = (37 * hash) + ACTIVE_VIEW_MEASURABLE_IMPRESSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getActiveViewMeasurableImpressions());
}
if (hasActiveViewViewability()) {
hash = (37 * hash) + ACTIVE_VIEW_VIEWABILITY_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getActiveViewViewability()));
}
if (hasAllConversionsFromInteractionsRate()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_INTERACTIONS_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromInteractionsRate()));
}
if (hasAllConversionsValue()) {
hash = (37 * hash) + ALL_CONVERSIONS_VALUE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsValue()));
}
hash = (37 * hash) + ALL_CONVERSIONS_VALUE_BY_CONVERSION_DATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsValueByConversionDate()));
if (hasAllConversions()) {
hash = (37 * hash) + ALL_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversions()));
}
hash = (37 * hash) + ALL_CONVERSIONS_BY_CONVERSION_DATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsByConversionDate()));
if (hasAllConversionsValuePerCost()) {
hash = (37 * hash) + ALL_CONVERSIONS_VALUE_PER_COST_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsValuePerCost()));
}
if (hasAllConversionsFromClickToCall()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_CLICK_TO_CALL_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromClickToCall()));
}
if (hasAllConversionsFromDirections()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_DIRECTIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromDirections()));
}
if (hasAllConversionsFromInteractionsValuePerInteraction()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_INTERACTIONS_VALUE_PER_INTERACTION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromInteractionsValuePerInteraction()));
}
if (hasAllConversionsFromMenu()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_MENU_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromMenu()));
}
if (hasAllConversionsFromOrder()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_ORDER_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromOrder()));
}
if (hasAllConversionsFromOtherEngagement()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_OTHER_ENGAGEMENT_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromOtherEngagement()));
}
if (hasAllConversionsFromStoreVisit()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_STORE_VISIT_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromStoreVisit()));
}
if (hasAllConversionsFromStoreWebsite()) {
hash = (37 * hash) + ALL_CONVERSIONS_FROM_STORE_WEBSITE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAllConversionsFromStoreWebsite()));
}
if (hasAverageCost()) {
hash = (37 * hash) + AVERAGE_COST_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAverageCost()));
}
if (hasAverageCpc()) {
hash = (37 * hash) + AVERAGE_CPC_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAverageCpc()));
}
if (hasAverageCpe()) {
hash = (37 * hash) + AVERAGE_CPE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAverageCpe()));
}
if (hasAverageCpm()) {
hash = (37 * hash) + AVERAGE_CPM_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAverageCpm()));
}
if (hasAverageCpv()) {
hash = (37 * hash) + AVERAGE_CPV_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAverageCpv()));
}
if (hasAveragePageViews()) {
hash = (37 * hash) + AVERAGE_PAGE_VIEWS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAveragePageViews()));
}
if (hasAverageTimeOnSite()) {
hash = (37 * hash) + AVERAGE_TIME_ON_SITE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAverageTimeOnSite()));
}
if (hasBenchmarkAverageMaxCpc()) {
hash = (37 * hash) + BENCHMARK_AVERAGE_MAX_CPC_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getBenchmarkAverageMaxCpc()));
}
if (hasBiddableAppInstallConversions()) {
hash = (37 * hash) + BIDDABLE_APP_INSTALL_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getBiddableAppInstallConversions()));
}
if (hasBiddableAppPostInstallConversions()) {
hash = (37 * hash) + BIDDABLE_APP_POST_INSTALL_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getBiddableAppPostInstallConversions()));
}
if (hasBenchmarkCtr()) {
hash = (37 * hash) + BENCHMARK_CTR_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getBenchmarkCtr()));
}
if (hasBounceRate()) {
hash = (37 * hash) + BOUNCE_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getBounceRate()));
}
if (hasClicks()) {
hash = (37 * hash) + CLICKS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getClicks());
}
if (hasCombinedClicks()) {
hash = (37 * hash) + COMBINED_CLICKS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getCombinedClicks());
}
if (hasCombinedClicksPerQuery()) {
hash = (37 * hash) + COMBINED_CLICKS_PER_QUERY_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCombinedClicksPerQuery()));
}
if (hasCombinedQueries()) {
hash = (37 * hash) + COMBINED_QUERIES_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getCombinedQueries());
}
if (hasContentBudgetLostImpressionShare()) {
hash = (37 * hash) + CONTENT_BUDGET_LOST_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getContentBudgetLostImpressionShare()));
}
if (hasContentImpressionShare()) {
hash = (37 * hash) + CONTENT_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getContentImpressionShare()));
}
if (hasConversionLastReceivedRequestDateTime()) {
hash = (37 * hash) + CONVERSION_LAST_RECEIVED_REQUEST_DATE_TIME_FIELD_NUMBER;
hash = (53 * hash) + getConversionLastReceivedRequestDateTime().hashCode();
}
if (hasConversionLastConversionDate()) {
hash = (37 * hash) + CONVERSION_LAST_CONVERSION_DATE_FIELD_NUMBER;
hash = (53 * hash) + getConversionLastConversionDate().hashCode();
}
if (hasContentRankLostImpressionShare()) {
hash = (37 * hash) + CONTENT_RANK_LOST_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getContentRankLostImpressionShare()));
}
if (hasConversionsFromInteractionsRate()) {
hash = (37 * hash) + CONVERSIONS_FROM_INTERACTIONS_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getConversionsFromInteractionsRate()));
}
if (hasConversionsValue()) {
hash = (37 * hash) + CONVERSIONS_VALUE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getConversionsValue()));
}
hash = (37 * hash) + CONVERSIONS_VALUE_BY_CONVERSION_DATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getConversionsValueByConversionDate()));
if (hasConversionsValuePerCost()) {
hash = (37 * hash) + CONVERSIONS_VALUE_PER_COST_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getConversionsValuePerCost()));
}
if (hasConversionsFromInteractionsValuePerInteraction()) {
hash = (37 * hash) + CONVERSIONS_FROM_INTERACTIONS_VALUE_PER_INTERACTION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getConversionsFromInteractionsValuePerInteraction()));
}
if (hasConversions()) {
hash = (37 * hash) + CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getConversions()));
}
hash = (37 * hash) + CONVERSIONS_BY_CONVERSION_DATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getConversionsByConversionDate()));
if (hasCostMicros()) {
hash = (37 * hash) + COST_MICROS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getCostMicros());
}
if (hasCostPerAllConversions()) {
hash = (37 * hash) + COST_PER_ALL_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCostPerAllConversions()));
}
if (hasCostPerConversion()) {
hash = (37 * hash) + COST_PER_CONVERSION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCostPerConversion()));
}
if (hasCostPerCurrentModelAttributedConversion()) {
hash = (37 * hash) + COST_PER_CURRENT_MODEL_ATTRIBUTED_CONVERSION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCostPerCurrentModelAttributedConversion()));
}
if (hasCrossDeviceConversions()) {
hash = (37 * hash) + CROSS_DEVICE_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCrossDeviceConversions()));
}
if (hasCtr()) {
hash = (37 * hash) + CTR_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCtr()));
}
if (hasCurrentModelAttributedConversions()) {
hash = (37 * hash) + CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversions()));
}
if (hasCurrentModelAttributedConversionsFromInteractionsRate()) {
hash = (37 * hash) + CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_FROM_INTERACTIONS_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversionsFromInteractionsRate()));
}
if (hasCurrentModelAttributedConversionsFromInteractionsValuePerInteraction()) {
hash = (37 * hash) + CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_FROM_INTERACTIONS_VALUE_PER_INTERACTION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversionsFromInteractionsValuePerInteraction()));
}
if (hasCurrentModelAttributedConversionsValue()) {
hash = (37 * hash) + CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_VALUE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversionsValue()));
}
if (hasCurrentModelAttributedConversionsValuePerCost()) {
hash = (37 * hash) + CURRENT_MODEL_ATTRIBUTED_CONVERSIONS_VALUE_PER_COST_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getCurrentModelAttributedConversionsValuePerCost()));
}
if (hasEngagementRate()) {
hash = (37 * hash) + ENGAGEMENT_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getEngagementRate()));
}
if (hasEngagements()) {
hash = (37 * hash) + ENGAGEMENTS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getEngagements());
}
if (hasHotelAverageLeadValueMicros()) {
hash = (37 * hash) + HOTEL_AVERAGE_LEAD_VALUE_MICROS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getHotelAverageLeadValueMicros()));
}
if (hasHotelCommissionRateMicros()) {
hash = (37 * hash) + HOTEL_COMMISSION_RATE_MICROS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getHotelCommissionRateMicros());
}
if (hasHotelExpectedCommissionCost()) {
hash = (37 * hash) + HOTEL_EXPECTED_COMMISSION_COST_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getHotelExpectedCommissionCost()));
}
if (hasHotelPriceDifferencePercentage()) {
hash = (37 * hash) + HOTEL_PRICE_DIFFERENCE_PERCENTAGE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getHotelPriceDifferencePercentage()));
}
if (hasHotelEligibleImpressions()) {
hash = (37 * hash) + HOTEL_ELIGIBLE_IMPRESSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getHotelEligibleImpressions());
}
hash = (37 * hash) + HISTORICAL_CREATIVE_QUALITY_SCORE_FIELD_NUMBER;
hash = (53 * hash) + historicalCreativeQualityScore_;
hash = (37 * hash) + HISTORICAL_LANDING_PAGE_QUALITY_SCORE_FIELD_NUMBER;
hash = (53 * hash) + historicalLandingPageQualityScore_;
if (hasHistoricalQualityScore()) {
hash = (37 * hash) + HISTORICAL_QUALITY_SCORE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getHistoricalQualityScore());
}
hash = (37 * hash) + HISTORICAL_SEARCH_PREDICTED_CTR_FIELD_NUMBER;
hash = (53 * hash) + historicalSearchPredictedCtr_;
if (hasGmailForwards()) {
hash = (37 * hash) + GMAIL_FORWARDS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getGmailForwards());
}
if (hasGmailSaves()) {
hash = (37 * hash) + GMAIL_SAVES_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getGmailSaves());
}
if (hasGmailSecondaryClicks()) {
hash = (37 * hash) + GMAIL_SECONDARY_CLICKS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getGmailSecondaryClicks());
}
if (hasImpressionsFromStoreReach()) {
hash = (37 * hash) + IMPRESSIONS_FROM_STORE_REACH_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getImpressionsFromStoreReach());
}
if (hasImpressions()) {
hash = (37 * hash) + IMPRESSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getImpressions());
}
if (hasInteractionRate()) {
hash = (37 * hash) + INTERACTION_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getInteractionRate()));
}
if (hasInteractions()) {
hash = (37 * hash) + INTERACTIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getInteractions());
}
if (getInteractionEventTypesCount() > 0) {
hash = (37 * hash) + INTERACTION_EVENT_TYPES_FIELD_NUMBER;
hash = (53 * hash) + interactionEventTypes_.hashCode();
}
if (hasInvalidClickRate()) {
hash = (37 * hash) + INVALID_CLICK_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getInvalidClickRate()));
}
if (hasInvalidClicks()) {
hash = (37 * hash) + INVALID_CLICKS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getInvalidClicks());
}
if (hasMessageChats()) {
hash = (37 * hash) + MESSAGE_CHATS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getMessageChats());
}
if (hasMessageImpressions()) {
hash = (37 * hash) + MESSAGE_IMPRESSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getMessageImpressions());
}
if (hasMessageChatRate()) {
hash = (37 * hash) + MESSAGE_CHAT_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getMessageChatRate()));
}
if (hasMobileFriendlyClicksPercentage()) {
hash = (37 * hash) + MOBILE_FRIENDLY_CLICKS_PERCENTAGE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getMobileFriendlyClicksPercentage()));
}
if (hasOptimizationScoreUplift()) {
hash = (37 * hash) + OPTIMIZATION_SCORE_UPLIFT_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getOptimizationScoreUplift()));
}
if (hasOptimizationScoreUrl()) {
hash = (37 * hash) + OPTIMIZATION_SCORE_URL_FIELD_NUMBER;
hash = (53 * hash) + getOptimizationScoreUrl().hashCode();
}
if (hasOrganicClicks()) {
hash = (37 * hash) + ORGANIC_CLICKS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getOrganicClicks());
}
if (hasOrganicClicksPerQuery()) {
hash = (37 * hash) + ORGANIC_CLICKS_PER_QUERY_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getOrganicClicksPerQuery()));
}
if (hasOrganicImpressions()) {
hash = (37 * hash) + ORGANIC_IMPRESSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getOrganicImpressions());
}
if (hasOrganicImpressionsPerQuery()) {
hash = (37 * hash) + ORGANIC_IMPRESSIONS_PER_QUERY_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getOrganicImpressionsPerQuery()));
}
if (hasOrganicQueries()) {
hash = (37 * hash) + ORGANIC_QUERIES_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getOrganicQueries());
}
if (hasPercentNewVisitors()) {
hash = (37 * hash) + PERCENT_NEW_VISITORS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getPercentNewVisitors()));
}
if (hasPhoneCalls()) {
hash = (37 * hash) + PHONE_CALLS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getPhoneCalls());
}
if (hasPhoneImpressions()) {
hash = (37 * hash) + PHONE_IMPRESSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getPhoneImpressions());
}
if (hasPhoneThroughRate()) {
hash = (37 * hash) + PHONE_THROUGH_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getPhoneThroughRate()));
}
if (hasRelativeCtr()) {
hash = (37 * hash) + RELATIVE_CTR_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getRelativeCtr()));
}
if (hasSearchAbsoluteTopImpressionShare()) {
hash = (37 * hash) + SEARCH_ABSOLUTE_TOP_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchAbsoluteTopImpressionShare()));
}
if (hasSearchBudgetLostAbsoluteTopImpressionShare()) {
hash = (37 * hash) + SEARCH_BUDGET_LOST_ABSOLUTE_TOP_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchBudgetLostAbsoluteTopImpressionShare()));
}
if (hasSearchBudgetLostImpressionShare()) {
hash = (37 * hash) + SEARCH_BUDGET_LOST_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchBudgetLostImpressionShare()));
}
if (hasSearchBudgetLostTopImpressionShare()) {
hash = (37 * hash) + SEARCH_BUDGET_LOST_TOP_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchBudgetLostTopImpressionShare()));
}
if (hasSearchClickShare()) {
hash = (37 * hash) + SEARCH_CLICK_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchClickShare()));
}
if (hasSearchExactMatchImpressionShare()) {
hash = (37 * hash) + SEARCH_EXACT_MATCH_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchExactMatchImpressionShare()));
}
if (hasSearchImpressionShare()) {
hash = (37 * hash) + SEARCH_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchImpressionShare()));
}
if (hasSearchRankLostAbsoluteTopImpressionShare()) {
hash = (37 * hash) + SEARCH_RANK_LOST_ABSOLUTE_TOP_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchRankLostAbsoluteTopImpressionShare()));
}
if (hasSearchRankLostImpressionShare()) {
hash = (37 * hash) + SEARCH_RANK_LOST_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchRankLostImpressionShare()));
}
if (hasSearchRankLostTopImpressionShare()) {
hash = (37 * hash) + SEARCH_RANK_LOST_TOP_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchRankLostTopImpressionShare()));
}
if (hasSearchTopImpressionShare()) {
hash = (37 * hash) + SEARCH_TOP_IMPRESSION_SHARE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSearchTopImpressionShare()));
}
if (hasSpeedScore()) {
hash = (37 * hash) + SPEED_SCORE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getSpeedScore());
}
if (hasTopImpressionPercentage()) {
hash = (37 * hash) + TOP_IMPRESSION_PERCENTAGE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getTopImpressionPercentage()));
}
if (hasValidAcceleratedMobilePagesClicksPercentage()) {
hash = (37 * hash) + VALID_ACCELERATED_MOBILE_PAGES_CLICKS_PERCENTAGE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getValidAcceleratedMobilePagesClicksPercentage()));
}
if (hasValuePerAllConversions()) {
hash = (37 * hash) + VALUE_PER_ALL_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getValuePerAllConversions()));
}
if (hasValuePerAllConversionsByConversionDate()) {
hash = (37 * hash) + VALUE_PER_ALL_CONVERSIONS_BY_CONVERSION_DATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getValuePerAllConversionsByConversionDate()));
}
if (hasValuePerConversion()) {
hash = (37 * hash) + VALUE_PER_CONVERSION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getValuePerConversion()));
}
if (hasValuePerConversionsByConversionDate()) {
hash = (37 * hash) + VALUE_PER_CONVERSIONS_BY_CONVERSION_DATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getValuePerConversionsByConversionDate()));
}
if (hasValuePerCurrentModelAttributedConversion()) {
hash = (37 * hash) + VALUE_PER_CURRENT_MODEL_ATTRIBUTED_CONVERSION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getValuePerCurrentModelAttributedConversion()));
}
if (hasVideoQuartileP100Rate()) {
hash = (37 * hash) + VIDEO_QUARTILE_P100_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getVideoQuartileP100Rate()));
}
if (hasVideoQuartileP25Rate()) {
hash = (37 * hash) + VIDEO_QUARTILE_P25_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getVideoQuartileP25Rate()));
}
if (hasVideoQuartileP50Rate()) {
hash = (37 * hash) + VIDEO_QUARTILE_P50_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getVideoQuartileP50Rate()));
}
if (hasVideoQuartileP75Rate()) {
hash = (37 * hash) + VIDEO_QUARTILE_P75_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getVideoQuartileP75Rate()));
}
if (hasVideoViewRate()) {
hash = (37 * hash) + VIDEO_VIEW_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getVideoViewRate()));
}
if (hasVideoViews()) {
hash = (37 * hash) + VIDEO_VIEWS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getVideoViews());
}
if (hasViewThroughConversions()) {
hash = (37 * hash) + VIEW_THROUGH_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getViewThroughConversions());
}
hash = (37 * hash) + SK_AD_NETWORK_CONVERSIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getSkAdNetworkConversions());
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
}
public static com.google.ads.googleads.v10.common.Metrics parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.google.ads.googleads.v10.common.Metrics 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.v10.common.Metrics parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.google.ads.googleads.v10.common.Metrics 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.v10.common.Metrics parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.google.ads.googleads.v10.common.Metrics parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static com.google.ads.googleads.v10.common.Metrics parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static com.google.ads.googleads.v10.common.Metrics 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.v10.common.Metrics parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static com.google.ads.googleads.v10.common.Metrics 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.v10.common.Metrics parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static com.google.ads.googleads.v10.common.Metrics 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.v10.common.Metrics 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;
}
/**
*
* Metrics data.
*
*
* Protobuf type {@code google.ads.googleads.v10.common.Metrics}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:google.ads.googleads.v10.common.Metrics)
com.google.ads.googleads.v10.common.MetricsOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return com.google.ads.googleads.v10.common.MetricsProto.internal_static_google_ads_googleads_v10_common_Metrics_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return com.google.ads.googleads.v10.common.MetricsProto.internal_static_google_ads_googleads_v10_common_Metrics_fieldAccessorTable
.ensureFieldAccessorsInitialized(
com.google.ads.googleads.v10.common.Metrics.class, com.google.ads.googleads.v10.common.Metrics.Builder.class);
}
// Construct using com.google.ads.googleads.v10.common.Metrics.newBuilder()
private Builder() {
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
}
@java.lang.Override
public Builder clear() {
super.clear();
absoluteTopImpressionPercentage_ = 0D;
bitField0_ = (bitField0_ & ~0x00000001);
activeViewCpm_ = 0D;
bitField0_ = (bitField0_ & ~0x00000002);
activeViewCtr_ = 0D;
bitField0_ = (bitField0_ & ~0x00000004);
activeViewImpressions_ = 0L;
bitField0_ = (bitField0_ & ~0x00000008);
activeViewMeasurability_ = 0D;
bitField0_ = (bitField0_ & ~0x00000010);
activeViewMeasurableCostMicros_ = 0L;
bitField0_ = (bitField0_ & ~0x00000020);
activeViewMeasurableImpressions_ = 0L;
bitField0_ = (bitField0_ & ~0x00000040);
activeViewViewability_ = 0D;
bitField0_ = (bitField0_ & ~0x00000080);
allConversionsFromInteractionsRate_ = 0D;
bitField0_ = (bitField0_ & ~0x00000100);
allConversionsValue_ = 0D;
bitField0_ = (bitField0_ & ~0x00000200);
allConversionsValueByConversionDate_ = 0D;
allConversions_ = 0D;
bitField0_ = (bitField0_ & ~0x00000400);
allConversionsByConversionDate_ = 0D;
allConversionsValuePerCost_ = 0D;
bitField0_ = (bitField0_ & ~0x00000800);
allConversionsFromClickToCall_ = 0D;
bitField0_ = (bitField0_ & ~0x00001000);
allConversionsFromDirections_ = 0D;
bitField0_ = (bitField0_ & ~0x00002000);
allConversionsFromInteractionsValuePerInteraction_ = 0D;
bitField0_ = (bitField0_ & ~0x00004000);
allConversionsFromMenu_ = 0D;
bitField0_ = (bitField0_ & ~0x00008000);
allConversionsFromOrder_ = 0D;
bitField0_ = (bitField0_ & ~0x00010000);
allConversionsFromOtherEngagement_ = 0D;
bitField0_ = (bitField0_ & ~0x00020000);
allConversionsFromStoreVisit_ = 0D;
bitField0_ = (bitField0_ & ~0x00040000);
allConversionsFromStoreWebsite_ = 0D;
bitField0_ = (bitField0_ & ~0x00080000);
averageCost_ = 0D;
bitField0_ = (bitField0_ & ~0x00100000);
averageCpc_ = 0D;
bitField0_ = (bitField0_ & ~0x00200000);
averageCpe_ = 0D;
bitField0_ = (bitField0_ & ~0x00400000);
averageCpm_ = 0D;
bitField0_ = (bitField0_ & ~0x00800000);
averageCpv_ = 0D;
bitField0_ = (bitField0_ & ~0x01000000);
averagePageViews_ = 0D;
bitField0_ = (bitField0_ & ~0x02000000);
averageTimeOnSite_ = 0D;
bitField0_ = (bitField0_ & ~0x04000000);
benchmarkAverageMaxCpc_ = 0D;
bitField0_ = (bitField0_ & ~0x08000000);
biddableAppInstallConversions_ = 0D;
bitField0_ = (bitField0_ & ~0x10000000);
biddableAppPostInstallConversions_ = 0D;
bitField0_ = (bitField0_ & ~0x20000000);
benchmarkCtr_ = 0D;
bitField0_ = (bitField0_ & ~0x40000000);
bounceRate_ = 0D;
bitField0_ = (bitField0_ & ~0x80000000);
clicks_ = 0L;
bitField1_ = (bitField1_ & ~0x00000001);
combinedClicks_ = 0L;
bitField1_ = (bitField1_ & ~0x00000002);
combinedClicksPerQuery_ = 0D;
bitField1_ = (bitField1_ & ~0x00000004);
combinedQueries_ = 0L;
bitField1_ = (bitField1_ & ~0x00000008);
contentBudgetLostImpressionShare_ = 0D;
bitField1_ = (bitField1_ & ~0x00000010);
contentImpressionShare_ = 0D;
bitField1_ = (bitField1_ & ~0x00000020);
conversionLastReceivedRequestDateTime_ = "";
bitField1_ = (bitField1_ & ~0x00000040);
conversionLastConversionDate_ = "";
bitField1_ = (bitField1_ & ~0x00000080);
contentRankLostImpressionShare_ = 0D;
bitField1_ = (bitField1_ & ~0x00000100);
conversionsFromInteractionsRate_ = 0D;
bitField1_ = (bitField1_ & ~0x00000200);
conversionsValue_ = 0D;
bitField1_ = (bitField1_ & ~0x00000400);
conversionsValueByConversionDate_ = 0D;
conversionsValuePerCost_ = 0D;
bitField1_ = (bitField1_ & ~0x00000800);
conversionsFromInteractionsValuePerInteraction_ = 0D;
bitField1_ = (bitField1_ & ~0x00001000);
conversions_ = 0D;
bitField1_ = (bitField1_ & ~0x00002000);
conversionsByConversionDate_ = 0D;
costMicros_ = 0L;
bitField1_ = (bitField1_ & ~0x00004000);
costPerAllConversions_ = 0D;
bitField1_ = (bitField1_ & ~0x00008000);
costPerConversion_ = 0D;
bitField1_ = (bitField1_ & ~0x00010000);
costPerCurrentModelAttributedConversion_ = 0D;
bitField1_ = (bitField1_ & ~0x00020000);
crossDeviceConversions_ = 0D;
bitField1_ = (bitField1_ & ~0x00040000);
ctr_ = 0D;
bitField1_ = (bitField1_ & ~0x00080000);
currentModelAttributedConversions_ = 0D;
bitField1_ = (bitField1_ & ~0x00100000);
currentModelAttributedConversionsFromInteractionsRate_ = 0D;
bitField1_ = (bitField1_ & ~0x00200000);
currentModelAttributedConversionsFromInteractionsValuePerInteraction_ = 0D;
bitField1_ = (bitField1_ & ~0x00400000);
currentModelAttributedConversionsValue_ = 0D;
bitField1_ = (bitField1_ & ~0x00800000);
currentModelAttributedConversionsValuePerCost_ = 0D;
bitField1_ = (bitField1_ & ~0x01000000);
engagementRate_ = 0D;
bitField1_ = (bitField1_ & ~0x02000000);
engagements_ = 0L;
bitField1_ = (bitField1_ & ~0x04000000);
hotelAverageLeadValueMicros_ = 0D;
bitField1_ = (bitField1_ & ~0x08000000);
hotelCommissionRateMicros_ = 0L;
bitField1_ = (bitField1_ & ~0x10000000);
hotelExpectedCommissionCost_ = 0D;
bitField1_ = (bitField1_ & ~0x20000000);
hotelPriceDifferencePercentage_ = 0D;
bitField1_ = (bitField1_ & ~0x40000000);
hotelEligibleImpressions_ = 0L;
bitField1_ = (bitField1_ & ~0x80000000);
historicalCreativeQualityScore_ = 0;
historicalLandingPageQualityScore_ = 0;
historicalQualityScore_ = 0L;
bitField2_ = (bitField2_ & ~0x00000001);
historicalSearchPredictedCtr_ = 0;
gmailForwards_ = 0L;
bitField2_ = (bitField2_ & ~0x00000002);
gmailSaves_ = 0L;
bitField2_ = (bitField2_ & ~0x00000004);
gmailSecondaryClicks_ = 0L;
bitField2_ = (bitField2_ & ~0x00000008);
impressionsFromStoreReach_ = 0L;
bitField2_ = (bitField2_ & ~0x00000010);
impressions_ = 0L;
bitField2_ = (bitField2_ & ~0x00000020);
interactionRate_ = 0D;
bitField2_ = (bitField2_ & ~0x00000040);
interactions_ = 0L;
bitField2_ = (bitField2_ & ~0x00000080);
interactionEventTypes_ = java.util.Collections.emptyList();
bitField2_ = (bitField2_ & ~0x00000100);
invalidClickRate_ = 0D;
bitField2_ = (bitField2_ & ~0x00000200);
invalidClicks_ = 0L;
bitField2_ = (bitField2_ & ~0x00000400);
messageChats_ = 0L;
bitField2_ = (bitField2_ & ~0x00000800);
messageImpressions_ = 0L;
bitField2_ = (bitField2_ & ~0x00001000);
messageChatRate_ = 0D;
bitField2_ = (bitField2_ & ~0x00002000);
mobileFriendlyClicksPercentage_ = 0D;
bitField2_ = (bitField2_ & ~0x00004000);
optimizationScoreUplift_ = 0D;
bitField2_ = (bitField2_ & ~0x00008000);
optimizationScoreUrl_ = "";
bitField2_ = (bitField2_ & ~0x00010000);
organicClicks_ = 0L;
bitField2_ = (bitField2_ & ~0x00020000);
organicClicksPerQuery_ = 0D;
bitField2_ = (bitField2_ & ~0x00040000);
organicImpressions_ = 0L;
bitField2_ = (bitField2_ & ~0x00080000);
organicImpressionsPerQuery_ = 0D;
bitField2_ = (bitField2_ & ~0x00100000);
organicQueries_ = 0L;
bitField2_ = (bitField2_ & ~0x00200000);
percentNewVisitors_ = 0D;
bitField2_ = (bitField2_ & ~0x00400000);
phoneCalls_ = 0L;
bitField2_ = (bitField2_ & ~0x00800000);
phoneImpressions_ = 0L;
bitField2_ = (bitField2_ & ~0x01000000);
phoneThroughRate_ = 0D;
bitField2_ = (bitField2_ & ~0x02000000);
relativeCtr_ = 0D;
bitField2_ = (bitField2_ & ~0x04000000);
searchAbsoluteTopImpressionShare_ = 0D;
bitField2_ = (bitField2_ & ~0x08000000);
searchBudgetLostAbsoluteTopImpressionShare_ = 0D;
bitField2_ = (bitField2_ & ~0x10000000);
searchBudgetLostImpressionShare_ = 0D;
bitField2_ = (bitField2_ & ~0x20000000);
searchBudgetLostTopImpressionShare_ = 0D;
bitField2_ = (bitField2_ & ~0x40000000);
searchClickShare_ = 0D;
bitField2_ = (bitField2_ & ~0x80000000);
searchExactMatchImpressionShare_ = 0D;
bitField3_ = (bitField3_ & ~0x00000001);
searchImpressionShare_ = 0D;
bitField3_ = (bitField3_ & ~0x00000002);
searchRankLostAbsoluteTopImpressionShare_ = 0D;
bitField3_ = (bitField3_ & ~0x00000004);
searchRankLostImpressionShare_ = 0D;
bitField3_ = (bitField3_ & ~0x00000008);
searchRankLostTopImpressionShare_ = 0D;
bitField3_ = (bitField3_ & ~0x00000010);
searchTopImpressionShare_ = 0D;
bitField3_ = (bitField3_ & ~0x00000020);
speedScore_ = 0L;
bitField3_ = (bitField3_ & ~0x00000040);
topImpressionPercentage_ = 0D;
bitField3_ = (bitField3_ & ~0x00000080);
validAcceleratedMobilePagesClicksPercentage_ = 0D;
bitField3_ = (bitField3_ & ~0x00000100);
valuePerAllConversions_ = 0D;
bitField3_ = (bitField3_ & ~0x00000200);
valuePerAllConversionsByConversionDate_ = 0D;
bitField3_ = (bitField3_ & ~0x00000400);
valuePerConversion_ = 0D;
bitField3_ = (bitField3_ & ~0x00000800);
valuePerConversionsByConversionDate_ = 0D;
bitField3_ = (bitField3_ & ~0x00001000);
valuePerCurrentModelAttributedConversion_ = 0D;
bitField3_ = (bitField3_ & ~0x00002000);
videoQuartileP100Rate_ = 0D;
bitField3_ = (bitField3_ & ~0x00004000);
videoQuartileP25Rate_ = 0D;
bitField3_ = (bitField3_ & ~0x00008000);
videoQuartileP50Rate_ = 0D;
bitField3_ = (bitField3_ & ~0x00010000);
videoQuartileP75Rate_ = 0D;
bitField3_ = (bitField3_ & ~0x00020000);
videoViewRate_ = 0D;
bitField3_ = (bitField3_ & ~0x00040000);
videoViews_ = 0L;
bitField3_ = (bitField3_ & ~0x00080000);
viewThroughConversions_ = 0L;
bitField3_ = (bitField3_ & ~0x00100000);
skAdNetworkConversions_ = 0L;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return com.google.ads.googleads.v10.common.MetricsProto.internal_static_google_ads_googleads_v10_common_Metrics_descriptor;
}
@java.lang.Override
public com.google.ads.googleads.v10.common.Metrics getDefaultInstanceForType() {
return com.google.ads.googleads.v10.common.Metrics.getDefaultInstance();
}
@java.lang.Override
public com.google.ads.googleads.v10.common.Metrics build() {
com.google.ads.googleads.v10.common.Metrics result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public com.google.ads.googleads.v10.common.Metrics buildPartial() {
com.google.ads.googleads.v10.common.Metrics result = new com.google.ads.googleads.v10.common.Metrics(this);
int from_bitField0_ = bitField0_;
int from_bitField1_ = bitField1_;
int from_bitField2_ = bitField2_;
int from_bitField3_ = bitField3_;
int to_bitField0_ = 0;
int to_bitField1_ = 0;
int to_bitField2_ = 0;
int to_bitField3_ = 0;
if (((from_bitField0_ & 0x00000001) != 0)) {
result.absoluteTopImpressionPercentage_ = absoluteTopImpressionPercentage_;
to_bitField0_ |= 0x00000001;
}
if (((from_bitField0_ & 0x00000002) != 0)) {
result.activeViewCpm_ = activeViewCpm_;
to_bitField0_ |= 0x00000002;
}
if (((from_bitField0_ & 0x00000004) != 0)) {
result.activeViewCtr_ = activeViewCtr_;
to_bitField0_ |= 0x00000004;
}
if (((from_bitField0_ & 0x00000008) != 0)) {
result.activeViewImpressions_ = activeViewImpressions_;
to_bitField0_ |= 0x00000008;
}
if (((from_bitField0_ & 0x00000010) != 0)) {
result.activeViewMeasurability_ = activeViewMeasurability_;
to_bitField0_ |= 0x00000010;
}
if (((from_bitField0_ & 0x00000020) != 0)) {
result.activeViewMeasurableCostMicros_ = activeViewMeasurableCostMicros_;
to_bitField0_ |= 0x00000020;
}
if (((from_bitField0_ & 0x00000040) != 0)) {
result.activeViewMeasurableImpressions_ = activeViewMeasurableImpressions_;
to_bitField0_ |= 0x00000040;
}
if (((from_bitField0_ & 0x00000080) != 0)) {
result.activeViewViewability_ = activeViewViewability_;
to_bitField0_ |= 0x00000080;
}
if (((from_bitField0_ & 0x00000100) != 0)) {
result.allConversionsFromInteractionsRate_ = allConversionsFromInteractionsRate_;
to_bitField0_ |= 0x00000100;
}
if (((from_bitField0_ & 0x00000200) != 0)) {
result.allConversionsValue_ = allConversionsValue_;
to_bitField0_ |= 0x00000200;
}
result.allConversionsValueByConversionDate_ = allConversionsValueByConversionDate_;
if (((from_bitField0_ & 0x00000400) != 0)) {
result.allConversions_ = allConversions_;
to_bitField0_ |= 0x00000400;
}
result.allConversionsByConversionDate_ = allConversionsByConversionDate_;
if (((from_bitField0_ & 0x00000800) != 0)) {
result.allConversionsValuePerCost_ = allConversionsValuePerCost_;
to_bitField0_ |= 0x00000800;
}
if (((from_bitField0_ & 0x00001000) != 0)) {
result.allConversionsFromClickToCall_ = allConversionsFromClickToCall_;
to_bitField0_ |= 0x00001000;
}
if (((from_bitField0_ & 0x00002000) != 0)) {
result.allConversionsFromDirections_ = allConversionsFromDirections_;
to_bitField0_ |= 0x00002000;
}
if (((from_bitField0_ & 0x00004000) != 0)) {
result.allConversionsFromInteractionsValuePerInteraction_ = allConversionsFromInteractionsValuePerInteraction_;
to_bitField0_ |= 0x00004000;
}
if (((from_bitField0_ & 0x00008000) != 0)) {
result.allConversionsFromMenu_ = allConversionsFromMenu_;
to_bitField0_ |= 0x00008000;
}
if (((from_bitField0_ & 0x00010000) != 0)) {
result.allConversionsFromOrder_ = allConversionsFromOrder_;
to_bitField0_ |= 0x00010000;
}
if (((from_bitField0_ & 0x00020000) != 0)) {
result.allConversionsFromOtherEngagement_ = allConversionsFromOtherEngagement_;
to_bitField0_ |= 0x00020000;
}
if (((from_bitField0_ & 0x00040000) != 0)) {
result.allConversionsFromStoreVisit_ = allConversionsFromStoreVisit_;
to_bitField0_ |= 0x00040000;
}
if (((from_bitField0_ & 0x00080000) != 0)) {
result.allConversionsFromStoreWebsite_ = allConversionsFromStoreWebsite_;
to_bitField0_ |= 0x00080000;
}
if (((from_bitField0_ & 0x00100000) != 0)) {
result.averageCost_ = averageCost_;
to_bitField0_ |= 0x00100000;
}
if (((from_bitField0_ & 0x00200000) != 0)) {
result.averageCpc_ = averageCpc_;
to_bitField0_ |= 0x00200000;
}
if (((from_bitField0_ & 0x00400000) != 0)) {
result.averageCpe_ = averageCpe_;
to_bitField0_ |= 0x00400000;
}
if (((from_bitField0_ & 0x00800000) != 0)) {
result.averageCpm_ = averageCpm_;
to_bitField0_ |= 0x00800000;
}
if (((from_bitField0_ & 0x01000000) != 0)) {
result.averageCpv_ = averageCpv_;
to_bitField0_ |= 0x01000000;
}
if (((from_bitField0_ & 0x02000000) != 0)) {
result.averagePageViews_ = averagePageViews_;
to_bitField0_ |= 0x02000000;
}
if (((from_bitField0_ & 0x04000000) != 0)) {
result.averageTimeOnSite_ = averageTimeOnSite_;
to_bitField0_ |= 0x04000000;
}
if (((from_bitField0_ & 0x08000000) != 0)) {
result.benchmarkAverageMaxCpc_ = benchmarkAverageMaxCpc_;
to_bitField0_ |= 0x08000000;
}
if (((from_bitField0_ & 0x10000000) != 0)) {
result.biddableAppInstallConversions_ = biddableAppInstallConversions_;
to_bitField0_ |= 0x10000000;
}
if (((from_bitField0_ & 0x20000000) != 0)) {
result.biddableAppPostInstallConversions_ = biddableAppPostInstallConversions_;
to_bitField0_ |= 0x20000000;
}
if (((from_bitField0_ & 0x40000000) != 0)) {
result.benchmarkCtr_ = benchmarkCtr_;
to_bitField0_ |= 0x40000000;
}
if (((from_bitField0_ & 0x80000000) != 0)) {
result.bounceRate_ = bounceRate_;
to_bitField0_ |= 0x80000000;
}
if (((from_bitField1_ & 0x00000001) != 0)) {
result.clicks_ = clicks_;
to_bitField1_ |= 0x00000001;
}
if (((from_bitField1_ & 0x00000002) != 0)) {
result.combinedClicks_ = combinedClicks_;
to_bitField1_ |= 0x00000002;
}
if (((from_bitField1_ & 0x00000004) != 0)) {
result.combinedClicksPerQuery_ = combinedClicksPerQuery_;
to_bitField1_ |= 0x00000004;
}
if (((from_bitField1_ & 0x00000008) != 0)) {
result.combinedQueries_ = combinedQueries_;
to_bitField1_ |= 0x00000008;
}
if (((from_bitField1_ & 0x00000010) != 0)) {
result.contentBudgetLostImpressionShare_ = contentBudgetLostImpressionShare_;
to_bitField1_ |= 0x00000010;
}
if (((from_bitField1_ & 0x00000020) != 0)) {
result.contentImpressionShare_ = contentImpressionShare_;
to_bitField1_ |= 0x00000020;
}
if (((from_bitField1_ & 0x00000040) != 0)) {
to_bitField1_ |= 0x00000040;
}
result.conversionLastReceivedRequestDateTime_ = conversionLastReceivedRequestDateTime_;
if (((from_bitField1_ & 0x00000080) != 0)) {
to_bitField1_ |= 0x00000080;
}
result.conversionLastConversionDate_ = conversionLastConversionDate_;
if (((from_bitField1_ & 0x00000100) != 0)) {
result.contentRankLostImpressionShare_ = contentRankLostImpressionShare_;
to_bitField1_ |= 0x00000100;
}
if (((from_bitField1_ & 0x00000200) != 0)) {
result.conversionsFromInteractionsRate_ = conversionsFromInteractionsRate_;
to_bitField1_ |= 0x00000200;
}
if (((from_bitField1_ & 0x00000400) != 0)) {
result.conversionsValue_ = conversionsValue_;
to_bitField1_ |= 0x00000400;
}
result.conversionsValueByConversionDate_ = conversionsValueByConversionDate_;
if (((from_bitField1_ & 0x00000800) != 0)) {
result.conversionsValuePerCost_ = conversionsValuePerCost_;
to_bitField1_ |= 0x00000800;
}
if (((from_bitField1_ & 0x00001000) != 0)) {
result.conversionsFromInteractionsValuePerInteraction_ = conversionsFromInteractionsValuePerInteraction_;
to_bitField1_ |= 0x00001000;
}
if (((from_bitField1_ & 0x00002000) != 0)) {
result.conversions_ = conversions_;
to_bitField1_ |= 0x00002000;
}
result.conversionsByConversionDate_ = conversionsByConversionDate_;
if (((from_bitField1_ & 0x00004000) != 0)) {
result.costMicros_ = costMicros_;
to_bitField1_ |= 0x00004000;
}
if (((from_bitField1_ & 0x00008000) != 0)) {
result.costPerAllConversions_ = costPerAllConversions_;
to_bitField1_ |= 0x00008000;
}
if (((from_bitField1_ & 0x00010000) != 0)) {
result.costPerConversion_ = costPerConversion_;
to_bitField1_ |= 0x00010000;
}
if (((from_bitField1_ & 0x00020000) != 0)) {
result.costPerCurrentModelAttributedConversion_ = costPerCurrentModelAttributedConversion_;
to_bitField1_ |= 0x00020000;
}
if (((from_bitField1_ & 0x00040000) != 0)) {
result.crossDeviceConversions_ = crossDeviceConversions_;
to_bitField1_ |= 0x00040000;
}
if (((from_bitField1_ & 0x00080000) != 0)) {
result.ctr_ = ctr_;
to_bitField1_ |= 0x00080000;
}
if (((from_bitField1_ & 0x00100000) != 0)) {
result.currentModelAttributedConversions_ = currentModelAttributedConversions_;
to_bitField1_ |= 0x00100000;
}
if (((from_bitField1_ & 0x00200000) != 0)) {
result.currentModelAttributedConversionsFromInteractionsRate_ = currentModelAttributedConversionsFromInteractionsRate_;
to_bitField1_ |= 0x00200000;
}
if (((from_bitField1_ & 0x00400000) != 0)) {
result.currentModelAttributedConversionsFromInteractionsValuePerInteraction_ = currentModelAttributedConversionsFromInteractionsValuePerInteraction_;
to_bitField1_ |= 0x00400000;
}
if (((from_bitField1_ & 0x00800000) != 0)) {
result.currentModelAttributedConversionsValue_ = currentModelAttributedConversionsValue_;
to_bitField1_ |= 0x00800000;
}
if (((from_bitField1_ & 0x01000000) != 0)) {
result.currentModelAttributedConversionsValuePerCost_ = currentModelAttributedConversionsValuePerCost_;
to_bitField1_ |= 0x01000000;
}
if (((from_bitField1_ & 0x02000000) != 0)) {
result.engagementRate_ = engagementRate_;
to_bitField1_ |= 0x02000000;
}
if (((from_bitField1_ & 0x04000000) != 0)) {
result.engagements_ = engagements_;
to_bitField1_ |= 0x04000000;
}
if (((from_bitField1_ & 0x08000000) != 0)) {
result.hotelAverageLeadValueMicros_ = hotelAverageLeadValueMicros_;
to_bitField1_ |= 0x08000000;
}
if (((from_bitField1_ & 0x10000000) != 0)) {
result.hotelCommissionRateMicros_ = hotelCommissionRateMicros_;
to_bitField1_ |= 0x10000000;
}
if (((from_bitField1_ & 0x20000000) != 0)) {
result.hotelExpectedCommissionCost_ = hotelExpectedCommissionCost_;
to_bitField1_ |= 0x20000000;
}
if (((from_bitField1_ & 0x40000000) != 0)) {
result.hotelPriceDifferencePercentage_ = hotelPriceDifferencePercentage_;
to_bitField1_ |= 0x40000000;
}
if (((from_bitField1_ & 0x80000000) != 0)) {
result.hotelEligibleImpressions_ = hotelEligibleImpressions_;
to_bitField1_ |= 0x80000000;
}
result.historicalCreativeQualityScore_ = historicalCreativeQualityScore_;
result.historicalLandingPageQualityScore_ = historicalLandingPageQualityScore_;
if (((from_bitField2_ & 0x00000001) != 0)) {
result.historicalQualityScore_ = historicalQualityScore_;
to_bitField2_ |= 0x00000001;
}
result.historicalSearchPredictedCtr_ = historicalSearchPredictedCtr_;
if (((from_bitField2_ & 0x00000002) != 0)) {
result.gmailForwards_ = gmailForwards_;
to_bitField2_ |= 0x00000002;
}
if (((from_bitField2_ & 0x00000004) != 0)) {
result.gmailSaves_ = gmailSaves_;
to_bitField2_ |= 0x00000004;
}
if (((from_bitField2_ & 0x00000008) != 0)) {
result.gmailSecondaryClicks_ = gmailSecondaryClicks_;
to_bitField2_ |= 0x00000008;
}
if (((from_bitField2_ & 0x00000010) != 0)) {
result.impressionsFromStoreReach_ = impressionsFromStoreReach_;
to_bitField2_ |= 0x00000010;
}
if (((from_bitField2_ & 0x00000020) != 0)) {
result.impressions_ = impressions_;
to_bitField2_ |= 0x00000020;
}
if (((from_bitField2_ & 0x00000040) != 0)) {
result.interactionRate_ = interactionRate_;
to_bitField2_ |= 0x00000040;
}
if (((from_bitField2_ & 0x00000080) != 0)) {
result.interactions_ = interactions_;
to_bitField2_ |= 0x00000080;
}
if (((bitField2_ & 0x00000100) != 0)) {
interactionEventTypes_ = java.util.Collections.unmodifiableList(interactionEventTypes_);
bitField2_ = (bitField2_ & ~0x00000100);
}
result.interactionEventTypes_ = interactionEventTypes_;
if (((from_bitField2_ & 0x00000200) != 0)) {
result.invalidClickRate_ = invalidClickRate_;
to_bitField2_ |= 0x00000100;
}
if (((from_bitField2_ & 0x00000400) != 0)) {
result.invalidClicks_ = invalidClicks_;
to_bitField2_ |= 0x00000200;
}
if (((from_bitField2_ & 0x00000800) != 0)) {
result.messageChats_ = messageChats_;
to_bitField2_ |= 0x00000400;
}
if (((from_bitField2_ & 0x00001000) != 0)) {
result.messageImpressions_ = messageImpressions_;
to_bitField2_ |= 0x00000800;
}
if (((from_bitField2_ & 0x00002000) != 0)) {
result.messageChatRate_ = messageChatRate_;
to_bitField2_ |= 0x00001000;
}
if (((from_bitField2_ & 0x00004000) != 0)) {
result.mobileFriendlyClicksPercentage_ = mobileFriendlyClicksPercentage_;
to_bitField2_ |= 0x00002000;
}
if (((from_bitField2_ & 0x00008000) != 0)) {
result.optimizationScoreUplift_ = optimizationScoreUplift_;
to_bitField2_ |= 0x00004000;
}
if (((from_bitField2_ & 0x00010000) != 0)) {
to_bitField2_ |= 0x00008000;
}
result.optimizationScoreUrl_ = optimizationScoreUrl_;
if (((from_bitField2_ & 0x00020000) != 0)) {
result.organicClicks_ = organicClicks_;
to_bitField2_ |= 0x00010000;
}
if (((from_bitField2_ & 0x00040000) != 0)) {
result.organicClicksPerQuery_ = organicClicksPerQuery_;
to_bitField2_ |= 0x00020000;
}
if (((from_bitField2_ & 0x00080000) != 0)) {
result.organicImpressions_ = organicImpressions_;
to_bitField2_ |= 0x00040000;
}
if (((from_bitField2_ & 0x00100000) != 0)) {
result.organicImpressionsPerQuery_ = organicImpressionsPerQuery_;
to_bitField2_ |= 0x00080000;
}
if (((from_bitField2_ & 0x00200000) != 0)) {
result.organicQueries_ = organicQueries_;
to_bitField2_ |= 0x00100000;
}
if (((from_bitField2_ & 0x00400000) != 0)) {
result.percentNewVisitors_ = percentNewVisitors_;
to_bitField2_ |= 0x00200000;
}
if (((from_bitField2_ & 0x00800000) != 0)) {
result.phoneCalls_ = phoneCalls_;
to_bitField2_ |= 0x00400000;
}
if (((from_bitField2_ & 0x01000000) != 0)) {
result.phoneImpressions_ = phoneImpressions_;
to_bitField2_ |= 0x00800000;
}
if (((from_bitField2_ & 0x02000000) != 0)) {
result.phoneThroughRate_ = phoneThroughRate_;
to_bitField2_ |= 0x01000000;
}
if (((from_bitField2_ & 0x04000000) != 0)) {
result.relativeCtr_ = relativeCtr_;
to_bitField2_ |= 0x02000000;
}
if (((from_bitField2_ & 0x08000000) != 0)) {
result.searchAbsoluteTopImpressionShare_ = searchAbsoluteTopImpressionShare_;
to_bitField2_ |= 0x04000000;
}
if (((from_bitField2_ & 0x10000000) != 0)) {
result.searchBudgetLostAbsoluteTopImpressionShare_ = searchBudgetLostAbsoluteTopImpressionShare_;
to_bitField2_ |= 0x08000000;
}
if (((from_bitField2_ & 0x20000000) != 0)) {
result.searchBudgetLostImpressionShare_ = searchBudgetLostImpressionShare_;
to_bitField2_ |= 0x10000000;
}
if (((from_bitField2_ & 0x40000000) != 0)) {
result.searchBudgetLostTopImpressionShare_ = searchBudgetLostTopImpressionShare_;
to_bitField2_ |= 0x20000000;
}
if (((from_bitField2_ & 0x80000000) != 0)) {
result.searchClickShare_ = searchClickShare_;
to_bitField2_ |= 0x40000000;
}
if (((from_bitField3_ & 0x00000001) != 0)) {
result.searchExactMatchImpressionShare_ = searchExactMatchImpressionShare_;
to_bitField2_ |= 0x80000000;
}
if (((from_bitField3_ & 0x00000002) != 0)) {
result.searchImpressionShare_ = searchImpressionShare_;
to_bitField3_ |= 0x00000001;
}
if (((from_bitField3_ & 0x00000004) != 0)) {
result.searchRankLostAbsoluteTopImpressionShare_ = searchRankLostAbsoluteTopImpressionShare_;
to_bitField3_ |= 0x00000002;
}
if (((from_bitField3_ & 0x00000008) != 0)) {
result.searchRankLostImpressionShare_ = searchRankLostImpressionShare_;
to_bitField3_ |= 0x00000004;
}
if (((from_bitField3_ & 0x00000010) != 0)) {
result.searchRankLostTopImpressionShare_ = searchRankLostTopImpressionShare_;
to_bitField3_ |= 0x00000008;
}
if (((from_bitField3_ & 0x00000020) != 0)) {
result.searchTopImpressionShare_ = searchTopImpressionShare_;
to_bitField3_ |= 0x00000010;
}
if (((from_bitField3_ & 0x00000040) != 0)) {
result.speedScore_ = speedScore_;
to_bitField3_ |= 0x00000020;
}
if (((from_bitField3_ & 0x00000080) != 0)) {
result.topImpressionPercentage_ = topImpressionPercentage_;
to_bitField3_ |= 0x00000040;
}
if (((from_bitField3_ & 0x00000100) != 0)) {
result.validAcceleratedMobilePagesClicksPercentage_ = validAcceleratedMobilePagesClicksPercentage_;
to_bitField3_ |= 0x00000080;
}
if (((from_bitField3_ & 0x00000200) != 0)) {
result.valuePerAllConversions_ = valuePerAllConversions_;
to_bitField3_ |= 0x00000100;
}
if (((from_bitField3_ & 0x00000400) != 0)) {
result.valuePerAllConversionsByConversionDate_ = valuePerAllConversionsByConversionDate_;
to_bitField3_ |= 0x00000200;
}
if (((from_bitField3_ & 0x00000800) != 0)) {
result.valuePerConversion_ = valuePerConversion_;
to_bitField3_ |= 0x00000400;
}
if (((from_bitField3_ & 0x00001000) != 0)) {
result.valuePerConversionsByConversionDate_ = valuePerConversionsByConversionDate_;
to_bitField3_ |= 0x00000800;
}
if (((from_bitField3_ & 0x00002000) != 0)) {
result.valuePerCurrentModelAttributedConversion_ = valuePerCurrentModelAttributedConversion_;
to_bitField3_ |= 0x00001000;
}
if (((from_bitField3_ & 0x00004000) != 0)) {
result.videoQuartileP100Rate_ = videoQuartileP100Rate_;
to_bitField3_ |= 0x00002000;
}
if (((from_bitField3_ & 0x00008000) != 0)) {
result.videoQuartileP25Rate_ = videoQuartileP25Rate_;
to_bitField3_ |= 0x00004000;
}
if (((from_bitField3_ & 0x00010000) != 0)) {
result.videoQuartileP50Rate_ = videoQuartileP50Rate_;
to_bitField3_ |= 0x00008000;
}
if (((from_bitField3_ & 0x00020000) != 0)) {
result.videoQuartileP75Rate_ = videoQuartileP75Rate_;
to_bitField3_ |= 0x00010000;
}
if (((from_bitField3_ & 0x00040000) != 0)) {
result.videoViewRate_ = videoViewRate_;
to_bitField3_ |= 0x00020000;
}
if (((from_bitField3_ & 0x00080000) != 0)) {
result.videoViews_ = videoViews_;
to_bitField3_ |= 0x00040000;
}
if (((from_bitField3_ & 0x00100000) != 0)) {
result.viewThroughConversions_ = viewThroughConversions_;
to_bitField3_ |= 0x00080000;
}
result.skAdNetworkConversions_ = skAdNetworkConversions_;
result.bitField0_ = to_bitField0_;
result.bitField1_ = to_bitField1_;
result.bitField2_ = to_bitField2_;
result.bitField3_ = to_bitField3_;
onBuilt();
return result;
}
@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.v10.common.Metrics) {
return mergeFrom((com.google.ads.googleads.v10.common.Metrics)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(com.google.ads.googleads.v10.common.Metrics other) {
if (other == com.google.ads.googleads.v10.common.Metrics.getDefaultInstance()) return this;
if (other.hasAbsoluteTopImpressionPercentage()) {
setAbsoluteTopImpressionPercentage(other.getAbsoluteTopImpressionPercentage());
}
if (other.hasActiveViewCpm()) {
setActiveViewCpm(other.getActiveViewCpm());
}
if (other.hasActiveViewCtr()) {
setActiveViewCtr(other.getActiveViewCtr());
}
if (other.hasActiveViewImpressions()) {
setActiveViewImpressions(other.getActiveViewImpressions());
}
if (other.hasActiveViewMeasurability()) {
setActiveViewMeasurability(other.getActiveViewMeasurability());
}
if (other.hasActiveViewMeasurableCostMicros()) {
setActiveViewMeasurableCostMicros(other.getActiveViewMeasurableCostMicros());
}
if (other.hasActiveViewMeasurableImpressions()) {
setActiveViewMeasurableImpressions(other.getActiveViewMeasurableImpressions());
}
if (other.hasActiveViewViewability()) {
setActiveViewViewability(other.getActiveViewViewability());
}
if (other.hasAllConversionsFromInteractionsRate()) {
setAllConversionsFromInteractionsRate(other.getAllConversionsFromInteractionsRate());
}
if (other.hasAllConversionsValue()) {
setAllConversionsValue(other.getAllConversionsValue());
}
if (other.getAllConversionsValueByConversionDate() != 0D) {
setAllConversionsValueByConversionDate(other.getAllConversionsValueByConversionDate());
}
if (other.hasAllConversions()) {
setAllConversions(other.getAllConversions());
}
if (other.getAllConversionsByConversionDate() != 0D) {
setAllConversionsByConversionDate(other.getAllConversionsByConversionDate());
}
if (other.hasAllConversionsValuePerCost()) {
setAllConversionsValuePerCost(other.getAllConversionsValuePerCost());
}
if (other.hasAllConversionsFromClickToCall()) {
setAllConversionsFromClickToCall(other.getAllConversionsFromClickToCall());
}
if (other.hasAllConversionsFromDirections()) {
setAllConversionsFromDirections(other.getAllConversionsFromDirections());
}
if (other.hasAllConversionsFromInteractionsValuePerInteraction()) {
setAllConversionsFromInteractionsValuePerInteraction(other.getAllConversionsFromInteractionsValuePerInteraction());
}
if (other.hasAllConversionsFromMenu()) {
setAllConversionsFromMenu(other.getAllConversionsFromMenu());
}
if (other.hasAllConversionsFromOrder()) {
setAllConversionsFromOrder(other.getAllConversionsFromOrder());
}
if (other.hasAllConversionsFromOtherEngagement()) {
setAllConversionsFromOtherEngagement(other.getAllConversionsFromOtherEngagement());
}
if (other.hasAllConversionsFromStoreVisit()) {
setAllConversionsFromStoreVisit(other.getAllConversionsFromStoreVisit());
}
if (other.hasAllConversionsFromStoreWebsite()) {
setAllConversionsFromStoreWebsite(other.getAllConversionsFromStoreWebsite());
}
if (other.hasAverageCost()) {
setAverageCost(other.getAverageCost());
}
if (other.hasAverageCpc()) {
setAverageCpc(other.getAverageCpc());
}
if (other.hasAverageCpe()) {
setAverageCpe(other.getAverageCpe());
}
if (other.hasAverageCpm()) {
setAverageCpm(other.getAverageCpm());
}
if (other.hasAverageCpv()) {
setAverageCpv(other.getAverageCpv());
}
if (other.hasAveragePageViews()) {
setAveragePageViews(other.getAveragePageViews());
}
if (other.hasAverageTimeOnSite()) {
setAverageTimeOnSite(other.getAverageTimeOnSite());
}
if (other.hasBenchmarkAverageMaxCpc()) {
setBenchmarkAverageMaxCpc(other.getBenchmarkAverageMaxCpc());
}
if (other.hasBiddableAppInstallConversions()) {
setBiddableAppInstallConversions(other.getBiddableAppInstallConversions());
}
if (other.hasBiddableAppPostInstallConversions()) {
setBiddableAppPostInstallConversions(other.getBiddableAppPostInstallConversions());
}
if (other.hasBenchmarkCtr()) {
setBenchmarkCtr(other.getBenchmarkCtr());
}
if (other.hasBounceRate()) {
setBounceRate(other.getBounceRate());
}
if (other.hasClicks()) {
setClicks(other.getClicks());
}
if (other.hasCombinedClicks()) {
setCombinedClicks(other.getCombinedClicks());
}
if (other.hasCombinedClicksPerQuery()) {
setCombinedClicksPerQuery(other.getCombinedClicksPerQuery());
}
if (other.hasCombinedQueries()) {
setCombinedQueries(other.getCombinedQueries());
}
if (other.hasContentBudgetLostImpressionShare()) {
setContentBudgetLostImpressionShare(other.getContentBudgetLostImpressionShare());
}
if (other.hasContentImpressionShare()) {
setContentImpressionShare(other.getContentImpressionShare());
}
if (other.hasConversionLastReceivedRequestDateTime()) {
bitField1_ |= 0x00000040;
conversionLastReceivedRequestDateTime_ = other.conversionLastReceivedRequestDateTime_;
onChanged();
}
if (other.hasConversionLastConversionDate()) {
bitField1_ |= 0x00000080;
conversionLastConversionDate_ = other.conversionLastConversionDate_;
onChanged();
}
if (other.hasContentRankLostImpressionShare()) {
setContentRankLostImpressionShare(other.getContentRankLostImpressionShare());
}
if (other.hasConversionsFromInteractionsRate()) {
setConversionsFromInteractionsRate(other.getConversionsFromInteractionsRate());
}
if (other.hasConversionsValue()) {
setConversionsValue(other.getConversionsValue());
}
if (other.getConversionsValueByConversionDate() != 0D) {
setConversionsValueByConversionDate(other.getConversionsValueByConversionDate());
}
if (other.hasConversionsValuePerCost()) {
setConversionsValuePerCost(other.getConversionsValuePerCost());
}
if (other.hasConversionsFromInteractionsValuePerInteraction()) {
setConversionsFromInteractionsValuePerInteraction(other.getConversionsFromInteractionsValuePerInteraction());
}
if (other.hasConversions()) {
setConversions(other.getConversions());
}
if (other.getConversionsByConversionDate() != 0D) {
setConversionsByConversionDate(other.getConversionsByConversionDate());
}
if (other.hasCostMicros()) {
setCostMicros(other.getCostMicros());
}
if (other.hasCostPerAllConversions()) {
setCostPerAllConversions(other.getCostPerAllConversions());
}
if (other.hasCostPerConversion()) {
setCostPerConversion(other.getCostPerConversion());
}
if (other.hasCostPerCurrentModelAttributedConversion()) {
setCostPerCurrentModelAttributedConversion(other.getCostPerCurrentModelAttributedConversion());
}
if (other.hasCrossDeviceConversions()) {
setCrossDeviceConversions(other.getCrossDeviceConversions());
}
if (other.hasCtr()) {
setCtr(other.getCtr());
}
if (other.hasCurrentModelAttributedConversions()) {
setCurrentModelAttributedConversions(other.getCurrentModelAttributedConversions());
}
if (other.hasCurrentModelAttributedConversionsFromInteractionsRate()) {
setCurrentModelAttributedConversionsFromInteractionsRate(other.getCurrentModelAttributedConversionsFromInteractionsRate());
}
if (other.hasCurrentModelAttributedConversionsFromInteractionsValuePerInteraction()) {
setCurrentModelAttributedConversionsFromInteractionsValuePerInteraction(other.getCurrentModelAttributedConversionsFromInteractionsValuePerInteraction());
}
if (other.hasCurrentModelAttributedConversionsValue()) {
setCurrentModelAttributedConversionsValue(other.getCurrentModelAttributedConversionsValue());
}
if (other.hasCurrentModelAttributedConversionsValuePerCost()) {
setCurrentModelAttributedConversionsValuePerCost(other.getCurrentModelAttributedConversionsValuePerCost());
}
if (other.hasEngagementRate()) {
setEngagementRate(other.getEngagementRate());
}
if (other.hasEngagements()) {
setEngagements(other.getEngagements());
}
if (other.hasHotelAverageLeadValueMicros()) {
setHotelAverageLeadValueMicros(other.getHotelAverageLeadValueMicros());
}
if (other.hasHotelCommissionRateMicros()) {
setHotelCommissionRateMicros(other.getHotelCommissionRateMicros());
}
if (other.hasHotelExpectedCommissionCost()) {
setHotelExpectedCommissionCost(other.getHotelExpectedCommissionCost());
}
if (other.hasHotelPriceDifferencePercentage()) {
setHotelPriceDifferencePercentage(other.getHotelPriceDifferencePercentage());
}
if (other.hasHotelEligibleImpressions()) {
setHotelEligibleImpressions(other.getHotelEligibleImpressions());
}
if (other.historicalCreativeQualityScore_ != 0) {
setHistoricalCreativeQualityScoreValue(other.getHistoricalCreativeQualityScoreValue());
}
if (other.historicalLandingPageQualityScore_ != 0) {
setHistoricalLandingPageQualityScoreValue(other.getHistoricalLandingPageQualityScoreValue());
}
if (other.hasHistoricalQualityScore()) {
setHistoricalQualityScore(other.getHistoricalQualityScore());
}
if (other.historicalSearchPredictedCtr_ != 0) {
setHistoricalSearchPredictedCtrValue(other.getHistoricalSearchPredictedCtrValue());
}
if (other.hasGmailForwards()) {
setGmailForwards(other.getGmailForwards());
}
if (other.hasGmailSaves()) {
setGmailSaves(other.getGmailSaves());
}
if (other.hasGmailSecondaryClicks()) {
setGmailSecondaryClicks(other.getGmailSecondaryClicks());
}
if (other.hasImpressionsFromStoreReach()) {
setImpressionsFromStoreReach(other.getImpressionsFromStoreReach());
}
if (other.hasImpressions()) {
setImpressions(other.getImpressions());
}
if (other.hasInteractionRate()) {
setInteractionRate(other.getInteractionRate());
}
if (other.hasInteractions()) {
setInteractions(other.getInteractions());
}
if (!other.interactionEventTypes_.isEmpty()) {
if (interactionEventTypes_.isEmpty()) {
interactionEventTypes_ = other.interactionEventTypes_;
bitField2_ = (bitField2_ & ~0x00000100);
} else {
ensureInteractionEventTypesIsMutable();
interactionEventTypes_.addAll(other.interactionEventTypes_);
}
onChanged();
}
if (other.hasInvalidClickRate()) {
setInvalidClickRate(other.getInvalidClickRate());
}
if (other.hasInvalidClicks()) {
setInvalidClicks(other.getInvalidClicks());
}
if (other.hasMessageChats()) {
setMessageChats(other.getMessageChats());
}
if (other.hasMessageImpressions()) {
setMessageImpressions(other.getMessageImpressions());
}
if (other.hasMessageChatRate()) {
setMessageChatRate(other.getMessageChatRate());
}
if (other.hasMobileFriendlyClicksPercentage()) {
setMobileFriendlyClicksPercentage(other.getMobileFriendlyClicksPercentage());
}
if (other.hasOptimizationScoreUplift()) {
setOptimizationScoreUplift(other.getOptimizationScoreUplift());
}
if (other.hasOptimizationScoreUrl()) {
bitField2_ |= 0x00010000;
optimizationScoreUrl_ = other.optimizationScoreUrl_;
onChanged();
}
if (other.hasOrganicClicks()) {
setOrganicClicks(other.getOrganicClicks());
}
if (other.hasOrganicClicksPerQuery()) {
setOrganicClicksPerQuery(other.getOrganicClicksPerQuery());
}
if (other.hasOrganicImpressions()) {
setOrganicImpressions(other.getOrganicImpressions());
}
if (other.hasOrganicImpressionsPerQuery()) {
setOrganicImpressionsPerQuery(other.getOrganicImpressionsPerQuery());
}
if (other.hasOrganicQueries()) {
setOrganicQueries(other.getOrganicQueries());
}
if (other.hasPercentNewVisitors()) {
setPercentNewVisitors(other.getPercentNewVisitors());
}
if (other.hasPhoneCalls()) {
setPhoneCalls(other.getPhoneCalls());
}
if (other.hasPhoneImpressions()) {
setPhoneImpressions(other.getPhoneImpressions());
}
if (other.hasPhoneThroughRate()) {
setPhoneThroughRate(other.getPhoneThroughRate());
}
if (other.hasRelativeCtr()) {
setRelativeCtr(other.getRelativeCtr());
}
if (other.hasSearchAbsoluteTopImpressionShare()) {
setSearchAbsoluteTopImpressionShare(other.getSearchAbsoluteTopImpressionShare());
}
if (other.hasSearchBudgetLostAbsoluteTopImpressionShare()) {
setSearchBudgetLostAbsoluteTopImpressionShare(other.getSearchBudgetLostAbsoluteTopImpressionShare());
}
if (other.hasSearchBudgetLostImpressionShare()) {
setSearchBudgetLostImpressionShare(other.getSearchBudgetLostImpressionShare());
}
if (other.hasSearchBudgetLostTopImpressionShare()) {
setSearchBudgetLostTopImpressionShare(other.getSearchBudgetLostTopImpressionShare());
}
if (other.hasSearchClickShare()) {
setSearchClickShare(other.getSearchClickShare());
}
if (other.hasSearchExactMatchImpressionShare()) {
setSearchExactMatchImpressionShare(other.getSearchExactMatchImpressionShare());
}
if (other.hasSearchImpressionShare()) {
setSearchImpressionShare(other.getSearchImpressionShare());
}
if (other.hasSearchRankLostAbsoluteTopImpressionShare()) {
setSearchRankLostAbsoluteTopImpressionShare(other.getSearchRankLostAbsoluteTopImpressionShare());
}
if (other.hasSearchRankLostImpressionShare()) {
setSearchRankLostImpressionShare(other.getSearchRankLostImpressionShare());
}
if (other.hasSearchRankLostTopImpressionShare()) {
setSearchRankLostTopImpressionShare(other.getSearchRankLostTopImpressionShare());
}
if (other.hasSearchTopImpressionShare()) {
setSearchTopImpressionShare(other.getSearchTopImpressionShare());
}
if (other.hasSpeedScore()) {
setSpeedScore(other.getSpeedScore());
}
if (other.hasTopImpressionPercentage()) {
setTopImpressionPercentage(other.getTopImpressionPercentage());
}
if (other.hasValidAcceleratedMobilePagesClicksPercentage()) {
setValidAcceleratedMobilePagesClicksPercentage(other.getValidAcceleratedMobilePagesClicksPercentage());
}
if (other.hasValuePerAllConversions()) {
setValuePerAllConversions(other.getValuePerAllConversions());
}
if (other.hasValuePerAllConversionsByConversionDate()) {
setValuePerAllConversionsByConversionDate(other.getValuePerAllConversionsByConversionDate());
}
if (other.hasValuePerConversion()) {
setValuePerConversion(other.getValuePerConversion());
}
if (other.hasValuePerConversionsByConversionDate()) {
setValuePerConversionsByConversionDate(other.getValuePerConversionsByConversionDate());
}
if (other.hasValuePerCurrentModelAttributedConversion()) {
setValuePerCurrentModelAttributedConversion(other.getValuePerCurrentModelAttributedConversion());
}
if (other.hasVideoQuartileP100Rate()) {
setVideoQuartileP100Rate(other.getVideoQuartileP100Rate());
}
if (other.hasVideoQuartileP25Rate()) {
setVideoQuartileP25Rate(other.getVideoQuartileP25Rate());
}
if (other.hasVideoQuartileP50Rate()) {
setVideoQuartileP50Rate(other.getVideoQuartileP50Rate());
}
if (other.hasVideoQuartileP75Rate()) {
setVideoQuartileP75Rate(other.getVideoQuartileP75Rate());
}
if (other.hasVideoViewRate()) {
setVideoViewRate(other.getVideoViewRate());
}
if (other.hasVideoViews()) {
setVideoViews(other.getVideoViews());
}
if (other.hasViewThroughConversions()) {
setViewThroughConversions(other.getViewThroughConversions());
}
if (other.getSkAdNetworkConversions() != 0L) {
setSkAdNetworkConversions(other.getSkAdNetworkConversions());
}
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 640: {
historicalCreativeQualityScore_ = input.readEnum();
break;
} // case 640
case 648: {
historicalLandingPageQualityScore_ = input.readEnum();
break;
} // case 648
case 664: {
historicalSearchPredictedCtr_ = input.readEnum();
break;
} // case 664
case 800: {
int tmpRaw = input.readEnum();
ensureInteractionEventTypesIsMutable();
interactionEventTypes_.add(tmpRaw);
break;
} // case 800
case 802: {
int length = input.readRawVarint32();
int oldLimit = input.pushLimit(length);
while(input.getBytesUntilLimit() > 0) {
int tmpRaw = input.readEnum();
ensureInteractionEventTypesIsMutable();
interactionEventTypes_.add(tmpRaw);
}
input.popLimit(oldLimit);
break;
} // case 802
case 1048: {
clicks_ = input.readInt64();
bitField1_ |= 0x00000001;
break;
} // case 1048
case 1057: {
videoQuartileP100Rate_ = input.readDouble();
bitField3_ |= 0x00004000;
break;
} // case 1057
case 1065: {
videoQuartileP25Rate_ = input.readDouble();
bitField3_ |= 0x00008000;
break;
} // case 1065
case 1073: {
videoQuartileP50Rate_ = input.readDouble();
bitField3_ |= 0x00010000;
break;
} // case 1073
case 1081: {
videoQuartileP75Rate_ = input.readDouble();
bitField3_ |= 0x00020000;
break;
} // case 1081
case 1089: {
searchAbsoluteTopImpressionShare_ = input.readDouble();
bitField2_ |= 0x08000000;
break;
} // case 1089
case 1097: {
searchBudgetLostAbsoluteTopImpressionShare_ = input.readDouble();
bitField2_ |= 0x10000000;
break;
} // case 1097
case 1105: {
searchBudgetLostImpressionShare_ = input.readDouble();
bitField2_ |= 0x20000000;
break;
} // case 1105
case 1113: {
searchBudgetLostTopImpressionShare_ = input.readDouble();
bitField2_ |= 0x40000000;
break;
} // case 1113
case 1121: {
searchClickShare_ = input.readDouble();
bitField2_ |= 0x80000000;
break;
} // case 1121
case 1129: {
searchExactMatchImpressionShare_ = input.readDouble();
bitField3_ |= 0x00000001;
break;
} // case 1129
case 1137: {
searchImpressionShare_ = input.readDouble();
bitField3_ |= 0x00000002;
break;
} // case 1137
case 1145: {
searchRankLostAbsoluteTopImpressionShare_ = input.readDouble();
bitField3_ |= 0x00000004;
break;
} // case 1145
case 1153: {
searchRankLostImpressionShare_ = input.readDouble();
bitField3_ |= 0x00000008;
break;
} // case 1153
case 1161: {
searchRankLostTopImpressionShare_ = input.readDouble();
bitField3_ |= 0x00000010;
break;
} // case 1161
case 1169: {
searchTopImpressionShare_ = input.readDouble();
bitField3_ |= 0x00000020;
break;
} // case 1169
case 1176: {
speedScore_ = input.readInt64();
bitField3_ |= 0x00000040;
break;
} // case 1176
case 1185: {
topImpressionPercentage_ = input.readDouble();
bitField3_ |= 0x00000080;
break;
} // case 1185
case 1193: {
validAcceleratedMobilePagesClicksPercentage_ = input.readDouble();
bitField3_ |= 0x00000100;
break;
} // case 1193
case 1201: {
valuePerAllConversions_ = input.readDouble();
bitField3_ |= 0x00000200;
break;
} // case 1201
case 1209: {
valuePerConversion_ = input.readDouble();
bitField3_ |= 0x00000800;
break;
} // case 1209
case 1217: {
valuePerCurrentModelAttributedConversion_ = input.readDouble();
bitField3_ |= 0x00002000;
break;
} // case 1217
case 1225: {
videoViewRate_ = input.readDouble();
bitField3_ |= 0x00040000;
break;
} // case 1225
case 1232: {
videoViews_ = input.readInt64();
bitField3_ |= 0x00080000;
break;
} // case 1232
case 1240: {
viewThroughConversions_ = input.readInt64();
bitField3_ |= 0x00100000;
break;
} // case 1240
case 1248: {
combinedClicks_ = input.readInt64();
bitField1_ |= 0x00000002;
break;
} // case 1248
case 1257: {
combinedClicksPerQuery_ = input.readDouble();
bitField1_ |= 0x00000004;
break;
} // case 1257
case 1264: {
combinedQueries_ = input.readInt64();
bitField1_ |= 0x00000008;
break;
} // case 1264
case 1273: {
contentBudgetLostImpressionShare_ = input.readDouble();
bitField1_ |= 0x00000010;
break;
} // case 1273
case 1281: {
contentImpressionShare_ = input.readDouble();
bitField1_ |= 0x00000020;
break;
} // case 1281
case 1290: {
conversionLastReceivedRequestDateTime_ = input.readStringRequireUtf8();
bitField1_ |= 0x00000040;
break;
} // case 1290
case 1298: {
conversionLastConversionDate_ = input.readStringRequireUtf8();
bitField1_ |= 0x00000080;
break;
} // case 1298
case 1305: {
contentRankLostImpressionShare_ = input.readDouble();
bitField1_ |= 0x00000100;
break;
} // case 1305
case 1313: {
conversionsFromInteractionsRate_ = input.readDouble();
bitField1_ |= 0x00000200;
break;
} // case 1313
case 1321: {
conversionsValue_ = input.readDouble();
bitField1_ |= 0x00000400;
break;
} // case 1321
case 1329: {
conversionsValuePerCost_ = input.readDouble();
bitField1_ |= 0x00000800;
break;
} // case 1329
case 1337: {
conversionsFromInteractionsValuePerInteraction_ = input.readDouble();
bitField1_ |= 0x00001000;
break;
} // case 1337
case 1345: {
conversions_ = input.readDouble();
bitField1_ |= 0x00002000;
break;
} // case 1345
case 1352: {
costMicros_ = input.readInt64();
bitField1_ |= 0x00004000;
break;
} // case 1352
case 1361: {
costPerAllConversions_ = input.readDouble();
bitField1_ |= 0x00008000;
break;
} // case 1361
case 1369: {
costPerConversion_ = input.readDouble();
bitField1_ |= 0x00010000;
break;
} // case 1369
case 1377: {
costPerCurrentModelAttributedConversion_ = input.readDouble();
bitField1_ |= 0x00020000;
break;
} // case 1377
case 1385: {
crossDeviceConversions_ = input.readDouble();
bitField1_ |= 0x00040000;
break;
} // case 1385
case 1393: {
ctr_ = input.readDouble();
bitField1_ |= 0x00080000;
break;
} // case 1393
case 1401: {
currentModelAttributedConversions_ = input.readDouble();
bitField1_ |= 0x00100000;
break;
} // case 1401
case 1409: {
currentModelAttributedConversionsFromInteractionsRate_ = input.readDouble();
bitField1_ |= 0x00200000;
break;
} // case 1409
case 1417: {
currentModelAttributedConversionsFromInteractionsValuePerInteraction_ = input.readDouble();
bitField1_ |= 0x00400000;
break;
} // case 1417
case 1425: {
currentModelAttributedConversionsValue_ = input.readDouble();
bitField1_ |= 0x00800000;
break;
} // case 1425
case 1433: {
currentModelAttributedConversionsValuePerCost_ = input.readDouble();
bitField1_ |= 0x01000000;
break;
} // case 1433
case 1441: {
engagementRate_ = input.readDouble();
bitField1_ |= 0x02000000;
break;
} // case 1441
case 1448: {
engagements_ = input.readInt64();
bitField1_ |= 0x04000000;
break;
} // case 1448
case 1465: {
absoluteTopImpressionPercentage_ = input.readDouble();
bitField0_ |= 0x00000001;
break;
} // case 1465
case 1473: {
activeViewCpm_ = input.readDouble();
bitField0_ |= 0x00000002;
break;
} // case 1473
case 1481: {
activeViewCtr_ = input.readDouble();
bitField0_ |= 0x00000004;
break;
} // case 1481
case 1488: {
activeViewImpressions_ = input.readInt64();
bitField0_ |= 0x00000008;
break;
} // case 1488
case 1497: {
activeViewMeasurability_ = input.readDouble();
bitField0_ |= 0x00000010;
break;
} // case 1497
case 1504: {
activeViewMeasurableCostMicros_ = input.readInt64();
bitField0_ |= 0x00000020;
break;
} // case 1504
case 1512: {
activeViewMeasurableImpressions_ = input.readInt64();
bitField0_ |= 0x00000040;
break;
} // case 1512
case 1521: {
activeViewViewability_ = input.readDouble();
bitField0_ |= 0x00000080;
break;
} // case 1521
case 1529: {
allConversionsFromInteractionsRate_ = input.readDouble();
bitField0_ |= 0x00000100;
break;
} // case 1529
case 1537: {
allConversionsValue_ = input.readDouble();
bitField0_ |= 0x00000200;
break;
} // case 1537
case 1545: {
allConversions_ = input.readDouble();
bitField0_ |= 0x00000400;
break;
} // case 1545
case 1553: {
allConversionsValuePerCost_ = input.readDouble();
bitField0_ |= 0x00000800;
break;
} // case 1553
case 1561: {
allConversionsFromClickToCall_ = input.readDouble();
bitField0_ |= 0x00001000;
break;
} // case 1561
case 1569: {
allConversionsFromDirections_ = input.readDouble();
bitField0_ |= 0x00002000;
break;
} // case 1569
case 1577: {
allConversionsFromInteractionsValuePerInteraction_ = input.readDouble();
bitField0_ |= 0x00004000;
break;
} // case 1577
case 1585: {
allConversionsFromMenu_ = input.readDouble();
bitField0_ |= 0x00008000;
break;
} // case 1585
case 1593: {
allConversionsFromOrder_ = input.readDouble();
bitField0_ |= 0x00010000;
break;
} // case 1593
case 1601: {
allConversionsFromOtherEngagement_ = input.readDouble();
bitField0_ |= 0x00020000;
break;
} // case 1601
case 1609: {
allConversionsFromStoreVisit_ = input.readDouble();
bitField0_ |= 0x00040000;
break;
} // case 1609
case 1617: {
allConversionsFromStoreWebsite_ = input.readDouble();
bitField0_ |= 0x00080000;
break;
} // case 1617
case 1625: {
averageCost_ = input.readDouble();
bitField0_ |= 0x00100000;
break;
} // case 1625
case 1633: {
averageCpc_ = input.readDouble();
bitField0_ |= 0x00200000;
break;
} // case 1633
case 1641: {
averageCpe_ = input.readDouble();
bitField0_ |= 0x00400000;
break;
} // case 1641
case 1649: {
averageCpm_ = input.readDouble();
bitField0_ |= 0x00800000;
break;
} // case 1649
case 1657: {
averageCpv_ = input.readDouble();
bitField0_ |= 0x01000000;
break;
} // case 1657
case 1665: {
averagePageViews_ = input.readDouble();
bitField0_ |= 0x02000000;
break;
} // case 1665
case 1673: {
averageTimeOnSite_ = input.readDouble();
bitField0_ |= 0x04000000;
break;
} // case 1673
case 1681: {
benchmarkAverageMaxCpc_ = input.readDouble();
bitField0_ |= 0x08000000;
break;
} // case 1681
case 1689: {
benchmarkCtr_ = input.readDouble();
bitField0_ |= 0x40000000;
break;
} // case 1689
case 1697: {
bounceRate_ = input.readDouble();
bitField0_ |= 0x80000000;
break;
} // case 1697
case 1705: {
hotelAverageLeadValueMicros_ = input.readDouble();
bitField1_ |= 0x08000000;
break;
} // case 1705
case 1713: {
hotelPriceDifferencePercentage_ = input.readDouble();
bitField1_ |= 0x40000000;
break;
} // case 1713
case 1720: {
hotelEligibleImpressions_ = input.readInt64();
bitField1_ |= 0x80000000;
break;
} // case 1720
case 1728: {
historicalQualityScore_ = input.readInt64();
bitField2_ |= 0x00000001;
break;
} // case 1728
case 1736: {
gmailForwards_ = input.readInt64();
bitField2_ |= 0x00000002;
break;
} // case 1736
case 1744: {
gmailSaves_ = input.readInt64();
bitField2_ |= 0x00000004;
break;
} // case 1744
case 1752: {
gmailSecondaryClicks_ = input.readInt64();
bitField2_ |= 0x00000008;
break;
} // case 1752
case 1760: {
impressionsFromStoreReach_ = input.readInt64();
bitField2_ |= 0x00000010;
break;
} // case 1760
case 1768: {
impressions_ = input.readInt64();
bitField2_ |= 0x00000020;
break;
} // case 1768
case 1777: {
interactionRate_ = input.readDouble();
bitField2_ |= 0x00000040;
break;
} // case 1777
case 1784: {
interactions_ = input.readInt64();
bitField2_ |= 0x00000080;
break;
} // case 1784
case 1793: {
invalidClickRate_ = input.readDouble();
bitField2_ |= 0x00000200;
break;
} // case 1793
case 1800: {
invalidClicks_ = input.readInt64();
bitField2_ |= 0x00000400;
break;
} // case 1800
case 1808: {
messageChats_ = input.readInt64();
bitField2_ |= 0x00000800;
break;
} // case 1808
case 1816: {
messageImpressions_ = input.readInt64();
bitField2_ |= 0x00001000;
break;
} // case 1816
case 1825: {
messageChatRate_ = input.readDouble();
bitField2_ |= 0x00002000;
break;
} // case 1825
case 1833: {
mobileFriendlyClicksPercentage_ = input.readDouble();
bitField2_ |= 0x00004000;
break;
} // case 1833
case 1840: {
organicClicks_ = input.readInt64();
bitField2_ |= 0x00020000;
break;
} // case 1840
case 1849: {
organicClicksPerQuery_ = input.readDouble();
bitField2_ |= 0x00040000;
break;
} // case 1849
case 1856: {
organicImpressions_ = input.readInt64();
bitField2_ |= 0x00080000;
break;
} // case 1856
case 1865: {
organicImpressionsPerQuery_ = input.readDouble();
bitField2_ |= 0x00100000;
break;
} // case 1865
case 1872: {
organicQueries_ = input.readInt64();
bitField2_ |= 0x00200000;
break;
} // case 1872
case 1881: {
percentNewVisitors_ = input.readDouble();
bitField2_ |= 0x00400000;
break;
} // case 1881
case 1888: {
phoneCalls_ = input.readInt64();
bitField2_ |= 0x00800000;
break;
} // case 1888
case 1896: {
phoneImpressions_ = input.readInt64();
bitField2_ |= 0x01000000;
break;
} // case 1896
case 1905: {
phoneThroughRate_ = input.readDouble();
bitField2_ |= 0x02000000;
break;
} // case 1905
case 1913: {
relativeCtr_ = input.readDouble();
bitField2_ |= 0x04000000;
break;
} // case 1913
case 1921: {
allConversionsValueByConversionDate_ = input.readDouble();
break;
} // case 1921
case 1929: {
allConversionsByConversionDate_ = input.readDouble();
break;
} // case 1929
case 1937: {
conversionsValueByConversionDate_ = input.readDouble();
break;
} // case 1937
case 1945: {
conversionsByConversionDate_ = input.readDouble();
break;
} // case 1945
case 1953: {
valuePerAllConversionsByConversionDate_ = input.readDouble();
bitField3_ |= 0x00000400;
break;
} // case 1953
case 1961: {
valuePerConversionsByConversionDate_ = input.readDouble();
bitField3_ |= 0x00001000;
break;
} // case 1961
case 1968: {
skAdNetworkConversions_ = input.readInt64();
break;
} // case 1968
case 1977: {
optimizationScoreUplift_ = input.readDouble();
bitField2_ |= 0x00008000;
break;
} // case 1977
case 1986: {
optimizationScoreUrl_ = input.readStringRequireUtf8();
bitField2_ |= 0x00010000;
break;
} // case 1986
case 2033: {
biddableAppInstallConversions_ = input.readDouble();
bitField0_ |= 0x10000000;
break;
} // case 2033
case 2041: {
biddableAppPostInstallConversions_ = input.readDouble();
bitField0_ |= 0x20000000;
break;
} // case 2041
case 2048: {
hotelCommissionRateMicros_ = input.readInt64();
bitField1_ |= 0x10000000;
break;
} // case 2048
case 2057: {
hotelExpectedCommissionCost_ = input.readDouble();
bitField1_ |= 0x20000000;
break;
} // case 2057
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 int bitField2_;
private int bitField3_;
private double absoluteTopImpressionPercentage_ ;
/**
*
* The percent of your ad impressions that are shown as the very first ad
* above the organic search results.
*
*
* optional double absolute_top_impression_percentage = 183;
* @return Whether the absoluteTopImpressionPercentage field is set.
*/
@java.lang.Override
public boolean hasAbsoluteTopImpressionPercentage() {
return ((bitField0_ & 0x00000001) != 0);
}
/**
*
* The percent of your ad impressions that are shown as the very first ad
* above the organic search results.
*
*
* optional double absolute_top_impression_percentage = 183;
* @return The absoluteTopImpressionPercentage.
*/
@java.lang.Override
public double getAbsoluteTopImpressionPercentage() {
return absoluteTopImpressionPercentage_;
}
/**
*
* The percent of your ad impressions that are shown as the very first ad
* above the organic search results.
*
*
* optional double absolute_top_impression_percentage = 183;
* @param value The absoluteTopImpressionPercentage to set.
* @return This builder for chaining.
*/
public Builder setAbsoluteTopImpressionPercentage(double value) {
bitField0_ |= 0x00000001;
absoluteTopImpressionPercentage_ = value;
onChanged();
return this;
}
/**
*
* The percent of your ad impressions that are shown as the very first ad
* above the organic search results.
*
*
* optional double absolute_top_impression_percentage = 183;
* @return This builder for chaining.
*/
public Builder clearAbsoluteTopImpressionPercentage() {
bitField0_ = (bitField0_ & ~0x00000001);
absoluteTopImpressionPercentage_ = 0D;
onChanged();
return this;
}
private double activeViewCpm_ ;
/**
*
* Average cost of viewable impressions (`active_view_impressions`).
*
*
* optional double active_view_cpm = 184;
* @return Whether the activeViewCpm field is set.
*/
@java.lang.Override
public boolean hasActiveViewCpm() {
return ((bitField0_ & 0x00000002) != 0);
}
/**
*
* Average cost of viewable impressions (`active_view_impressions`).
*
*
* optional double active_view_cpm = 184;
* @return The activeViewCpm.
*/
@java.lang.Override
public double getActiveViewCpm() {
return activeViewCpm_;
}
/**
*
* Average cost of viewable impressions (`active_view_impressions`).
*
*
* optional double active_view_cpm = 184;
* @param value The activeViewCpm to set.
* @return This builder for chaining.
*/
public Builder setActiveViewCpm(double value) {
bitField0_ |= 0x00000002;
activeViewCpm_ = value;
onChanged();
return this;
}
/**
*
* Average cost of viewable impressions (`active_view_impressions`).
*
*
* optional double active_view_cpm = 184;
* @return This builder for chaining.
*/
public Builder clearActiveViewCpm() {
bitField0_ = (bitField0_ & ~0x00000002);
activeViewCpm_ = 0D;
onChanged();
return this;
}
private double activeViewCtr_ ;
/**
*
* Active view measurable clicks divided by active view viewable impressions.
* This metric is reported only for display network.
*
*
* optional double active_view_ctr = 185;
* @return Whether the activeViewCtr field is set.
*/
@java.lang.Override
public boolean hasActiveViewCtr() {
return ((bitField0_ & 0x00000004) != 0);
}
/**
*
* Active view measurable clicks divided by active view viewable impressions.
* This metric is reported only for display network.
*
*
* optional double active_view_ctr = 185;
* @return The activeViewCtr.
*/
@java.lang.Override
public double getActiveViewCtr() {
return activeViewCtr_;
}
/**
*
* Active view measurable clicks divided by active view viewable impressions.
* This metric is reported only for display network.
*
*
* optional double active_view_ctr = 185;
* @param value The activeViewCtr to set.
* @return This builder for chaining.
*/
public Builder setActiveViewCtr(double value) {
bitField0_ |= 0x00000004;
activeViewCtr_ = value;
onChanged();
return this;
}
/**
*
* Active view measurable clicks divided by active view viewable impressions.
* This metric is reported only for display network.
*
*
* optional double active_view_ctr = 185;
* @return This builder for chaining.
*/
public Builder clearActiveViewCtr() {
bitField0_ = (bitField0_ & ~0x00000004);
activeViewCtr_ = 0D;
onChanged();
return this;
}
private long activeViewImpressions_ ;
/**
*
* A measurement of how often your ad has become viewable on a Display
* Network site.
*
*
* optional int64 active_view_impressions = 186;
* @return Whether the activeViewImpressions field is set.
*/
@java.lang.Override
public boolean hasActiveViewImpressions() {
return ((bitField0_ & 0x00000008) != 0);
}
/**
*
* A measurement of how often your ad has become viewable on a Display
* Network site.
*
*
* optional int64 active_view_impressions = 186;
* @return The activeViewImpressions.
*/
@java.lang.Override
public long getActiveViewImpressions() {
return activeViewImpressions_;
}
/**
*
* A measurement of how often your ad has become viewable on a Display
* Network site.
*
*
* optional int64 active_view_impressions = 186;
* @param value The activeViewImpressions to set.
* @return This builder for chaining.
*/
public Builder setActiveViewImpressions(long value) {
bitField0_ |= 0x00000008;
activeViewImpressions_ = value;
onChanged();
return this;
}
/**
*
* A measurement of how often your ad has become viewable on a Display
* Network site.
*
*
* optional int64 active_view_impressions = 186;
* @return This builder for chaining.
*/
public Builder clearActiveViewImpressions() {
bitField0_ = (bitField0_ & ~0x00000008);
activeViewImpressions_ = 0L;
onChanged();
return this;
}
private double activeViewMeasurability_ ;
/**
*
* The ratio of impressions that could be measured by Active View over the
* number of served impressions.
*
*
* optional double active_view_measurability = 187;
* @return Whether the activeViewMeasurability field is set.
*/
@java.lang.Override
public boolean hasActiveViewMeasurability() {
return ((bitField0_ & 0x00000010) != 0);
}
/**
*
* The ratio of impressions that could be measured by Active View over the
* number of served impressions.
*
*
* optional double active_view_measurability = 187;
* @return The activeViewMeasurability.
*/
@java.lang.Override
public double getActiveViewMeasurability() {
return activeViewMeasurability_;
}
/**
*
* The ratio of impressions that could be measured by Active View over the
* number of served impressions.
*
*
* optional double active_view_measurability = 187;
* @param value The activeViewMeasurability to set.
* @return This builder for chaining.
*/
public Builder setActiveViewMeasurability(double value) {
bitField0_ |= 0x00000010;
activeViewMeasurability_ = value;
onChanged();
return this;
}
/**
*
* The ratio of impressions that could be measured by Active View over the
* number of served impressions.
*
*
* optional double active_view_measurability = 187;
* @return This builder for chaining.
*/
public Builder clearActiveViewMeasurability() {
bitField0_ = (bitField0_ & ~0x00000010);
activeViewMeasurability_ = 0D;
onChanged();
return this;
}
private long activeViewMeasurableCostMicros_ ;
/**
*
* The cost of the impressions you received that were measurable by Active
* View.
*
*
* optional int64 active_view_measurable_cost_micros = 188;
* @return Whether the activeViewMeasurableCostMicros field is set.
*/
@java.lang.Override
public boolean hasActiveViewMeasurableCostMicros() {
return ((bitField0_ & 0x00000020) != 0);
}
/**
*
* The cost of the impressions you received that were measurable by Active
* View.
*
*
* optional int64 active_view_measurable_cost_micros = 188;
* @return The activeViewMeasurableCostMicros.
*/
@java.lang.Override
public long getActiveViewMeasurableCostMicros() {
return activeViewMeasurableCostMicros_;
}
/**
*
* The cost of the impressions you received that were measurable by Active
* View.
*
*
* optional int64 active_view_measurable_cost_micros = 188;
* @param value The activeViewMeasurableCostMicros to set.
* @return This builder for chaining.
*/
public Builder setActiveViewMeasurableCostMicros(long value) {
bitField0_ |= 0x00000020;
activeViewMeasurableCostMicros_ = value;
onChanged();
return this;
}
/**
*
* The cost of the impressions you received that were measurable by Active
* View.
*
*
* optional int64 active_view_measurable_cost_micros = 188;
* @return This builder for chaining.
*/
public Builder clearActiveViewMeasurableCostMicros() {
bitField0_ = (bitField0_ & ~0x00000020);
activeViewMeasurableCostMicros_ = 0L;
onChanged();
return this;
}
private long activeViewMeasurableImpressions_ ;
/**
*
* The number of times your ads are appearing on placements in positions
* where they can be seen.
*
*
* optional int64 active_view_measurable_impressions = 189;
* @return Whether the activeViewMeasurableImpressions field is set.
*/
@java.lang.Override
public boolean hasActiveViewMeasurableImpressions() {
return ((bitField0_ & 0x00000040) != 0);
}
/**
*
* The number of times your ads are appearing on placements in positions
* where they can be seen.
*
*
* optional int64 active_view_measurable_impressions = 189;
* @return The activeViewMeasurableImpressions.
*/
@java.lang.Override
public long getActiveViewMeasurableImpressions() {
return activeViewMeasurableImpressions_;
}
/**
*
* The number of times your ads are appearing on placements in positions
* where they can be seen.
*
*
* optional int64 active_view_measurable_impressions = 189;
* @param value The activeViewMeasurableImpressions to set.
* @return This builder for chaining.
*/
public Builder setActiveViewMeasurableImpressions(long value) {
bitField0_ |= 0x00000040;
activeViewMeasurableImpressions_ = value;
onChanged();
return this;
}
/**
*
* The number of times your ads are appearing on placements in positions
* where they can be seen.
*
*
* optional int64 active_view_measurable_impressions = 189;
* @return This builder for chaining.
*/
public Builder clearActiveViewMeasurableImpressions() {
bitField0_ = (bitField0_ & ~0x00000040);
activeViewMeasurableImpressions_ = 0L;
onChanged();
return this;
}
private double activeViewViewability_ ;
/**
*
* The percentage of time when your ad appeared on an Active View enabled site
* (measurable impressions) and was viewable (viewable impressions).
*
*
* optional double active_view_viewability = 190;
* @return Whether the activeViewViewability field is set.
*/
@java.lang.Override
public boolean hasActiveViewViewability() {
return ((bitField0_ & 0x00000080) != 0);
}
/**
*
* The percentage of time when your ad appeared on an Active View enabled site
* (measurable impressions) and was viewable (viewable impressions).
*
*
* optional double active_view_viewability = 190;
* @return The activeViewViewability.
*/
@java.lang.Override
public double getActiveViewViewability() {
return activeViewViewability_;
}
/**
*
* The percentage of time when your ad appeared on an Active View enabled site
* (measurable impressions) and was viewable (viewable impressions).
*
*
* optional double active_view_viewability = 190;
* @param value The activeViewViewability to set.
* @return This builder for chaining.
*/
public Builder setActiveViewViewability(double value) {
bitField0_ |= 0x00000080;
activeViewViewability_ = value;
onChanged();
return this;
}
/**
*
* The percentage of time when your ad appeared on an Active View enabled site
* (measurable impressions) and was viewable (viewable impressions).
*
*
* optional double active_view_viewability = 190;
* @return This builder for chaining.
*/
public Builder clearActiveViewViewability() {
bitField0_ = (bitField0_ & ~0x00000080);
activeViewViewability_ = 0D;
onChanged();
return this;
}
private double allConversionsFromInteractionsRate_ ;
/**
*
* All conversions from interactions (as oppose to view through conversions)
* divided by the number of ad interactions.
*
*
* optional double all_conversions_from_interactions_rate = 191;
* @return Whether the allConversionsFromInteractionsRate field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromInteractionsRate() {
return ((bitField0_ & 0x00000100) != 0);
}
/**
*
* All conversions from interactions (as oppose to view through conversions)
* divided by the number of ad interactions.
*
*
* optional double all_conversions_from_interactions_rate = 191;
* @return The allConversionsFromInteractionsRate.
*/
@java.lang.Override
public double getAllConversionsFromInteractionsRate() {
return allConversionsFromInteractionsRate_;
}
/**
*
* All conversions from interactions (as oppose to view through conversions)
* divided by the number of ad interactions.
*
*
* optional double all_conversions_from_interactions_rate = 191;
* @param value The allConversionsFromInteractionsRate to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromInteractionsRate(double value) {
bitField0_ |= 0x00000100;
allConversionsFromInteractionsRate_ = value;
onChanged();
return this;
}
/**
*
* All conversions from interactions (as oppose to view through conversions)
* divided by the number of ad interactions.
*
*
* optional double all_conversions_from_interactions_rate = 191;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromInteractionsRate() {
bitField0_ = (bitField0_ & ~0x00000100);
allConversionsFromInteractionsRate_ = 0D;
onChanged();
return this;
}
private double allConversionsValue_ ;
/**
*
* The value of all conversions.
*
*
* optional double all_conversions_value = 192;
* @return Whether the allConversionsValue field is set.
*/
@java.lang.Override
public boolean hasAllConversionsValue() {
return ((bitField0_ & 0x00000200) != 0);
}
/**
*
* The value of all conversions.
*
*
* optional double all_conversions_value = 192;
* @return The allConversionsValue.
*/
@java.lang.Override
public double getAllConversionsValue() {
return allConversionsValue_;
}
/**
*
* The value of all conversions.
*
*
* optional double all_conversions_value = 192;
* @param value The allConversionsValue to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsValue(double value) {
bitField0_ |= 0x00000200;
allConversionsValue_ = value;
onChanged();
return this;
}
/**
*
* The value of all conversions.
*
*
* optional double all_conversions_value = 192;
* @return This builder for chaining.
*/
public Builder clearAllConversionsValue() {
bitField0_ = (bitField0_ & ~0x00000200);
allConversionsValue_ = 0D;
onChanged();
return this;
}
private double allConversionsValueByConversionDate_ ;
/**
*
* The value of all conversions. When this column is selected with date, the
* values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double all_conversions_value_by_conversion_date = 240;
* @return The allConversionsValueByConversionDate.
*/
@java.lang.Override
public double getAllConversionsValueByConversionDate() {
return allConversionsValueByConversionDate_;
}
/**
*
* The value of all conversions. When this column is selected with date, the
* values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double all_conversions_value_by_conversion_date = 240;
* @param value The allConversionsValueByConversionDate to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsValueByConversionDate(double value) {
allConversionsValueByConversionDate_ = value;
onChanged();
return this;
}
/**
*
* The value of all conversions. When this column is selected with date, the
* values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double all_conversions_value_by_conversion_date = 240;
* @return This builder for chaining.
*/
public Builder clearAllConversionsValueByConversionDate() {
allConversionsValueByConversionDate_ = 0D;
onChanged();
return this;
}
private double allConversions_ ;
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric.
*
*
* optional double all_conversions = 193;
* @return Whether the allConversions field is set.
*/
@java.lang.Override
public boolean hasAllConversions() {
return ((bitField0_ & 0x00000400) != 0);
}
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric.
*
*
* optional double all_conversions = 193;
* @return The allConversions.
*/
@java.lang.Override
public double getAllConversions() {
return allConversions_;
}
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric.
*
*
* optional double all_conversions = 193;
* @param value The allConversions to set.
* @return This builder for chaining.
*/
public Builder setAllConversions(double value) {
bitField0_ |= 0x00000400;
allConversions_ = value;
onChanged();
return this;
}
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric.
*
*
* optional double all_conversions = 193;
* @return This builder for chaining.
*/
public Builder clearAllConversions() {
bitField0_ = (bitField0_ & ~0x00000400);
allConversions_ = 0D;
onChanged();
return this;
}
private double allConversionsByConversionDate_ ;
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric. When this column is selected
* with date, the values in date column means the conversion date. Details for
* the by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double all_conversions_by_conversion_date = 241;
* @return The allConversionsByConversionDate.
*/
@java.lang.Override
public double getAllConversionsByConversionDate() {
return allConversionsByConversionDate_;
}
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric. When this column is selected
* with date, the values in date column means the conversion date. Details for
* the by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double all_conversions_by_conversion_date = 241;
* @param value The allConversionsByConversionDate to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsByConversionDate(double value) {
allConversionsByConversionDate_ = value;
onChanged();
return this;
}
/**
*
* The total number of conversions. This includes all conversions regardless
* of the value of include_in_conversions_metric. When this column is selected
* with date, the values in date column means the conversion date. Details for
* the by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double all_conversions_by_conversion_date = 241;
* @return This builder for chaining.
*/
public Builder clearAllConversionsByConversionDate() {
allConversionsByConversionDate_ = 0D;
onChanged();
return this;
}
private double allConversionsValuePerCost_ ;
/**
*
* The value of all conversions divided by the total cost of ad interactions
* (such as clicks for text ads or views for video ads).
*
*
* optional double all_conversions_value_per_cost = 194;
* @return Whether the allConversionsValuePerCost field is set.
*/
@java.lang.Override
public boolean hasAllConversionsValuePerCost() {
return ((bitField0_ & 0x00000800) != 0);
}
/**
*
* The value of all conversions divided by the total cost of ad interactions
* (such as clicks for text ads or views for video ads).
*
*
* optional double all_conversions_value_per_cost = 194;
* @return The allConversionsValuePerCost.
*/
@java.lang.Override
public double getAllConversionsValuePerCost() {
return allConversionsValuePerCost_;
}
/**
*
* The value of all conversions divided by the total cost of ad interactions
* (such as clicks for text ads or views for video ads).
*
*
* optional double all_conversions_value_per_cost = 194;
* @param value The allConversionsValuePerCost to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsValuePerCost(double value) {
bitField0_ |= 0x00000800;
allConversionsValuePerCost_ = value;
onChanged();
return this;
}
/**
*
* The value of all conversions divided by the total cost of ad interactions
* (such as clicks for text ads or views for video ads).
*
*
* optional double all_conversions_value_per_cost = 194;
* @return This builder for chaining.
*/
public Builder clearAllConversionsValuePerCost() {
bitField0_ = (bitField0_ & ~0x00000800);
allConversionsValuePerCost_ = 0D;
onChanged();
return this;
}
private double allConversionsFromClickToCall_ ;
/**
*
* The number of times people clicked the "Call" button to call a store during
* or after clicking an ad. This number doesn't include whether or not calls
* were connected, or the duration of any calls.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_click_to_call = 195;
* @return Whether the allConversionsFromClickToCall field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromClickToCall() {
return ((bitField0_ & 0x00001000) != 0);
}
/**
*
* The number of times people clicked the "Call" button to call a store during
* or after clicking an ad. This number doesn't include whether or not calls
* were connected, or the duration of any calls.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_click_to_call = 195;
* @return The allConversionsFromClickToCall.
*/
@java.lang.Override
public double getAllConversionsFromClickToCall() {
return allConversionsFromClickToCall_;
}
/**
*
* The number of times people clicked the "Call" button to call a store during
* or after clicking an ad. This number doesn't include whether or not calls
* were connected, or the duration of any calls.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_click_to_call = 195;
* @param value The allConversionsFromClickToCall to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromClickToCall(double value) {
bitField0_ |= 0x00001000;
allConversionsFromClickToCall_ = value;
onChanged();
return this;
}
/**
*
* The number of times people clicked the "Call" button to call a store during
* or after clicking an ad. This number doesn't include whether or not calls
* were connected, or the duration of any calls.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_click_to_call = 195;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromClickToCall() {
bitField0_ = (bitField0_ & ~0x00001000);
allConversionsFromClickToCall_ = 0D;
onChanged();
return this;
}
private double allConversionsFromDirections_ ;
/**
*
* The number of times people clicked a "Get directions" button to navigate to
* a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_directions = 196;
* @return Whether the allConversionsFromDirections field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromDirections() {
return ((bitField0_ & 0x00002000) != 0);
}
/**
*
* The number of times people clicked a "Get directions" button to navigate to
* a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_directions = 196;
* @return The allConversionsFromDirections.
*/
@java.lang.Override
public double getAllConversionsFromDirections() {
return allConversionsFromDirections_;
}
/**
*
* The number of times people clicked a "Get directions" button to navigate to
* a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_directions = 196;
* @param value The allConversionsFromDirections to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromDirections(double value) {
bitField0_ |= 0x00002000;
allConversionsFromDirections_ = value;
onChanged();
return this;
}
/**
*
* The number of times people clicked a "Get directions" button to navigate to
* a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_directions = 196;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromDirections() {
bitField0_ = (bitField0_ & ~0x00002000);
allConversionsFromDirections_ = 0D;
onChanged();
return this;
}
private double allConversionsFromInteractionsValuePerInteraction_ ;
/**
*
* The value of all conversions from interactions divided by the total number
* of interactions.
*
*
* optional double all_conversions_from_interactions_value_per_interaction = 197;
* @return Whether the allConversionsFromInteractionsValuePerInteraction field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromInteractionsValuePerInteraction() {
return ((bitField0_ & 0x00004000) != 0);
}
/**
*
* The value of all conversions from interactions divided by the total number
* of interactions.
*
*
* optional double all_conversions_from_interactions_value_per_interaction = 197;
* @return The allConversionsFromInteractionsValuePerInteraction.
*/
@java.lang.Override
public double getAllConversionsFromInteractionsValuePerInteraction() {
return allConversionsFromInteractionsValuePerInteraction_;
}
/**
*
* The value of all conversions from interactions divided by the total number
* of interactions.
*
*
* optional double all_conversions_from_interactions_value_per_interaction = 197;
* @param value The allConversionsFromInteractionsValuePerInteraction to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromInteractionsValuePerInteraction(double value) {
bitField0_ |= 0x00004000;
allConversionsFromInteractionsValuePerInteraction_ = value;
onChanged();
return this;
}
/**
*
* The value of all conversions from interactions divided by the total number
* of interactions.
*
*
* optional double all_conversions_from_interactions_value_per_interaction = 197;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromInteractionsValuePerInteraction() {
bitField0_ = (bitField0_ & ~0x00004000);
allConversionsFromInteractionsValuePerInteraction_ = 0D;
onChanged();
return this;
}
private double allConversionsFromMenu_ ;
/**
*
* The number of times people clicked a link to view a store's menu after
* clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_menu = 198;
* @return Whether the allConversionsFromMenu field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromMenu() {
return ((bitField0_ & 0x00008000) != 0);
}
/**
*
* The number of times people clicked a link to view a store's menu after
* clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_menu = 198;
* @return The allConversionsFromMenu.
*/
@java.lang.Override
public double getAllConversionsFromMenu() {
return allConversionsFromMenu_;
}
/**
*
* The number of times people clicked a link to view a store's menu after
* clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_menu = 198;
* @param value The allConversionsFromMenu to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromMenu(double value) {
bitField0_ |= 0x00008000;
allConversionsFromMenu_ = value;
onChanged();
return this;
}
/**
*
* The number of times people clicked a link to view a store's menu after
* clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_menu = 198;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromMenu() {
bitField0_ = (bitField0_ & ~0x00008000);
allConversionsFromMenu_ = 0D;
onChanged();
return this;
}
private double allConversionsFromOrder_ ;
/**
*
* The number of times people placed an order at a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_order = 199;
* @return Whether the allConversionsFromOrder field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromOrder() {
return ((bitField0_ & 0x00010000) != 0);
}
/**
*
* The number of times people placed an order at a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_order = 199;
* @return The allConversionsFromOrder.
*/
@java.lang.Override
public double getAllConversionsFromOrder() {
return allConversionsFromOrder_;
}
/**
*
* The number of times people placed an order at a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_order = 199;
* @param value The allConversionsFromOrder to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromOrder(double value) {
bitField0_ |= 0x00010000;
allConversionsFromOrder_ = value;
onChanged();
return this;
}
/**
*
* The number of times people placed an order at a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_order = 199;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromOrder() {
bitField0_ = (bitField0_ & ~0x00010000);
allConversionsFromOrder_ = 0D;
onChanged();
return this;
}
private double allConversionsFromOtherEngagement_ ;
/**
*
* The number of other conversions (for example, posting a review or saving a
* location for a store) that occurred after people clicked an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_other_engagement = 200;
* @return Whether the allConversionsFromOtherEngagement field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromOtherEngagement() {
return ((bitField0_ & 0x00020000) != 0);
}
/**
*
* The number of other conversions (for example, posting a review or saving a
* location for a store) that occurred after people clicked an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_other_engagement = 200;
* @return The allConversionsFromOtherEngagement.
*/
@java.lang.Override
public double getAllConversionsFromOtherEngagement() {
return allConversionsFromOtherEngagement_;
}
/**
*
* The number of other conversions (for example, posting a review or saving a
* location for a store) that occurred after people clicked an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_other_engagement = 200;
* @param value The allConversionsFromOtherEngagement to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromOtherEngagement(double value) {
bitField0_ |= 0x00020000;
allConversionsFromOtherEngagement_ = value;
onChanged();
return this;
}
/**
*
* The number of other conversions (for example, posting a review or saving a
* location for a store) that occurred after people clicked an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_other_engagement = 200;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromOtherEngagement() {
bitField0_ = (bitField0_ & ~0x00020000);
allConversionsFromOtherEngagement_ = 0D;
onChanged();
return this;
}
private double allConversionsFromStoreVisit_ ;
/**
*
* Estimated number of times people visited a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_visit = 201;
* @return Whether the allConversionsFromStoreVisit field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromStoreVisit() {
return ((bitField0_ & 0x00040000) != 0);
}
/**
*
* Estimated number of times people visited a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_visit = 201;
* @return The allConversionsFromStoreVisit.
*/
@java.lang.Override
public double getAllConversionsFromStoreVisit() {
return allConversionsFromStoreVisit_;
}
/**
*
* Estimated number of times people visited a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_visit = 201;
* @param value The allConversionsFromStoreVisit to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromStoreVisit(double value) {
bitField0_ |= 0x00040000;
allConversionsFromStoreVisit_ = value;
onChanged();
return this;
}
/**
*
* Estimated number of times people visited a store after clicking an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_visit = 201;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromStoreVisit() {
bitField0_ = (bitField0_ & ~0x00040000);
allConversionsFromStoreVisit_ = 0D;
onChanged();
return this;
}
private double allConversionsFromStoreWebsite_ ;
/**
*
* The number of times that people were taken to a store's URL after clicking
* an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_website = 202;
* @return Whether the allConversionsFromStoreWebsite field is set.
*/
@java.lang.Override
public boolean hasAllConversionsFromStoreWebsite() {
return ((bitField0_ & 0x00080000) != 0);
}
/**
*
* The number of times that people were taken to a store's URL after clicking
* an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_website = 202;
* @return The allConversionsFromStoreWebsite.
*/
@java.lang.Override
public double getAllConversionsFromStoreWebsite() {
return allConversionsFromStoreWebsite_;
}
/**
*
* The number of times that people were taken to a store's URL after clicking
* an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_website = 202;
* @param value The allConversionsFromStoreWebsite to set.
* @return This builder for chaining.
*/
public Builder setAllConversionsFromStoreWebsite(double value) {
bitField0_ |= 0x00080000;
allConversionsFromStoreWebsite_ = value;
onChanged();
return this;
}
/**
*
* The number of times that people were taken to a store's URL after clicking
* an ad.
* This metric applies to feed items only.
*
*
* optional double all_conversions_from_store_website = 202;
* @return This builder for chaining.
*/
public Builder clearAllConversionsFromStoreWebsite() {
bitField0_ = (bitField0_ & ~0x00080000);
allConversionsFromStoreWebsite_ = 0D;
onChanged();
return this;
}
private double averageCost_ ;
/**
*
* The average amount you pay per interaction. This amount is the total cost
* of your ads divided by the total number of interactions.
*
*
* optional double average_cost = 203;
* @return Whether the averageCost field is set.
*/
@java.lang.Override
public boolean hasAverageCost() {
return ((bitField0_ & 0x00100000) != 0);
}
/**
*
* The average amount you pay per interaction. This amount is the total cost
* of your ads divided by the total number of interactions.
*
*
* optional double average_cost = 203;
* @return The averageCost.
*/
@java.lang.Override
public double getAverageCost() {
return averageCost_;
}
/**
*
* The average amount you pay per interaction. This amount is the total cost
* of your ads divided by the total number of interactions.
*
*
* optional double average_cost = 203;
* @param value The averageCost to set.
* @return This builder for chaining.
*/
public Builder setAverageCost(double value) {
bitField0_ |= 0x00100000;
averageCost_ = value;
onChanged();
return this;
}
/**
*
* The average amount you pay per interaction. This amount is the total cost
* of your ads divided by the total number of interactions.
*
*
* optional double average_cost = 203;
* @return This builder for chaining.
*/
public Builder clearAverageCost() {
bitField0_ = (bitField0_ & ~0x00100000);
averageCost_ = 0D;
onChanged();
return this;
}
private double averageCpc_ ;
/**
*
* The total cost of all clicks divided by the total number of clicks
* received.
*
*
* optional double average_cpc = 204;
* @return Whether the averageCpc field is set.
*/
@java.lang.Override
public boolean hasAverageCpc() {
return ((bitField0_ & 0x00200000) != 0);
}
/**
*
* The total cost of all clicks divided by the total number of clicks
* received.
*
*
* optional double average_cpc = 204;
* @return The averageCpc.
*/
@java.lang.Override
public double getAverageCpc() {
return averageCpc_;
}
/**
*
* The total cost of all clicks divided by the total number of clicks
* received.
*
*
* optional double average_cpc = 204;
* @param value The averageCpc to set.
* @return This builder for chaining.
*/
public Builder setAverageCpc(double value) {
bitField0_ |= 0x00200000;
averageCpc_ = value;
onChanged();
return this;
}
/**
*
* The total cost of all clicks divided by the total number of clicks
* received.
*
*
* optional double average_cpc = 204;
* @return This builder for chaining.
*/
public Builder clearAverageCpc() {
bitField0_ = (bitField0_ & ~0x00200000);
averageCpc_ = 0D;
onChanged();
return this;
}
private double averageCpe_ ;
/**
*
* The average amount that you've been charged for an ad engagement. This
* amount is the total cost of all ad engagements divided by the total number
* of ad engagements.
*
*
* optional double average_cpe = 205;
* @return Whether the averageCpe field is set.
*/
@java.lang.Override
public boolean hasAverageCpe() {
return ((bitField0_ & 0x00400000) != 0);
}
/**
*
* The average amount that you've been charged for an ad engagement. This
* amount is the total cost of all ad engagements divided by the total number
* of ad engagements.
*
*
* optional double average_cpe = 205;
* @return The averageCpe.
*/
@java.lang.Override
public double getAverageCpe() {
return averageCpe_;
}
/**
*
* The average amount that you've been charged for an ad engagement. This
* amount is the total cost of all ad engagements divided by the total number
* of ad engagements.
*
*
* optional double average_cpe = 205;
* @param value The averageCpe to set.
* @return This builder for chaining.
*/
public Builder setAverageCpe(double value) {
bitField0_ |= 0x00400000;
averageCpe_ = value;
onChanged();
return this;
}
/**
*
* The average amount that you've been charged for an ad engagement. This
* amount is the total cost of all ad engagements divided by the total number
* of ad engagements.
*
*
* optional double average_cpe = 205;
* @return This builder for chaining.
*/
public Builder clearAverageCpe() {
bitField0_ = (bitField0_ & ~0x00400000);
averageCpe_ = 0D;
onChanged();
return this;
}
private double averageCpm_ ;
/**
*
* Average cost-per-thousand impressions (CPM).
*
*
* optional double average_cpm = 206;
* @return Whether the averageCpm field is set.
*/
@java.lang.Override
public boolean hasAverageCpm() {
return ((bitField0_ & 0x00800000) != 0);
}
/**
*
* Average cost-per-thousand impressions (CPM).
*
*
* optional double average_cpm = 206;
* @return The averageCpm.
*/
@java.lang.Override
public double getAverageCpm() {
return averageCpm_;
}
/**
*
* Average cost-per-thousand impressions (CPM).
*
*
* optional double average_cpm = 206;
* @param value The averageCpm to set.
* @return This builder for chaining.
*/
public Builder setAverageCpm(double value) {
bitField0_ |= 0x00800000;
averageCpm_ = value;
onChanged();
return this;
}
/**
*
* Average cost-per-thousand impressions (CPM).
*
*
* optional double average_cpm = 206;
* @return This builder for chaining.
*/
public Builder clearAverageCpm() {
bitField0_ = (bitField0_ & ~0x00800000);
averageCpm_ = 0D;
onChanged();
return this;
}
private double averageCpv_ ;
/**
*
* The average amount you pay each time someone views your ad.
* The average CPV is defined by the total cost of all ad views divided by
* the number of views.
*
*
* optional double average_cpv = 207;
* @return Whether the averageCpv field is set.
*/
@java.lang.Override
public boolean hasAverageCpv() {
return ((bitField0_ & 0x01000000) != 0);
}
/**
*
* The average amount you pay each time someone views your ad.
* The average CPV is defined by the total cost of all ad views divided by
* the number of views.
*
*
* optional double average_cpv = 207;
* @return The averageCpv.
*/
@java.lang.Override
public double getAverageCpv() {
return averageCpv_;
}
/**
*
* The average amount you pay each time someone views your ad.
* The average CPV is defined by the total cost of all ad views divided by
* the number of views.
*
*
* optional double average_cpv = 207;
* @param value The averageCpv to set.
* @return This builder for chaining.
*/
public Builder setAverageCpv(double value) {
bitField0_ |= 0x01000000;
averageCpv_ = value;
onChanged();
return this;
}
/**
*
* The average amount you pay each time someone views your ad.
* The average CPV is defined by the total cost of all ad views divided by
* the number of views.
*
*
* optional double average_cpv = 207;
* @return This builder for chaining.
*/
public Builder clearAverageCpv() {
bitField0_ = (bitField0_ & ~0x01000000);
averageCpv_ = 0D;
onChanged();
return this;
}
private double averagePageViews_ ;
/**
*
* Average number of pages viewed per session.
*
*
* optional double average_page_views = 208;
* @return Whether the averagePageViews field is set.
*/
@java.lang.Override
public boolean hasAveragePageViews() {
return ((bitField0_ & 0x02000000) != 0);
}
/**
*
* Average number of pages viewed per session.
*
*
* optional double average_page_views = 208;
* @return The averagePageViews.
*/
@java.lang.Override
public double getAveragePageViews() {
return averagePageViews_;
}
/**
*
* Average number of pages viewed per session.
*
*
* optional double average_page_views = 208;
* @param value The averagePageViews to set.
* @return This builder for chaining.
*/
public Builder setAveragePageViews(double value) {
bitField0_ |= 0x02000000;
averagePageViews_ = value;
onChanged();
return this;
}
/**
*
* Average number of pages viewed per session.
*
*
* optional double average_page_views = 208;
* @return This builder for chaining.
*/
public Builder clearAveragePageViews() {
bitField0_ = (bitField0_ & ~0x02000000);
averagePageViews_ = 0D;
onChanged();
return this;
}
private double averageTimeOnSite_ ;
/**
*
* Total duration of all sessions (in seconds) / number of sessions. Imported
* from Google Analytics.
*
*
* optional double average_time_on_site = 209;
* @return Whether the averageTimeOnSite field is set.
*/
@java.lang.Override
public boolean hasAverageTimeOnSite() {
return ((bitField0_ & 0x04000000) != 0);
}
/**
*
* Total duration of all sessions (in seconds) / number of sessions. Imported
* from Google Analytics.
*
*
* optional double average_time_on_site = 209;
* @return The averageTimeOnSite.
*/
@java.lang.Override
public double getAverageTimeOnSite() {
return averageTimeOnSite_;
}
/**
*
* Total duration of all sessions (in seconds) / number of sessions. Imported
* from Google Analytics.
*
*
* optional double average_time_on_site = 209;
* @param value The averageTimeOnSite to set.
* @return This builder for chaining.
*/
public Builder setAverageTimeOnSite(double value) {
bitField0_ |= 0x04000000;
averageTimeOnSite_ = value;
onChanged();
return this;
}
/**
*
* Total duration of all sessions (in seconds) / number of sessions. Imported
* from Google Analytics.
*
*
* optional double average_time_on_site = 209;
* @return This builder for chaining.
*/
public Builder clearAverageTimeOnSite() {
bitField0_ = (bitField0_ & ~0x04000000);
averageTimeOnSite_ = 0D;
onChanged();
return this;
}
private double benchmarkAverageMaxCpc_ ;
/**
*
* An indication of how other advertisers are bidding on similar products.
*
*
* optional double benchmark_average_max_cpc = 210;
* @return Whether the benchmarkAverageMaxCpc field is set.
*/
@java.lang.Override
public boolean hasBenchmarkAverageMaxCpc() {
return ((bitField0_ & 0x08000000) != 0);
}
/**
*
* An indication of how other advertisers are bidding on similar products.
*
*
* optional double benchmark_average_max_cpc = 210;
* @return The benchmarkAverageMaxCpc.
*/
@java.lang.Override
public double getBenchmarkAverageMaxCpc() {
return benchmarkAverageMaxCpc_;
}
/**
*
* An indication of how other advertisers are bidding on similar products.
*
*
* optional double benchmark_average_max_cpc = 210;
* @param value The benchmarkAverageMaxCpc to set.
* @return This builder for chaining.
*/
public Builder setBenchmarkAverageMaxCpc(double value) {
bitField0_ |= 0x08000000;
benchmarkAverageMaxCpc_ = value;
onChanged();
return this;
}
/**
*
* An indication of how other advertisers are bidding on similar products.
*
*
* optional double benchmark_average_max_cpc = 210;
* @return This builder for chaining.
*/
public Builder clearBenchmarkAverageMaxCpc() {
bitField0_ = (bitField0_ & ~0x08000000);
benchmarkAverageMaxCpc_ = 0D;
onChanged();
return this;
}
private double biddableAppInstallConversions_ ;
/**
*
* Number of app installs.
*
*
* optional double biddable_app_install_conversions = 254;
* @return Whether the biddableAppInstallConversions field is set.
*/
@java.lang.Override
public boolean hasBiddableAppInstallConversions() {
return ((bitField0_ & 0x10000000) != 0);
}
/**
*
* Number of app installs.
*
*
* optional double biddable_app_install_conversions = 254;
* @return The biddableAppInstallConversions.
*/
@java.lang.Override
public double getBiddableAppInstallConversions() {
return biddableAppInstallConversions_;
}
/**
*
* Number of app installs.
*
*
* optional double biddable_app_install_conversions = 254;
* @param value The biddableAppInstallConversions to set.
* @return This builder for chaining.
*/
public Builder setBiddableAppInstallConversions(double value) {
bitField0_ |= 0x10000000;
biddableAppInstallConversions_ = value;
onChanged();
return this;
}
/**
*
* Number of app installs.
*
*
* optional double biddable_app_install_conversions = 254;
* @return This builder for chaining.
*/
public Builder clearBiddableAppInstallConversions() {
bitField0_ = (bitField0_ & ~0x10000000);
biddableAppInstallConversions_ = 0D;
onChanged();
return this;
}
private double biddableAppPostInstallConversions_ ;
/**
*
* Number of in-app actions.
*
*
* optional double biddable_app_post_install_conversions = 255;
* @return Whether the biddableAppPostInstallConversions field is set.
*/
@java.lang.Override
public boolean hasBiddableAppPostInstallConversions() {
return ((bitField0_ & 0x20000000) != 0);
}
/**
*
* Number of in-app actions.
*
*
* optional double biddable_app_post_install_conversions = 255;
* @return The biddableAppPostInstallConversions.
*/
@java.lang.Override
public double getBiddableAppPostInstallConversions() {
return biddableAppPostInstallConversions_;
}
/**
*
* Number of in-app actions.
*
*
* optional double biddable_app_post_install_conversions = 255;
* @param value The biddableAppPostInstallConversions to set.
* @return This builder for chaining.
*/
public Builder setBiddableAppPostInstallConversions(double value) {
bitField0_ |= 0x20000000;
biddableAppPostInstallConversions_ = value;
onChanged();
return this;
}
/**
*
* Number of in-app actions.
*
*
* optional double biddable_app_post_install_conversions = 255;
* @return This builder for chaining.
*/
public Builder clearBiddableAppPostInstallConversions() {
bitField0_ = (bitField0_ & ~0x20000000);
biddableAppPostInstallConversions_ = 0D;
onChanged();
return this;
}
private double benchmarkCtr_ ;
/**
*
* An indication on how other advertisers' Shopping ads for similar products
* are performing based on how often people who see their ad click on it.
*
*
* optional double benchmark_ctr = 211;
* @return Whether the benchmarkCtr field is set.
*/
@java.lang.Override
public boolean hasBenchmarkCtr() {
return ((bitField0_ & 0x40000000) != 0);
}
/**
*
* An indication on how other advertisers' Shopping ads for similar products
* are performing based on how often people who see their ad click on it.
*
*
* optional double benchmark_ctr = 211;
* @return The benchmarkCtr.
*/
@java.lang.Override
public double getBenchmarkCtr() {
return benchmarkCtr_;
}
/**
*
* An indication on how other advertisers' Shopping ads for similar products
* are performing based on how often people who see their ad click on it.
*
*
* optional double benchmark_ctr = 211;
* @param value The benchmarkCtr to set.
* @return This builder for chaining.
*/
public Builder setBenchmarkCtr(double value) {
bitField0_ |= 0x40000000;
benchmarkCtr_ = value;
onChanged();
return this;
}
/**
*
* An indication on how other advertisers' Shopping ads for similar products
* are performing based on how often people who see their ad click on it.
*
*
* optional double benchmark_ctr = 211;
* @return This builder for chaining.
*/
public Builder clearBenchmarkCtr() {
bitField0_ = (bitField0_ & ~0x40000000);
benchmarkCtr_ = 0D;
onChanged();
return this;
}
private double bounceRate_ ;
/**
*
* Percentage of clicks where the user only visited a single page on your
* site. Imported from Google Analytics.
*
*
* optional double bounce_rate = 212;
* @return Whether the bounceRate field is set.
*/
@java.lang.Override
public boolean hasBounceRate() {
return ((bitField0_ & 0x80000000) != 0);
}
/**
*
* Percentage of clicks where the user only visited a single page on your
* site. Imported from Google Analytics.
*
*
* optional double bounce_rate = 212;
* @return The bounceRate.
*/
@java.lang.Override
public double getBounceRate() {
return bounceRate_;
}
/**
*
* Percentage of clicks where the user only visited a single page on your
* site. Imported from Google Analytics.
*
*
* optional double bounce_rate = 212;
* @param value The bounceRate to set.
* @return This builder for chaining.
*/
public Builder setBounceRate(double value) {
bitField0_ |= 0x80000000;
bounceRate_ = value;
onChanged();
return this;
}
/**
*
* Percentage of clicks where the user only visited a single page on your
* site. Imported from Google Analytics.
*
*
* optional double bounce_rate = 212;
* @return This builder for chaining.
*/
public Builder clearBounceRate() {
bitField0_ = (bitField0_ & ~0x80000000);
bounceRate_ = 0D;
onChanged();
return this;
}
private long clicks_ ;
/**
*
* The number of clicks.
*
*
* optional int64 clicks = 131;
* @return Whether the clicks field is set.
*/
@java.lang.Override
public boolean hasClicks() {
return ((bitField1_ & 0x00000001) != 0);
}
/**
*
* The number of clicks.
*
*
* optional int64 clicks = 131;
* @return The clicks.
*/
@java.lang.Override
public long getClicks() {
return clicks_;
}
/**
*
* The number of clicks.
*
*
* optional int64 clicks = 131;
* @param value The clicks to set.
* @return This builder for chaining.
*/
public Builder setClicks(long value) {
bitField1_ |= 0x00000001;
clicks_ = value;
onChanged();
return this;
}
/**
*
* The number of clicks.
*
*
* optional int64 clicks = 131;
* @return This builder for chaining.
*/
public Builder clearClicks() {
bitField1_ = (bitField1_ & ~0x00000001);
clicks_ = 0L;
onChanged();
return this;
}
private long combinedClicks_ ;
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_clicks = 156;
* @return Whether the combinedClicks field is set.
*/
@java.lang.Override
public boolean hasCombinedClicks() {
return ((bitField1_ & 0x00000002) != 0);
}
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_clicks = 156;
* @return The combinedClicks.
*/
@java.lang.Override
public long getCombinedClicks() {
return combinedClicks_;
}
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_clicks = 156;
* @param value The combinedClicks to set.
* @return This builder for chaining.
*/
public Builder setCombinedClicks(long value) {
bitField1_ |= 0x00000002;
combinedClicks_ = value;
onChanged();
return this;
}
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_clicks = 156;
* @return This builder for chaining.
*/
public Builder clearCombinedClicks() {
bitField1_ = (bitField1_ & ~0x00000002);
combinedClicks_ = 0L;
onChanged();
return this;
}
private double combinedClicksPerQuery_ ;
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked (combined_clicks) divided by combined_queries. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional double combined_clicks_per_query = 157;
* @return Whether the combinedClicksPerQuery field is set.
*/
@java.lang.Override
public boolean hasCombinedClicksPerQuery() {
return ((bitField1_ & 0x00000004) != 0);
}
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked (combined_clicks) divided by combined_queries. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional double combined_clicks_per_query = 157;
* @return The combinedClicksPerQuery.
*/
@java.lang.Override
public double getCombinedClicksPerQuery() {
return combinedClicksPerQuery_;
}
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked (combined_clicks) divided by combined_queries. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional double combined_clicks_per_query = 157;
* @param value The combinedClicksPerQuery to set.
* @return This builder for chaining.
*/
public Builder setCombinedClicksPerQuery(double value) {
bitField1_ |= 0x00000004;
combinedClicksPerQuery_ = value;
onChanged();
return this;
}
/**
*
* The number of times your ad or your site's listing in the unpaid
* results was clicked (combined_clicks) divided by combined_queries. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional double combined_clicks_per_query = 157;
* @return This builder for chaining.
*/
public Builder clearCombinedClicksPerQuery() {
bitField1_ = (bitField1_ & ~0x00000004);
combinedClicksPerQuery_ = 0D;
onChanged();
return this;
}
private long combinedQueries_ ;
/**
*
* The number of searches that returned pages from your site in the unpaid
* results or showed one of your text ads. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_queries = 158;
* @return Whether the combinedQueries field is set.
*/
@java.lang.Override
public boolean hasCombinedQueries() {
return ((bitField1_ & 0x00000008) != 0);
}
/**
*
* The number of searches that returned pages from your site in the unpaid
* results or showed one of your text ads. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_queries = 158;
* @return The combinedQueries.
*/
@java.lang.Override
public long getCombinedQueries() {
return combinedQueries_;
}
/**
*
* The number of searches that returned pages from your site in the unpaid
* results or showed one of your text ads. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_queries = 158;
* @param value The combinedQueries to set.
* @return This builder for chaining.
*/
public Builder setCombinedQueries(long value) {
bitField1_ |= 0x00000008;
combinedQueries_ = value;
onChanged();
return this;
}
/**
*
* The number of searches that returned pages from your site in the unpaid
* results or showed one of your text ads. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 combined_queries = 158;
* @return This builder for chaining.
*/
public Builder clearCombinedQueries() {
bitField1_ = (bitField1_ & ~0x00000008);
combinedQueries_ = 0L;
onChanged();
return this;
}
private double contentBudgetLostImpressionShare_ ;
/**
*
* The estimated percent of times that your ad was eligible to show
* on the Display Network but didn't because your budget was too low.
* Note: Content budget lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_budget_lost_impression_share = 159;
* @return Whether the contentBudgetLostImpressionShare field is set.
*/
@java.lang.Override
public boolean hasContentBudgetLostImpressionShare() {
return ((bitField1_ & 0x00000010) != 0);
}
/**
*
* The estimated percent of times that your ad was eligible to show
* on the Display Network but didn't because your budget was too low.
* Note: Content budget lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_budget_lost_impression_share = 159;
* @return The contentBudgetLostImpressionShare.
*/
@java.lang.Override
public double getContentBudgetLostImpressionShare() {
return contentBudgetLostImpressionShare_;
}
/**
*
* The estimated percent of times that your ad was eligible to show
* on the Display Network but didn't because your budget was too low.
* Note: Content budget lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_budget_lost_impression_share = 159;
* @param value The contentBudgetLostImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setContentBudgetLostImpressionShare(double value) {
bitField1_ |= 0x00000010;
contentBudgetLostImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The estimated percent of times that your ad was eligible to show
* on the Display Network but didn't because your budget was too low.
* Note: Content budget lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_budget_lost_impression_share = 159;
* @return This builder for chaining.
*/
public Builder clearContentBudgetLostImpressionShare() {
bitField1_ = (bitField1_ & ~0x00000010);
contentBudgetLostImpressionShare_ = 0D;
onChanged();
return this;
}
private double contentImpressionShare_ ;
/**
*
* The impressions you've received on the Display Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Content impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double content_impression_share = 160;
* @return Whether the contentImpressionShare field is set.
*/
@java.lang.Override
public boolean hasContentImpressionShare() {
return ((bitField1_ & 0x00000020) != 0);
}
/**
*
* The impressions you've received on the Display Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Content impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double content_impression_share = 160;
* @return The contentImpressionShare.
*/
@java.lang.Override
public double getContentImpressionShare() {
return contentImpressionShare_;
}
/**
*
* The impressions you've received on the Display Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Content impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double content_impression_share = 160;
* @param value The contentImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setContentImpressionShare(double value) {
bitField1_ |= 0x00000020;
contentImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The impressions you've received on the Display Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Content impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double content_impression_share = 160;
* @return This builder for chaining.
*/
public Builder clearContentImpressionShare() {
bitField1_ = (bitField1_ & ~0x00000020);
contentImpressionShare_ = 0D;
onChanged();
return this;
}
private java.lang.Object conversionLastReceivedRequestDateTime_ = "";
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @return Whether the conversionLastReceivedRequestDateTime field is set.
*/
public boolean hasConversionLastReceivedRequestDateTime() {
return ((bitField1_ & 0x00000040) != 0);
}
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @return The conversionLastReceivedRequestDateTime.
*/
public java.lang.String getConversionLastReceivedRequestDateTime() {
java.lang.Object ref = conversionLastReceivedRequestDateTime_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
conversionLastReceivedRequestDateTime_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @return The bytes for conversionLastReceivedRequestDateTime.
*/
public com.google.protobuf.ByteString
getConversionLastReceivedRequestDateTimeBytes() {
java.lang.Object ref = conversionLastReceivedRequestDateTime_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
conversionLastReceivedRequestDateTime_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @param value The conversionLastReceivedRequestDateTime to set.
* @return This builder for chaining.
*/
public Builder setConversionLastReceivedRequestDateTime(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
bitField1_ |= 0x00000040;
conversionLastReceivedRequestDateTime_ = value;
onChanged();
return this;
}
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @return This builder for chaining.
*/
public Builder clearConversionLastReceivedRequestDateTime() {
bitField1_ = (bitField1_ & ~0x00000040);
conversionLastReceivedRequestDateTime_ = getDefaultInstance().getConversionLastReceivedRequestDateTime();
onChanged();
return this;
}
/**
*
* The last date/time a conversion tag for this conversion action successfully
* fired and was seen by Google Ads. This firing event may not have been the
* result of an attributable conversion (for example, because the tag was
* fired from a browser that did not previously click an ad from an
* appropriate advertiser). The date/time is in the customer's time zone.
*
*
* optional string conversion_last_received_request_date_time = 161;
* @param value The bytes for conversionLastReceivedRequestDateTime to set.
* @return This builder for chaining.
*/
public Builder setConversionLastReceivedRequestDateTimeBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
bitField1_ |= 0x00000040;
conversionLastReceivedRequestDateTime_ = value;
onChanged();
return this;
}
private java.lang.Object conversionLastConversionDate_ = "";
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @return Whether the conversionLastConversionDate field is set.
*/
public boolean hasConversionLastConversionDate() {
return ((bitField1_ & 0x00000080) != 0);
}
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @return The conversionLastConversionDate.
*/
public java.lang.String getConversionLastConversionDate() {
java.lang.Object ref = conversionLastConversionDate_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
conversionLastConversionDate_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @return The bytes for conversionLastConversionDate.
*/
public com.google.protobuf.ByteString
getConversionLastConversionDateBytes() {
java.lang.Object ref = conversionLastConversionDate_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
conversionLastConversionDate_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @param value The conversionLastConversionDate to set.
* @return This builder for chaining.
*/
public Builder setConversionLastConversionDate(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
bitField1_ |= 0x00000080;
conversionLastConversionDate_ = value;
onChanged();
return this;
}
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @return This builder for chaining.
*/
public Builder clearConversionLastConversionDate() {
bitField1_ = (bitField1_ & ~0x00000080);
conversionLastConversionDate_ = getDefaultInstance().getConversionLastConversionDate();
onChanged();
return this;
}
/**
*
* The date of the most recent conversion for this conversion action. The date
* is in the customer's time zone.
*
*
* optional string conversion_last_conversion_date = 162;
* @param value The bytes for conversionLastConversionDate to set.
* @return This builder for chaining.
*/
public Builder setConversionLastConversionDateBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
bitField1_ |= 0x00000080;
conversionLastConversionDate_ = value;
onChanged();
return this;
}
private double contentRankLostImpressionShare_ ;
/**
*
* The estimated percentage of impressions on the Display Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Content rank lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_rank_lost_impression_share = 163;
* @return Whether the contentRankLostImpressionShare field is set.
*/
@java.lang.Override
public boolean hasContentRankLostImpressionShare() {
return ((bitField1_ & 0x00000100) != 0);
}
/**
*
* The estimated percentage of impressions on the Display Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Content rank lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_rank_lost_impression_share = 163;
* @return The contentRankLostImpressionShare.
*/
@java.lang.Override
public double getContentRankLostImpressionShare() {
return contentRankLostImpressionShare_;
}
/**
*
* The estimated percentage of impressions on the Display Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Content rank lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_rank_lost_impression_share = 163;
* @param value The contentRankLostImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setContentRankLostImpressionShare(double value) {
bitField1_ |= 0x00000100;
contentRankLostImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The estimated percentage of impressions on the Display Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Content rank lost impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double content_rank_lost_impression_share = 163;
* @return This builder for chaining.
*/
public Builder clearContentRankLostImpressionShare() {
bitField1_ = (bitField1_ & ~0x00000100);
contentRankLostImpressionShare_ = 0D;
onChanged();
return this;
}
private double conversionsFromInteractionsRate_ ;
/**
*
* Conversions from interactions divided by the number of ad interactions
* (such as clicks for text ads or views for video ads). This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double conversions_from_interactions_rate = 164;
* @return Whether the conversionsFromInteractionsRate field is set.
*/
@java.lang.Override
public boolean hasConversionsFromInteractionsRate() {
return ((bitField1_ & 0x00000200) != 0);
}
/**
*
* Conversions from interactions divided by the number of ad interactions
* (such as clicks for text ads or views for video ads). This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double conversions_from_interactions_rate = 164;
* @return The conversionsFromInteractionsRate.
*/
@java.lang.Override
public double getConversionsFromInteractionsRate() {
return conversionsFromInteractionsRate_;
}
/**
*
* Conversions from interactions divided by the number of ad interactions
* (such as clicks for text ads or views for video ads). This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double conversions_from_interactions_rate = 164;
* @param value The conversionsFromInteractionsRate to set.
* @return This builder for chaining.
*/
public Builder setConversionsFromInteractionsRate(double value) {
bitField1_ |= 0x00000200;
conversionsFromInteractionsRate_ = value;
onChanged();
return this;
}
/**
*
* Conversions from interactions divided by the number of ad interactions
* (such as clicks for text ads or views for video ads). This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double conversions_from_interactions_rate = 164;
* @return This builder for chaining.
*/
public Builder clearConversionsFromInteractionsRate() {
bitField1_ = (bitField1_ & ~0x00000200);
conversionsFromInteractionsRate_ = 0D;
onChanged();
return this;
}
private double conversionsValue_ ;
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_value = 165;
* @return Whether the conversionsValue field is set.
*/
@java.lang.Override
public boolean hasConversionsValue() {
return ((bitField1_ & 0x00000400) != 0);
}
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_value = 165;
* @return The conversionsValue.
*/
@java.lang.Override
public double getConversionsValue() {
return conversionsValue_;
}
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_value = 165;
* @param value The conversionsValue to set.
* @return This builder for chaining.
*/
public Builder setConversionsValue(double value) {
bitField1_ |= 0x00000400;
conversionsValue_ = value;
onChanged();
return this;
}
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_value = 165;
* @return This builder for chaining.
*/
public Builder clearConversionsValue() {
bitField1_ = (bitField1_ & ~0x00000400);
conversionsValue_ = 0D;
onChanged();
return this;
}
private double conversionsValueByConversionDate_ ;
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions. When this column is selected with date, the values in date
* column means the conversion date. Details for the by_conversion_date
* columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double conversions_value_by_conversion_date = 242;
* @return The conversionsValueByConversionDate.
*/
@java.lang.Override
public double getConversionsValueByConversionDate() {
return conversionsValueByConversionDate_;
}
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions. When this column is selected with date, the values in date
* column means the conversion date. Details for the by_conversion_date
* columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double conversions_value_by_conversion_date = 242;
* @param value The conversionsValueByConversionDate to set.
* @return This builder for chaining.
*/
public Builder setConversionsValueByConversionDate(double value) {
conversionsValueByConversionDate_ = value;
onChanged();
return this;
}
/**
*
* The value of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions. When this column is selected with date, the values in date
* column means the conversion date. Details for the by_conversion_date
* columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double conversions_value_by_conversion_date = 242;
* @return This builder for chaining.
*/
public Builder clearConversionsValueByConversionDate() {
conversionsValueByConversionDate_ = 0D;
onChanged();
return this;
}
private double conversionsValuePerCost_ ;
/**
*
* The value of conversions divided by the cost of ad interactions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double conversions_value_per_cost = 166;
* @return Whether the conversionsValuePerCost field is set.
*/
@java.lang.Override
public boolean hasConversionsValuePerCost() {
return ((bitField1_ & 0x00000800) != 0);
}
/**
*
* The value of conversions divided by the cost of ad interactions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double conversions_value_per_cost = 166;
* @return The conversionsValuePerCost.
*/
@java.lang.Override
public double getConversionsValuePerCost() {
return conversionsValuePerCost_;
}
/**
*
* The value of conversions divided by the cost of ad interactions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double conversions_value_per_cost = 166;
* @param value The conversionsValuePerCost to set.
* @return This builder for chaining.
*/
public Builder setConversionsValuePerCost(double value) {
bitField1_ |= 0x00000800;
conversionsValuePerCost_ = value;
onChanged();
return this;
}
/**
*
* The value of conversions divided by the cost of ad interactions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double conversions_value_per_cost = 166;
* @return This builder for chaining.
*/
public Builder clearConversionsValuePerCost() {
bitField1_ = (bitField1_ & ~0x00000800);
conversionsValuePerCost_ = 0D;
onChanged();
return this;
}
private double conversionsFromInteractionsValuePerInteraction_ ;
/**
*
* The value of conversions from interactions divided by the number of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_from_interactions_value_per_interaction = 167;
* @return Whether the conversionsFromInteractionsValuePerInteraction field is set.
*/
@java.lang.Override
public boolean hasConversionsFromInteractionsValuePerInteraction() {
return ((bitField1_ & 0x00001000) != 0);
}
/**
*
* The value of conversions from interactions divided by the number of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_from_interactions_value_per_interaction = 167;
* @return The conversionsFromInteractionsValuePerInteraction.
*/
@java.lang.Override
public double getConversionsFromInteractionsValuePerInteraction() {
return conversionsFromInteractionsValuePerInteraction_;
}
/**
*
* The value of conversions from interactions divided by the number of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_from_interactions_value_per_interaction = 167;
* @param value The conversionsFromInteractionsValuePerInteraction to set.
* @return This builder for chaining.
*/
public Builder setConversionsFromInteractionsValuePerInteraction(double value) {
bitField1_ |= 0x00001000;
conversionsFromInteractionsValuePerInteraction_ = value;
onChanged();
return this;
}
/**
*
* The value of conversions from interactions divided by the number of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions_from_interactions_value_per_interaction = 167;
* @return This builder for chaining.
*/
public Builder clearConversionsFromInteractionsValuePerInteraction() {
bitField1_ = (bitField1_ & ~0x00001000);
conversionsFromInteractionsValuePerInteraction_ = 0D;
onChanged();
return this;
}
private double conversions_ ;
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions = 168;
* @return Whether the conversions field is set.
*/
@java.lang.Override
public boolean hasConversions() {
return ((bitField1_ & 0x00002000) != 0);
}
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions = 168;
* @return The conversions.
*/
@java.lang.Override
public double getConversions() {
return conversions_;
}
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions = 168;
* @param value The conversions to set.
* @return This builder for chaining.
*/
public Builder setConversions(double value) {
bitField1_ |= 0x00002000;
conversions_ = value;
onChanged();
return this;
}
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double conversions = 168;
* @return This builder for chaining.
*/
public Builder clearConversions() {
bitField1_ = (bitField1_ & ~0x00002000);
conversions_ = 0D;
onChanged();
return this;
}
private double conversionsByConversionDate_ ;
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions. When this column is selected with date, the values in date
* column means the conversion date. Details for the by_conversion_date
* columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double conversions_by_conversion_date = 243;
* @return The conversionsByConversionDate.
*/
@java.lang.Override
public double getConversionsByConversionDate() {
return conversionsByConversionDate_;
}
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions. When this column is selected with date, the values in date
* column means the conversion date. Details for the by_conversion_date
* columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double conversions_by_conversion_date = 243;
* @param value The conversionsByConversionDate to set.
* @return This builder for chaining.
*/
public Builder setConversionsByConversionDate(double value) {
conversionsByConversionDate_ = value;
onChanged();
return this;
}
/**
*
* The number of conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions. When this column is selected with date, the values in date
* column means the conversion date. Details for the by_conversion_date
* columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* double conversions_by_conversion_date = 243;
* @return This builder for chaining.
*/
public Builder clearConversionsByConversionDate() {
conversionsByConversionDate_ = 0D;
onChanged();
return this;
}
private long costMicros_ ;
/**
*
* The sum of your cost-per-click (CPC) and cost-per-thousand impressions
* (CPM) costs during this period.
*
*
* optional int64 cost_micros = 169;
* @return Whether the costMicros field is set.
*/
@java.lang.Override
public boolean hasCostMicros() {
return ((bitField1_ & 0x00004000) != 0);
}
/**
*
* The sum of your cost-per-click (CPC) and cost-per-thousand impressions
* (CPM) costs during this period.
*
*
* optional int64 cost_micros = 169;
* @return The costMicros.
*/
@java.lang.Override
public long getCostMicros() {
return costMicros_;
}
/**
*
* The sum of your cost-per-click (CPC) and cost-per-thousand impressions
* (CPM) costs during this period.
*
*
* optional int64 cost_micros = 169;
* @param value The costMicros to set.
* @return This builder for chaining.
*/
public Builder setCostMicros(long value) {
bitField1_ |= 0x00004000;
costMicros_ = value;
onChanged();
return this;
}
/**
*
* The sum of your cost-per-click (CPC) and cost-per-thousand impressions
* (CPM) costs during this period.
*
*
* optional int64 cost_micros = 169;
* @return This builder for chaining.
*/
public Builder clearCostMicros() {
bitField1_ = (bitField1_ & ~0x00004000);
costMicros_ = 0L;
onChanged();
return this;
}
private double costPerAllConversions_ ;
/**
*
* The cost of ad interactions divided by all conversions.
*
*
* optional double cost_per_all_conversions = 170;
* @return Whether the costPerAllConversions field is set.
*/
@java.lang.Override
public boolean hasCostPerAllConversions() {
return ((bitField1_ & 0x00008000) != 0);
}
/**
*
* The cost of ad interactions divided by all conversions.
*
*
* optional double cost_per_all_conversions = 170;
* @return The costPerAllConversions.
*/
@java.lang.Override
public double getCostPerAllConversions() {
return costPerAllConversions_;
}
/**
*
* The cost of ad interactions divided by all conversions.
*
*
* optional double cost_per_all_conversions = 170;
* @param value The costPerAllConversions to set.
* @return This builder for chaining.
*/
public Builder setCostPerAllConversions(double value) {
bitField1_ |= 0x00008000;
costPerAllConversions_ = value;
onChanged();
return this;
}
/**
*
* The cost of ad interactions divided by all conversions.
*
*
* optional double cost_per_all_conversions = 170;
* @return This builder for chaining.
*/
public Builder clearCostPerAllConversions() {
bitField1_ = (bitField1_ & ~0x00008000);
costPerAllConversions_ = 0D;
onChanged();
return this;
}
private double costPerConversion_ ;
/**
*
* The cost of ad interactions divided by conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double cost_per_conversion = 171;
* @return Whether the costPerConversion field is set.
*/
@java.lang.Override
public boolean hasCostPerConversion() {
return ((bitField1_ & 0x00010000) != 0);
}
/**
*
* The cost of ad interactions divided by conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double cost_per_conversion = 171;
* @return The costPerConversion.
*/
@java.lang.Override
public double getCostPerConversion() {
return costPerConversion_;
}
/**
*
* The cost of ad interactions divided by conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double cost_per_conversion = 171;
* @param value The costPerConversion to set.
* @return This builder for chaining.
*/
public Builder setCostPerConversion(double value) {
bitField1_ |= 0x00010000;
costPerConversion_ = value;
onChanged();
return this;
}
/**
*
* The cost of ad interactions divided by conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double cost_per_conversion = 171;
* @return This builder for chaining.
*/
public Builder clearCostPerConversion() {
bitField1_ = (bitField1_ & ~0x00010000);
costPerConversion_ = 0D;
onChanged();
return this;
}
private double costPerCurrentModelAttributedConversion_ ;
/**
*
* The cost of ad interactions divided by current model attributed
* conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double cost_per_current_model_attributed_conversion = 172;
* @return Whether the costPerCurrentModelAttributedConversion field is set.
*/
@java.lang.Override
public boolean hasCostPerCurrentModelAttributedConversion() {
return ((bitField1_ & 0x00020000) != 0);
}
/**
*
* The cost of ad interactions divided by current model attributed
* conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double cost_per_current_model_attributed_conversion = 172;
* @return The costPerCurrentModelAttributedConversion.
*/
@java.lang.Override
public double getCostPerCurrentModelAttributedConversion() {
return costPerCurrentModelAttributedConversion_;
}
/**
*
* The cost of ad interactions divided by current model attributed
* conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double cost_per_current_model_attributed_conversion = 172;
* @param value The costPerCurrentModelAttributedConversion to set.
* @return This builder for chaining.
*/
public Builder setCostPerCurrentModelAttributedConversion(double value) {
bitField1_ |= 0x00020000;
costPerCurrentModelAttributedConversion_ = value;
onChanged();
return this;
}
/**
*
* The cost of ad interactions divided by current model attributed
* conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double cost_per_current_model_attributed_conversion = 172;
* @return This builder for chaining.
*/
public Builder clearCostPerCurrentModelAttributedConversion() {
bitField1_ = (bitField1_ & ~0x00020000);
costPerCurrentModelAttributedConversion_ = 0D;
onChanged();
return this;
}
private double crossDeviceConversions_ ;
/**
*
* Conversions from when a customer clicks on a Google Ads ad on one device,
* then converts on a different device or browser.
* Cross-device conversions are already included in all_conversions.
*
*
* optional double cross_device_conversions = 173;
* @return Whether the crossDeviceConversions field is set.
*/
@java.lang.Override
public boolean hasCrossDeviceConversions() {
return ((bitField1_ & 0x00040000) != 0);
}
/**
*
* Conversions from when a customer clicks on a Google Ads ad on one device,
* then converts on a different device or browser.
* Cross-device conversions are already included in all_conversions.
*
*
* optional double cross_device_conversions = 173;
* @return The crossDeviceConversions.
*/
@java.lang.Override
public double getCrossDeviceConversions() {
return crossDeviceConversions_;
}
/**
*
* Conversions from when a customer clicks on a Google Ads ad on one device,
* then converts on a different device or browser.
* Cross-device conversions are already included in all_conversions.
*
*
* optional double cross_device_conversions = 173;
* @param value The crossDeviceConversions to set.
* @return This builder for chaining.
*/
public Builder setCrossDeviceConversions(double value) {
bitField1_ |= 0x00040000;
crossDeviceConversions_ = value;
onChanged();
return this;
}
/**
*
* Conversions from when a customer clicks on a Google Ads ad on one device,
* then converts on a different device or browser.
* Cross-device conversions are already included in all_conversions.
*
*
* optional double cross_device_conversions = 173;
* @return This builder for chaining.
*/
public Builder clearCrossDeviceConversions() {
bitField1_ = (bitField1_ & ~0x00040000);
crossDeviceConversions_ = 0D;
onChanged();
return this;
}
private double ctr_ ;
/**
*
* The number of clicks your ad receives (Clicks) divided by the number
* of times your ad is shown (Impressions).
*
*
* optional double ctr = 174;
* @return Whether the ctr field is set.
*/
@java.lang.Override
public boolean hasCtr() {
return ((bitField1_ & 0x00080000) != 0);
}
/**
*
* The number of clicks your ad receives (Clicks) divided by the number
* of times your ad is shown (Impressions).
*
*
* optional double ctr = 174;
* @return The ctr.
*/
@java.lang.Override
public double getCtr() {
return ctr_;
}
/**
*
* The number of clicks your ad receives (Clicks) divided by the number
* of times your ad is shown (Impressions).
*
*
* optional double ctr = 174;
* @param value The ctr to set.
* @return This builder for chaining.
*/
public Builder setCtr(double value) {
bitField1_ |= 0x00080000;
ctr_ = value;
onChanged();
return this;
}
/**
*
* The number of clicks your ad receives (Clicks) divided by the number
* of times your ad is shown (Impressions).
*
*
* optional double ctr = 174;
* @return This builder for chaining.
*/
public Builder clearCtr() {
bitField1_ = (bitField1_ & ~0x00080000);
ctr_ = 0D;
onChanged();
return this;
}
private double currentModelAttributedConversions_ ;
/**
*
* Shows how your historic conversions data would look under the attribution
* model you've currently selected. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions = 175;
* @return Whether the currentModelAttributedConversions field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversions() {
return ((bitField1_ & 0x00100000) != 0);
}
/**
*
* Shows how your historic conversions data would look under the attribution
* model you've currently selected. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions = 175;
* @return The currentModelAttributedConversions.
*/
@java.lang.Override
public double getCurrentModelAttributedConversions() {
return currentModelAttributedConversions_;
}
/**
*
* Shows how your historic conversions data would look under the attribution
* model you've currently selected. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions = 175;
* @param value The currentModelAttributedConversions to set.
* @return This builder for chaining.
*/
public Builder setCurrentModelAttributedConversions(double value) {
bitField1_ |= 0x00100000;
currentModelAttributedConversions_ = value;
onChanged();
return this;
}
/**
*
* Shows how your historic conversions data would look under the attribution
* model you've currently selected. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions = 175;
* @return This builder for chaining.
*/
public Builder clearCurrentModelAttributedConversions() {
bitField1_ = (bitField1_ & ~0x00100000);
currentModelAttributedConversions_ = 0D;
onChanged();
return this;
}
private double currentModelAttributedConversionsFromInteractionsRate_ ;
/**
*
* Current model attributed conversions from interactions divided by the
* number of ad interactions (such as clicks for text ads or views for video
* ads). This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_rate = 176;
* @return Whether the currentModelAttributedConversionsFromInteractionsRate field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversionsFromInteractionsRate() {
return ((bitField1_ & 0x00200000) != 0);
}
/**
*
* Current model attributed conversions from interactions divided by the
* number of ad interactions (such as clicks for text ads or views for video
* ads). This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_rate = 176;
* @return The currentModelAttributedConversionsFromInteractionsRate.
*/
@java.lang.Override
public double getCurrentModelAttributedConversionsFromInteractionsRate() {
return currentModelAttributedConversionsFromInteractionsRate_;
}
/**
*
* Current model attributed conversions from interactions divided by the
* number of ad interactions (such as clicks for text ads or views for video
* ads). This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_rate = 176;
* @param value The currentModelAttributedConversionsFromInteractionsRate to set.
* @return This builder for chaining.
*/
public Builder setCurrentModelAttributedConversionsFromInteractionsRate(double value) {
bitField1_ |= 0x00200000;
currentModelAttributedConversionsFromInteractionsRate_ = value;
onChanged();
return this;
}
/**
*
* Current model attributed conversions from interactions divided by the
* number of ad interactions (such as clicks for text ads or views for video
* ads). This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_rate = 176;
* @return This builder for chaining.
*/
public Builder clearCurrentModelAttributedConversionsFromInteractionsRate() {
bitField1_ = (bitField1_ & ~0x00200000);
currentModelAttributedConversionsFromInteractionsRate_ = 0D;
onChanged();
return this;
}
private double currentModelAttributedConversionsFromInteractionsValuePerInteraction_ ;
/**
*
* The value of current model attributed conversions from interactions divided
* by the number of ad interactions. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177;
* @return Whether the currentModelAttributedConversionsFromInteractionsValuePerInteraction field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversionsFromInteractionsValuePerInteraction() {
return ((bitField1_ & 0x00400000) != 0);
}
/**
*
* The value of current model attributed conversions from interactions divided
* by the number of ad interactions. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177;
* @return The currentModelAttributedConversionsFromInteractionsValuePerInteraction.
*/
@java.lang.Override
public double getCurrentModelAttributedConversionsFromInteractionsValuePerInteraction() {
return currentModelAttributedConversionsFromInteractionsValuePerInteraction_;
}
/**
*
* The value of current model attributed conversions from interactions divided
* by the number of ad interactions. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177;
* @param value The currentModelAttributedConversionsFromInteractionsValuePerInteraction to set.
* @return This builder for chaining.
*/
public Builder setCurrentModelAttributedConversionsFromInteractionsValuePerInteraction(double value) {
bitField1_ |= 0x00400000;
currentModelAttributedConversionsFromInteractionsValuePerInteraction_ = value;
onChanged();
return this;
}
/**
*
* The value of current model attributed conversions from interactions divided
* by the number of ad interactions. This only includes conversion actions
* which include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177;
* @return This builder for chaining.
*/
public Builder clearCurrentModelAttributedConversionsFromInteractionsValuePerInteraction() {
bitField1_ = (bitField1_ & ~0x00400000);
currentModelAttributedConversionsFromInteractionsValuePerInteraction_ = 0D;
onChanged();
return this;
}
private double currentModelAttributedConversionsValue_ ;
/**
*
* The value of current model attributed conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double current_model_attributed_conversions_value = 178;
* @return Whether the currentModelAttributedConversionsValue field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversionsValue() {
return ((bitField1_ & 0x00800000) != 0);
}
/**
*
* The value of current model attributed conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double current_model_attributed_conversions_value = 178;
* @return The currentModelAttributedConversionsValue.
*/
@java.lang.Override
public double getCurrentModelAttributedConversionsValue() {
return currentModelAttributedConversionsValue_;
}
/**
*
* The value of current model attributed conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double current_model_attributed_conversions_value = 178;
* @param value The currentModelAttributedConversionsValue to set.
* @return This builder for chaining.
*/
public Builder setCurrentModelAttributedConversionsValue(double value) {
bitField1_ |= 0x00800000;
currentModelAttributedConversionsValue_ = value;
onChanged();
return this;
}
/**
*
* The value of current model attributed conversions. This only includes
* conversion actions which include_in_conversions_metric attribute is set to
* true. If you use conversion-based bidding, your bid strategies will
* optimize for these conversions.
*
*
* optional double current_model_attributed_conversions_value = 178;
* @return This builder for chaining.
*/
public Builder clearCurrentModelAttributedConversionsValue() {
bitField1_ = (bitField1_ & ~0x00800000);
currentModelAttributedConversionsValue_ = 0D;
onChanged();
return this;
}
private double currentModelAttributedConversionsValuePerCost_ ;
/**
*
* The value of current model attributed conversions divided by the cost of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_value_per_cost = 179;
* @return Whether the currentModelAttributedConversionsValuePerCost field is set.
*/
@java.lang.Override
public boolean hasCurrentModelAttributedConversionsValuePerCost() {
return ((bitField1_ & 0x01000000) != 0);
}
/**
*
* The value of current model attributed conversions divided by the cost of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_value_per_cost = 179;
* @return The currentModelAttributedConversionsValuePerCost.
*/
@java.lang.Override
public double getCurrentModelAttributedConversionsValuePerCost() {
return currentModelAttributedConversionsValuePerCost_;
}
/**
*
* The value of current model attributed conversions divided by the cost of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_value_per_cost = 179;
* @param value The currentModelAttributedConversionsValuePerCost to set.
* @return This builder for chaining.
*/
public Builder setCurrentModelAttributedConversionsValuePerCost(double value) {
bitField1_ |= 0x01000000;
currentModelAttributedConversionsValuePerCost_ = value;
onChanged();
return this;
}
/**
*
* The value of current model attributed conversions divided by the cost of ad
* interactions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double current_model_attributed_conversions_value_per_cost = 179;
* @return This builder for chaining.
*/
public Builder clearCurrentModelAttributedConversionsValuePerCost() {
bitField1_ = (bitField1_ & ~0x01000000);
currentModelAttributedConversionsValuePerCost_ = 0D;
onChanged();
return this;
}
private double engagementRate_ ;
/**
*
* How often people engage with your ad after it's shown to them. This is the
* number of ad expansions divided by the number of times your ad is shown.
*
*
* optional double engagement_rate = 180;
* @return Whether the engagementRate field is set.
*/
@java.lang.Override
public boolean hasEngagementRate() {
return ((bitField1_ & 0x02000000) != 0);
}
/**
*
* How often people engage with your ad after it's shown to them. This is the
* number of ad expansions divided by the number of times your ad is shown.
*
*
* optional double engagement_rate = 180;
* @return The engagementRate.
*/
@java.lang.Override
public double getEngagementRate() {
return engagementRate_;
}
/**
*
* How often people engage with your ad after it's shown to them. This is the
* number of ad expansions divided by the number of times your ad is shown.
*
*
* optional double engagement_rate = 180;
* @param value The engagementRate to set.
* @return This builder for chaining.
*/
public Builder setEngagementRate(double value) {
bitField1_ |= 0x02000000;
engagementRate_ = value;
onChanged();
return this;
}
/**
*
* How often people engage with your ad after it's shown to them. This is the
* number of ad expansions divided by the number of times your ad is shown.
*
*
* optional double engagement_rate = 180;
* @return This builder for chaining.
*/
public Builder clearEngagementRate() {
bitField1_ = (bitField1_ & ~0x02000000);
engagementRate_ = 0D;
onChanged();
return this;
}
private long engagements_ ;
/**
*
* The number of engagements.
* An engagement occurs when a viewer expands your Lightbox ad. Also, in the
* future, other ad types may support engagement metrics.
*
*
* optional int64 engagements = 181;
* @return Whether the engagements field is set.
*/
@java.lang.Override
public boolean hasEngagements() {
return ((bitField1_ & 0x04000000) != 0);
}
/**
*
* The number of engagements.
* An engagement occurs when a viewer expands your Lightbox ad. Also, in the
* future, other ad types may support engagement metrics.
*
*
* optional int64 engagements = 181;
* @return The engagements.
*/
@java.lang.Override
public long getEngagements() {
return engagements_;
}
/**
*
* The number of engagements.
* An engagement occurs when a viewer expands your Lightbox ad. Also, in the
* future, other ad types may support engagement metrics.
*
*
* optional int64 engagements = 181;
* @param value The engagements to set.
* @return This builder for chaining.
*/
public Builder setEngagements(long value) {
bitField1_ |= 0x04000000;
engagements_ = value;
onChanged();
return this;
}
/**
*
* The number of engagements.
* An engagement occurs when a viewer expands your Lightbox ad. Also, in the
* future, other ad types may support engagement metrics.
*
*
* optional int64 engagements = 181;
* @return This builder for chaining.
*/
public Builder clearEngagements() {
bitField1_ = (bitField1_ & ~0x04000000);
engagements_ = 0L;
onChanged();
return this;
}
private double hotelAverageLeadValueMicros_ ;
/**
*
* Average lead value based on clicks.
*
*
* optional double hotel_average_lead_value_micros = 213;
* @return Whether the hotelAverageLeadValueMicros field is set.
*/
@java.lang.Override
public boolean hasHotelAverageLeadValueMicros() {
return ((bitField1_ & 0x08000000) != 0);
}
/**
*
* Average lead value based on clicks.
*
*
* optional double hotel_average_lead_value_micros = 213;
* @return The hotelAverageLeadValueMicros.
*/
@java.lang.Override
public double getHotelAverageLeadValueMicros() {
return hotelAverageLeadValueMicros_;
}
/**
*
* Average lead value based on clicks.
*
*
* optional double hotel_average_lead_value_micros = 213;
* @param value The hotelAverageLeadValueMicros to set.
* @return This builder for chaining.
*/
public Builder setHotelAverageLeadValueMicros(double value) {
bitField1_ |= 0x08000000;
hotelAverageLeadValueMicros_ = value;
onChanged();
return this;
}
/**
*
* Average lead value based on clicks.
*
*
* optional double hotel_average_lead_value_micros = 213;
* @return This builder for chaining.
*/
public Builder clearHotelAverageLeadValueMicros() {
bitField1_ = (bitField1_ & ~0x08000000);
hotelAverageLeadValueMicros_ = 0D;
onChanged();
return this;
}
private long hotelCommissionRateMicros_ ;
/**
*
* Commission bid rate in micros. A 20% commission is represented as
* 200,000.
*
*
* optional int64 hotel_commission_rate_micros = 256;
* @return Whether the hotelCommissionRateMicros field is set.
*/
@java.lang.Override
public boolean hasHotelCommissionRateMicros() {
return ((bitField1_ & 0x10000000) != 0);
}
/**
*
* Commission bid rate in micros. A 20% commission is represented as
* 200,000.
*
*
* optional int64 hotel_commission_rate_micros = 256;
* @return The hotelCommissionRateMicros.
*/
@java.lang.Override
public long getHotelCommissionRateMicros() {
return hotelCommissionRateMicros_;
}
/**
*
* Commission bid rate in micros. A 20% commission is represented as
* 200,000.
*
*
* optional int64 hotel_commission_rate_micros = 256;
* @param value The hotelCommissionRateMicros to set.
* @return This builder for chaining.
*/
public Builder setHotelCommissionRateMicros(long value) {
bitField1_ |= 0x10000000;
hotelCommissionRateMicros_ = value;
onChanged();
return this;
}
/**
*
* Commission bid rate in micros. A 20% commission is represented as
* 200,000.
*
*
* optional int64 hotel_commission_rate_micros = 256;
* @return This builder for chaining.
*/
public Builder clearHotelCommissionRateMicros() {
bitField1_ = (bitField1_ & ~0x10000000);
hotelCommissionRateMicros_ = 0L;
onChanged();
return this;
}
private double hotelExpectedCommissionCost_ ;
/**
*
* Expected commission cost. The result of multiplying the commission value
* times the hotel_commission_rate in advertiser currency.
*
*
* optional double hotel_expected_commission_cost = 257;
* @return Whether the hotelExpectedCommissionCost field is set.
*/
@java.lang.Override
public boolean hasHotelExpectedCommissionCost() {
return ((bitField1_ & 0x20000000) != 0);
}
/**
*
* Expected commission cost. The result of multiplying the commission value
* times the hotel_commission_rate in advertiser currency.
*
*
* optional double hotel_expected_commission_cost = 257;
* @return The hotelExpectedCommissionCost.
*/
@java.lang.Override
public double getHotelExpectedCommissionCost() {
return hotelExpectedCommissionCost_;
}
/**
*
* Expected commission cost. The result of multiplying the commission value
* times the hotel_commission_rate in advertiser currency.
*
*
* optional double hotel_expected_commission_cost = 257;
* @param value The hotelExpectedCommissionCost to set.
* @return This builder for chaining.
*/
public Builder setHotelExpectedCommissionCost(double value) {
bitField1_ |= 0x20000000;
hotelExpectedCommissionCost_ = value;
onChanged();
return this;
}
/**
*
* Expected commission cost. The result of multiplying the commission value
* times the hotel_commission_rate in advertiser currency.
*
*
* optional double hotel_expected_commission_cost = 257;
* @return This builder for chaining.
*/
public Builder clearHotelExpectedCommissionCost() {
bitField1_ = (bitField1_ & ~0x20000000);
hotelExpectedCommissionCost_ = 0D;
onChanged();
return this;
}
private double hotelPriceDifferencePercentage_ ;
/**
*
* The average price difference between the price offered by reporting hotel
* advertiser and the cheapest price offered by the competing advertiser.
*
*
* optional double hotel_price_difference_percentage = 214;
* @return Whether the hotelPriceDifferencePercentage field is set.
*/
@java.lang.Override
public boolean hasHotelPriceDifferencePercentage() {
return ((bitField1_ & 0x40000000) != 0);
}
/**
*
* The average price difference between the price offered by reporting hotel
* advertiser and the cheapest price offered by the competing advertiser.
*
*
* optional double hotel_price_difference_percentage = 214;
* @return The hotelPriceDifferencePercentage.
*/
@java.lang.Override
public double getHotelPriceDifferencePercentage() {
return hotelPriceDifferencePercentage_;
}
/**
*
* The average price difference between the price offered by reporting hotel
* advertiser and the cheapest price offered by the competing advertiser.
*
*
* optional double hotel_price_difference_percentage = 214;
* @param value The hotelPriceDifferencePercentage to set.
* @return This builder for chaining.
*/
public Builder setHotelPriceDifferencePercentage(double value) {
bitField1_ |= 0x40000000;
hotelPriceDifferencePercentage_ = value;
onChanged();
return this;
}
/**
*
* The average price difference between the price offered by reporting hotel
* advertiser and the cheapest price offered by the competing advertiser.
*
*
* optional double hotel_price_difference_percentage = 214;
* @return This builder for chaining.
*/
public Builder clearHotelPriceDifferencePercentage() {
bitField1_ = (bitField1_ & ~0x40000000);
hotelPriceDifferencePercentage_ = 0D;
onChanged();
return this;
}
private long hotelEligibleImpressions_ ;
/**
*
* The number of impressions that hotel partners could have had given their
* feed performance.
*
*
* optional int64 hotel_eligible_impressions = 215;
* @return Whether the hotelEligibleImpressions field is set.
*/
@java.lang.Override
public boolean hasHotelEligibleImpressions() {
return ((bitField1_ & 0x80000000) != 0);
}
/**
*
* The number of impressions that hotel partners could have had given their
* feed performance.
*
*
* optional int64 hotel_eligible_impressions = 215;
* @return The hotelEligibleImpressions.
*/
@java.lang.Override
public long getHotelEligibleImpressions() {
return hotelEligibleImpressions_;
}
/**
*
* The number of impressions that hotel partners could have had given their
* feed performance.
*
*
* optional int64 hotel_eligible_impressions = 215;
* @param value The hotelEligibleImpressions to set.
* @return This builder for chaining.
*/
public Builder setHotelEligibleImpressions(long value) {
bitField1_ |= 0x80000000;
hotelEligibleImpressions_ = value;
onChanged();
return this;
}
/**
*
* The number of impressions that hotel partners could have had given their
* feed performance.
*
*
* optional int64 hotel_eligible_impressions = 215;
* @return This builder for chaining.
*/
public Builder clearHotelEligibleImpressions() {
bitField1_ = (bitField1_ & ~0x80000000);
hotelEligibleImpressions_ = 0L;
onChanged();
return this;
}
private int historicalCreativeQualityScore_ = 0;
/**
*
* The creative historical quality score.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80;
* @return The enum numeric value on the wire for historicalCreativeQualityScore.
*/
@java.lang.Override public int getHistoricalCreativeQualityScoreValue() {
return historicalCreativeQualityScore_;
}
/**
*
* The creative historical quality score.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80;
* @param value The enum numeric value on the wire for historicalCreativeQualityScore to set.
* @return This builder for chaining.
*/
public Builder setHistoricalCreativeQualityScoreValue(int value) {
historicalCreativeQualityScore_ = value;
onChanged();
return this;
}
/**
*
* The creative historical quality score.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80;
* @return The historicalCreativeQualityScore.
*/
@java.lang.Override
public com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket getHistoricalCreativeQualityScore() {
@SuppressWarnings("deprecation")
com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket result = com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.valueOf(historicalCreativeQualityScore_);
return result == null ? com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNRECOGNIZED : result;
}
/**
*
* The creative historical quality score.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80;
* @param value The historicalCreativeQualityScore to set.
* @return This builder for chaining.
*/
public Builder setHistoricalCreativeQualityScore(com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket value) {
if (value == null) {
throw new NullPointerException();
}
historicalCreativeQualityScore_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The creative historical quality score.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80;
* @return This builder for chaining.
*/
public Builder clearHistoricalCreativeQualityScore() {
historicalCreativeQualityScore_ = 0;
onChanged();
return this;
}
private int historicalLandingPageQualityScore_ = 0;
/**
*
* The quality of historical landing page experience.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81;
* @return The enum numeric value on the wire for historicalLandingPageQualityScore.
*/
@java.lang.Override public int getHistoricalLandingPageQualityScoreValue() {
return historicalLandingPageQualityScore_;
}
/**
*
* The quality of historical landing page experience.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81;
* @param value The enum numeric value on the wire for historicalLandingPageQualityScore to set.
* @return This builder for chaining.
*/
public Builder setHistoricalLandingPageQualityScoreValue(int value) {
historicalLandingPageQualityScore_ = value;
onChanged();
return this;
}
/**
*
* The quality of historical landing page experience.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81;
* @return The historicalLandingPageQualityScore.
*/
@java.lang.Override
public com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket getHistoricalLandingPageQualityScore() {
@SuppressWarnings("deprecation")
com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket result = com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.valueOf(historicalLandingPageQualityScore_);
return result == null ? com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNRECOGNIZED : result;
}
/**
*
* The quality of historical landing page experience.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81;
* @param value The historicalLandingPageQualityScore to set.
* @return This builder for chaining.
*/
public Builder setHistoricalLandingPageQualityScore(com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket value) {
if (value == null) {
throw new NullPointerException();
}
historicalLandingPageQualityScore_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The quality of historical landing page experience.
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81;
* @return This builder for chaining.
*/
public Builder clearHistoricalLandingPageQualityScore() {
historicalLandingPageQualityScore_ = 0;
onChanged();
return this;
}
private long historicalQualityScore_ ;
/**
*
* The historical quality score.
*
*
* optional int64 historical_quality_score = 216;
* @return Whether the historicalQualityScore field is set.
*/
@java.lang.Override
public boolean hasHistoricalQualityScore() {
return ((bitField2_ & 0x00000001) != 0);
}
/**
*
* The historical quality score.
*
*
* optional int64 historical_quality_score = 216;
* @return The historicalQualityScore.
*/
@java.lang.Override
public long getHistoricalQualityScore() {
return historicalQualityScore_;
}
/**
*
* The historical quality score.
*
*
* optional int64 historical_quality_score = 216;
* @param value The historicalQualityScore to set.
* @return This builder for chaining.
*/
public Builder setHistoricalQualityScore(long value) {
bitField2_ |= 0x00000001;
historicalQualityScore_ = value;
onChanged();
return this;
}
/**
*
* The historical quality score.
*
*
* optional int64 historical_quality_score = 216;
* @return This builder for chaining.
*/
public Builder clearHistoricalQualityScore() {
bitField2_ = (bitField2_ & ~0x00000001);
historicalQualityScore_ = 0L;
onChanged();
return this;
}
private int historicalSearchPredictedCtr_ = 0;
/**
*
* The historical search predicted click through rate (CTR).
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83;
* @return The enum numeric value on the wire for historicalSearchPredictedCtr.
*/
@java.lang.Override public int getHistoricalSearchPredictedCtrValue() {
return historicalSearchPredictedCtr_;
}
/**
*
* The historical search predicted click through rate (CTR).
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83;
* @param value The enum numeric value on the wire for historicalSearchPredictedCtr to set.
* @return This builder for chaining.
*/
public Builder setHistoricalSearchPredictedCtrValue(int value) {
historicalSearchPredictedCtr_ = value;
onChanged();
return this;
}
/**
*
* The historical search predicted click through rate (CTR).
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83;
* @return The historicalSearchPredictedCtr.
*/
@java.lang.Override
public com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket getHistoricalSearchPredictedCtr() {
@SuppressWarnings("deprecation")
com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket result = com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.valueOf(historicalSearchPredictedCtr_);
return result == null ? com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket.UNRECOGNIZED : result;
}
/**
*
* The historical search predicted click through rate (CTR).
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83;
* @param value The historicalSearchPredictedCtr to set.
* @return This builder for chaining.
*/
public Builder setHistoricalSearchPredictedCtr(com.google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket value) {
if (value == null) {
throw new NullPointerException();
}
historicalSearchPredictedCtr_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The historical search predicted click through rate (CTR).
*
*
* .google.ads.googleads.v10.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83;
* @return This builder for chaining.
*/
public Builder clearHistoricalSearchPredictedCtr() {
historicalSearchPredictedCtr_ = 0;
onChanged();
return this;
}
private long gmailForwards_ ;
/**
*
* The number of times the ad was forwarded to someone else as a message.
*
*
* optional int64 gmail_forwards = 217;
* @return Whether the gmailForwards field is set.
*/
@java.lang.Override
public boolean hasGmailForwards() {
return ((bitField2_ & 0x00000002) != 0);
}
/**
*
* The number of times the ad was forwarded to someone else as a message.
*
*
* optional int64 gmail_forwards = 217;
* @return The gmailForwards.
*/
@java.lang.Override
public long getGmailForwards() {
return gmailForwards_;
}
/**
*
* The number of times the ad was forwarded to someone else as a message.
*
*
* optional int64 gmail_forwards = 217;
* @param value The gmailForwards to set.
* @return This builder for chaining.
*/
public Builder setGmailForwards(long value) {
bitField2_ |= 0x00000002;
gmailForwards_ = value;
onChanged();
return this;
}
/**
*
* The number of times the ad was forwarded to someone else as a message.
*
*
* optional int64 gmail_forwards = 217;
* @return This builder for chaining.
*/
public Builder clearGmailForwards() {
bitField2_ = (bitField2_ & ~0x00000002);
gmailForwards_ = 0L;
onChanged();
return this;
}
private long gmailSaves_ ;
/**
*
* The number of times someone has saved your Gmail ad to their inbox as a
* message.
*
*
* optional int64 gmail_saves = 218;
* @return Whether the gmailSaves field is set.
*/
@java.lang.Override
public boolean hasGmailSaves() {
return ((bitField2_ & 0x00000004) != 0);
}
/**
*
* The number of times someone has saved your Gmail ad to their inbox as a
* message.
*
*
* optional int64 gmail_saves = 218;
* @return The gmailSaves.
*/
@java.lang.Override
public long getGmailSaves() {
return gmailSaves_;
}
/**
*
* The number of times someone has saved your Gmail ad to their inbox as a
* message.
*
*
* optional int64 gmail_saves = 218;
* @param value The gmailSaves to set.
* @return This builder for chaining.
*/
public Builder setGmailSaves(long value) {
bitField2_ |= 0x00000004;
gmailSaves_ = value;
onChanged();
return this;
}
/**
*
* The number of times someone has saved your Gmail ad to their inbox as a
* message.
*
*
* optional int64 gmail_saves = 218;
* @return This builder for chaining.
*/
public Builder clearGmailSaves() {
bitField2_ = (bitField2_ & ~0x00000004);
gmailSaves_ = 0L;
onChanged();
return this;
}
private long gmailSecondaryClicks_ ;
/**
*
* The number of clicks to the landing page on the expanded state of Gmail
* ads.
*
*
* optional int64 gmail_secondary_clicks = 219;
* @return Whether the gmailSecondaryClicks field is set.
*/
@java.lang.Override
public boolean hasGmailSecondaryClicks() {
return ((bitField2_ & 0x00000008) != 0);
}
/**
*
* The number of clicks to the landing page on the expanded state of Gmail
* ads.
*
*
* optional int64 gmail_secondary_clicks = 219;
* @return The gmailSecondaryClicks.
*/
@java.lang.Override
public long getGmailSecondaryClicks() {
return gmailSecondaryClicks_;
}
/**
*
* The number of clicks to the landing page on the expanded state of Gmail
* ads.
*
*
* optional int64 gmail_secondary_clicks = 219;
* @param value The gmailSecondaryClicks to set.
* @return This builder for chaining.
*/
public Builder setGmailSecondaryClicks(long value) {
bitField2_ |= 0x00000008;
gmailSecondaryClicks_ = value;
onChanged();
return this;
}
/**
*
* The number of clicks to the landing page on the expanded state of Gmail
* ads.
*
*
* optional int64 gmail_secondary_clicks = 219;
* @return This builder for chaining.
*/
public Builder clearGmailSecondaryClicks() {
bitField2_ = (bitField2_ & ~0x00000008);
gmailSecondaryClicks_ = 0L;
onChanged();
return this;
}
private long impressionsFromStoreReach_ ;
/**
*
* The number of times a store's location-based ad was shown.
* This metric applies to feed items only.
*
*
* optional int64 impressions_from_store_reach = 220;
* @return Whether the impressionsFromStoreReach field is set.
*/
@java.lang.Override
public boolean hasImpressionsFromStoreReach() {
return ((bitField2_ & 0x00000010) != 0);
}
/**
*
* The number of times a store's location-based ad was shown.
* This metric applies to feed items only.
*
*
* optional int64 impressions_from_store_reach = 220;
* @return The impressionsFromStoreReach.
*/
@java.lang.Override
public long getImpressionsFromStoreReach() {
return impressionsFromStoreReach_;
}
/**
*
* The number of times a store's location-based ad was shown.
* This metric applies to feed items only.
*
*
* optional int64 impressions_from_store_reach = 220;
* @param value The impressionsFromStoreReach to set.
* @return This builder for chaining.
*/
public Builder setImpressionsFromStoreReach(long value) {
bitField2_ |= 0x00000010;
impressionsFromStoreReach_ = value;
onChanged();
return this;
}
/**
*
* The number of times a store's location-based ad was shown.
* This metric applies to feed items only.
*
*
* optional int64 impressions_from_store_reach = 220;
* @return This builder for chaining.
*/
public Builder clearImpressionsFromStoreReach() {
bitField2_ = (bitField2_ & ~0x00000010);
impressionsFromStoreReach_ = 0L;
onChanged();
return this;
}
private long impressions_ ;
/**
*
* Count of how often your ad has appeared on a search results page or
* website on the Google Network.
*
*
* optional int64 impressions = 221;
* @return Whether the impressions field is set.
*/
@java.lang.Override
public boolean hasImpressions() {
return ((bitField2_ & 0x00000020) != 0);
}
/**
*
* Count of how often your ad has appeared on a search results page or
* website on the Google Network.
*
*
* optional int64 impressions = 221;
* @return The impressions.
*/
@java.lang.Override
public long getImpressions() {
return impressions_;
}
/**
*
* Count of how often your ad has appeared on a search results page or
* website on the Google Network.
*
*
* optional int64 impressions = 221;
* @param value The impressions to set.
* @return This builder for chaining.
*/
public Builder setImpressions(long value) {
bitField2_ |= 0x00000020;
impressions_ = value;
onChanged();
return this;
}
/**
*
* Count of how often your ad has appeared on a search results page or
* website on the Google Network.
*
*
* optional int64 impressions = 221;
* @return This builder for chaining.
*/
public Builder clearImpressions() {
bitField2_ = (bitField2_ & ~0x00000020);
impressions_ = 0L;
onChanged();
return this;
}
private double interactionRate_ ;
/**
*
* How often people interact with your ad after it is shown to them.
* This is the number of interactions divided by the number of times your ad
* is shown.
*
*
* optional double interaction_rate = 222;
* @return Whether the interactionRate field is set.
*/
@java.lang.Override
public boolean hasInteractionRate() {
return ((bitField2_ & 0x00000040) != 0);
}
/**
*
* How often people interact with your ad after it is shown to them.
* This is the number of interactions divided by the number of times your ad
* is shown.
*
*
* optional double interaction_rate = 222;
* @return The interactionRate.
*/
@java.lang.Override
public double getInteractionRate() {
return interactionRate_;
}
/**
*
* How often people interact with your ad after it is shown to them.
* This is the number of interactions divided by the number of times your ad
* is shown.
*
*
* optional double interaction_rate = 222;
* @param value The interactionRate to set.
* @return This builder for chaining.
*/
public Builder setInteractionRate(double value) {
bitField2_ |= 0x00000040;
interactionRate_ = value;
onChanged();
return this;
}
/**
*
* How often people interact with your ad after it is shown to them.
* This is the number of interactions divided by the number of times your ad
* is shown.
*
*
* optional double interaction_rate = 222;
* @return This builder for chaining.
*/
public Builder clearInteractionRate() {
bitField2_ = (bitField2_ & ~0x00000040);
interactionRate_ = 0D;
onChanged();
return this;
}
private long interactions_ ;
/**
*
* The number of interactions.
* An interaction is the main user action associated with an ad format-clicks
* for text and shopping ads, views for video ads, and so on.
*
*
* optional int64 interactions = 223;
* @return Whether the interactions field is set.
*/
@java.lang.Override
public boolean hasInteractions() {
return ((bitField2_ & 0x00000080) != 0);
}
/**
*
* The number of interactions.
* An interaction is the main user action associated with an ad format-clicks
* for text and shopping ads, views for video ads, and so on.
*
*
* optional int64 interactions = 223;
* @return The interactions.
*/
@java.lang.Override
public long getInteractions() {
return interactions_;
}
/**
*
* The number of interactions.
* An interaction is the main user action associated with an ad format-clicks
* for text and shopping ads, views for video ads, and so on.
*
*
* optional int64 interactions = 223;
* @param value The interactions to set.
* @return This builder for chaining.
*/
public Builder setInteractions(long value) {
bitField2_ |= 0x00000080;
interactions_ = value;
onChanged();
return this;
}
/**
*
* The number of interactions.
* An interaction is the main user action associated with an ad format-clicks
* for text and shopping ads, views for video ads, and so on.
*
*
* optional int64 interactions = 223;
* @return This builder for chaining.
*/
public Builder clearInteractions() {
bitField2_ = (bitField2_ & ~0x00000080);
interactions_ = 0L;
onChanged();
return this;
}
private java.util.List interactionEventTypes_ =
java.util.Collections.emptyList();
private void ensureInteractionEventTypesIsMutable() {
if (!((bitField2_ & 0x00000100) != 0)) {
interactionEventTypes_ = new java.util.ArrayList(interactionEventTypes_);
bitField2_ |= 0x00000100;
}
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @return A list containing the interactionEventTypes.
*/
public java.util.List getInteractionEventTypesList() {
return new com.google.protobuf.Internal.ListAdapter<
java.lang.Integer, com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType>(interactionEventTypes_, interactionEventTypes_converter_);
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @return The count of interactionEventTypes.
*/
public int getInteractionEventTypesCount() {
return interactionEventTypes_.size();
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param index The index of the element to return.
* @return The interactionEventTypes at the given index.
*/
public com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType getInteractionEventTypes(int index) {
return interactionEventTypes_converter_.convert(interactionEventTypes_.get(index));
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param index The index to set the value at.
* @param value The interactionEventTypes to set.
* @return This builder for chaining.
*/
public Builder setInteractionEventTypes(
int index, com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType value) {
if (value == null) {
throw new NullPointerException();
}
ensureInteractionEventTypesIsMutable();
interactionEventTypes_.set(index, value.getNumber());
onChanged();
return this;
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param value The interactionEventTypes to add.
* @return This builder for chaining.
*/
public Builder addInteractionEventTypes(com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType value) {
if (value == null) {
throw new NullPointerException();
}
ensureInteractionEventTypesIsMutable();
interactionEventTypes_.add(value.getNumber());
onChanged();
return this;
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param values The interactionEventTypes to add.
* @return This builder for chaining.
*/
public Builder addAllInteractionEventTypes(
java.lang.Iterable extends com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType> values) {
ensureInteractionEventTypesIsMutable();
for (com.google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType value : values) {
interactionEventTypes_.add(value.getNumber());
}
onChanged();
return this;
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @return This builder for chaining.
*/
public Builder clearInteractionEventTypes() {
interactionEventTypes_ = java.util.Collections.emptyList();
bitField2_ = (bitField2_ & ~0x00000100);
onChanged();
return this;
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @return A list containing the enum numeric values on the wire for interactionEventTypes.
*/
public java.util.List
getInteractionEventTypesValueList() {
return java.util.Collections.unmodifiableList(interactionEventTypes_);
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param index The index of the value to return.
* @return The enum numeric value on the wire of interactionEventTypes at the given index.
*/
public int getInteractionEventTypesValue(int index) {
return interactionEventTypes_.get(index);
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param index The index to set the value at.
* @param value The enum numeric value on the wire for interactionEventTypes to set.
* @return This builder for chaining.
*/
public Builder setInteractionEventTypesValue(
int index, int value) {
ensureInteractionEventTypesIsMutable();
interactionEventTypes_.set(index, value);
onChanged();
return this;
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param value The enum numeric value on the wire for interactionEventTypes to add.
* @return This builder for chaining.
*/
public Builder addInteractionEventTypesValue(int value) {
ensureInteractionEventTypesIsMutable();
interactionEventTypes_.add(value);
onChanged();
return this;
}
/**
*
* The types of payable and free interactions.
*
*
* repeated .google.ads.googleads.v10.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100;
* @param values The enum numeric values on the wire for interactionEventTypes to add.
* @return This builder for chaining.
*/
public Builder addAllInteractionEventTypesValue(
java.lang.Iterable values) {
ensureInteractionEventTypesIsMutable();
for (int value : values) {
interactionEventTypes_.add(value);
}
onChanged();
return this;
}
private double invalidClickRate_ ;
/**
*
* The percentage of clicks filtered out of your total number of clicks
* (filtered + non-filtered clicks) during the reporting period.
*
*
* optional double invalid_click_rate = 224;
* @return Whether the invalidClickRate field is set.
*/
@java.lang.Override
public boolean hasInvalidClickRate() {
return ((bitField2_ & 0x00000200) != 0);
}
/**
*
* The percentage of clicks filtered out of your total number of clicks
* (filtered + non-filtered clicks) during the reporting period.
*
*
* optional double invalid_click_rate = 224;
* @return The invalidClickRate.
*/
@java.lang.Override
public double getInvalidClickRate() {
return invalidClickRate_;
}
/**
*
* The percentage of clicks filtered out of your total number of clicks
* (filtered + non-filtered clicks) during the reporting period.
*
*
* optional double invalid_click_rate = 224;
* @param value The invalidClickRate to set.
* @return This builder for chaining.
*/
public Builder setInvalidClickRate(double value) {
bitField2_ |= 0x00000200;
invalidClickRate_ = value;
onChanged();
return this;
}
/**
*
* The percentage of clicks filtered out of your total number of clicks
* (filtered + non-filtered clicks) during the reporting period.
*
*
* optional double invalid_click_rate = 224;
* @return This builder for chaining.
*/
public Builder clearInvalidClickRate() {
bitField2_ = (bitField2_ & ~0x00000200);
invalidClickRate_ = 0D;
onChanged();
return this;
}
private long invalidClicks_ ;
/**
*
* Number of clicks Google considers illegitimate and doesn't charge you for.
*
*
* optional int64 invalid_clicks = 225;
* @return Whether the invalidClicks field is set.
*/
@java.lang.Override
public boolean hasInvalidClicks() {
return ((bitField2_ & 0x00000400) != 0);
}
/**
*
* Number of clicks Google considers illegitimate and doesn't charge you for.
*
*
* optional int64 invalid_clicks = 225;
* @return The invalidClicks.
*/
@java.lang.Override
public long getInvalidClicks() {
return invalidClicks_;
}
/**
*
* Number of clicks Google considers illegitimate and doesn't charge you for.
*
*
* optional int64 invalid_clicks = 225;
* @param value The invalidClicks to set.
* @return This builder for chaining.
*/
public Builder setInvalidClicks(long value) {
bitField2_ |= 0x00000400;
invalidClicks_ = value;
onChanged();
return this;
}
/**
*
* Number of clicks Google considers illegitimate and doesn't charge you for.
*
*
* optional int64 invalid_clicks = 225;
* @return This builder for chaining.
*/
public Builder clearInvalidClicks() {
bitField2_ = (bitField2_ & ~0x00000400);
invalidClicks_ = 0L;
onChanged();
return this;
}
private long messageChats_ ;
/**
*
* Number of message chats initiated for Click To Message impressions that
* were message tracking eligible.
*
*
* optional int64 message_chats = 226;
* @return Whether the messageChats field is set.
*/
@java.lang.Override
public boolean hasMessageChats() {
return ((bitField2_ & 0x00000800) != 0);
}
/**
*
* Number of message chats initiated for Click To Message impressions that
* were message tracking eligible.
*
*
* optional int64 message_chats = 226;
* @return The messageChats.
*/
@java.lang.Override
public long getMessageChats() {
return messageChats_;
}
/**
*
* Number of message chats initiated for Click To Message impressions that
* were message tracking eligible.
*
*
* optional int64 message_chats = 226;
* @param value The messageChats to set.
* @return This builder for chaining.
*/
public Builder setMessageChats(long value) {
bitField2_ |= 0x00000800;
messageChats_ = value;
onChanged();
return this;
}
/**
*
* Number of message chats initiated for Click To Message impressions that
* were message tracking eligible.
*
*
* optional int64 message_chats = 226;
* @return This builder for chaining.
*/
public Builder clearMessageChats() {
bitField2_ = (bitField2_ & ~0x00000800);
messageChats_ = 0L;
onChanged();
return this;
}
private long messageImpressions_ ;
/**
*
* Number of Click To Message impressions that were message tracking eligible.
*
*
* optional int64 message_impressions = 227;
* @return Whether the messageImpressions field is set.
*/
@java.lang.Override
public boolean hasMessageImpressions() {
return ((bitField2_ & 0x00001000) != 0);
}
/**
*
* Number of Click To Message impressions that were message tracking eligible.
*
*
* optional int64 message_impressions = 227;
* @return The messageImpressions.
*/
@java.lang.Override
public long getMessageImpressions() {
return messageImpressions_;
}
/**
*
* Number of Click To Message impressions that were message tracking eligible.
*
*
* optional int64 message_impressions = 227;
* @param value The messageImpressions to set.
* @return This builder for chaining.
*/
public Builder setMessageImpressions(long value) {
bitField2_ |= 0x00001000;
messageImpressions_ = value;
onChanged();
return this;
}
/**
*
* Number of Click To Message impressions that were message tracking eligible.
*
*
* optional int64 message_impressions = 227;
* @return This builder for chaining.
*/
public Builder clearMessageImpressions() {
bitField2_ = (bitField2_ & ~0x00001000);
messageImpressions_ = 0L;
onChanged();
return this;
}
private double messageChatRate_ ;
/**
*
* Number of message chats initiated (message_chats) divided by the number
* of message impressions (message_impressions).
* Rate at which a user initiates a message chat from an ad impression with
* a messaging option and message tracking enabled.
* Note that this rate can be more than 1.0 for a given message impression.
*
*
* optional double message_chat_rate = 228;
* @return Whether the messageChatRate field is set.
*/
@java.lang.Override
public boolean hasMessageChatRate() {
return ((bitField2_ & 0x00002000) != 0);
}
/**
*
* Number of message chats initiated (message_chats) divided by the number
* of message impressions (message_impressions).
* Rate at which a user initiates a message chat from an ad impression with
* a messaging option and message tracking enabled.
* Note that this rate can be more than 1.0 for a given message impression.
*
*
* optional double message_chat_rate = 228;
* @return The messageChatRate.
*/
@java.lang.Override
public double getMessageChatRate() {
return messageChatRate_;
}
/**
*
* Number of message chats initiated (message_chats) divided by the number
* of message impressions (message_impressions).
* Rate at which a user initiates a message chat from an ad impression with
* a messaging option and message tracking enabled.
* Note that this rate can be more than 1.0 for a given message impression.
*
*
* optional double message_chat_rate = 228;
* @param value The messageChatRate to set.
* @return This builder for chaining.
*/
public Builder setMessageChatRate(double value) {
bitField2_ |= 0x00002000;
messageChatRate_ = value;
onChanged();
return this;
}
/**
*
* Number of message chats initiated (message_chats) divided by the number
* of message impressions (message_impressions).
* Rate at which a user initiates a message chat from an ad impression with
* a messaging option and message tracking enabled.
* Note that this rate can be more than 1.0 for a given message impression.
*
*
* optional double message_chat_rate = 228;
* @return This builder for chaining.
*/
public Builder clearMessageChatRate() {
bitField2_ = (bitField2_ & ~0x00002000);
messageChatRate_ = 0D;
onChanged();
return this;
}
private double mobileFriendlyClicksPercentage_ ;
/**
*
* The percentage of mobile clicks that go to a mobile-friendly page.
*
*
* optional double mobile_friendly_clicks_percentage = 229;
* @return Whether the mobileFriendlyClicksPercentage field is set.
*/
@java.lang.Override
public boolean hasMobileFriendlyClicksPercentage() {
return ((bitField2_ & 0x00004000) != 0);
}
/**
*
* The percentage of mobile clicks that go to a mobile-friendly page.
*
*
* optional double mobile_friendly_clicks_percentage = 229;
* @return The mobileFriendlyClicksPercentage.
*/
@java.lang.Override
public double getMobileFriendlyClicksPercentage() {
return mobileFriendlyClicksPercentage_;
}
/**
*
* The percentage of mobile clicks that go to a mobile-friendly page.
*
*
* optional double mobile_friendly_clicks_percentage = 229;
* @param value The mobileFriendlyClicksPercentage to set.
* @return This builder for chaining.
*/
public Builder setMobileFriendlyClicksPercentage(double value) {
bitField2_ |= 0x00004000;
mobileFriendlyClicksPercentage_ = value;
onChanged();
return this;
}
/**
*
* The percentage of mobile clicks that go to a mobile-friendly page.
*
*
* optional double mobile_friendly_clicks_percentage = 229;
* @return This builder for chaining.
*/
public Builder clearMobileFriendlyClicksPercentage() {
bitField2_ = (bitField2_ & ~0x00004000);
mobileFriendlyClicksPercentage_ = 0D;
onChanged();
return this;
}
private double optimizationScoreUplift_ ;
/**
*
* Total optimization score uplift of all recommendations.
*
*
* optional double optimization_score_uplift = 247;
* @return Whether the optimizationScoreUplift field is set.
*/
@java.lang.Override
public boolean hasOptimizationScoreUplift() {
return ((bitField2_ & 0x00008000) != 0);
}
/**
*
* Total optimization score uplift of all recommendations.
*
*
* optional double optimization_score_uplift = 247;
* @return The optimizationScoreUplift.
*/
@java.lang.Override
public double getOptimizationScoreUplift() {
return optimizationScoreUplift_;
}
/**
*
* Total optimization score uplift of all recommendations.
*
*
* optional double optimization_score_uplift = 247;
* @param value The optimizationScoreUplift to set.
* @return This builder for chaining.
*/
public Builder setOptimizationScoreUplift(double value) {
bitField2_ |= 0x00008000;
optimizationScoreUplift_ = value;
onChanged();
return this;
}
/**
*
* Total optimization score uplift of all recommendations.
*
*
* optional double optimization_score_uplift = 247;
* @return This builder for chaining.
*/
public Builder clearOptimizationScoreUplift() {
bitField2_ = (bitField2_ & ~0x00008000);
optimizationScoreUplift_ = 0D;
onChanged();
return this;
}
private java.lang.Object optimizationScoreUrl_ = "";
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @return Whether the optimizationScoreUrl field is set.
*/
public boolean hasOptimizationScoreUrl() {
return ((bitField2_ & 0x00010000) != 0);
}
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @return The optimizationScoreUrl.
*/
public java.lang.String getOptimizationScoreUrl() {
java.lang.Object ref = optimizationScoreUrl_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
optimizationScoreUrl_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @return The bytes for optimizationScoreUrl.
*/
public com.google.protobuf.ByteString
getOptimizationScoreUrlBytes() {
java.lang.Object ref = optimizationScoreUrl_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
optimizationScoreUrl_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @param value The optimizationScoreUrl to set.
* @return This builder for chaining.
*/
public Builder setOptimizationScoreUrl(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
bitField2_ |= 0x00010000;
optimizationScoreUrl_ = value;
onChanged();
return this;
}
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @return This builder for chaining.
*/
public Builder clearOptimizationScoreUrl() {
bitField2_ = (bitField2_ & ~0x00010000);
optimizationScoreUrl_ = getDefaultInstance().getOptimizationScoreUrl();
onChanged();
return this;
}
/**
*
* URL for the optimization score page in the Google Ads web interface.
* This metric can be selected from `customer` or `campaign`, and can be
* segmented by `segments.recommendation_type`. For example, `SELECT
* metrics.optimization_score_url, segments.recommendation_type FROM
* customer` will return a URL for each unique (customer, recommendation_type)
* combination.
*
*
* optional string optimization_score_url = 248;
* @param value The bytes for optimizationScoreUrl to set.
* @return This builder for chaining.
*/
public Builder setOptimizationScoreUrlBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
bitField2_ |= 0x00010000;
optimizationScoreUrl_ = value;
onChanged();
return this;
}
private long organicClicks_ ;
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results for a particular query. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_clicks = 230;
* @return Whether the organicClicks field is set.
*/
@java.lang.Override
public boolean hasOrganicClicks() {
return ((bitField2_ & 0x00020000) != 0);
}
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results for a particular query. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_clicks = 230;
* @return The organicClicks.
*/
@java.lang.Override
public long getOrganicClicks() {
return organicClicks_;
}
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results for a particular query. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_clicks = 230;
* @param value The organicClicks to set.
* @return This builder for chaining.
*/
public Builder setOrganicClicks(long value) {
bitField2_ |= 0x00020000;
organicClicks_ = value;
onChanged();
return this;
}
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results for a particular query. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_clicks = 230;
* @return This builder for chaining.
*/
public Builder clearOrganicClicks() {
bitField2_ = (bitField2_ & ~0x00020000);
organicClicks_ = 0L;
onChanged();
return this;
}
private double organicClicksPerQuery_ ;
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results (organic_clicks) divided by the total number of searches that
* returned pages from your site (organic_queries). See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_clicks_per_query = 231;
* @return Whether the organicClicksPerQuery field is set.
*/
@java.lang.Override
public boolean hasOrganicClicksPerQuery() {
return ((bitField2_ & 0x00040000) != 0);
}
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results (organic_clicks) divided by the total number of searches that
* returned pages from your site (organic_queries). See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_clicks_per_query = 231;
* @return The organicClicksPerQuery.
*/
@java.lang.Override
public double getOrganicClicksPerQuery() {
return organicClicksPerQuery_;
}
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results (organic_clicks) divided by the total number of searches that
* returned pages from your site (organic_queries). See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_clicks_per_query = 231;
* @param value The organicClicksPerQuery to set.
* @return This builder for chaining.
*/
public Builder setOrganicClicksPerQuery(double value) {
bitField2_ |= 0x00040000;
organicClicksPerQuery_ = value;
onChanged();
return this;
}
/**
*
* The number of times someone clicked your site's listing in the unpaid
* results (organic_clicks) divided by the total number of searches that
* returned pages from your site (organic_queries). See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_clicks_per_query = 231;
* @return This builder for chaining.
*/
public Builder clearOrganicClicksPerQuery() {
bitField2_ = (bitField2_ & ~0x00040000);
organicClicksPerQuery_ = 0D;
onChanged();
return this;
}
private long organicImpressions_ ;
/**
*
* The number of listings for your site in the unpaid search results. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional int64 organic_impressions = 232;
* @return Whether the organicImpressions field is set.
*/
@java.lang.Override
public boolean hasOrganicImpressions() {
return ((bitField2_ & 0x00080000) != 0);
}
/**
*
* The number of listings for your site in the unpaid search results. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional int64 organic_impressions = 232;
* @return The organicImpressions.
*/
@java.lang.Override
public long getOrganicImpressions() {
return organicImpressions_;
}
/**
*
* The number of listings for your site in the unpaid search results. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional int64 organic_impressions = 232;
* @param value The organicImpressions to set.
* @return This builder for chaining.
*/
public Builder setOrganicImpressions(long value) {
bitField2_ |= 0x00080000;
organicImpressions_ = value;
onChanged();
return this;
}
/**
*
* The number of listings for your site in the unpaid search results. See the
* help page at https://support.google.com/google-ads/answer/3097241 for
* details.
*
*
* optional int64 organic_impressions = 232;
* @return This builder for chaining.
*/
public Builder clearOrganicImpressions() {
bitField2_ = (bitField2_ & ~0x00080000);
organicImpressions_ = 0L;
onChanged();
return this;
}
private double organicImpressionsPerQuery_ ;
/**
*
* The number of times a page from your site was listed in the unpaid search
* results (organic_impressions) divided by the number of searches returning
* your site's listing in the unpaid results (organic_queries). See the help
* page at https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_impressions_per_query = 233;
* @return Whether the organicImpressionsPerQuery field is set.
*/
@java.lang.Override
public boolean hasOrganicImpressionsPerQuery() {
return ((bitField2_ & 0x00100000) != 0);
}
/**
*
* The number of times a page from your site was listed in the unpaid search
* results (organic_impressions) divided by the number of searches returning
* your site's listing in the unpaid results (organic_queries). See the help
* page at https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_impressions_per_query = 233;
* @return The organicImpressionsPerQuery.
*/
@java.lang.Override
public double getOrganicImpressionsPerQuery() {
return organicImpressionsPerQuery_;
}
/**
*
* The number of times a page from your site was listed in the unpaid search
* results (organic_impressions) divided by the number of searches returning
* your site's listing in the unpaid results (organic_queries). See the help
* page at https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_impressions_per_query = 233;
* @param value The organicImpressionsPerQuery to set.
* @return This builder for chaining.
*/
public Builder setOrganicImpressionsPerQuery(double value) {
bitField2_ |= 0x00100000;
organicImpressionsPerQuery_ = value;
onChanged();
return this;
}
/**
*
* The number of times a page from your site was listed in the unpaid search
* results (organic_impressions) divided by the number of searches returning
* your site's listing in the unpaid results (organic_queries). See the help
* page at https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional double organic_impressions_per_query = 233;
* @return This builder for chaining.
*/
public Builder clearOrganicImpressionsPerQuery() {
bitField2_ = (bitField2_ & ~0x00100000);
organicImpressionsPerQuery_ = 0D;
onChanged();
return this;
}
private long organicQueries_ ;
/**
*
* The total number of searches that returned your site's listing in the
* unpaid results. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_queries = 234;
* @return Whether the organicQueries field is set.
*/
@java.lang.Override
public boolean hasOrganicQueries() {
return ((bitField2_ & 0x00200000) != 0);
}
/**
*
* The total number of searches that returned your site's listing in the
* unpaid results. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_queries = 234;
* @return The organicQueries.
*/
@java.lang.Override
public long getOrganicQueries() {
return organicQueries_;
}
/**
*
* The total number of searches that returned your site's listing in the
* unpaid results. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_queries = 234;
* @param value The organicQueries to set.
* @return This builder for chaining.
*/
public Builder setOrganicQueries(long value) {
bitField2_ |= 0x00200000;
organicQueries_ = value;
onChanged();
return this;
}
/**
*
* The total number of searches that returned your site's listing in the
* unpaid results. See the help page at
* https://support.google.com/google-ads/answer/3097241 for details.
*
*
* optional int64 organic_queries = 234;
* @return This builder for chaining.
*/
public Builder clearOrganicQueries() {
bitField2_ = (bitField2_ & ~0x00200000);
organicQueries_ = 0L;
onChanged();
return this;
}
private double percentNewVisitors_ ;
/**
*
* Percentage of first-time sessions (from people who had never visited your
* site before). Imported from Google Analytics.
*
*
* optional double percent_new_visitors = 235;
* @return Whether the percentNewVisitors field is set.
*/
@java.lang.Override
public boolean hasPercentNewVisitors() {
return ((bitField2_ & 0x00400000) != 0);
}
/**
*
* Percentage of first-time sessions (from people who had never visited your
* site before). Imported from Google Analytics.
*
*
* optional double percent_new_visitors = 235;
* @return The percentNewVisitors.
*/
@java.lang.Override
public double getPercentNewVisitors() {
return percentNewVisitors_;
}
/**
*
* Percentage of first-time sessions (from people who had never visited your
* site before). Imported from Google Analytics.
*
*
* optional double percent_new_visitors = 235;
* @param value The percentNewVisitors to set.
* @return This builder for chaining.
*/
public Builder setPercentNewVisitors(double value) {
bitField2_ |= 0x00400000;
percentNewVisitors_ = value;
onChanged();
return this;
}
/**
*
* Percentage of first-time sessions (from people who had never visited your
* site before). Imported from Google Analytics.
*
*
* optional double percent_new_visitors = 235;
* @return This builder for chaining.
*/
public Builder clearPercentNewVisitors() {
bitField2_ = (bitField2_ & ~0x00400000);
percentNewVisitors_ = 0D;
onChanged();
return this;
}
private long phoneCalls_ ;
/**
*
* Number of offline phone calls.
*
*
* optional int64 phone_calls = 236;
* @return Whether the phoneCalls field is set.
*/
@java.lang.Override
public boolean hasPhoneCalls() {
return ((bitField2_ & 0x00800000) != 0);
}
/**
*
* Number of offline phone calls.
*
*
* optional int64 phone_calls = 236;
* @return The phoneCalls.
*/
@java.lang.Override
public long getPhoneCalls() {
return phoneCalls_;
}
/**
*
* Number of offline phone calls.
*
*
* optional int64 phone_calls = 236;
* @param value The phoneCalls to set.
* @return This builder for chaining.
*/
public Builder setPhoneCalls(long value) {
bitField2_ |= 0x00800000;
phoneCalls_ = value;
onChanged();
return this;
}
/**
*
* Number of offline phone calls.
*
*
* optional int64 phone_calls = 236;
* @return This builder for chaining.
*/
public Builder clearPhoneCalls() {
bitField2_ = (bitField2_ & ~0x00800000);
phoneCalls_ = 0L;
onChanged();
return this;
}
private long phoneImpressions_ ;
/**
*
* Number of offline phone impressions.
*
*
* optional int64 phone_impressions = 237;
* @return Whether the phoneImpressions field is set.
*/
@java.lang.Override
public boolean hasPhoneImpressions() {
return ((bitField2_ & 0x01000000) != 0);
}
/**
*
* Number of offline phone impressions.
*
*
* optional int64 phone_impressions = 237;
* @return The phoneImpressions.
*/
@java.lang.Override
public long getPhoneImpressions() {
return phoneImpressions_;
}
/**
*
* Number of offline phone impressions.
*
*
* optional int64 phone_impressions = 237;
* @param value The phoneImpressions to set.
* @return This builder for chaining.
*/
public Builder setPhoneImpressions(long value) {
bitField2_ |= 0x01000000;
phoneImpressions_ = value;
onChanged();
return this;
}
/**
*
* Number of offline phone impressions.
*
*
* optional int64 phone_impressions = 237;
* @return This builder for chaining.
*/
public Builder clearPhoneImpressions() {
bitField2_ = (bitField2_ & ~0x01000000);
phoneImpressions_ = 0L;
onChanged();
return this;
}
private double phoneThroughRate_ ;
/**
*
* Number of phone calls received (phone_calls) divided by the number of
* times your phone number is shown (phone_impressions).
*
*
* optional double phone_through_rate = 238;
* @return Whether the phoneThroughRate field is set.
*/
@java.lang.Override
public boolean hasPhoneThroughRate() {
return ((bitField2_ & 0x02000000) != 0);
}
/**
*
* Number of phone calls received (phone_calls) divided by the number of
* times your phone number is shown (phone_impressions).
*
*
* optional double phone_through_rate = 238;
* @return The phoneThroughRate.
*/
@java.lang.Override
public double getPhoneThroughRate() {
return phoneThroughRate_;
}
/**
*
* Number of phone calls received (phone_calls) divided by the number of
* times your phone number is shown (phone_impressions).
*
*
* optional double phone_through_rate = 238;
* @param value The phoneThroughRate to set.
* @return This builder for chaining.
*/
public Builder setPhoneThroughRate(double value) {
bitField2_ |= 0x02000000;
phoneThroughRate_ = value;
onChanged();
return this;
}
/**
*
* Number of phone calls received (phone_calls) divided by the number of
* times your phone number is shown (phone_impressions).
*
*
* optional double phone_through_rate = 238;
* @return This builder for chaining.
*/
public Builder clearPhoneThroughRate() {
bitField2_ = (bitField2_ & ~0x02000000);
phoneThroughRate_ = 0D;
onChanged();
return this;
}
private double relativeCtr_ ;
/**
*
* Your clickthrough rate (Ctr) divided by the average clickthrough rate of
* all advertisers on the websites that show your ads. Measures how your ads
* perform on Display Network sites compared to other ads on the same sites.
*
*
* optional double relative_ctr = 239;
* @return Whether the relativeCtr field is set.
*/
@java.lang.Override
public boolean hasRelativeCtr() {
return ((bitField2_ & 0x04000000) != 0);
}
/**
*
* Your clickthrough rate (Ctr) divided by the average clickthrough rate of
* all advertisers on the websites that show your ads. Measures how your ads
* perform on Display Network sites compared to other ads on the same sites.
*
*
* optional double relative_ctr = 239;
* @return The relativeCtr.
*/
@java.lang.Override
public double getRelativeCtr() {
return relativeCtr_;
}
/**
*
* Your clickthrough rate (Ctr) divided by the average clickthrough rate of
* all advertisers on the websites that show your ads. Measures how your ads
* perform on Display Network sites compared to other ads on the same sites.
*
*
* optional double relative_ctr = 239;
* @param value The relativeCtr to set.
* @return This builder for chaining.
*/
public Builder setRelativeCtr(double value) {
bitField2_ |= 0x04000000;
relativeCtr_ = value;
onChanged();
return this;
}
/**
*
* Your clickthrough rate (Ctr) divided by the average clickthrough rate of
* all advertisers on the websites that show your ads. Measures how your ads
* perform on Display Network sites compared to other ads on the same sites.
*
*
* optional double relative_ctr = 239;
* @return This builder for chaining.
*/
public Builder clearRelativeCtr() {
bitField2_ = (bitField2_ & ~0x04000000);
relativeCtr_ = 0D;
onChanged();
return this;
}
private double searchAbsoluteTopImpressionShare_ ;
/**
*
* The percentage of the customer's Shopping or Search ad impressions that are
* shown in the most prominent Shopping position. See
* https://support.google.com/google-ads/answer/7501826
* for details. Any value below 0.1 is reported as 0.0999.
*
*
* optional double search_absolute_top_impression_share = 136;
* @return Whether the searchAbsoluteTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchAbsoluteTopImpressionShare() {
return ((bitField2_ & 0x08000000) != 0);
}
/**
*
* The percentage of the customer's Shopping or Search ad impressions that are
* shown in the most prominent Shopping position. See
* https://support.google.com/google-ads/answer/7501826
* for details. Any value below 0.1 is reported as 0.0999.
*
*
* optional double search_absolute_top_impression_share = 136;
* @return The searchAbsoluteTopImpressionShare.
*/
@java.lang.Override
public double getSearchAbsoluteTopImpressionShare() {
return searchAbsoluteTopImpressionShare_;
}
/**
*
* The percentage of the customer's Shopping or Search ad impressions that are
* shown in the most prominent Shopping position. See
* https://support.google.com/google-ads/answer/7501826
* for details. Any value below 0.1 is reported as 0.0999.
*
*
* optional double search_absolute_top_impression_share = 136;
* @param value The searchAbsoluteTopImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchAbsoluteTopImpressionShare(double value) {
bitField2_ |= 0x08000000;
searchAbsoluteTopImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The percentage of the customer's Shopping or Search ad impressions that are
* shown in the most prominent Shopping position. See
* https://support.google.com/google-ads/answer/7501826
* for details. Any value below 0.1 is reported as 0.0999.
*
*
* optional double search_absolute_top_impression_share = 136;
* @return This builder for chaining.
*/
public Builder clearSearchAbsoluteTopImpressionShare() {
bitField2_ = (bitField2_ & ~0x08000000);
searchAbsoluteTopImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchBudgetLostAbsoluteTopImpressionShare_ ;
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to a low budget. Note: Search
* budget lost absolute top impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_absolute_top_impression_share = 137;
* @return Whether the searchBudgetLostAbsoluteTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchBudgetLostAbsoluteTopImpressionShare() {
return ((bitField2_ & 0x10000000) != 0);
}
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to a low budget. Note: Search
* budget lost absolute top impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_absolute_top_impression_share = 137;
* @return The searchBudgetLostAbsoluteTopImpressionShare.
*/
@java.lang.Override
public double getSearchBudgetLostAbsoluteTopImpressionShare() {
return searchBudgetLostAbsoluteTopImpressionShare_;
}
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to a low budget. Note: Search
* budget lost absolute top impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_absolute_top_impression_share = 137;
* @param value The searchBudgetLostAbsoluteTopImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchBudgetLostAbsoluteTopImpressionShare(double value) {
bitField2_ |= 0x10000000;
searchBudgetLostAbsoluteTopImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to a low budget. Note: Search
* budget lost absolute top impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_absolute_top_impression_share = 137;
* @return This builder for chaining.
*/
public Builder clearSearchBudgetLostAbsoluteTopImpressionShare() {
bitField2_ = (bitField2_ & ~0x10000000);
searchBudgetLostAbsoluteTopImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchBudgetLostImpressionShare_ ;
/**
*
* The estimated percent of times that your ad was eligible to show on the
* Search Network but didn't because your budget was too low. Note: Search
* budget lost impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_impression_share = 138;
* @return Whether the searchBudgetLostImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchBudgetLostImpressionShare() {
return ((bitField2_ & 0x20000000) != 0);
}
/**
*
* The estimated percent of times that your ad was eligible to show on the
* Search Network but didn't because your budget was too low. Note: Search
* budget lost impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_impression_share = 138;
* @return The searchBudgetLostImpressionShare.
*/
@java.lang.Override
public double getSearchBudgetLostImpressionShare() {
return searchBudgetLostImpressionShare_;
}
/**
*
* The estimated percent of times that your ad was eligible to show on the
* Search Network but didn't because your budget was too low. Note: Search
* budget lost impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_impression_share = 138;
* @param value The searchBudgetLostImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchBudgetLostImpressionShare(double value) {
bitField2_ |= 0x20000000;
searchBudgetLostImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The estimated percent of times that your ad was eligible to show on the
* Search Network but didn't because your budget was too low. Note: Search
* budget lost impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_impression_share = 138;
* @return This builder for chaining.
*/
public Builder clearSearchBudgetLostImpressionShare() {
bitField2_ = (bitField2_ & ~0x20000000);
searchBudgetLostImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchBudgetLostTopImpressionShare_ ;
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to a low budget. Note: Search
* budget lost top impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_top_impression_share = 139;
* @return Whether the searchBudgetLostTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchBudgetLostTopImpressionShare() {
return ((bitField2_ & 0x40000000) != 0);
}
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to a low budget. Note: Search
* budget lost top impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_top_impression_share = 139;
* @return The searchBudgetLostTopImpressionShare.
*/
@java.lang.Override
public double getSearchBudgetLostTopImpressionShare() {
return searchBudgetLostTopImpressionShare_;
}
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to a low budget. Note: Search
* budget lost top impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_top_impression_share = 139;
* @param value The searchBudgetLostTopImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchBudgetLostTopImpressionShare(double value) {
bitField2_ |= 0x40000000;
searchBudgetLostTopImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to a low budget. Note: Search
* budget lost top impression share is reported in the range of 0 to 0.9. Any
* value above 0.9 is reported as 0.9001.
*
*
* optional double search_budget_lost_top_impression_share = 139;
* @return This builder for chaining.
*/
public Builder clearSearchBudgetLostTopImpressionShare() {
bitField2_ = (bitField2_ & ~0x40000000);
searchBudgetLostTopImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchClickShare_ ;
/**
*
* The number of clicks you've received on the Search Network
* divided by the estimated number of clicks you were eligible to receive.
* Note: Search click share is reported in the range of 0.1 to 1. Any value
* below 0.1 is reported as 0.0999.
*
*
* optional double search_click_share = 140;
* @return Whether the searchClickShare field is set.
*/
@java.lang.Override
public boolean hasSearchClickShare() {
return ((bitField2_ & 0x80000000) != 0);
}
/**
*
* The number of clicks you've received on the Search Network
* divided by the estimated number of clicks you were eligible to receive.
* Note: Search click share is reported in the range of 0.1 to 1. Any value
* below 0.1 is reported as 0.0999.
*
*
* optional double search_click_share = 140;
* @return The searchClickShare.
*/
@java.lang.Override
public double getSearchClickShare() {
return searchClickShare_;
}
/**
*
* The number of clicks you've received on the Search Network
* divided by the estimated number of clicks you were eligible to receive.
* Note: Search click share is reported in the range of 0.1 to 1. Any value
* below 0.1 is reported as 0.0999.
*
*
* optional double search_click_share = 140;
* @param value The searchClickShare to set.
* @return This builder for chaining.
*/
public Builder setSearchClickShare(double value) {
bitField2_ |= 0x80000000;
searchClickShare_ = value;
onChanged();
return this;
}
/**
*
* The number of clicks you've received on the Search Network
* divided by the estimated number of clicks you were eligible to receive.
* Note: Search click share is reported in the range of 0.1 to 1. Any value
* below 0.1 is reported as 0.0999.
*
*
* optional double search_click_share = 140;
* @return This builder for chaining.
*/
public Builder clearSearchClickShare() {
bitField2_ = (bitField2_ & ~0x80000000);
searchClickShare_ = 0D;
onChanged();
return this;
}
private double searchExactMatchImpressionShare_ ;
/**
*
* The impressions you've received divided by the estimated number of
* impressions you were eligible to receive on the Search Network for search
* terms that matched your keywords exactly (or were close variants of your
* keyword), regardless of your keyword match types. Note: Search exact match
* impression share is reported in the range of 0.1 to 1. Any value below 0.1
* is reported as 0.0999.
*
*
* optional double search_exact_match_impression_share = 141;
* @return Whether the searchExactMatchImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchExactMatchImpressionShare() {
return ((bitField3_ & 0x00000001) != 0);
}
/**
*
* The impressions you've received divided by the estimated number of
* impressions you were eligible to receive on the Search Network for search
* terms that matched your keywords exactly (or were close variants of your
* keyword), regardless of your keyword match types. Note: Search exact match
* impression share is reported in the range of 0.1 to 1. Any value below 0.1
* is reported as 0.0999.
*
*
* optional double search_exact_match_impression_share = 141;
* @return The searchExactMatchImpressionShare.
*/
@java.lang.Override
public double getSearchExactMatchImpressionShare() {
return searchExactMatchImpressionShare_;
}
/**
*
* The impressions you've received divided by the estimated number of
* impressions you were eligible to receive on the Search Network for search
* terms that matched your keywords exactly (or were close variants of your
* keyword), regardless of your keyword match types. Note: Search exact match
* impression share is reported in the range of 0.1 to 1. Any value below 0.1
* is reported as 0.0999.
*
*
* optional double search_exact_match_impression_share = 141;
* @param value The searchExactMatchImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchExactMatchImpressionShare(double value) {
bitField3_ |= 0x00000001;
searchExactMatchImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The impressions you've received divided by the estimated number of
* impressions you were eligible to receive on the Search Network for search
* terms that matched your keywords exactly (or were close variants of your
* keyword), regardless of your keyword match types. Note: Search exact match
* impression share is reported in the range of 0.1 to 1. Any value below 0.1
* is reported as 0.0999.
*
*
* optional double search_exact_match_impression_share = 141;
* @return This builder for chaining.
*/
public Builder clearSearchExactMatchImpressionShare() {
bitField3_ = (bitField3_ & ~0x00000001);
searchExactMatchImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchImpressionShare_ ;
/**
*
* The impressions you've received on the Search Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Search impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_impression_share = 142;
* @return Whether the searchImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchImpressionShare() {
return ((bitField3_ & 0x00000002) != 0);
}
/**
*
* The impressions you've received on the Search Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Search impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_impression_share = 142;
* @return The searchImpressionShare.
*/
@java.lang.Override
public double getSearchImpressionShare() {
return searchImpressionShare_;
}
/**
*
* The impressions you've received on the Search Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Search impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_impression_share = 142;
* @param value The searchImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchImpressionShare(double value) {
bitField3_ |= 0x00000002;
searchImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The impressions you've received on the Search Network divided
* by the estimated number of impressions you were eligible to receive.
* Note: Search impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_impression_share = 142;
* @return This builder for chaining.
*/
public Builder clearSearchImpressionShare() {
bitField3_ = (bitField3_ & ~0x00000002);
searchImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchRankLostAbsoluteTopImpressionShare_ ;
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost absolute top impression share is reported in the
* range of 0 to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_absolute_top_impression_share = 143;
* @return Whether the searchRankLostAbsoluteTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchRankLostAbsoluteTopImpressionShare() {
return ((bitField3_ & 0x00000004) != 0);
}
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost absolute top impression share is reported in the
* range of 0 to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_absolute_top_impression_share = 143;
* @return The searchRankLostAbsoluteTopImpressionShare.
*/
@java.lang.Override
public double getSearchRankLostAbsoluteTopImpressionShare() {
return searchRankLostAbsoluteTopImpressionShare_;
}
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost absolute top impression share is reported in the
* range of 0 to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_absolute_top_impression_share = 143;
* @param value The searchRankLostAbsoluteTopImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchRankLostAbsoluteTopImpressionShare(double value) {
bitField3_ |= 0x00000004;
searchRankLostAbsoluteTopImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The number estimating how often your ad wasn't the very first ad above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost absolute top impression share is reported in the
* range of 0 to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_absolute_top_impression_share = 143;
* @return This builder for chaining.
*/
public Builder clearSearchRankLostAbsoluteTopImpressionShare() {
bitField3_ = (bitField3_ & ~0x00000004);
searchRankLostAbsoluteTopImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchRankLostImpressionShare_ ;
/**
*
* The estimated percentage of impressions on the Search Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Search rank lost impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_impression_share = 144;
* @return Whether the searchRankLostImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchRankLostImpressionShare() {
return ((bitField3_ & 0x00000008) != 0);
}
/**
*
* The estimated percentage of impressions on the Search Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Search rank lost impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_impression_share = 144;
* @return The searchRankLostImpressionShare.
*/
@java.lang.Override
public double getSearchRankLostImpressionShare() {
return searchRankLostImpressionShare_;
}
/**
*
* The estimated percentage of impressions on the Search Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Search rank lost impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_impression_share = 144;
* @param value The searchRankLostImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchRankLostImpressionShare(double value) {
bitField3_ |= 0x00000008;
searchRankLostImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The estimated percentage of impressions on the Search Network
* that your ads didn't receive due to poor Ad Rank.
* Note: Search rank lost impression share is reported in the range of 0 to
* 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_impression_share = 144;
* @return This builder for chaining.
*/
public Builder clearSearchRankLostImpressionShare() {
bitField3_ = (bitField3_ & ~0x00000008);
searchRankLostImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchRankLostTopImpressionShare_ ;
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost top impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_top_impression_share = 145;
* @return Whether the searchRankLostTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchRankLostTopImpressionShare() {
return ((bitField3_ & 0x00000010) != 0);
}
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost top impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_top_impression_share = 145;
* @return The searchRankLostTopImpressionShare.
*/
@java.lang.Override
public double getSearchRankLostTopImpressionShare() {
return searchRankLostTopImpressionShare_;
}
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost top impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_top_impression_share = 145;
* @param value The searchRankLostTopImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchRankLostTopImpressionShare(double value) {
bitField3_ |= 0x00000010;
searchRankLostTopImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The number estimating how often your ad didn't show anywhere above the
* organic search results due to poor Ad Rank.
* Note: Search rank lost top impression share is reported in the range of 0
* to 0.9. Any value above 0.9 is reported as 0.9001.
*
*
* optional double search_rank_lost_top_impression_share = 145;
* @return This builder for chaining.
*/
public Builder clearSearchRankLostTopImpressionShare() {
bitField3_ = (bitField3_ & ~0x00000010);
searchRankLostTopImpressionShare_ = 0D;
onChanged();
return this;
}
private double searchTopImpressionShare_ ;
/**
*
* The impressions you've received in the top location (anywhere above the
* organic search results) compared to the estimated number of impressions you
* were eligible to receive in the top location.
* Note: Search top impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_top_impression_share = 146;
* @return Whether the searchTopImpressionShare field is set.
*/
@java.lang.Override
public boolean hasSearchTopImpressionShare() {
return ((bitField3_ & 0x00000020) != 0);
}
/**
*
* The impressions you've received in the top location (anywhere above the
* organic search results) compared to the estimated number of impressions you
* were eligible to receive in the top location.
* Note: Search top impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_top_impression_share = 146;
* @return The searchTopImpressionShare.
*/
@java.lang.Override
public double getSearchTopImpressionShare() {
return searchTopImpressionShare_;
}
/**
*
* The impressions you've received in the top location (anywhere above the
* organic search results) compared to the estimated number of impressions you
* were eligible to receive in the top location.
* Note: Search top impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_top_impression_share = 146;
* @param value The searchTopImpressionShare to set.
* @return This builder for chaining.
*/
public Builder setSearchTopImpressionShare(double value) {
bitField3_ |= 0x00000020;
searchTopImpressionShare_ = value;
onChanged();
return this;
}
/**
*
* The impressions you've received in the top location (anywhere above the
* organic search results) compared to the estimated number of impressions you
* were eligible to receive in the top location.
* Note: Search top impression share is reported in the range of 0.1 to 1. Any
* value below 0.1 is reported as 0.0999.
*
*
* optional double search_top_impression_share = 146;
* @return This builder for chaining.
*/
public Builder clearSearchTopImpressionShare() {
bitField3_ = (bitField3_ & ~0x00000020);
searchTopImpressionShare_ = 0D;
onChanged();
return this;
}
private long speedScore_ ;
/**
*
* A measure of how quickly your page loads after clicks on your mobile ads.
* The score is a range from 1 to 10, 10 being the fastest.
*
*
* optional int64 speed_score = 147;
* @return Whether the speedScore field is set.
*/
@java.lang.Override
public boolean hasSpeedScore() {
return ((bitField3_ & 0x00000040) != 0);
}
/**
*
* A measure of how quickly your page loads after clicks on your mobile ads.
* The score is a range from 1 to 10, 10 being the fastest.
*
*
* optional int64 speed_score = 147;
* @return The speedScore.
*/
@java.lang.Override
public long getSpeedScore() {
return speedScore_;
}
/**
*
* A measure of how quickly your page loads after clicks on your mobile ads.
* The score is a range from 1 to 10, 10 being the fastest.
*
*
* optional int64 speed_score = 147;
* @param value The speedScore to set.
* @return This builder for chaining.
*/
public Builder setSpeedScore(long value) {
bitField3_ |= 0x00000040;
speedScore_ = value;
onChanged();
return this;
}
/**
*
* A measure of how quickly your page loads after clicks on your mobile ads.
* The score is a range from 1 to 10, 10 being the fastest.
*
*
* optional int64 speed_score = 147;
* @return This builder for chaining.
*/
public Builder clearSpeedScore() {
bitField3_ = (bitField3_ & ~0x00000040);
speedScore_ = 0L;
onChanged();
return this;
}
private double topImpressionPercentage_ ;
/**
*
* The percent of your ad impressions that are shown anywhere above the
* organic search results.
*
*
* optional double top_impression_percentage = 148;
* @return Whether the topImpressionPercentage field is set.
*/
@java.lang.Override
public boolean hasTopImpressionPercentage() {
return ((bitField3_ & 0x00000080) != 0);
}
/**
*
* The percent of your ad impressions that are shown anywhere above the
* organic search results.
*
*
* optional double top_impression_percentage = 148;
* @return The topImpressionPercentage.
*/
@java.lang.Override
public double getTopImpressionPercentage() {
return topImpressionPercentage_;
}
/**
*
* The percent of your ad impressions that are shown anywhere above the
* organic search results.
*
*
* optional double top_impression_percentage = 148;
* @param value The topImpressionPercentage to set.
* @return This builder for chaining.
*/
public Builder setTopImpressionPercentage(double value) {
bitField3_ |= 0x00000080;
topImpressionPercentage_ = value;
onChanged();
return this;
}
/**
*
* The percent of your ad impressions that are shown anywhere above the
* organic search results.
*
*
* optional double top_impression_percentage = 148;
* @return This builder for chaining.
*/
public Builder clearTopImpressionPercentage() {
bitField3_ = (bitField3_ & ~0x00000080);
topImpressionPercentage_ = 0D;
onChanged();
return this;
}
private double validAcceleratedMobilePagesClicksPercentage_ ;
/**
*
* The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages
* that reach a valid AMP page.
*
*
* optional double valid_accelerated_mobile_pages_clicks_percentage = 149;
* @return Whether the validAcceleratedMobilePagesClicksPercentage field is set.
*/
@java.lang.Override
public boolean hasValidAcceleratedMobilePagesClicksPercentage() {
return ((bitField3_ & 0x00000100) != 0);
}
/**
*
* The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages
* that reach a valid AMP page.
*
*
* optional double valid_accelerated_mobile_pages_clicks_percentage = 149;
* @return The validAcceleratedMobilePagesClicksPercentage.
*/
@java.lang.Override
public double getValidAcceleratedMobilePagesClicksPercentage() {
return validAcceleratedMobilePagesClicksPercentage_;
}
/**
*
* The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages
* that reach a valid AMP page.
*
*
* optional double valid_accelerated_mobile_pages_clicks_percentage = 149;
* @param value The validAcceleratedMobilePagesClicksPercentage to set.
* @return This builder for chaining.
*/
public Builder setValidAcceleratedMobilePagesClicksPercentage(double value) {
bitField3_ |= 0x00000100;
validAcceleratedMobilePagesClicksPercentage_ = value;
onChanged();
return this;
}
/**
*
* The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages
* that reach a valid AMP page.
*
*
* optional double valid_accelerated_mobile_pages_clicks_percentage = 149;
* @return This builder for chaining.
*/
public Builder clearValidAcceleratedMobilePagesClicksPercentage() {
bitField3_ = (bitField3_ & ~0x00000100);
validAcceleratedMobilePagesClicksPercentage_ = 0D;
onChanged();
return this;
}
private double valuePerAllConversions_ ;
/**
*
* The value of all conversions divided by the number of all conversions.
*
*
* optional double value_per_all_conversions = 150;
* @return Whether the valuePerAllConversions field is set.
*/
@java.lang.Override
public boolean hasValuePerAllConversions() {
return ((bitField3_ & 0x00000200) != 0);
}
/**
*
* The value of all conversions divided by the number of all conversions.
*
*
* optional double value_per_all_conversions = 150;
* @return The valuePerAllConversions.
*/
@java.lang.Override
public double getValuePerAllConversions() {
return valuePerAllConversions_;
}
/**
*
* The value of all conversions divided by the number of all conversions.
*
*
* optional double value_per_all_conversions = 150;
* @param value The valuePerAllConversions to set.
* @return This builder for chaining.
*/
public Builder setValuePerAllConversions(double value) {
bitField3_ |= 0x00000200;
valuePerAllConversions_ = value;
onChanged();
return this;
}
/**
*
* The value of all conversions divided by the number of all conversions.
*
*
* optional double value_per_all_conversions = 150;
* @return This builder for chaining.
*/
public Builder clearValuePerAllConversions() {
bitField3_ = (bitField3_ & ~0x00000200);
valuePerAllConversions_ = 0D;
onChanged();
return this;
}
private double valuePerAllConversionsByConversionDate_ ;
/**
*
* The value of all conversions divided by the number of all conversions. When
* this column is selected with date, the values in date column means the
* conversion date. Details for the by_conversion_date columns are available
* at https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_all_conversions_by_conversion_date = 244;
* @return Whether the valuePerAllConversionsByConversionDate field is set.
*/
@java.lang.Override
public boolean hasValuePerAllConversionsByConversionDate() {
return ((bitField3_ & 0x00000400) != 0);
}
/**
*
* The value of all conversions divided by the number of all conversions. When
* this column is selected with date, the values in date column means the
* conversion date. Details for the by_conversion_date columns are available
* at https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_all_conversions_by_conversion_date = 244;
* @return The valuePerAllConversionsByConversionDate.
*/
@java.lang.Override
public double getValuePerAllConversionsByConversionDate() {
return valuePerAllConversionsByConversionDate_;
}
/**
*
* The value of all conversions divided by the number of all conversions. When
* this column is selected with date, the values in date column means the
* conversion date. Details for the by_conversion_date columns are available
* at https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_all_conversions_by_conversion_date = 244;
* @param value The valuePerAllConversionsByConversionDate to set.
* @return This builder for chaining.
*/
public Builder setValuePerAllConversionsByConversionDate(double value) {
bitField3_ |= 0x00000400;
valuePerAllConversionsByConversionDate_ = value;
onChanged();
return this;
}
/**
*
* The value of all conversions divided by the number of all conversions. When
* this column is selected with date, the values in date column means the
* conversion date. Details for the by_conversion_date columns are available
* at https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_all_conversions_by_conversion_date = 244;
* @return This builder for chaining.
*/
public Builder clearValuePerAllConversionsByConversionDate() {
bitField3_ = (bitField3_ & ~0x00000400);
valuePerAllConversionsByConversionDate_ = 0D;
onChanged();
return this;
}
private double valuePerConversion_ ;
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double value_per_conversion = 151;
* @return Whether the valuePerConversion field is set.
*/
@java.lang.Override
public boolean hasValuePerConversion() {
return ((bitField3_ & 0x00000800) != 0);
}
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double value_per_conversion = 151;
* @return The valuePerConversion.
*/
@java.lang.Override
public double getValuePerConversion() {
return valuePerConversion_;
}
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double value_per_conversion = 151;
* @param value The valuePerConversion to set.
* @return This builder for chaining.
*/
public Builder setValuePerConversion(double value) {
bitField3_ |= 0x00000800;
valuePerConversion_ = value;
onChanged();
return this;
}
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions.
*
*
* optional double value_per_conversion = 151;
* @return This builder for chaining.
*/
public Builder clearValuePerConversion() {
bitField3_ = (bitField3_ & ~0x00000800);
valuePerConversion_ = 0D;
onChanged();
return this;
}
private double valuePerConversionsByConversionDate_ ;
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions. When this column is selected with
* date, the values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_conversions_by_conversion_date = 245;
* @return Whether the valuePerConversionsByConversionDate field is set.
*/
@java.lang.Override
public boolean hasValuePerConversionsByConversionDate() {
return ((bitField3_ & 0x00001000) != 0);
}
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions. When this column is selected with
* date, the values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_conversions_by_conversion_date = 245;
* @return The valuePerConversionsByConversionDate.
*/
@java.lang.Override
public double getValuePerConversionsByConversionDate() {
return valuePerConversionsByConversionDate_;
}
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions. When this column is selected with
* date, the values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_conversions_by_conversion_date = 245;
* @param value The valuePerConversionsByConversionDate to set.
* @return This builder for chaining.
*/
public Builder setValuePerConversionsByConversionDate(double value) {
bitField3_ |= 0x00001000;
valuePerConversionsByConversionDate_ = value;
onChanged();
return this;
}
/**
*
* The value of conversions divided by the number of conversions. This only
* includes conversion actions which include_in_conversions_metric attribute
* is set to true. If you use conversion-based bidding, your bid strategies
* will optimize for these conversions. When this column is selected with
* date, the values in date column means the conversion date. Details for the
* by_conversion_date columns are available at
* https://support.google.com/google-ads/answer/9549009.
*
*
* optional double value_per_conversions_by_conversion_date = 245;
* @return This builder for chaining.
*/
public Builder clearValuePerConversionsByConversionDate() {
bitField3_ = (bitField3_ & ~0x00001000);
valuePerConversionsByConversionDate_ = 0D;
onChanged();
return this;
}
private double valuePerCurrentModelAttributedConversion_ ;
/**
*
* The value of current model attributed conversions divided by the number of
* the conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double value_per_current_model_attributed_conversion = 152;
* @return Whether the valuePerCurrentModelAttributedConversion field is set.
*/
@java.lang.Override
public boolean hasValuePerCurrentModelAttributedConversion() {
return ((bitField3_ & 0x00002000) != 0);
}
/**
*
* The value of current model attributed conversions divided by the number of
* the conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double value_per_current_model_attributed_conversion = 152;
* @return The valuePerCurrentModelAttributedConversion.
*/
@java.lang.Override
public double getValuePerCurrentModelAttributedConversion() {
return valuePerCurrentModelAttributedConversion_;
}
/**
*
* The value of current model attributed conversions divided by the number of
* the conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double value_per_current_model_attributed_conversion = 152;
* @param value The valuePerCurrentModelAttributedConversion to set.
* @return This builder for chaining.
*/
public Builder setValuePerCurrentModelAttributedConversion(double value) {
bitField3_ |= 0x00002000;
valuePerCurrentModelAttributedConversion_ = value;
onChanged();
return this;
}
/**
*
* The value of current model attributed conversions divided by the number of
* the conversions. This only includes conversion actions which
* include_in_conversions_metric attribute is set to true. If you use
* conversion-based bidding, your bid strategies will optimize for these
* conversions.
*
*
* optional double value_per_current_model_attributed_conversion = 152;
* @return This builder for chaining.
*/
public Builder clearValuePerCurrentModelAttributedConversion() {
bitField3_ = (bitField3_ & ~0x00002000);
valuePerCurrentModelAttributedConversion_ = 0D;
onChanged();
return this;
}
private double videoQuartileP100Rate_ ;
/**
*
* Percentage of impressions where the viewer watched all of your video.
*
*
* optional double video_quartile_p100_rate = 132;
* @return Whether the videoQuartileP100Rate field is set.
*/
@java.lang.Override
public boolean hasVideoQuartileP100Rate() {
return ((bitField3_ & 0x00004000) != 0);
}
/**
*
* Percentage of impressions where the viewer watched all of your video.
*
*
* optional double video_quartile_p100_rate = 132;
* @return The videoQuartileP100Rate.
*/
@java.lang.Override
public double getVideoQuartileP100Rate() {
return videoQuartileP100Rate_;
}
/**
*
* Percentage of impressions where the viewer watched all of your video.
*
*
* optional double video_quartile_p100_rate = 132;
* @param value The videoQuartileP100Rate to set.
* @return This builder for chaining.
*/
public Builder setVideoQuartileP100Rate(double value) {
bitField3_ |= 0x00004000;
videoQuartileP100Rate_ = value;
onChanged();
return this;
}
/**
*
* Percentage of impressions where the viewer watched all of your video.
*
*
* optional double video_quartile_p100_rate = 132;
* @return This builder for chaining.
*/
public Builder clearVideoQuartileP100Rate() {
bitField3_ = (bitField3_ & ~0x00004000);
videoQuartileP100Rate_ = 0D;
onChanged();
return this;
}
private double videoQuartileP25Rate_ ;
/**
*
* Percentage of impressions where the viewer watched 25% of your video.
*
*
* optional double video_quartile_p25_rate = 133;
* @return Whether the videoQuartileP25Rate field is set.
*/
@java.lang.Override
public boolean hasVideoQuartileP25Rate() {
return ((bitField3_ & 0x00008000) != 0);
}
/**
*
* Percentage of impressions where the viewer watched 25% of your video.
*
*
* optional double video_quartile_p25_rate = 133;
* @return The videoQuartileP25Rate.
*/
@java.lang.Override
public double getVideoQuartileP25Rate() {
return videoQuartileP25Rate_;
}
/**
*
* Percentage of impressions where the viewer watched 25% of your video.
*
*
* optional double video_quartile_p25_rate = 133;
* @param value The videoQuartileP25Rate to set.
* @return This builder for chaining.
*/
public Builder setVideoQuartileP25Rate(double value) {
bitField3_ |= 0x00008000;
videoQuartileP25Rate_ = value;
onChanged();
return this;
}
/**
*
* Percentage of impressions where the viewer watched 25% of your video.
*
*
* optional double video_quartile_p25_rate = 133;
* @return This builder for chaining.
*/
public Builder clearVideoQuartileP25Rate() {
bitField3_ = (bitField3_ & ~0x00008000);
videoQuartileP25Rate_ = 0D;
onChanged();
return this;
}
private double videoQuartileP50Rate_ ;
/**
*
* Percentage of impressions where the viewer watched 50% of your video.
*
*
* optional double video_quartile_p50_rate = 134;
* @return Whether the videoQuartileP50Rate field is set.
*/
@java.lang.Override
public boolean hasVideoQuartileP50Rate() {
return ((bitField3_ & 0x00010000) != 0);
}
/**
*
* Percentage of impressions where the viewer watched 50% of your video.
*
*
* optional double video_quartile_p50_rate = 134;
* @return The videoQuartileP50Rate.
*/
@java.lang.Override
public double getVideoQuartileP50Rate() {
return videoQuartileP50Rate_;
}
/**
*
* Percentage of impressions where the viewer watched 50% of your video.
*
*
* optional double video_quartile_p50_rate = 134;
* @param value The videoQuartileP50Rate to set.
* @return This builder for chaining.
*/
public Builder setVideoQuartileP50Rate(double value) {
bitField3_ |= 0x00010000;
videoQuartileP50Rate_ = value;
onChanged();
return this;
}
/**
*
* Percentage of impressions where the viewer watched 50% of your video.
*
*
* optional double video_quartile_p50_rate = 134;
* @return This builder for chaining.
*/
public Builder clearVideoQuartileP50Rate() {
bitField3_ = (bitField3_ & ~0x00010000);
videoQuartileP50Rate_ = 0D;
onChanged();
return this;
}
private double videoQuartileP75Rate_ ;
/**
*
* Percentage of impressions where the viewer watched 75% of your video.
*
*
* optional double video_quartile_p75_rate = 135;
* @return Whether the videoQuartileP75Rate field is set.
*/
@java.lang.Override
public boolean hasVideoQuartileP75Rate() {
return ((bitField3_ & 0x00020000) != 0);
}
/**
*
* Percentage of impressions where the viewer watched 75% of your video.
*
*
* optional double video_quartile_p75_rate = 135;
* @return The videoQuartileP75Rate.
*/
@java.lang.Override
public double getVideoQuartileP75Rate() {
return videoQuartileP75Rate_;
}
/**
*
* Percentage of impressions where the viewer watched 75% of your video.
*
*
* optional double video_quartile_p75_rate = 135;
* @param value The videoQuartileP75Rate to set.
* @return This builder for chaining.
*/
public Builder setVideoQuartileP75Rate(double value) {
bitField3_ |= 0x00020000;
videoQuartileP75Rate_ = value;
onChanged();
return this;
}
/**
*
* Percentage of impressions where the viewer watched 75% of your video.
*
*
* optional double video_quartile_p75_rate = 135;
* @return This builder for chaining.
*/
public Builder clearVideoQuartileP75Rate() {
bitField3_ = (bitField3_ & ~0x00020000);
videoQuartileP75Rate_ = 0D;
onChanged();
return this;
}
private double videoViewRate_ ;
/**
*
* The number of views your TrueView video ad receives divided by its number
* of impressions, including thumbnail impressions for TrueView in-display
* ads.
*
*
* optional double video_view_rate = 153;
* @return Whether the videoViewRate field is set.
*/
@java.lang.Override
public boolean hasVideoViewRate() {
return ((bitField3_ & 0x00040000) != 0);
}
/**
*
* The number of views your TrueView video ad receives divided by its number
* of impressions, including thumbnail impressions for TrueView in-display
* ads.
*
*
* optional double video_view_rate = 153;
* @return The videoViewRate.
*/
@java.lang.Override
public double getVideoViewRate() {
return videoViewRate_;
}
/**
*
* The number of views your TrueView video ad receives divided by its number
* of impressions, including thumbnail impressions for TrueView in-display
* ads.
*
*
* optional double video_view_rate = 153;
* @param value The videoViewRate to set.
* @return This builder for chaining.
*/
public Builder setVideoViewRate(double value) {
bitField3_ |= 0x00040000;
videoViewRate_ = value;
onChanged();
return this;
}
/**
*
* The number of views your TrueView video ad receives divided by its number
* of impressions, including thumbnail impressions for TrueView in-display
* ads.
*
*
* optional double video_view_rate = 153;
* @return This builder for chaining.
*/
public Builder clearVideoViewRate() {
bitField3_ = (bitField3_ & ~0x00040000);
videoViewRate_ = 0D;
onChanged();
return this;
}
private long videoViews_ ;
/**
*
* The number of times your video ads were viewed.
*
*
* optional int64 video_views = 154;
* @return Whether the videoViews field is set.
*/
@java.lang.Override
public boolean hasVideoViews() {
return ((bitField3_ & 0x00080000) != 0);
}
/**
*
* The number of times your video ads were viewed.
*
*
* optional int64 video_views = 154;
* @return The videoViews.
*/
@java.lang.Override
public long getVideoViews() {
return videoViews_;
}
/**
*
* The number of times your video ads were viewed.
*
*
* optional int64 video_views = 154;
* @param value The videoViews to set.
* @return This builder for chaining.
*/
public Builder setVideoViews(long value) {
bitField3_ |= 0x00080000;
videoViews_ = value;
onChanged();
return this;
}
/**
*
* The number of times your video ads were viewed.
*
*
* optional int64 video_views = 154;
* @return This builder for chaining.
*/
public Builder clearVideoViews() {
bitField3_ = (bitField3_ & ~0x00080000);
videoViews_ = 0L;
onChanged();
return this;
}
private long viewThroughConversions_ ;
/**
*
* The total number of view-through conversions.
* These happen when a customer sees an image or rich media ad, then later
* completes a conversion on your site without interacting with (for example,
* clicking on) another ad.
*
*
* optional int64 view_through_conversions = 155;
* @return Whether the viewThroughConversions field is set.
*/
@java.lang.Override
public boolean hasViewThroughConversions() {
return ((bitField3_ & 0x00100000) != 0);
}
/**
*
* The total number of view-through conversions.
* These happen when a customer sees an image or rich media ad, then later
* completes a conversion on your site without interacting with (for example,
* clicking on) another ad.
*
*
* optional int64 view_through_conversions = 155;
* @return The viewThroughConversions.
*/
@java.lang.Override
public long getViewThroughConversions() {
return viewThroughConversions_;
}
/**
*
* The total number of view-through conversions.
* These happen when a customer sees an image or rich media ad, then later
* completes a conversion on your site without interacting with (for example,
* clicking on) another ad.
*
*
* optional int64 view_through_conversions = 155;
* @param value The viewThroughConversions to set.
* @return This builder for chaining.
*/
public Builder setViewThroughConversions(long value) {
bitField3_ |= 0x00100000;
viewThroughConversions_ = value;
onChanged();
return this;
}
/**
*
* The total number of view-through conversions.
* These happen when a customer sees an image or rich media ad, then later
* completes a conversion on your site without interacting with (for example,
* clicking on) another ad.
*
*
* optional int64 view_through_conversions = 155;
* @return This builder for chaining.
*/
public Builder clearViewThroughConversions() {
bitField3_ = (bitField3_ & ~0x00100000);
viewThroughConversions_ = 0L;
onChanged();
return this;
}
private long skAdNetworkConversions_ ;
/**
*
* The number of iOS Store Kit Ad Network conversions.
*
*
* int64 sk_ad_network_conversions = 246;
* @return The skAdNetworkConversions.
*/
@java.lang.Override
public long getSkAdNetworkConversions() {
return skAdNetworkConversions_;
}
/**
*
* The number of iOS Store Kit Ad Network conversions.
*
*
* int64 sk_ad_network_conversions = 246;
* @param value The skAdNetworkConversions to set.
* @return This builder for chaining.
*/
public Builder setSkAdNetworkConversions(long value) {
skAdNetworkConversions_ = value;
onChanged();
return this;
}
/**
*
* The number of iOS Store Kit Ad Network conversions.
*
*
* int64 sk_ad_network_conversions = 246;
* @return This builder for chaining.
*/
public Builder clearSkAdNetworkConversions() {
skAdNetworkConversions_ = 0L;
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.v10.common.Metrics)
}
// @@protoc_insertion_point(class_scope:google.ads.googleads.v10.common.Metrics)
private static final com.google.ads.googleads.v10.common.Metrics DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new com.google.ads.googleads.v10.common.Metrics();
}
public static com.google.ads.googleads.v10.common.Metrics getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public Metrics 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.v10.common.Metrics getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy