Class JPAODataServiceContext.Builder

java.lang.Object
com.sap.olingo.jpa.processor.core.api.JPAODataServiceContext.Builder
Enclosing class:
JPAODataServiceContext

public static class JPAODataServiceContext.Builder extends Object
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • build

      public JPAODataCRUDContextAccess build() throws org.apache.olingo.commons.api.ex.ODataException
      Throws:
      org.apache.olingo.commons.api.ex.ODataException
    • setDatabaseProcessor

      public JPAODataServiceContext.Builder setDatabaseProcessor(JPAODataDatabaseProcessor databaseProcessor)
      A database processor allows database specific implementations for search and odata function with function import that are implemented as database functions.
      In case no database processor is provided and non could be determined via an data source JPADefaultDatabaseProcessor is used.
      Parameters:
      databaseProcessor -
      Returns:
    • setDataSource

      public JPAODataServiceContext.Builder setDataSource(DataSource ds)
      The data source is used to create an entity manager factory if not provided, see setEntityManagerFactory(EntityManagerFactory), and to determine the type of database used to select an integrated database processor, in case the database processor was not set via setDatabaseProcessor(JPAODataDatabaseProcessor)}.
      Parameters:
      ds -
      Returns:
    • setErrorProcessor

      public JPAODataServiceContext.Builder setErrorProcessor(org.apache.olingo.server.api.processor.ErrorProcessor errorProcessor)
      Allows to provide an Olingo error processor. The error processor allows to enrich an error response. See JSON Error Response or Atom Error Response.
      Parameters:
      errorProcessor -
    • setMetadataPostProcessor

      public JPAODataServiceContext.Builder setMetadataPostProcessor(com.sap.olingo.jpa.metadata.api.JPAEdmMetadataPostProcessor postProcessor)
      Parameters:
      postProcessor -
      Returns:
    • setOperationConverter

      public JPAODataServiceContext.Builder setOperationConverter(JPAODataDatabaseOperations jpaOperationConverter)
      Parameters:
      jpaOperationConverter -
      Returns:
    • setPagingProvider

      public JPAODataServiceContext.Builder setPagingProvider(JPAODataPagingProvider provider)
      Register a provider that is able to decides based on a given query if the server like to return only a sub set of the requested results as well as a $skiptoken.
      Parameters:
      provider -
    • setPUnit

      public JPAODataServiceContext.Builder setPUnit(String pUnit)
      The name of the persistence-unit to be used. It is taken to create a entity manager factory (setEntityManagerFactory(EntityManagerFactory)), if not provided and as namespace of the OData service, in case the default name builder shall be used.
      Parameters:
      pUnit -
      Returns:
    • setReferences

      public JPAODataServiceContext.Builder setReferences(List<org.apache.olingo.commons.api.edmx.EdmxReference> references)
      Parameters:
      references -
      Returns:
    • setTypePackage

      public JPAODataServiceContext.Builder setTypePackage(String... packageName)
      Name of the top level package to look for
      • Enumeration Types
      • Java class based Functions
      Parameters:
      packageName -
    • setRequestMappingPath

      public JPAODataServiceContext.Builder setRequestMappingPath(String mappingPath)
    • setEntityManagerFactory

      public JPAODataServiceContext.Builder setEntityManagerFactory(javax.persistence.EntityManagerFactory emf)
      Set an externally created entity manager factory.
      This is necessary e.g. in case a spring based service shall run without a persistance.xml.
      Parameters:
      emf -
      Returns:
    • setEdmNameBuilder

      public JPAODataServiceContext.Builder setEdmNameBuilder(com.sap.olingo.jpa.metadata.core.edm.mapper.api.JPAEdmNameBuilder nameBuilder)
      Set a custom EDM name builder JPAEdmNameBuilder. If non is provided JPADefaultEdmNameBuilder is used, which uses the provided persistence-unit name (setPUnit(java.lang.String)) as namespace.
      Parameters:
      nameBuilder -
      Returns:
    • setUseAbsoluteContextURL

      public JPAODataServiceContext.Builder setUseAbsoluteContextURL(boolean useAbsoluteContextURL)
      Some clients, like Excel, require context url's with an absolute path. The default generation of relative paths can be overruled.
      Parameters:
      useAbsoluteContextURL -
      Returns:
      See Also:
      Issue OLINGO-787