code: public PagedList<RecommendationInner> listRecommendedRulesForWebApp(final String resourceGroupName, final String siteName, final Boolean featured, final String filter) {
          ServiceResponse<Page<RecommendationInner>> response = listRecommendedRulesForWebAppSinglePageAsync(resourceGroupName, siteName, featured, filter).toBlocking().single();
          return new PagedList<RecommendationInner>(response.body()) {
              @Override
              public Page<RecommendationInner> nextPage(String nextPageLink) {
                  return listRecommendedRulesForWebAppNextSinglePageAsync(nextPageLink).toBlocking().single().body();
              }
          };
      }
docs: Get all recommendations for an app.
  Get all recommendations for an app.
  
  @param resourceGroupName Name of the resource group to which the resource belongs.
  @param siteName Name of the app.
  @param featured Specify &lt;code&gt;true&lt;/code&gt; to return only the most critical recommendations. The default is &lt;code&gt;false&lt;/code&gt;, which returns all recommendations.
  @param filter Return only channels specified in the filter. Filter is specified by using OData syntax. Example: $filter=channels eq 'Api' or channel eq 'Notification'
  @throws IllegalArgumentException thrown if parameters fail the validation
  @throws DefaultErrorResponseException thrown if the request is rejected by server
  @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
  @return the PagedList&lt;RecommendationInner&gt; object if successful.