public final OperationFuture<NetworkPolicy, OperationMetadata> updateNetworkPolicyAsync(
      NetworkPolicy networkPolicy, FieldMask updateMask) {
    UpdateNetworkPolicyRequest request =
        UpdateNetworkPolicyRequest.newBuilder()
            .setNetworkPolicy(networkPolicy)
            .setUpdateMask(updateMask)
            .build();
    return updateNetworkPolicyAsync(request);
  }
Modifies a `NetworkPolicy` resource. Only the following fields can be updated:
`internet_access`, `external_ip`, `edge_services_cidr`. Only fields specified in `updateMask`
are applied. When updating a network policy, the external IP network service can only be
disabled if there are no external IP addresses present in the scope of the policy. Also, a
`NetworkService` cannot be updated when `NetworkService.state` is set to `RECONCILING`.

<p>During operation processing, the resource is temporarily in the `ACTIVE` state before the
operation fully completes. For that period of time, you can't update the resource. Use the
operation status to determine when the processing fully completes.

<p>Sample code:

<pre>{@code
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (VmwareEngineClient vmwareEngineClient = VmwareEngineClient.create()) {
  NetworkPolicy networkPolicy = NetworkPolicy.newBuilder().build();
  FieldMask updateMask = FieldMask.newBuilder().build();
  NetworkPolicy response =
      vmwareEngineClient.updateNetworkPolicyAsync(networkPolicy, updateMask).get();
}
}</pre>

@param networkPolicy Required. Network policy description.
@param updateMask Required. Field mask is used to specify the fields to be overwritten in the
    `NetworkPolicy` resource by the update. The fields specified in the `update_mask` are
    relative to the resource, not the full request. A field will be overwritten if it is in the
    mask. If the user does not provide a mask then all fields will be overwritten.
@throws com.google.api.gax.rpc.ApiException if the remote call fails
java-vmwareengine/google-cloud-vmwareengine/src/main/java/com/google/cloud/vmwareengine/v1/VmwareEngineClient.java