code: @BetaApi
    public final Operation updateNetworkInterfaceInstance(
        ProjectZoneInstanceName instance,
        String networkInterface,
        NetworkInterface networkInterfaceResource,
        List<String> fieldMask) {
  
      UpdateNetworkInterfaceInstanceHttpRequest request =
          UpdateNetworkInterfaceInstanceHttpRequest.newBuilder()
              .setInstance(instance == null ? null : instance.toString())
              .setNetworkInterface(networkInterface)
              .setNetworkInterfaceResource(networkInterfaceResource)
              .addAllFieldMask(fieldMask)
              .build();
      return updateNetworkInterfaceInstance(request);
    }
docs: Updates an instance's network interface. This method follows PATCH semantics.
  
  <p>Sample code:
  
  <pre><code>
  try (InstanceClient instanceClient = InstanceClient.create()) {
  ProjectZoneInstanceName instance = ProjectZoneInstanceName.of("[PROJECT]", "[ZONE]", "[INSTANCE]");
  String networkInterface = "";
  NetworkInterface networkInterfaceResource = NetworkInterface.newBuilder().build();
  List&lt;String&gt; fieldMask = new ArrayList&lt;&gt;();
  Operation response = instanceClient.updateNetworkInterfaceInstance(instance, networkInterface, networkInterfaceResource, fieldMask);
  }
  </code></pre>
  
  @param instance The instance name for this request.
  @param networkInterface The name of the network interface to update.
  @param networkInterfaceResource A network interface resource attached to an instance.
  @param fieldMask The fields that should be serialized (even if they have empty values). If the
  containing message object has a non-null fieldmask, then all the fields in the field mask
  (and only those fields in the field mask) will be serialized. If the containing object does
  not have a fieldmask, then only non-empty fields will be serialized.
  @throws com.google.api.gax.rpc.ApiException if the remote call fails