code: public Observable<ApplicationGatewayAvailableWafRuleSetsResultInner> listAvailableWafRuleSetsAsync() {
          return listAvailableWafRuleSetsWithServiceResponseAsync().map(new Func1<ServiceResponse<ApplicationGatewayAvailableWafRuleSetsResultInner>, ApplicationGatewayAvailableWafRuleSetsResultInner>() {
              @Override
              public ApplicationGatewayAvailableWafRuleSetsResultInner call(ServiceResponse<ApplicationGatewayAvailableWafRuleSetsResultInner> response) {
                  return response.body();
              }
          });
      }
docs: Lists all available web application firewall rule sets.
  
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the ApplicationGatewayAvailableWafRuleSetsResultInner object