class ServiceAccountOperationsImpl
    extends HasMetadataOperation<ServiceAccount, ServiceAccountList, ServiceAccountResource> implements ServiceAccountResource {
  public ServiceAccountOperationsImpl(Client client) {
    this(HasMetadataOperationsImpl.defaultContext(client));
  }

  private ServiceAccountOperationsImpl(OperationContext context) {
    super(context.withPlural("serviceaccounts"), ServiceAccount.class, ServiceAccountList.class);
  }

  @Override
  public ServiceAccountOperationsImpl newInstance(OperationContext context) {
    return new ServiceAccountOperationsImpl(context);
  }

  @Override
  public TokenRequest tokenRequest(TokenRequest tokenRequest) {
    return handleTokenRequest(tokenRequest);
  }

  private TokenRequest handleTokenRequest(TokenRequest tokenRequest) {<FILL_FUNCTION_BODY>}
}

    try {
      URL requestUrl = new URL(URLUtils.join(getResourceUrl().toString(), "token"));

      HttpRequest.Builder requestBuilder = httpClient.newHttpRequestBuilder()
          .post(JSON, getKubernetesSerialization().asJson(tokenRequest)).url(requestUrl);
      return handleResponse(requestBuilder, TokenRequest.class);
    } catch (IOException exception) {
      throw KubernetesClientException.launderThrowable(forOperationType("token request"), exception);
    }
  
<methods>public void <init>(io.fabric8.kubernetes.client.dsl.internal.OperationContext, Class<ServiceAccount>, Class<ServiceAccountList>) ,public ServiceAccount accept(Consumer<ServiceAccount>) ,public ServiceAccount edit(UnaryOperator<ServiceAccount>) ,public transient ServiceAccount edit(Visitor[]) ,public ServiceAccount editStatus(UnaryOperator<ServiceAccount>) ,public HasMetadataOperation<ServiceAccount,ServiceAccountList,io.fabric8.kubernetes.client.dsl.ServiceAccountResource> newInstance(io.fabric8.kubernetes.client.dsl.internal.OperationContext) ,public ServiceAccount patch() ,public ServiceAccount patch(io.fabric8.kubernetes.client.dsl.base.PatchContext) ,public ServiceAccount patch(io.fabric8.kubernetes.client.dsl.base.PatchContext, ServiceAccount) ,public ServiceAccount patch(io.fabric8.kubernetes.client.dsl.base.PatchContext, java.lang.String) ,public ServiceAccount patchStatus() ,public ServiceAccount patchStatus(ServiceAccount) ,public ServiceAccount replace() ,public ServiceAccount replaceStatus() ,public ServiceAccount scale(int) ,public ServiceAccount scale(int, boolean) ,public Scale scale(Scale) ,public ServiceAccount update() ,public ServiceAccount updateStatus() <variables>public static final long DEFAULT_GRACE_PERIOD_IN_SECONDS,public static final io.fabric8.kubernetes.api.model.DeletionPropagation DEFAULT_PROPAGATION_POLICY,private static final Logger LOGGER,private static final java.lang.String PATCH_OPERATION,private static final java.lang.String REPLACE_OPERATION,private static final java.lang.String UPDATE_OPERATION