@@ -48,32 +48,109 @@ public abstract class ResumableUploadCallable<RequestT, ResponseT> {
4848 protected ResumableUploadCallable () {}
4949
5050 /**
51- * Performs a new resumable upload asynchronously.
51+ * Performs a new resumable upload asynchronously with default call context and default settings .
5252 *
5353 * <p>The provided {@code payload} stream is consumed asynchronously by the returned {@link
5454 * ResumableUploadFuture} and will be closed automatically upon completion, failure, or
5555 * cancellation.
5656 *
5757 * @param request the request message
5858 * @param payload the data payload input stream to upload and close
59- * @param settings call settings overrides; may be {@code null}
59+ * @return future for tracking and controlling the upload
60+ */
61+ public ResumableUploadFuture <ResponseT > futureCall (RequestT request , InputStream payload ) {
62+ return futureCall (request , payload , null , null );
63+ }
64+
65+ /**
66+ * Performs a new resumable upload asynchronously with a call context override and default
67+ * settings.
68+ *
69+ * <p>The provided {@code payload} stream is consumed asynchronously by the returned {@link
70+ * ResumableUploadFuture} and will be closed automatically upon completion, failure, or
71+ * cancellation.
72+ *
73+ * @param request the request message
74+ * @param payload the data payload input stream to upload and close
75+ * @param context call context overrides (e.g. extra headers, credentials, timeout); may be {@code
76+ * null}
77+ * @return future for tracking and controlling the upload
78+ */
79+ public ResumableUploadFuture <ResponseT > futureCall (
80+ RequestT request , InputStream payload , @ Nullable ApiCallContext context ) {
81+ return futureCall (request , payload , context , null );
82+ }
83+
84+ /**
85+ * Performs a new resumable upload asynchronously with call context and settings overrides.
86+ *
87+ * <p>The provided {@code payload} stream is consumed asynchronously by the returned {@link
88+ * ResumableUploadFuture} and will be closed automatically upon completion, failure, or
89+ * cancellation.
90+ *
91+ * @param request the request message
92+ * @param payload the data payload input stream to upload and close
93+ * @param context call context overrides; may be {@code null}
94+ * @param settings request-level call settings overrides; may be {@code null}
6095 * @return future for tracking and controlling the upload
6196 */
6297 public abstract ResumableUploadFuture <ResponseT > futureCall (
63- RequestT request , InputStream payload , @ Nullable ResumableUploadCallSettings settings );
98+ RequestT request ,
99+ InputStream payload ,
100+ @ Nullable ApiCallContext context ,
101+ @ Nullable ResumableUploadCallSettings settings );
102+
103+ /**
104+ * Resumes an existing resumable upload session asynchronously with default call context and
105+ * default settings.
106+ *
107+ * <p>The provided {@code payload} stream is consumed asynchronously by the returned {@link
108+ * ResumableUploadFuture} and will be closed automatically upon completion, failure, or
109+ * cancellation.
110+ *
111+ * @param sessionUrl the upload session URL
112+ * @param payload the data payload input stream to upload and close
113+ * @return future for tracking and controlling the upload
114+ */
115+ public ResumableUploadFuture <ResponseT > resumeCall (String sessionUrl , InputStream payload ) {
116+ return resumeCall (sessionUrl , payload , null , null );
117+ }
118+
119+ /**
120+ * Resumes an existing resumable upload session asynchronously with a call context override and
121+ * default settings.
122+ *
123+ * <p>The provided {@code payload} stream is consumed asynchronously by the returned {@link
124+ * ResumableUploadFuture} and will be closed automatically upon completion, failure, or
125+ * cancellation.
126+ *
127+ * @param sessionUrl the upload session URL
128+ * @param payload the data payload input stream to upload and close
129+ * @param context call context overrides; may be {@code null}
130+ * @return future for tracking and controlling the upload
131+ */
132+ public ResumableUploadFuture <ResponseT > resumeCall (
133+ String sessionUrl , InputStream payload , @ Nullable ApiCallContext context ) {
134+ return resumeCall (sessionUrl , payload , context , null );
135+ }
64136
65137 /**
66- * Resumes an existing resumable upload session asynchronously using a saved session URL.
138+ * Resumes an existing resumable upload session asynchronously with call context and settings
139+ * overrides.
67140 *
68141 * <p>The provided {@code payload} stream is consumed asynchronously by the returned {@link
69142 * ResumableUploadFuture} and will be closed automatically upon completion, failure, or
70143 * cancellation.
71144 *
72145 * @param sessionUrl the upload session URL
73146 * @param payload the data payload input stream to upload and close
74- * @param settings call settings overrides; may be {@code null}
147+ * @param context call context overrides; may be {@code null}
148+ * @param settings request-level call settings overrides; may be {@code null}
75149 * @return future for tracking and controlling the upload
76150 */
77151 public abstract ResumableUploadFuture <ResponseT > resumeCall (
78- String sessionUrl , InputStream payload , @ Nullable ResumableUploadCallSettings settings );
152+ String sessionUrl ,
153+ InputStream payload ,
154+ @ Nullable ApiCallContext context ,
155+ @ Nullable ResumableUploadCallSettings settings );
79156}
0 commit comments