code: public ServiceFuture<ApplicationInsightsComponentInner> createOrUpdateAsync(String resourceGroupName, String resourceName, ApplicationInsightsComponentInner insightProperties, final ServiceCallback<ApplicationInsightsComponentInner> serviceCallback) {
          return ServiceFuture.fromResponse(createOrUpdateWithServiceResponseAsync(resourceGroupName, resourceName, insightProperties), serviceCallback);
      }
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.
  @param serviceCallback the async ServiceCallback to handle successful and failed responses.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the {@link ServiceFuture} object