@java.lang.Override
    @java.lang.SuppressWarnings("unchecked")
    public void invoke(Req request, io.grpc.stub.StreamObserver<Resp> responseObserver) {
      switch (methodId) {
        case METHODID_LIST_NODES:
          serviceImpl.listNodes(
              (com.google.cloud.tpu.v2.ListNodesRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.ListNodesResponse>)
                  responseObserver);
          break;
        case METHODID_GET_NODE:
          serviceImpl.getNode(
              (com.google.cloud.tpu.v2.GetNodeRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.Node>) responseObserver);
          break;
        case METHODID_CREATE_NODE:
          serviceImpl.createNode(
              (com.google.cloud.tpu.v2.CreateNodeRequest) request,
              (io.grpc.stub.StreamObserver<com.google.longrunning.Operation>) responseObserver);
          break;
        case METHODID_DELETE_NODE:
          serviceImpl.deleteNode(
              (com.google.cloud.tpu.v2.DeleteNodeRequest) request,
              (io.grpc.stub.StreamObserver<com.google.longrunning.Operation>) responseObserver);
          break;
        case METHODID_STOP_NODE:
          serviceImpl.stopNode(
              (com.google.cloud.tpu.v2.StopNodeRequest) request,
              (io.grpc.stub.StreamObserver<com.google.longrunning.Operation>) responseObserver);
          break;
        case METHODID_START_NODE:
          serviceImpl.startNode(
              (com.google.cloud.tpu.v2.StartNodeRequest) request,
              (io.grpc.stub.StreamObserver<com.google.longrunning.Operation>) responseObserver);
          break;
        case METHODID_UPDATE_NODE:
          serviceImpl.updateNode(
              (com.google.cloud.tpu.v2.UpdateNodeRequest) request,
              (io.grpc.stub.StreamObserver<com.google.longrunning.Operation>) responseObserver);
          break;
        case METHODID_LIST_QUEUED_RESOURCES:
          serviceImpl.listQueuedResources(
              (com.google.cloud.tpu.v2.ListQueuedResourcesRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.ListQueuedResourcesResponse>)
                  responseObserver);
          break;
        case METHODID_GET_QUEUED_RESOURCE:
          serviceImpl.getQueuedResource(
              (com.google.cloud.tpu.v2.GetQueuedResourceRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.QueuedResource>)
                  responseObserver);
          break;
        case METHODID_CREATE_QUEUED_RESOURCE:
          serviceImpl.createQueuedResource(
              (com.google.cloud.tpu.v2.CreateQueuedResourceRequest) request,
              (io.grpc.stub.StreamObserver<com.google.longrunning.Operation>) responseObserver);
          break;
        case METHODID_DELETE_QUEUED_RESOURCE:
          serviceImpl.deleteQueuedResource(
              (com.google.cloud.tpu.v2.DeleteQueuedResourceRequest) request,
              (io.grpc.stub.StreamObserver<com.google.longrunning.Operation>) responseObserver);
          break;
        case METHODID_RESET_QUEUED_RESOURCE:
          serviceImpl.resetQueuedResource(
              (com.google.cloud.tpu.v2.ResetQueuedResourceRequest) request,
              (io.grpc.stub.StreamObserver<com.google.longrunning.Operation>) responseObserver);
          break;
        case METHODID_GENERATE_SERVICE_IDENTITY:
          serviceImpl.generateServiceIdentity(
              (com.google.cloud.tpu.v2.GenerateServiceIdentityRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.GenerateServiceIdentityResponse>)
                  responseObserver);
          break;
        case METHODID_LIST_ACCELERATOR_TYPES:
          serviceImpl.listAcceleratorTypes(
              (com.google.cloud.tpu.v2.ListAcceleratorTypesRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.ListAcceleratorTypesResponse>)
                  responseObserver);
          break;
        case METHODID_GET_ACCELERATOR_TYPE:
          serviceImpl.getAcceleratorType(
              (com.google.cloud.tpu.v2.GetAcceleratorTypeRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.AcceleratorType>)
                  responseObserver);
          break;
        case METHODID_LIST_RUNTIME_VERSIONS:
          serviceImpl.listRuntimeVersions(
              (com.google.cloud.tpu.v2.ListRuntimeVersionsRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.ListRuntimeVersionsResponse>)
                  responseObserver);
          break;
        case METHODID_GET_RUNTIME_VERSION:
          serviceImpl.getRuntimeVersion(
              (com.google.cloud.tpu.v2.GetRuntimeVersionRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.RuntimeVersion>)
                  responseObserver);
          break;
        case METHODID_GET_GUEST_ATTRIBUTES:
          serviceImpl.getGuestAttributes(
              (com.google.cloud.tpu.v2.GetGuestAttributesRequest) request,
              (io.grpc.stub.StreamObserver<com.google.cloud.tpu.v2.GetGuestAttributesResponse>)
                  responseObserver);
          break;
        default:
          throw new AssertionError();
      }
    }
<pre>
Retrieves the guest attributes for the node.
</pre>
java-tpu/grpc-google-cloud-tpu-v2/src/main/java/com/google/cloud/tpu/v2/TpuGrpc.java