From f14509d1fb5a1f09c86203a1084aed9e4fdd88ab Mon Sep 17 00:00:00 2001 From: Serhii Kolomiiets Date: Mon, 27 Nov 2023 20:05:39 +0200 Subject: [PATCH] Hotfix --- .../server/auction/BidResponseCreator.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/prebid/server/auction/BidResponseCreator.java b/src/main/java/org/prebid/server/auction/BidResponseCreator.java index e33748c6b7f..6aeaec15633 100644 --- a/src/main/java/org/prebid/server/auction/BidResponseCreator.java +++ b/src/main/java/org/prebid/server/auction/BidResponseCreator.java @@ -121,11 +121,6 @@ public class BidResponseCreator { - /** - * Default prefix for targeting keys. - * Used in cases, when correspond value is missing in account auction configuration or bid request ext. - */ - private static final String DEFAULT_KEY_PREFIX = "hb"; private static final String CACHE = "cache"; private static final String PREBID_EXT = "prebid"; private static final Integer DEFAULT_BID_LIMIT_MIN = 1; @@ -1664,8 +1659,8 @@ private TargetingKeywordsCreator createKeywordsCreator(ExtRequestTargeting targe JsonNode priceGranularity, BidRequest bidRequest, Account account) { - int resolvedTruncateAttrChars = resolveTruncateAttrChars(targeting, account); - String resolveKeyPrefix = resolveKeyPrefix(bidRequest, account, resolvedTruncateAttrChars); + final int resolvedTruncateAttrChars = resolveTruncateAttrChars(targeting, account); + final String resolveKeyPrefix = resolveKeyPrefix(bidRequest, account, resolvedTruncateAttrChars); return TargetingKeywordsCreator.create( parsePriceGranularity(priceGranularity), BooleanUtils.toBoolean(targeting.getIncludewinners()), @@ -1694,6 +1689,12 @@ private int resolveTruncateAttrChars(ExtRequestTargeting targeting, Account acco truncateAttrChars); } + /** + * Returns targeting key prefix. + * Default prefix for targeting keys used in cases, + * when correspond value is missing in account auction configuration or bid request ext, + * or may compose keys longer than 'settings.targeting.truncate-attr-chars' value. + */ private static String resolveKeyPrefix(BidRequest bidRequest, Account account, int truncateAttrChars) { final String prefix = Optional.of(bidRequest) .map(BidRequest::getExt) @@ -1705,7 +1706,7 @@ private static String resolveKeyPrefix(BidRequest bidRequest, Account account, i .map(AccountAuctionConfig::getTargeting) .map(AccountTargetingConfig::getPrefix) .orElse(null)); - return StringUtils.isNotEmpty(prefix) && prefix.length() + 11 < truncateAttrChars ? prefix : DEFAULT_KEY_PREFIX; + return StringUtils.isNotEmpty(prefix) && prefix.length() + 11 < truncateAttrChars ? prefix : "hb"; } private static Integer truncateAttrCharsOrNull(Integer value) {