import java.io.FileInputStream; import java.io.IOException; import java.util.List; import com.google.openrtb.OpenRtb; import com.google.openrtb.OpenRtb.BidRequest; import com.google.openrtb.OpenRtb.BidResponse; import com.google.openrtb.AdxExt; import com.google.openrtb.AdxExt.ImpExt; import com.google.protobuf.ExtensionRegistry; public class OpenRTBExample { public static void main(String[] args) throws IOException { parseBidRequest(); } public static void parseBidRequest() throws IOException { // Define the BidRequest extensions we intend to access. ExtensionRegistry registry = ExtensionRegistry.newInstance(); registry.add(AdxExt.imp); // Parse the bid request. BidRequest bidRequest = BidRequest.parseFrom( new FileInputStream("examples/data/bid_request_openrtb.bin"), registry); System.out.printf("\tBidRequest.imp[0].ext.billing_id[0] = %d\n", bidRequest.getImp(0).getExtension(AdxExt.imp).getBillingId(0)); } }