Blocks until all work has completed execution after a shutdown request, or the timeout occurs,
or the current thread is interrupted, whichever happens first.
Returns true if all work has completed following shut down. Note that isTerminated is never
true unless either shutdown or shutdownNow was called first.
Initiates an orderly shutdown in which previously submitted work is finished, but no new work
will be accepted. Invocation has no additional effect if already shut down.
This method does not wait for previously submitted work to complete execution. Use
awaitTermination to do that.
shutdownNow()
publicvoidshutdownNow()
Attempts to stop all actively executing work and halts the processing of waiting work.
This method does not wait for actively executing work to terminate. Use awaitTermination to
do that.
There are no guarantees beyond best-effort attempts to stop processing actively executing
work. For example, typical implementations will cancel via Thread.interrupt(), so any task that
fails to respond to interrupts may never terminate.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[[["\u003cp\u003eThe latest version of \u003ccode\u003eManagedHttpJsonChannel\u003c/code\u003e is 2.63.1, which is part of the \u003ccode\u003ecom.google.api.gax.httpjson\u003c/code\u003e package, and there are numerous other previous versions also available.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eManagedHttpJsonChannel\u003c/code\u003e implements both \u003ccode\u003eHttpJsonChannel\u003c/code\u003e and \u003ccode\u003eBackgroundResource\u003c/code\u003e interfaces, providing functionality for issuing HTTP-JSON calls and managing background resources.\u003c/p\u003e\n"],["\u003cp\u003eThe class offers methods for managing its lifecycle, such as \u003ccode\u003eshutdown()\u003c/code\u003e, \u003ccode\u003eshutdownNow()\u003c/code\u003e, \u003ccode\u003eawaitTermination()\u003c/code\u003e, \u003ccode\u003eisShutdown()\u003c/code\u003e, and \u003ccode\u003eisTerminated()\u003c/code\u003e, in addition to providing the ability to create new instances with \u003ccode\u003enewBuilder()\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eManagedHttpJsonChannel\u003c/code\u003e provides a method to create a new call using \u003ccode\u003enewCall(ApiMethodDescriptor<RequestT,ResponseT> methodDescriptor, HttpJsonCallOptions callOptions)\u003c/code\u003e for a specified method descriptor and call options, returning an \u003ccode\u003eHttpJsonClientCall\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThis \u003ccode\u003eManagedHttpJsonChannel\u003c/code\u003e class inherits several methods from the \u003ccode\u003eObject\u003c/code\u003e class, such as \u003ccode\u003eclone()\u003c/code\u003e, \u003ccode\u003eequals(Object)\u003c/code\u003e, \u003ccode\u003efinalize()\u003c/code\u003e, and \u003ccode\u003ehashCode()\u003c/code\u003e, among others.\u003c/p\u003e\n"]]],[],null,["# Class ManagedHttpJsonChannel (2.69.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.69.0 (latest)](/java/docs/reference/gax/latest/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.68.2](/java/docs/reference/gax/2.68.2/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.67.0](/java/docs/reference/gax/2.67.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.66.0](/java/docs/reference/gax/2.66.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.65.0](/java/docs/reference/gax/2.65.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.63.1](/java/docs/reference/gax/2.63.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.62.0](/java/docs/reference/gax/2.62.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.61.0](/java/docs/reference/gax/2.61.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.60.0](/java/docs/reference/gax/2.60.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.59.1](/java/docs/reference/gax/2.59.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.58.0](/java/docs/reference/gax/2.58.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.57.0](/java/docs/reference/gax/2.57.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.55.0](/java/docs/reference/gax/2.55.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.54.1](/java/docs/reference/gax/2.54.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.53.0](/java/docs/reference/gax/2.53.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.52.0](/java/docs/reference/gax/2.52.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.51.0](/java/docs/reference/gax/2.51.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.50.0](/java/docs/reference/gax/2.50.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.49.0](/java/docs/reference/gax/2.49.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.48.1](/java/docs/reference/gax/2.48.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.47.0](/java/docs/reference/gax/2.47.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.46.1](/java/docs/reference/gax/2.46.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.45.0](/java/docs/reference/gax/2.45.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.43.0](/java/docs/reference/gax/2.43.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.42.0](/java/docs/reference/gax/2.42.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.41.0](/java/docs/reference/gax/2.41.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.39.0](/java/docs/reference/gax/2.39.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.38.0](/java/docs/reference/gax/2.38.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.37.0](/java/docs/reference/gax/2.37.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.36.0](/java/docs/reference/gax/2.36.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.35.0](/java/docs/reference/gax/2.35.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.34.1](/java/docs/reference/gax/2.34.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.33.0](/java/docs/reference/gax/2.33.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.32.1](/java/docs/reference/gax/2.32.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.31.1](/java/docs/reference/gax/2.31.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.30.1](/java/docs/reference/gax/2.30.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.24.0](/java/docs/reference/gax/2.24.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.23.3](/java/docs/reference/gax/2.23.3/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.22.0](/java/docs/reference/gax/2.22.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.21.0](/java/docs/reference/gax/2.21.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.20.1](/java/docs/reference/gax/2.20.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.19.6](/java/docs/reference/gax/2.19.6/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.18.7](/java/docs/reference/gax/2.18.7/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.17.0](/java/docs/reference/gax/2.17.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.16.0](/java/docs/reference/gax/2.16.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.15.0](/java/docs/reference/gax/2.15.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.14.0](/java/docs/reference/gax/2.14.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.13.0](/java/docs/reference/gax/2.13.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.12.2](/java/docs/reference/gax/2.12.2/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.11.0](/java/docs/reference/gax/2.11.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.10.0](/java/docs/reference/gax/2.10.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.9.0](/java/docs/reference/gax/2.9.0/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.8.1](/java/docs/reference/gax/2.8.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel)\n- [2.7.1](/java/docs/reference/gax/2.7.1/com.google.api.gax.httpjson.ManagedHttpJsonChannel) \n\n public class ManagedHttpJsonChannel implements HttpJsonChannel, BackgroundResource\n\nImplementation of HttpJsonChannel which can issue http-json calls. \n\nInheritance\n-----------\n\n[java.lang.Object](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html) \\\u003e ManagedHttpJsonChannel \n\nImplements\n----------\n\n[HttpJsonChannel](/java/docs/reference/gax/latest/com.google.api.gax.httpjson.HttpJsonChannel), [BackgroundResource](/java/docs/reference/gax/latest/com.google.api.gax.core.BackgroundResource) \n\nInherited Members\n-----------------\n\n[Object.clone()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#clone--) \n[Object.equals(Object)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-) \n[Object.finalize()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#finalize--) \n[Object.getClass()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass--) \n[Object.hashCode()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--) \n[Object.notify()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notify--) \n[Object.notifyAll()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notifyAll--) \n[Object.toString()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--) \n[Object.wait()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait--) \n[Object.wait(long)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-) \n[Object.wait(long,int)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-int-)\n\nStatic Methods\n--------------\n\n### newBuilder()\n\n public static ManagedHttpJsonChannel.Builder newBuilder()\n\nConstructors\n------------\n\n### ManagedHttpJsonChannel()\n\n protected ManagedHttpJsonChannel()\n\nMethods\n-------\n\n### \\\u003cRequestT,ResponseT\\\u003enewCall(ApiMethodDescriptor\\\u003cRequestT,ResponseT\\\u003e methodDescriptor, HttpJsonCallOptions callOptions)\n\n public HttpJsonClientCall\u003cRequestT,ResponseT\u003e \u003cRequestT,ResponseT\u003enewCall(ApiMethodDescriptor\u003cRequestT,ResponseT\u003e methodDescriptor, HttpJsonCallOptions callOptions)\n\n### awaitTermination(long duration, TimeUnit unit)\n\n public boolean awaitTermination(long duration, TimeUnit unit)\n\nBlocks until all work has completed execution after a shutdown request, or the timeout occurs,\nor the current thread is interrupted, whichever happens first.\n\n### close()\n\n public void close()\n\n### isShutdown()\n\n public boolean isShutdown()\n\nReturns true if this background resource has been shut down.\n\n### isTerminated()\n\n public boolean isTerminated()\n\nReturns true if all work has completed following shut down. Note that isTerminated is never\ntrue unless either shutdown or shutdownNow was called first.\n\n### shutdown()\n\n public synchronized void shutdown()\n\nInitiates an orderly shutdown in which previously submitted work is finished, but no new work\nwill be accepted. Invocation has no additional effect if already shut down.\n\nThis method does not wait for previously submitted work to complete execution. Use\nawaitTermination to do that.\n\n### shutdownNow()\n\n public void shutdownNow()\n\nAttempts to stop all actively executing work and halts the processing of waiting work.\n\nThis method does not wait for actively executing work to terminate. Use awaitTermination to\ndo that.\n\nThere are no guarantees beyond best-effort attempts to stop processing actively executing\nwork. For example, typical implementations will cancel via Thread.interrupt(), so any task that\nfails to respond to interrupts may never terminate."]]