示例#1
0
 private void sendResults(
     final DataRequest request,
     final ODataSQLBuilder visitor,
     final BaseResponse queryResponse,
     EdmComplexResponse response)
     throws ODataApplicationException, SerializerException {
   if (request.getPreference(ODATA_MAXPAGESIZE) != null) {
     response.writeHeader(
         PREFERENCE_APPLIED,
         ODATA_MAXPAGESIZE + "=" + request.getPreference(ODATA_MAXPAGESIZE)); // $NON-NLS-1$
   }
   CrossJoinResult result = (CrossJoinResult) queryResponse;
   URI next = null;
   if (result.getNextToken() != null) {
     try {
       next =
           new URI(
               request.getODataRequest().getRawRequestUri()
                   + (request.getODataRequest().getRawQueryPath() == null
                       ? "?$skiptoken="
                       : "&$skiptoken=")
                   + result.getNextToken());
     } catch (URISyntaxException e) {
       throw new ODataApplicationException(e.getMessage(), 500, Locale.getDefault(), e);
     }
   }
   response.writeComplexType(result, next);
 }
示例#2
0
 private void sendResults(
     final DataRequest request,
     final ODataSQLBuilder visitor,
     final BaseResponse queryResponse,
     EntitySetResponse response)
     throws ODataApplicationException, SerializerException {
   if (request.getPreference(ODATA_MAXPAGESIZE) != null) {
     response.writeHeader(
         PREFERENCE_APPLIED,
         ODATA_MAXPAGESIZE + "=" + request.getPreference(ODATA_MAXPAGESIZE)); // $NON-NLS-1$
   }
   EntityCollectionResponse result = (EntityCollectionResponse) queryResponse;
   if (result.getNextToken() != null) {
     try {
       String nextUri =
           request.getODataRequest().getRawBaseUri()
               + request.getODataRequest().getRawODataPath()
               + "?"
               + buildNextToken(
                   request.getODataRequest().getRawQueryPath(), result.getNextToken());
       result.setNext(new URI(nextUri));
     } catch (URISyntaxException e) {
       throw new ODataApplicationException(e.getMessage(), 500, Locale.getDefault(), e);
     } catch (MalformedURLException e) {
       throw new ODataApplicationException(e.getMessage(), 500, Locale.getDefault(), e);
     }
   }
   response.writeReadEntitySet(visitor.getContext().getEdmEntityType(), result);
 }