code: public Observable<ApplicationInsightsComponentInner> createOrUpdateAsync(String resourceGroupName, String resourceName, ApplicationInsightsComponentInner insightProperties) {
          return createOrUpdateWithServiceResponseAsync(resourceGroupName, resourceName, insightProperties).map(new Func1<ServiceResponse<ApplicationInsightsComponentInner>, ApplicationInsightsComponentInner>() {
              @Override
              public ApplicationInsightsComponentInner call(ServiceResponse<ApplicationInsightsComponentInner> response) {
                  return response.body();
              }
          });
      }
docs: Creates (or updates) an Application Insights component. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.
  
  @param resourceGroupName The name of the resource group.
  @param resourceName The name of the Application Insights component resource.
  @param insightProperties Properties that need to be specified to create an Application Insights component.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the ApplicationInsightsComponentInner object