java.lang.Object
com.sap.olingo.jpa.processor.core.query.Util

public final class Util extends Object
  • Field Details

  • Method Details

    • determineTargetEntitySet

      public static org.apache.olingo.commons.api.edm.EdmEntitySet determineTargetEntitySet(List<org.apache.olingo.server.api.uri.UriResource> resources)
    • determineTargetEntitySetAndKeys

      public static EdmEntitySetInfo determineTargetEntitySetAndKeys(List<org.apache.olingo.server.api.uri.UriResource> resources)
    • determineModifyEntitySetAndKeys

      public static EdmEntitySetInfo determineModifyEntitySetAndKeys(List<org.apache.olingo.server.api.uri.UriResource> resources)
    • determineTargetEntityType

      public static org.apache.olingo.commons.api.edm.EdmEntityType determineTargetEntityType(List<org.apache.olingo.server.api.uri.UriResource> resources)
      Finds an entity type from a navigation property
    • determineStartNavigationPath

      public static org.apache.olingo.server.api.uri.UriResourceProperty determineStartNavigationPath(List<org.apache.olingo.server.api.uri.UriResource> resources)
      Used for Serializer
    • determineStartNavigationIndex

      public static int determineStartNavigationIndex(List<org.apache.olingo.server.api.uri.UriResource> resources)
      Finds the index of the first property after the last entity set or navigation resource. This is the resource that will be returned in case a complex or primitive type is requested.

      Example1 : /Organizations -> -1
      Example2 : /Organizations('3')/AdministrativeInformation -> 1
      Example3 : /Organizations('3')/Roles -> -1
      Example4 : /Organizations('3')/Roles/RoleCategory -> 2
      Example4 : /Organizations('3')/AdministrativeInformation/Created/User/LastName -> 4

    • determineProptertyNavigationPath

      public static String determineProptertyNavigationPath(List<org.apache.olingo.server.api.uri.UriResource> resources)
    • determineProptertyNavigationPrefix

      public static String determineProptertyNavigationPrefix(List<org.apache.olingo.server.api.uri.UriResource> resources)
    • determineAssoziation

      public static com.sap.olingo.jpa.metadata.core.edm.mapper.api.JPAAssociationPath determineAssoziation(com.sap.olingo.jpa.metadata.core.edm.mapper.api.JPAServiceDocument sd, org.apache.olingo.commons.api.edm.EdmType naviStart, StringBuilder associationName) throws org.apache.olingo.server.api.ODataApplicationException
      Throws:
      org.apache.olingo.server.api.ODataApplicationException
    • determineAssoziations

      public static Map<JPAExpandItem,​com.sap.olingo.jpa.metadata.core.edm.mapper.api.JPAAssociationPath> determineAssoziations(com.sap.olingo.jpa.metadata.core.edm.mapper.api.JPAServiceDocument sd, List<org.apache.olingo.server.api.uri.UriResource> startResourceList, org.apache.olingo.server.api.uri.queryoption.ExpandOption expandOption) throws org.apache.olingo.server.api.ODataApplicationException
      Throws:
      org.apache.olingo.server.api.ODataApplicationException
    • determineNavigationPath

      public static List<JPANavigationProptertyInfo> determineNavigationPath(com.sap.olingo.jpa.metadata.core.edm.mapper.api.JPAServiceDocument sd, List<org.apache.olingo.server.api.uri.UriResource> resourceParts, org.apache.olingo.server.api.uri.UriInfoResource uriInfo) throws org.apache.olingo.server.api.ODataApplicationException
      Converts the OData navigation list into a intermediate one. Direction is top - down usage e.g. join query.

      The method only supports queries that start with an entity set.

      Parameters:
      sd -
      resourceParts -
      filterOption -
      Returns:
      Throws:
      org.apache.olingo.server.api.ODataApplicationException
    • hasNavigation

      public static boolean hasNavigation(List<org.apache.olingo.server.api.uri.UriResource> uriResourceParts)
    • determineAssoziationPath

      public static com.sap.olingo.jpa.metadata.core.edm.mapper.api.JPAAssociationPath determineAssoziationPath(com.sap.olingo.jpa.metadata.core.edm.mapper.api.JPAServiceDocument sd, org.apache.olingo.server.api.uri.UriResourcePartTyped naviStart, StringBuilder associationName) throws org.apache.olingo.server.api.ODataApplicationException
      Throws:
      org.apache.olingo.server.api.ODataApplicationException
    • determineKeyPredicates

      public static List<org.apache.olingo.server.api.uri.UriParameter> determineKeyPredicates(org.apache.olingo.server.api.uri.UriResource uriResourceItem) throws org.apache.olingo.server.api.ODataApplicationException
      Throws:
      org.apache.olingo.server.api.ODataApplicationException