Module Proposal OData 4.0

Horizontal

  • API
    • required for design time
    • has to change compatible
    • less dependencies (down to zero)
    • interfaces, abstract classes, simple beans, exceptions
    • runtime delegation
  • Core
    • required for runtime
    • implementation classes
    • internal api
    • change implementation without breaking the api
    • defines 3rd party dependencies

Vertical

  • Client
    • request/response handling
    • client edm implementation
    • runtime delegate
  • Commons (used by client and server)
    • serialization
    • deserialization
    • data objects (interfaces and implementation)
    • utilities
    • edm (interfaces)
  • Server
    • uri parser (ANTLR)
    • edm implementation and provider
    • edm validator
    • request handler
    • dispatcher
    • processor interfaces
    • servlet / REST access point
    • runtime delegate

Proposed Package Names

  • org.apache.olingo.odata4.client.api.*
  • org.apache.olingo.odata4.commons.api.*
  • org.apache.olingo.odata4.server.api.*
  • org.apache.olingo.odata4.client.core.*
  • org.apache.olingo.odata4.commons.core.*
  • org.apache.olingo.odata4.server.core.*

Current Modules

  • No labels