Skip to content

Commit

Permalink
Add adUnitCode to the imp.ext.prebid exception list
Browse files Browse the repository at this point in the history
  • Loading branch information
AntoxaAntoxic committed Jan 15, 2025
1 parent be1b518 commit 6c1e3e4
Show file tree
Hide file tree
Showing 6 changed files with 82 additions and 90 deletions.
9 changes: 4 additions & 5 deletions src/main/java/org/prebid/server/auction/ExchangeService.java
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@
import org.prebid.server.proto.openrtb.ext.request.ExtApp;
import org.prebid.server.proto.openrtb.ext.request.ExtBidderConfigOrtb;
import org.prebid.server.proto.openrtb.ext.request.ExtDooh;
import org.prebid.server.proto.openrtb.ext.request.ExtImpPrebid;
import org.prebid.server.proto.openrtb.ext.request.ExtImpPrebidBidderFields;
import org.prebid.server.proto.openrtb.ext.request.ExtImpPrebidFloors;
import org.prebid.server.proto.openrtb.ext.request.ExtRequest;
import org.prebid.server.proto.openrtb.ext.request.ExtRequestPrebid;
Expand Down Expand Up @@ -906,7 +906,7 @@ private JsonNode prepareImpExt(JsonNode extImpPrebidNode, BigDecimal adjustedFlo
return null;
}

final ExtImpPrebid extImpPrebid = extImpPrebid(extImpPrebidNode);
final ExtImpPrebidBidderFields extImpPrebid = extImpPrebid(extImpPrebidNode);
final ExtImpPrebidFloors floors = extImpPrebid.getFloors();
final ExtImpPrebidFloors updatedFloors = floors != null
? ExtImpPrebidFloors.of(floors.getFloorRule(),
Expand All @@ -918,13 +918,12 @@ private JsonNode prepareImpExt(JsonNode extImpPrebidNode, BigDecimal adjustedFlo

return mapper.mapper().valueToTree(extImpPrebid(extImpPrebidNode).toBuilder()
.floors(updatedFloors)
.bidder(null)
.build());
}

private ExtImpPrebid extImpPrebid(JsonNode extImpPrebid) {
private ExtImpPrebidBidderFields extImpPrebid(JsonNode extImpPrebid) {
try {
return mapper.mapper().treeToValue(extImpPrebid, ExtImpPrebid.class);
return mapper.mapper().treeToValue(extImpPrebid, ExtImpPrebidBidderFields.class);
} catch (JsonProcessingException e) {
throw new PreBidException("Error decoding imp.ext.prebid: " + e.getMessage(), e);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ public class Ortb2ImplicitParametersResolver {
private static final String BIDDER_EXT = "bidder";

private static final Set<String> IMP_EXT_NON_BIDDER_FIELDS =
Set.of(PREBID_EXT, "context", "all", "general", "skadn", "data", "gpid", "tid", "ae", "adunitcode");
Set.of(PREBID_EXT, "context", "all", "general", "skadn", "data", "gpid", "tid", "ae");
private static final String OVERRIDE_SOURCE_ID_TEMPLATE = "{{UUID}}";

private final boolean shouldCacheOnlyWinningBids;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,62 +3,28 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
import lombok.Builder;
import lombok.Value;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;

import java.util.List;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid
*/
@Builder(toBuilder = true)
@Value
public class ExtImpPrebid {
@Data
@SuperBuilder(toBuilder = true)
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
public class ExtImpPrebid extends ExtImpPrebidBidderFields {

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.storedrequest
*/
ExtStoredRequest storedrequest;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.storedauctionresponse
*/
@JsonProperty("storedauctionresponse")
ExtStoredAuctionResponse storedAuctionResponse;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.storedbidresponse
*/
@JsonProperty("storedbidresponse")
List<ExtStoredBidResponse> storedBidResponse;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.options
*/
ExtOptions options;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.is_rewarded_inventory
*/
Integer isRewardedInventory;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.BIDDER
*/
ObjectNode bidder;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.floors
*/
ExtImpPrebidFloors floors;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.passthrough
*/
JsonNode passthrough;

/**
* Defines the contract for bidrequest.imp[i].ext.prebid.imp
*/
ObjectNode imp;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package org.prebid.server.proto.openrtb.ext.request;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;

@Data
@SuperBuilder(toBuilder = true)
@NoArgsConstructor
public class ExtImpPrebidBidderFields {

ExtStoredRequest storedrequest;

ExtOptions options;

Integer isRewardedInventory;

ExtImpPrebidFloors floors;

@JsonProperty("adunitcode")
String adUnitCode;
}
Loading

0 comments on commit 6c1e3e4

Please sign in to comment.