Giter Club home page Giter Club logo

openrtb2x's Introduction

--------------------------------------------------------------------------------
Implementation Purpose
--------------------------------------------------------------------------------
This project is focused on supplying a reference implementation, both for 
supply-side and demand-side platforms, of the offline synchronization services 
specified in the OpenRTB Specification.

The goal and design of this work is to minimize the effort required by any 
DSP or SSP wishing to leverage the capabilities described in the spec.

To aid in this effort, the work has been licensed under the New BSD License.  
Please refer to the LICENSE file in the root of this project for more 
information, or to the following website for more information:
http://www.opensource.org/licenses/bsd-license.php

--------------------------------------------------------------------------------
Project Structure
--------------------------------------------------------------------------------
You should be able to build the project by running 'mvn clean install' from the 
top-level directory.  The project is structured in the following manner:

  + common
    This directory is a maven project that produces a single jar file.  This 
    jar file contains all code that is shared between the demand-side and 
    supply-side implementations (i.e. authentication/validation work, object 
    models, etc.)


  + demand-side
    This directory contains a series of maven projects responsible for the DSP 
    behavior of this specification.  The sub-project artifact responsibilities 
    include:

    * dsp-web
      This project packages up a web archive (war) file, capable of being 
      deployed in any standard JEE web container based upon the reference 
      'dsp-client' artifact provided with this implementation.

      The contents of this package are purposefully minimized to the 
      deployment artifacts necessary to deploy the war file.

    * dsp-core
      This project produces a jar file containing the necessary logic for 
      sending requests and receiving responses, including all message handling 
      that is pertinent to the DSP.  

      This jar file represents standard logic that would be implemented by any 
      DSP wishing to leverage this implementation.

      All DSP specific logic (i.e. persisting the response data, retrieving 
      advertiser information, etc.) is delegated to the 'dsp-client' via the 
      'dsp-intf'.

    * dsp-intf
      This package is the contract and set of interfaces between the message 
      handling code located in the 'dsp-core' and a DSP's specific internal 
      representation of that data.
  
    * dsp-client
      This package is an example implementation of the 'dsp-intf' to satisfy 
      the following:
      1) Integration testing between the 'dsp-web' and 'ssp-web' projects.
      2) Provide a framework for other DSPs to leverage this specification more 
         quickly by allowing the DSP to focus on the integration aspects of the 
         specification with their own specific platform.

      As a result of requirement (1) above, this package must be capable of 
      working in concert with the 'ssp-client' described below.
 

  + supply-side
    Similar to the 'demand-side' module, this directory contains a series of 
    maven projects responsible for the SSP behavior described in the 
    specification.  The sub-module artifact responsibilities include:

    * ssp-web
      This project packages up a web archive (war) file capable of being 
      deployed in any standard JEE web container.  It is based upon the 
      reference 'ssp-client' artifact provided with this implementation.      

      The contents of this package are purposefully minimized to the deployment 
      configurations necessary to deploy the war file.

    * ssp-core
      This project produces a jar file containing the necessary logic for 
      sending and receiving both requests and responses, including all message 
      handling that is pertinent to the SSP.  

      This jar file represents standard logic that would be implemented by any 
      SSP wishing to leverage this implementation..

      All SSP specific logic (i.e. persisting the advertiser data, retrieving 
      publisher information, etc.) is delegated to the 'ssp-client' via the 
      'ssp-intf'.

    * ssp-intf
      This package is the contract and set of interfaces between the message 
      handling code located in the 'ssp-core' and an SSP's specific internal 
      representation of that data.

    * ssp-client
      This package is an example implementation of the 'ssp-intf' to satisfy 
      the following:
      1) Integration testing between the 'ssp-web' and 'dsp-web' projects.
      2) Provide a framework for other SSPs to leverage this specification more 
         quickly by allowing the SSP to focus on the integration aspects of the 
         specification with their own specific platform.

      As a result of requirement (1) above, this package must be capable of 
      working in concert with the 'dsp-client' described above.

openrtb2x's People

Contributors

rfoldes avatar salilarora avatar shlok001 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.