1 /* 2 * Copyright (C) 2022 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.android.adservices.service.stats; 18 19 import com.google.auto.value.AutoValue; 20 21 /** Class for runAdBiddingPerCA process reported stats. */ 22 @AutoValue 23 public abstract class RunAdBiddingPerCAProcessReportedStats { 24 /** @return num of ads for bidding. */ getNumOfAdsForBidding()25 public abstract int getNumOfAdsForBidding(); 26 27 /** @return runAdBiddingPerCA latency in milliseconds. */ getRunAdBiddingPerCaLatencyInMillis()28 public abstract int getRunAdBiddingPerCaLatencyInMillis(); 29 30 /** @return runAdBiddingPerCA result code. */ getRunAdBiddingPerCaResultCode()31 public abstract int getRunAdBiddingPerCaResultCode(); 32 33 /** @return getBuyerDecisionLogic script latency in milliseconds. */ getGetBuyerDecisionLogicLatencyInMillis()34 public abstract int getGetBuyerDecisionLogicLatencyInMillis(); 35 36 /** @return getBuyerDecisionLogic result code. */ getGetBuyerDecisionLogicResultCode()37 public abstract int getGetBuyerDecisionLogicResultCode(); 38 39 /** @return getBuyerDecisionLogic script type. */ getBuyerDecisionLogicScriptType()40 public abstract int getBuyerDecisionLogicScriptType(); 41 42 /** @return fetched buyer decision logic script size in bytes. */ getFetchedBuyerDecisionLogicScriptSizeInBytes()43 public abstract int getFetchedBuyerDecisionLogicScriptSizeInBytes(); 44 45 /** @return num of keys of trusted bidding signals. */ getNumOfKeysOfTrustedBiddingSignals()46 public abstract int getNumOfKeysOfTrustedBiddingSignals(); 47 48 /** @return fetched trusted bidding signals data size in bytes. */ getFetchedTrustedBiddingSignalsDataSizeInBytes()49 public abstract int getFetchedTrustedBiddingSignalsDataSizeInBytes(); 50 51 /** @return getTrustedBiddingSignals latency in milliseconds. */ getGetTrustedBiddingSignalsLatencyInMillis()52 public abstract int getGetTrustedBiddingSignalsLatencyInMillis(); 53 54 /** @return getTrustedBiddingSignals result code. */ getGetTrustedBiddingSignalsResultCode()55 public abstract int getGetTrustedBiddingSignalsResultCode(); 56 57 /** @return the total generateBids script execution time when runBidding() is called. */ getGenerateBidsLatencyInMillis()58 public abstract int getGenerateBidsLatencyInMillis(); 59 60 /** @return the overall latency of runBidding(). */ getRunBiddingLatencyInMillis()61 public abstract int getRunBiddingLatencyInMillis(); 62 63 /** @return the runBidding() result code. */ getRunBiddingResultCode()64 public abstract int getRunBiddingResultCode(); 65 66 /** 67 * @return the runAdBiddingPerCaReturnedAdCost. 68 */ getRunAdBiddingPerCaReturnedAdCost()69 public abstract boolean getRunAdBiddingPerCaReturnedAdCost(); 70 71 /** 72 * @return the generateBidBuyerAdditionalSignalsContainedDataVersion. 73 */ getGenerateBidBuyerAdditionalSignalsContainedDataVersion()74 public abstract boolean getGenerateBidBuyerAdditionalSignalsContainedDataVersion(); 75 76 /** 77 * @return the GenerateBid JsScript result code. 78 */ 79 @AdsRelevanceStatusUtils.JsRunStatus getGenerateBidJsScriptResultCode()80 public abstract int getGenerateBidJsScriptResultCode(); 81 82 /** @return generic builder. */ builder()83 static Builder builder() { 84 return new AutoValue_RunAdBiddingPerCAProcessReportedStats.Builder(); 85 } 86 87 /** Builder class for {@link RunAdBiddingPerCAProcessReportedStats}. */ 88 @AutoValue.Builder 89 abstract static class Builder { setNumOfAdsForBidding(int value)90 abstract Builder setNumOfAdsForBidding(int value); 91 setRunAdBiddingPerCaLatencyInMillis(int value)92 abstract Builder setRunAdBiddingPerCaLatencyInMillis(int value); 93 setRunAdBiddingPerCaResultCode(int value)94 abstract Builder setRunAdBiddingPerCaResultCode(int value); 95 setGetBuyerDecisionLogicLatencyInMillis(int value)96 abstract Builder setGetBuyerDecisionLogicLatencyInMillis(int value); 97 setGetBuyerDecisionLogicResultCode(int value)98 abstract Builder setGetBuyerDecisionLogicResultCode(int value); 99 setBuyerDecisionLogicScriptType(int value)100 abstract Builder setBuyerDecisionLogicScriptType(int value); 101 setFetchedBuyerDecisionLogicScriptSizeInBytes(int value)102 abstract Builder setFetchedBuyerDecisionLogicScriptSizeInBytes(int value); 103 setNumOfKeysOfTrustedBiddingSignals(int value)104 abstract Builder setNumOfKeysOfTrustedBiddingSignals(int value); 105 setFetchedTrustedBiddingSignalsDataSizeInBytes(int value)106 abstract Builder setFetchedTrustedBiddingSignalsDataSizeInBytes(int value); 107 setGetTrustedBiddingSignalsLatencyInMillis(int value)108 abstract Builder setGetTrustedBiddingSignalsLatencyInMillis(int value); 109 setGetTrustedBiddingSignalsResultCode(int value)110 abstract Builder setGetTrustedBiddingSignalsResultCode(int value); 111 setGenerateBidsLatencyInMillis(int value)112 abstract Builder setGenerateBidsLatencyInMillis(int value); 113 setRunBiddingLatencyInMillis(int value)114 abstract Builder setRunBiddingLatencyInMillis(int value); 115 setRunBiddingResultCode(int value)116 abstract Builder setRunBiddingResultCode(int value); 117 setRunAdBiddingPerCaReturnedAdCost(boolean value)118 abstract Builder setRunAdBiddingPerCaReturnedAdCost(boolean value); 119 setGenerateBidBuyerAdditionalSignalsContainedDataVersion(boolean value)120 abstract Builder setGenerateBidBuyerAdditionalSignalsContainedDataVersion(boolean value); 121 setGenerateBidJsScriptResultCode( @dsRelevanceStatusUtils.JsRunStatus int value)122 abstract Builder setGenerateBidJsScriptResultCode( 123 @AdsRelevanceStatusUtils.JsRunStatus int value); 124 build()125 abstract RunAdBiddingPerCAProcessReportedStats build(); 126 } 127 } 128