code: public ServiceFuture<SecurityGroupViewResultInner> beginGetVMSecurityRulesAsync(String resourceGroupName, String networkWatcherName, String targetResourceId, final ServiceCallback<SecurityGroupViewResultInner> serviceCallback) {
          return ServiceFuture.fromResponse(beginGetVMSecurityRulesWithServiceResponseAsync(resourceGroupName, networkWatcherName, targetResourceId), serviceCallback);
      }
docs: Gets the configured and effective security group rules on the specified VM.
  
  @param resourceGroupName The name of the resource group.
  @param networkWatcherName The name of the network watcher.
  @param targetResourceId ID of the target VM.
  @param serviceCallback the async ServiceCallback to handle successful and failed responses.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the {@link ServiceFuture} object