@@ -54,32 +54,22 @@ public AkceloBidder(String endpointUrl, JacksonMapper mapper) {
5454
5555 @ Override
5656 public Result <List <HttpRequest <BidRequest >>> makeHttpRequests (BidRequest request ) {
57+ final List <Imp > imps = request .getImp ();
5758 final List <Imp > modifiedImps = new ArrayList <>();
58- final List <BidderError > errors = new ArrayList <>();
59-
60- String siteId = null ;
6159
60+ final ExtImpAkcelo firstExtImp ;
6261 try {
63- final List <Imp > imps = request .getImp ();
64- for (int i = 0 ; i < imps .size (); i ++) {
65- final Imp imp = imps .get (i );
66- if (i == 0 ) {
67- final ExtImpAkcelo extImp = parseImpExt (imp );
68- siteId = extImp .getSiteId ();
69- }
70- modifiedImps .add (modifyImp (imp ));
71- }
62+ firstExtImp = parseImpExt (imps .getFirst ());
7263 } catch (PreBidException e ) {
73- errors . add (BidderError .badInput (e .getMessage ()));
64+ return Result . withError (BidderError .badInput (e .getMessage ()));
7465 }
7566
76- if ( modifiedImps . isEmpty () ) {
77- return Result . withErrors ( errors );
67+ for ( final Imp imp : imps ) {
68+ modifiedImps . add ( modifyImp ( imp ) );
7869 }
7970
80- final BidRequest outgoingRequest = modifyRequest (request , modifiedImps , siteId );
81- final HttpRequest <BidRequest > httpRequest = BidderUtil .defaultRequest (outgoingRequest , endpointUrl , mapper );
82- return Result .of (Collections .singletonList (httpRequest ), errors );
71+ final BidRequest outgoingRequest = modifyRequest (request , modifiedImps , firstExtImp .getSiteId ());
72+ return Result .withValue (BidderUtil .defaultRequest (outgoingRequest , endpointUrl , mapper ));
8373 }
8474
8575 private ExtImpAkcelo parseImpExt (Imp imp ) {
@@ -91,12 +81,9 @@ private ExtImpAkcelo parseImpExt(Imp imp) {
9181 }
9282
9383 private Imp modifyImp (Imp imp ) {
94- return Optional .ofNullable (imp .getExt ())
95- .map (prebid -> prebid .get ("bidder" ))
96- .filter (JsonNode ::isObject )
97- .map (bidder -> (ObjectNode ) mapper .mapper ().createObjectNode ().set (BIDDER_NAME , bidder ))
98- .map (ext -> imp .toBuilder ().ext (ext ).build ())
99- .orElseThrow (() -> new PreBidException ("imp.ext.prebid.bidder can't be parsed" ));
84+ return imp .toBuilder ()
85+ .ext (mapper .mapper ().createObjectNode ().set (BIDDER_NAME , imp .getExt ().get ("bidder" )))
86+ .build ();
10087 }
10188
10289 private BidRequest modifyRequest (BidRequest request , List <Imp > imps , String siteId ) {
0 commit comments