Class TeiidServiceHandler

  • All Implemented Interfaces:
    org.apache.olingo.server.api.processor.Processor, org.apache.olingo.server.core.ServiceHandler

    public class TeiidServiceHandler
    extends Object
    implements org.apache.olingo.server.core.ServiceHandler
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addReference​(org.apache.olingo.server.core.requests.DataRequest request, String entityETag, URI referenceId, org.apache.olingo.server.core.responses.NoContentResponse response)  
      void anyUnsupported​(org.apache.olingo.server.api.ODataRequest request, org.apache.olingo.server.api.ODataResponse response)  
      void apply​(org.apache.olingo.server.core.requests.DataRequest request, org.apache.olingo.server.api.ODataResponse response)  
      void commit​(String txnId)  
      void createEntity​(org.apache.olingo.server.core.requests.DataRequest request, org.apache.olingo.commons.api.data.Entity entity, org.apache.olingo.server.core.responses.EntityResponse response)  
      void crossJoin​(org.apache.olingo.server.core.requests.DataRequest request, List<String> entitySetNames, org.apache.olingo.server.api.ODataResponse response)  
      void deleteEntity​(org.apache.olingo.server.core.requests.DataRequest request, String entityETag, org.apache.olingo.server.core.responses.EntityResponse response)  
      void deleteReference​(org.apache.olingo.server.core.requests.DataRequest request, URI deleteId, String entityETag, org.apache.olingo.server.core.responses.NoContentResponse response)  
      static Client getClient()  
      void init​(org.apache.olingo.server.api.OData odata, org.apache.olingo.server.api.ServiceMetadata serviceMetadata)  
      <T extends org.apache.olingo.server.core.responses.ServiceResponse>
      void
      invoke​(org.apache.olingo.server.core.requests.ActionRequest request, String eTag, T response)  
      <T extends org.apache.olingo.server.core.responses.ServiceResponse>
      void
      invoke​(org.apache.olingo.server.core.requests.FunctionRequest request, org.apache.olingo.commons.api.http.HttpMethod method, T response)  
      void processError​(org.apache.olingo.server.api.ODataServerError error, org.apache.olingo.server.core.responses.ErrorResponse response)  
      <T extends org.apache.olingo.server.core.responses.ServiceResponse>
      void
      read​(org.apache.olingo.server.core.requests.DataRequest request, T response)  
      void readMediaStream​(org.apache.olingo.server.core.requests.MediaRequest request, org.apache.olingo.server.core.responses.StreamResponse response)  
      void readMetadata​(org.apache.olingo.server.core.requests.MetadataRequest request, org.apache.olingo.server.core.responses.MetadataResponse response)  
      void readServiceDocument​(org.apache.olingo.server.core.requests.ServiceDocumentRequest request, org.apache.olingo.server.core.responses.ServiceDocumentResponse response)  
      void rollback​(String txnId)  
      static void setClient​(Client client)  
      void setPrepared​(boolean flag)  
      String startTransaction()  
      boolean supportsDataIsolation()  
      void updateEntity​(org.apache.olingo.server.core.requests.DataRequest request, org.apache.olingo.commons.api.data.Entity entity, boolean merge, String entityETag, org.apache.olingo.server.core.responses.EntityResponse response)  
      void updateProperty​(org.apache.olingo.server.core.requests.DataRequest request, org.apache.olingo.commons.api.data.Property property, boolean rawValue, boolean merge, String entityETag, org.apache.olingo.server.core.responses.PropertyResponse response)
      since Teiid only deals with primitive types, merge does not apply
      void updateReference​(org.apache.olingo.server.core.requests.DataRequest request, String entityETag, URI referenceId, org.apache.olingo.server.core.responses.NoContentResponse response)  
      void upsertEntity​(org.apache.olingo.server.core.requests.DataRequest request, org.apache.olingo.commons.api.data.Entity entity, boolean merge, String entityETag, org.apache.olingo.server.core.responses.EntityResponse response)  
      void upsertMediaStream​(org.apache.olingo.server.core.requests.MediaRequest request, String entityETag, InputStream mediaContent, org.apache.olingo.server.core.responses.NoContentResponse response)  
      void upsertStreamProperty​(org.apache.olingo.server.core.requests.DataRequest request, String entityETag, InputStream streamContent, org.apache.olingo.server.core.responses.NoContentResponse response)  
    • Constructor Detail

      • TeiidServiceHandler

        public TeiidServiceHandler​(String schemaName)
    • Method Detail

      • getClient

        public static Client getClient()
      • setClient

        public static void setClient​(Client client)
      • init

        public void init​(org.apache.olingo.server.api.OData odata,
                         org.apache.olingo.server.api.ServiceMetadata serviceMetadata)
        Specified by:
        init in interface org.apache.olingo.server.api.processor.Processor
      • setPrepared

        public void setPrepared​(boolean flag)
      • readMetadata

        public void readMetadata​(org.apache.olingo.server.core.requests.MetadataRequest request,
                                 org.apache.olingo.server.core.responses.MetadataResponse response)
                          throws org.apache.olingo.server.api.ODataLibraryException,
                                 org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        readMetadata in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • readServiceDocument

        public void readServiceDocument​(org.apache.olingo.server.core.requests.ServiceDocumentRequest request,
                                        org.apache.olingo.server.core.responses.ServiceDocumentResponse response)
                                 throws org.apache.olingo.server.api.ODataLibraryException,
                                        org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        readServiceDocument in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • read

        public <T extends org.apache.olingo.server.core.responses.ServiceResponse> void read​(org.apache.olingo.server.core.requests.DataRequest request,
                                                                                             T response)
                                                                                      throws org.apache.olingo.server.api.ODataLibraryException,
                                                                                             org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        read in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • createEntity

        public void createEntity​(org.apache.olingo.server.core.requests.DataRequest request,
                                 org.apache.olingo.commons.api.data.Entity entity,
                                 org.apache.olingo.server.core.responses.EntityResponse response)
                          throws org.apache.olingo.server.api.ODataLibraryException,
                                 org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        createEntity in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • updateEntity

        public void updateEntity​(org.apache.olingo.server.core.requests.DataRequest request,
                                 org.apache.olingo.commons.api.data.Entity entity,
                                 boolean merge,
                                 String entityETag,
                                 org.apache.olingo.server.core.responses.EntityResponse response)
                          throws org.apache.olingo.server.api.ODataLibraryException,
                                 org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        updateEntity in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • deleteEntity

        public void deleteEntity​(org.apache.olingo.server.core.requests.DataRequest request,
                                 String entityETag,
                                 org.apache.olingo.server.core.responses.EntityResponse response)
                          throws org.apache.olingo.server.api.ODataLibraryException,
                                 org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        deleteEntity in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • updateProperty

        public void updateProperty​(org.apache.olingo.server.core.requests.DataRequest request,
                                   org.apache.olingo.commons.api.data.Property property,
                                   boolean rawValue,
                                   boolean merge,
                                   String entityETag,
                                   org.apache.olingo.server.core.responses.PropertyResponse response)
                            throws org.apache.olingo.server.api.ODataLibraryException,
                                   org.apache.olingo.server.api.ODataApplicationException
        since Teiid only deals with primitive types, merge does not apply
        Specified by:
        updateProperty in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • upsertStreamProperty

        public void upsertStreamProperty​(org.apache.olingo.server.core.requests.DataRequest request,
                                         String entityETag,
                                         InputStream streamContent,
                                         org.apache.olingo.server.core.responses.NoContentResponse response)
                                  throws org.apache.olingo.server.api.ODataLibraryException,
                                         org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        upsertStreamProperty in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • invoke

        public <T extends org.apache.olingo.server.core.responses.ServiceResponse> void invoke​(org.apache.olingo.server.core.requests.FunctionRequest request,
                                                                                               org.apache.olingo.commons.api.http.HttpMethod method,
                                                                                               T response)
                                                                                        throws org.apache.olingo.server.api.ODataLibraryException,
                                                                                               org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        invoke in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • invoke

        public <T extends org.apache.olingo.server.core.responses.ServiceResponse> void invoke​(org.apache.olingo.server.core.requests.ActionRequest request,
                                                                                               String eTag,
                                                                                               T response)
                                                                                        throws org.apache.olingo.server.api.ODataLibraryException,
                                                                                               org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        invoke in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • readMediaStream

        public void readMediaStream​(org.apache.olingo.server.core.requests.MediaRequest request,
                                    org.apache.olingo.server.core.responses.StreamResponse response)
                             throws org.apache.olingo.server.api.ODataLibraryException,
                                    org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        readMediaStream in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • upsertMediaStream

        public void upsertMediaStream​(org.apache.olingo.server.core.requests.MediaRequest request,
                                      String entityETag,
                                      InputStream mediaContent,
                                      org.apache.olingo.server.core.responses.NoContentResponse response)
                               throws org.apache.olingo.server.api.ODataLibraryException,
                                      org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        upsertMediaStream in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • anyUnsupported

        public void anyUnsupported​(org.apache.olingo.server.api.ODataRequest request,
                                   org.apache.olingo.server.api.ODataResponse response)
                            throws org.apache.olingo.server.api.ODataLibraryException,
                                   org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        anyUnsupported in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • addReference

        public void addReference​(org.apache.olingo.server.core.requests.DataRequest request,
                                 String entityETag,
                                 URI referenceId,
                                 org.apache.olingo.server.core.responses.NoContentResponse response)
                          throws org.apache.olingo.server.api.ODataLibraryException,
                                 org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        addReference in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • updateReference

        public void updateReference​(org.apache.olingo.server.core.requests.DataRequest request,
                                    String entityETag,
                                    URI referenceId,
                                    org.apache.olingo.server.core.responses.NoContentResponse response)
                             throws org.apache.olingo.server.api.ODataLibraryException,
                                    org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        updateReference in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • deleteReference

        public void deleteReference​(org.apache.olingo.server.core.requests.DataRequest request,
                                    URI deleteId,
                                    String entityETag,
                                    org.apache.olingo.server.core.responses.NoContentResponse response)
                             throws org.apache.olingo.server.api.ODataLibraryException,
                                    org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        deleteReference in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • startTransaction

        public String startTransaction()
                                throws org.apache.olingo.server.api.ODataLibraryException,
                                       org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        startTransaction in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • commit

        public void commit​(String txnId)
                    throws org.apache.olingo.server.api.ODataLibraryException,
                           org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        commit in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • rollback

        public void rollback​(String txnId)
                      throws org.apache.olingo.server.api.ODataLibraryException,
                             org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        rollback in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • crossJoin

        public void crossJoin​(org.apache.olingo.server.core.requests.DataRequest request,
                              List<String> entitySetNames,
                              org.apache.olingo.server.api.ODataResponse response)
                       throws org.apache.olingo.server.api.ODataLibraryException,
                              org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        crossJoin in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • apply

        public void apply​(org.apache.olingo.server.core.requests.DataRequest request,
                          org.apache.olingo.server.api.ODataResponse response)
                   throws org.apache.olingo.server.api.ODataLibraryException,
                          org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        apply in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • upsertEntity

        public void upsertEntity​(org.apache.olingo.server.core.requests.DataRequest request,
                                 org.apache.olingo.commons.api.data.Entity entity,
                                 boolean merge,
                                 String entityETag,
                                 org.apache.olingo.server.core.responses.EntityResponse response)
                          throws org.apache.olingo.server.api.ODataLibraryException,
                                 org.apache.olingo.server.api.ODataApplicationException
        Specified by:
        upsertEntity in interface org.apache.olingo.server.core.ServiceHandler
        Throws:
        org.apache.olingo.server.api.ODataLibraryException
        org.apache.olingo.server.api.ODataApplicationException
      • supportsDataIsolation

        public boolean supportsDataIsolation()
        Specified by:
        supportsDataIsolation in interface org.apache.olingo.server.core.ServiceHandler
      • processError

        public void processError​(org.apache.olingo.server.api.ODataServerError error,
                                 org.apache.olingo.server.core.responses.ErrorResponse response)
        Specified by:
        processError in interface org.apache.olingo.server.core.ServiceHandler