code: public Observable<PolicySetDefinitionInner> createOrUpdateAtManagementGroupAsync(String policySetDefinitionName, String managementGroupId, PolicySetDefinitionInner parameters) {
          return createOrUpdateAtManagementGroupWithServiceResponseAsync(policySetDefinitionName, managementGroupId, parameters).map(new Func1<ServiceResponse<PolicySetDefinitionInner>, PolicySetDefinitionInner>() {
              @Override
              public PolicySetDefinitionInner call(ServiceResponse<PolicySetDefinitionInner> response) {
                  return response.body();
              }
          });
      }
docs: Creates or updates a policy set definition.
  This operation creates or updates a policy set definition in the given management group with the given name.
  
  @param policySetDefinitionName The name of the policy set definition to create.
  @param managementGroupId The ID of the management group.
  @param parameters The policy set definition properties.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the PolicySetDefinitionInner object