github.com/prebid/prebid-server/v2@v2.18.0/hooks/hookstage/processedauctionrequest.go (about)

     1  package hookstage
     2  
     3  import (
     4  	"context"
     5  	"github.com/prebid/prebid-server/v2/openrtb_ext"
     6  )
     7  
     8  // ProcessedAuctionRequest hooks are invoked after the request is parsed
     9  // and enriched with additional data.
    10  //
    11  // At this stage, account config is available,
    12  // so it can be configured at the account-level execution plan,
    13  // the account-level module config is passed to hooks.
    14  //
    15  // Rejection results in sending an empty BidResponse
    16  // with the NBR code indicating the rejection reason.
    17  type ProcessedAuctionRequest interface {
    18  	HandleProcessedAuctionHook(
    19  		context.Context,
    20  		ModuleInvocationContext,
    21  		ProcessedAuctionRequestPayload,
    22  	) (HookResult[ProcessedAuctionRequestPayload], error)
    23  }
    24  
    25  // ProcessedAuctionRequestPayload consists of the openrtb_ext.RequestWrapper object.
    26  // Hooks are allowed to modify openrtb_ext.RequestWrapper using mutations.
    27  type ProcessedAuctionRequestPayload struct {
    28  	Request *openrtb_ext.RequestWrapper
    29  }
    30  
    31  func (parp *ProcessedAuctionRequestPayload) GetBidderRequestPayload() *openrtb_ext.RequestWrapper {
    32  	return parp.Request
    33  }
    34  
    35  func (parp *ProcessedAuctionRequestPayload) SetBidderRequestPayload(br *openrtb_ext.RequestWrapper) {
    36  	parp.Request = br
    37  }