@Provides
@Singleton
Picasso providePicasso(Application app, OkHttpClient client) {
// Create client for picasso with global client specs
OkHttpClient picassoClient = client.clone();
// Intercept image loading requests to add auth header
picassoClient.interceptors().add(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
String url = chain.request().urlString();
// Get the current server from secure storage
String server = Hawk.get(Preferences.KEY_SERVER);
// Add the basic auth header only in Jira server requests
if (url.contains(server)) {
Request.Builder builder = chain.request().newBuilder();
Header header = BasicAuth.getBasicAuthHeader();
if (header != null) {
builder.addHeader(header.getName(), header.getValue());
}
return chain.proceed(builder.build());
}
// Skip image requests that are not for the current Jira server
else {
return chain.proceed(chain.request());
}
}
});
return new Picasso.Builder(app)
.downloader(new OkHttpDownloader(picassoClient))
.loggingEnabled(BuildConfig.DEBUG)
.build();
}
DataModule.java 文件源码
java
阅读 30
收藏 0
点赞 0
评论 0
项目:gojira
作者:
评论列表
文章目录