本文整理汇总了Java中com.squareup.okhttp.OkHttpClient.setCache方法的典型用法代码示例。如果您正苦于以下问题:Java OkHttpClient.setCache方法的具体用法?Java OkHttpClient.setCache怎么用?Java OkHttpClient.setCache使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.squareup.okhttp.OkHttpClient
的用法示例。
在下文中一共展示了OkHttpClient.setCache方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createOkHttpClient
import com.squareup.okhttp.OkHttpClient; //导入方法依赖的package包/类
private OkHttpClient createOkHttpClient() {
OkHttpClient okHttpClient = new OkHttpClient();
// if we have response cache let's use it!
if (responseCache != null) {
okHttpClient.setCache(responseCache);
}
// add auth interceptors
switch (authType) {
case OAUTH:
if (oAuthConsumer == null) {
throw new IllegalStateException("a RetrofitHttpOAuthConsumer must be created before creating OKClient");
}
okHttpClient.interceptors().add(new OAuthSigningInterceptor(oAuthConsumer));
break;
case API_TOKEN:
okHttpClient.interceptors().add(new ApiTokenSigningInterceptor(apiToken));
break;
default:
throw new IllegalStateException("AuthType " + authType + " isn't supported.");
}
// add all other application interceptors
if (applicationInterceptors != null && !applicationInterceptors.isEmpty()) {
okHttpClient.interceptors().addAll(applicationInterceptors);
}
// add all other network interceptors
if (networkInterceptors != null && !networkInterceptors.isEmpty()) {
okHttpClient.networkInterceptors().addAll(networkInterceptors);
}
return okHttpClient;
}
示例2: createStatic
import com.squareup.okhttp.OkHttpClient; //导入方法依赖的package包/类
public static <T> T createStatic(final Context context, String baseUrl, Class<T> clazz) {
final OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.setCache(new Cache(context.getApplicationContext().getCacheDir(),
CACHE_SIZE));
okHttpClient.setConnectTimeout(40, TimeUnit.SECONDS);
RequestInterceptor interceptor = new RequestInterceptor() {
PreferencesUtility prefs = PreferencesUtility.getInstance(context);
@Override
public void intercept(RequestFacade request) {
//7-days cache
request.addHeader("Cache-Control", String.format("max-age=%d,%smax-stale=%d", Integer.valueOf(60 * 60 * 24 * 7), prefs.loadArtistImages() ? "" : "only-if-cached,", Integer.valueOf(31536000)));
request.addHeader("Connection", "keep-alive");
}
};
RestAdapter.Builder builder = new RestAdapter.Builder()
.setEndpoint(baseUrl)
.setRequestInterceptor(interceptor)
.setClient(new OkClient(okHttpClient));
return builder
.build()
.create(clazz);
}
示例3: okHttp2Client
import com.squareup.okhttp.OkHttpClient; //导入方法依赖的package包/类
@Bean
@ConditionalOnMissingBean
public OkHttpClient okHttp2Client() throws IOException {
OkHttpClient okHttpClient = new OkHttpClient();
if (properties.getCache().getMode() != OkHttpProperties.Cache.Mode.NONE) {
okHttpClient.setCache(okHttp2Cache());
}
if (cookieHandler != null) {
okHttpClient.setCookieHandler(cookieHandler);
}
OkHttpProperties.Timeout connectTimeout = properties.getConnectTimeout();
if (connectTimeout != null) {
okHttpClient.setConnectTimeout(connectTimeout.getValue(), connectTimeout.getUnit());
}
OkHttpProperties.Timeout readTimeout = properties.getReadTimeout();
if (readTimeout != null) {
okHttpClient.setReadTimeout(readTimeout.getValue(), readTimeout.getUnit());
}
OkHttpProperties.Timeout writeTimeout = properties.getWriteTimeout();
if (writeTimeout != null) {
okHttpClient.setWriteTimeout(writeTimeout.getValue(), writeTimeout.getUnit());
}
if (dns != null) {
okHttpClient.setDns(dns);
}
okHttpClient.setFollowRedirects(properties.isFollowRedirects());
okHttpClient.setFollowSslRedirects(properties.isFollowSslRedirects());
okHttpClient.setRetryOnConnectionFailure(properties.isRetryOnConnectionFailure());
if (applicationInterceptors != null && !applicationInterceptors.isEmpty()) {
okHttpClient.interceptors().addAll(applicationInterceptors);
}
if (networkInterceptors != null && !networkInterceptors.isEmpty()) {
okHttpClient.networkInterceptors().addAll(networkInterceptors);
}
if (configurers != null) {
for (Configurer<OkHttpClient> configurer : configurers) {
configurer.configure(okHttpClient);
}
}
return okHttpClient;
}