code: public ServiceFuture<List<NetworkInterfaceInner>> listVirtualMachineScaleSetVMNetworkInterfacesAsync(final String resourceGroupName, final String virtualMachineScaleSetName, final String virtualmachineIndex, final ListOperationCallback<NetworkInterfaceInner> serviceCallback) {
          return AzureServiceFuture.fromPageResponse(
              listVirtualMachineScaleSetVMNetworkInterfacesSinglePageAsync(resourceGroupName, virtualMachineScaleSetName, virtualmachineIndex),
              new Func1<String, Observable<ServiceResponse<Page<NetworkInterfaceInner>>>>() {
                  @Override
                  public Observable<ServiceResponse<Page<NetworkInterfaceInner>>> call(String nextPageLink) {
                      return listVirtualMachineScaleSetVMNetworkInterfacesNextSinglePageAsync(nextPageLink);
                  }
              },
              serviceCallback);
      }
docs: Gets information about all network interfaces in a virtual machine in a virtual machine scale set.
  
  @param resourceGroupName The name of the resource group.
  @param virtualMachineScaleSetName The name of the virtual machine scale set.
  @param virtualmachineIndex The virtual machine index.
  @param serviceCallback the async ServiceCallback to handle successful and failed responses.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the {@link ServiceFuture} object