2222import static java .nio .charset .StandardCharsets .UTF_8 ;
2323
2424import com .google .api .client .extensions .appengine .http .UrlFetchTransport ;
25- import com .google .api .client .http .HttpRequest ;
2625import com .google .api .client .http .HttpRequestInitializer ;
2726import com .google .api .client .http .HttpTransport ;
2827import com .google .api .client .http .javanet .NetHttpTransport ;
@@ -61,8 +60,6 @@ public abstract class ServiceOptions<
6160 private final AuthCredentials authCredentials ;
6261 private final RetryParams retryParams ;
6362 private final ServiceRpcFactory <ServiceRpcT , OptionsT > serviceRpcFactory ;
64- private final int connectTimeout ;
65- private final int readTimeout ;
6663
6764 public interface HttpTransportFactory extends Serializable {
6865 HttpTransport create ();
@@ -105,8 +102,6 @@ protected abstract static class Builder<
105102 private AuthCredentials authCredentials ;
106103 private RetryParams retryParams ;
107104 private ServiceRpcFactory <ServiceRpcT , OptionsT > serviceRpcFactory ;
108- private int connectTimeout = -1 ;
109- private int readTimeout = -1 ;
110105
111106 protected Builder () {}
112107
@@ -126,89 +121,35 @@ protected B self() {
126121 return (B ) this ;
127122 }
128123
129- /**
130- * Sets project id.
131- *
132- * @return the builder.
133- */
134124 public B projectId (String projectId ) {
135125 this .projectId = projectId ;
136126 return self ();
137127 }
138128
139- /**
140- * Sets service host.
141- *
142- * @return the builder.
143- */
144129 public B host (String host ) {
145130 this .host = host ;
146131 return self ();
147132 }
148133
149- /**
150- * Sets the transport factory.
151- *
152- * @return the builder.
153- */
154134 public B httpTransportFactory (HttpTransportFactory httpTransportFactory ) {
155135 this .httpTransportFactory = httpTransportFactory ;
156136 return self ();
157137 }
158138
159- /**
160- * Sets the service authentication credentials.
161- *
162- * @return the builder.
163- */
164139 public B authCredentials (AuthCredentials authCredentials ) {
165140 this .authCredentials = authCredentials ;
166141 return self ();
167142 }
168143
169- /**
170- * Sets configuration parameters for request retries.
171- *
172- * @return the builder.
173- */
174144 public B retryParams (RetryParams retryParams ) {
175145 this .retryParams = retryParams ;
176146 return self ();
177147 }
178148
179- /**
180- * Sets the factory for rpc services.
181- *
182- * @return the builder
183- */
184149 public B serviceRpcFactory (ServiceRpcFactory <ServiceRpcT , OptionsT > serviceRpcFactory ) {
185150 this .serviceRpcFactory = serviceRpcFactory ;
186151 return self ();
187152 }
188-
189- /**
190- * Sets the timeout in milliseconds to establish a connection.
191- *
192- * @param connectTimeout connection timeout in milliseconds. 0 for an infinite timeout, a
193- * negative number for the default value (20000).
194- * @return the builder.
195- */
196- public B connectTimeout (int connectTimeout ) {
197- this .connectTimeout = connectTimeout ;
198- return self ();
199- }
200-
201- /**
202- * Sets the timeout in milliseconds to read data from an established connection.
203- *
204- * @param readTimeout read timeout in milliseconds. 0 for an infinite timeout, a
205- * negative number for the default value (20000).
206- * @return the builder.
207- */
208- public B readTimeout (int readTimeout ) {
209- this .readTimeout = readTimeout ;
210- return self ();
211- }
212153 }
213154
214155 protected ServiceOptions (Builder <ServiceRpcT , OptionsT , ?> builder ) {
@@ -219,8 +160,6 @@ protected ServiceOptions(Builder<ServiceRpcT, OptionsT, ?> builder) {
219160 authCredentials = firstNonNull (builder .authCredentials , defaultAuthCredentials ());
220161 retryParams = builder .retryParams ;
221162 serviceRpcFactory = builder .serviceRpcFactory ;
222- connectTimeout = builder .connectTimeout ;
223- readTimeout = builder .readTimeout ;
224163 }
225164
226165 private static AuthCredentials defaultAuthCredentials () {
@@ -338,84 +277,33 @@ protected static String getAppEngineProjectId() {
338277
339278 protected abstract Set <String > scopes ();
340279
341- /**
342- * Returns the project id.
343- */
344280 public String projectId () {
345281 return projectId ;
346282 }
347283
348- /**
349- * Returns the service host.
350- */
351284 public String host () {
352285 return host ;
353286 }
354287
355- /**
356- * Returns the transport factory.
357- */
358288 public HttpTransportFactory httpTransportFactory () {
359289 return httpTransportFactory ;
360290 }
361291
362- /**
363- * Returns the authentication credentials.
364- */
365292 public AuthCredentials authCredentials () {
366293 return authCredentials ;
367294 }
368295
369- /**
370- * Returns configuration parameters for request retries.
371- */
372296 public RetryParams retryParams () {
373297 return retryParams != null ? retryParams : RetryParams .noRetries ();
374298 }
375299
376- /**
377- * Returns the factory for rpc services.
378- */
379300 public ServiceRpcFactory <ServiceRpcT , OptionsT > serviceRpcFactory () {
380301 return serviceRpcFactory ;
381302 }
382303
383- /**
384- * Returns a request initializer responsible for initializing requests according to service
385- * options.
386- */
387304 public HttpRequestInitializer httpRequestInitializer () {
388305 HttpTransport httpTransport = httpTransportFactory .create ();
389- final HttpRequestInitializer baseRequestInitializer =
390- authCredentials ().httpRequestInitializer (httpTransport , scopes ());
391- return new HttpRequestInitializer () {
392- @ Override
393- public void initialize (HttpRequest httpRequest ) throws IOException {
394- baseRequestInitializer .initialize (httpRequest );
395- if (connectTimeout >= 0 ) {
396- httpRequest .setConnectTimeout (connectTimeout );
397- }
398- if (readTimeout >= 0 ) {
399- httpRequest .setReadTimeout (readTimeout );
400- }
401- }
402- };
403- }
404-
405- /**
406- * Returns the timeout in milliseconds to establish a connection. 0 is an infinite timeout, a
407- * negative number is the default value (20000).
408- */
409- public int connectTimeout () {
410- return connectTimeout ;
411- }
412-
413- /**
414- * Returns the timeout in milliseconds to read from an established connection. 0 is an infinite
415- * timeout, a negative number is the default value (20000).
416- */
417- public int readTimeout () {
418- return readTimeout ;
306+ return authCredentials ().httpRequestInitializer (httpTransport , scopes ());
419307 }
420308
421309 protected int baseHashCode () {
0 commit comments