diff --git a/src/main/java/org/prebid/server/bidder/mobkoi/MobkoiBidder.java b/src/main/java/org/prebid/server/bidder/mobkoi/MobkoiBidder.java index 97cd481b235..dbf82da1b4f 100644 --- a/src/main/java/org/prebid/server/bidder/mobkoi/MobkoiBidder.java +++ b/src/main/java/org/prebid/server/bidder/mobkoi/MobkoiBidder.java @@ -24,8 +24,6 @@ import org.prebid.server.util.BidderUtil; import org.prebid.server.util.HttpUtil; -import java.net.URI; -import java.net.URISyntaxException; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -60,11 +58,9 @@ public Result>> makeHttpRequests(BidRequest bidRequ return Result.withError(BidderError.badInput(e.getMessage())); } - final String selectedEndpointUrl = resolveEndpoint(extImpMobkoi.getAdServerBaseUrl()); - return Result.withValue(BidderUtil.defaultRequest( modifyBidRequest(bidRequest, modifiedFirstImp), - selectedEndpointUrl, + endpointUrl, mapper)); } @@ -91,19 +87,6 @@ private Imp modifyImp(Imp firstImp, ExtImpMobkoi extImpMobkoi) { + "req.imp[0].ext.Bidder.placementId"); } - // url is already validated with `bidder-params` json schema - private String resolveEndpoint(String customUri) { - if (customUri == null) { - return endpointUrl; - } - try { - final URI uri = new URI(customUri); - return uri.resolve("/bid").toString(); - } catch (IllegalArgumentException | URISyntaxException e) { - return endpointUrl; - } - } - private static BidRequest modifyBidRequest(BidRequest bidRequest, Imp modifiedFirstImp) { final User user = modifyUser(bidRequest.getUser()); final List imps = updateFirstImpWith(bidRequest.getImp(), modifiedFirstImp); diff --git a/src/main/java/org/prebid/server/proto/openrtb/ext/request/mobkoi/ExtImpMobkoi.java b/src/main/java/org/prebid/server/proto/openrtb/ext/request/mobkoi/ExtImpMobkoi.java index 0faa3d1efc8..ac8009a76d2 100644 --- a/src/main/java/org/prebid/server/proto/openrtb/ext/request/mobkoi/ExtImpMobkoi.java +++ b/src/main/java/org/prebid/server/proto/openrtb/ext/request/mobkoi/ExtImpMobkoi.java @@ -8,7 +8,4 @@ public class ExtImpMobkoi { @JsonProperty("placementId") String placementId; - - @JsonProperty("adServerBaseUrl") - String adServerBaseUrl; } diff --git a/src/main/resources/static/bidder-params/mobkoi.json b/src/main/resources/static/bidder-params/mobkoi.json index 8286229b035..6858a48a679 100644 --- a/src/main/resources/static/bidder-params/mobkoi.json +++ b/src/main/resources/static/bidder-params/mobkoi.json @@ -7,11 +7,6 @@ "placementId": { "type": "string", "description": "Placement ID" - }, - "adServerBaseUrl": { - "type": "string", - "description": "Mobkoi's ad server url", - "pattern": "^https?://[^.]+\\.mobkoi\\.com$" } } } diff --git a/src/test/java/org/prebid/server/bidder/mobkoi/MobkoiBidderTest.java b/src/test/java/org/prebid/server/bidder/mobkoi/MobkoiBidderTest.java index 1c98d21a3ca..7d46ce2a0a8 100644 --- a/src/test/java/org/prebid/server/bidder/mobkoi/MobkoiBidderTest.java +++ b/src/test/java/org/prebid/server/bidder/mobkoi/MobkoiBidderTest.java @@ -63,7 +63,7 @@ public void makeHttpRequestsShouldReturnErrorWhenRequestHasInvalidExtImpression( @Test public void makeHttpRequestsShouldReturnErrorWhenRequestHasMissingTagIdAndPlacementId() { // given - final ObjectNode mobkoiExt = impExt(null, null); + final ObjectNode mobkoiExt = impExt(null); final BidRequest bidRequest = givenBidRequest(impBuilder -> impBuilder.ext(mobkoiExt)); // when @@ -79,7 +79,7 @@ public void makeHttpRequestsShouldReturnErrorWhenRequestHasMissingTagIdAndPlacem @Test public void makeHttpRequestsShouldAddPlacementIdOnlyInFirstImpressionTagId() { // given - final ObjectNode mobkoiExt = impExt("pid", null); + final ObjectNode mobkoiExt = impExt("pid"); final Imp givenImp1 = givenImp(impBuilder -> impBuilder.ext(mobkoiExt)); final Imp givenImp2 = givenImp(identity()); final BidRequest bidRequest = BidRequest.builder().imp(asList(givenImp1, givenImp2)).build(); @@ -95,48 +95,6 @@ public void makeHttpRequestsShouldAddPlacementIdOnlyInFirstImpressionTagId() { .containsExactly("pid", null); } - @Test - public void makeHttpRequestsShouldUseConstructorEndpointWhenNoCustomEndpointIsDefinedInMobkoiExtension() { - // given - final ObjectNode mobkoiExt = impExt("pid", null); - final BidRequest bidRequest = givenBidRequest(impBuilder -> impBuilder.ext(mobkoiExt)); - - // when - final Result>> results = target.makeHttpRequests(bidRequest); - - // then - assertThat(results.getValue()).extracting(HttpRequest::getUri).containsExactly("https://test.endpoint.com/bid"); - assertThat(results.getErrors()).isEmpty(); - } - - @Test - public void makeHttpRequestsShouldConstructWithDefaultEndpointWhenTheCustomURLIsInvalidInMobkoiExtension() { - // given - final ObjectNode mobkoiExt = impExt("pid", "invalid URI"); - final BidRequest bidRequest = givenBidRequest(impBuilder -> impBuilder.ext(mobkoiExt)); - - // when - final Result>> result = target.makeHttpRequests(bidRequest); - - // then - assertThat(result.getValue()).extracting(HttpRequest::getUri).containsExactly("https://test.endpoint.com/bid"); - assertThat(result.getErrors()).isEmpty(); - } - - @Test - public void makeHttpRequestsShouldUseCustomEndpointWhenDefinedInMobkoiExtension() { - // given - final ObjectNode mobkoiExt = impExt("pid", "https://custom.endpoint.com"); - final BidRequest bidRequest = givenBidRequest(impBuilder -> impBuilder.ext(mobkoiExt)); - - // when - final Result>> result = target.makeHttpRequests(bidRequest); - - // then - assertThat(result.getValue()).extracting(HttpRequest::getUri).containsExactly("https://custom.endpoint.com/bid"); - assertThat(result.getErrors()).isEmpty(); - } - @Test public void makeHttpRequestsShouldOverrideUserExtAndSetConsent() { // given @@ -235,11 +193,11 @@ private static BidRequest givenBidRequest( } private static Imp givenImp(UnaryOperator impCustomizer) { - return impCustomizer.apply(Imp.builder().id("imp_id").ext(impExt("placementIdValue", null))).build(); + return impCustomizer.apply(Imp.builder().id("imp_id").ext(impExt("placementIdValue"))).build(); } - private static ObjectNode impExt(String placementId, String adServerBaseUrl) { - return mapper.valueToTree(ExtPrebid.of(null, ExtImpMobkoi.of(placementId, adServerBaseUrl))); + private static ObjectNode impExt(String placementId) { + return mapper.valueToTree(ExtPrebid.of(null, ExtImpMobkoi.of(placementId))); } private static BidResponse givenBidResponse(UnaryOperator bidCustomizer) {