use of retrofit2.http in project iNGAGE by davis123123.
the class UserRecentCommentHandler method enqueue.
// save recent comment in database
public void enqueue(String username, String thread_id, String messageText, String side, String ip) {
HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
logging.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
httpClient.addInterceptor(logging);
String url = "http://" + ip + "/track_user_comment.php/";
Retrofit retrofit = new Retrofit.Builder().client(httpClient.build()).addConverterFactory(GsonConverterFactory.create()).baseUrl(url).build();
Interface service = retrofit.create(Interface.class);
Call<ResponseBody> call = service.post(username, thread_id, messageText, side, ip);
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
Log.i("STATE", "Retrofit response code: " + response.code());
if (response.isSuccessful()) {
Log.i("STATE", "Retrofit POST Success");
try {
serverResponse = response.body().string();
Log.i("STATE", "Retrofit reponse: " + serverResponse);
} catch (IOException e) {
e.printStackTrace();
}
} else {
Log.i("Retrofit Error Code:", String.valueOf(response.code()));
Log.i("Retrofit Error Body", response.errorBody().toString());
}
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
Log.i("STATE", "Retrofit Failure");
}
});
}
use of retrofit2.http in project SeeWeather by xcc3641.
the class RetrofitSingleton method initOkHttp.
private static void initOkHttp() {
OkHttpClient.Builder builder = new OkHttpClient.Builder();
// 缓存 http://www.jianshu.com/p/93153b34310e
File cacheFile = new File(C.NET_CACHE);
Cache cache = new Cache(cacheFile, 1024 * 1024 * 50);
Interceptor cacheInterceptor = chain -> {
Request request = chain.request();
if (!Util.isNetworkConnected(BaseApplication.getAppContext())) {
request = request.newBuilder().cacheControl(CacheControl.FORCE_CACHE).build();
}
Response response = chain.proceed(request);
Response.Builder newBuilder = response.newBuilder();
if (Util.isNetworkConnected(BaseApplication.getAppContext())) {
int maxAge = 0;
// 有网络时 设置缓存超时时间0个小时
newBuilder.header("Cache-Control", "public, max-age=" + maxAge);
} else {
// 无网络时,设置超时为4周
int maxStale = 60 * 60 * 24 * 28;
newBuilder.header("Cache-Control", "public, only-if-cached, max-stale=" + maxStale);
}
return newBuilder.build();
};
builder.cache(cache).addInterceptor(cacheInterceptor);
if (BuildConfig.DEBUG) {
builder.addNetworkInterceptor(new StethoInterceptor());
}
// 设置超时
builder.connectTimeout(15, TimeUnit.SECONDS);
builder.readTimeout(20, TimeUnit.SECONDS);
builder.writeTimeout(20, TimeUnit.SECONDS);
// 错误重连
builder.retryOnConnectionFailure(true);
sOkHttpClient = builder.build();
}
use of retrofit2.http in project mobile-sdk-android by meniga.
the class MockClient method getApi.
public static MenigaAPI getApi(Interceptor myInterceptor) {
OkHttpClient client = new OkHttpClient.Builder().addInterceptor(myInterceptor).build();
final Retrofit retrofit = new Retrofit.Builder().addConverterFactory(new MenigaTransactionsConverter()).addConverterFactory(new MenigaFeedConverter(new MockFeedItemFactory(), GsonProvider.getGson())).addConverterFactory(new MenigaCategoryConverter()).addConverterFactory(new MenigaOfferConverter()).addConverterFactory(new MenigaRedemptionConverter(GsonProvider.getGson())).addConverterFactory(new MenigaReimbursementAccountConverter()).addConverterFactory(new MenigaIdNameKeyValConverter()).addConverterFactory(new MenigaChallengesConverter(new ChallengeItemFactory())).addConverterFactory(new MenigaFeedItemConverter(new MockFeedItemFactory())).addConverterFactory(new MenigaBaseConverter()).addConverterFactory(GsonConverterFactory.create()).baseUrl("http://meniga.is/api/").client(client).build();
return retrofit.create(MenigaAPI.class);
}
use of retrofit2.http in project mobile-sdk-android by meniga.
the class WebClientTest method testSpecialEndpointsAndTimeout.
@Test
public void testSpecialEndpointsAndTimeout() throws IllegalAccessException {
MenigaSettings settings = new MenigaSettings.Builder().endpoint(HttpUrl.parse("http://example.com")).authenticator(new BasicAuthenticator()).timeout(20).addEndpointForService(Service.TRANSACTIONS, "http://example.transactions.com").addEndpointForServiceWithTimeout(Service.ACCOUNTS, "http://example.accounts.com", 100).build();
MenigaSDK.init(settings);
Map<Service, ?> services = MenigaSDK.executor().getApis();
assertThat(MenigaSDK.executor().getApis()).containsKey(Service.TRANSACTIONS);
assertThat(MenigaSDK.executor().getApis()).containsKey(Service.ACCOUNTS);
OkHttpClient client = getOktHttpClient(services, Service.TRANSACTIONS);
Retrofit retrofit = getRetrofit(services, Service.TRANSACTIONS);
assertThat(retrofit).isNotNull();
assertThat(retrofit.baseUrl().toString()).isEqualTo("http://example.transactions.com/");
assertThat(client).isNotNull();
assertThat(client.writeTimeoutMillis()).isEqualTo(20000);
assertThat(client.readTimeoutMillis()).isEqualTo(20000);
assertThat(client.connectTimeoutMillis()).isEqualTo(20000);
client = getOktHttpClient(services, Service.ACCOUNTS);
retrofit = getRetrofit(services, Service.ACCOUNTS);
assertThat(retrofit).isNotNull();
assertThat(retrofit.baseUrl().toString()).isEqualTo("http://example.accounts.com/");
assertThat(client).isNotNull();
assertThat(client.writeTimeoutMillis()).isEqualTo(100000);
assertThat(client.readTimeoutMillis()).isEqualTo(100000);
assertThat(client.connectTimeoutMillis()).isEqualTo(100000);
}
use of retrofit2.http in project Pokemap by omkarmoghe.
the class GoogleManager method authUser.
@Deprecated
@SuppressWarnings({ "deprecation", "unused" })
public void authUser(final LoginListener listener) {
HttpUrl url = HttpUrl.parse(OAUTH_ENDPOINT).newBuilder().addQueryParameter("client_id", CLIENT_ID).addQueryParameter("scope", "openid email https://www.googleapis.com/auth/userinfo.email").addQueryParameter("response_type", "code").addQueryParameter("redirect_uri", "http://127.0.0.1:9004").build();
Callback<GoogleService.AuthRequest> googleCallback = new Callback<GoogleService.AuthRequest>() {
@Override
public void onResponse(Call<GoogleService.AuthRequest> call, Response<GoogleService.AuthRequest> response) {
GoogleService.AuthRequest body = response.body();
if (body != null) {
listener.authRequested(body);
} else {
Log.e(TAG, "Google login failed while authenticating. response.body() is null.");
listener.authFailed("Google login failed while authenticating");
}
}
@Override
public void onFailure(Call<GoogleService.AuthRequest> call, Throwable t) {
t.printStackTrace();
Log.e(TAG, "Google authentication failed when calling authUser(). googleCallback's onFailure() threw: " + t.getMessage());
listener.authFailed("Failed on getting the information for the user auth");
}
};
if (mGoogleService != null) {
Call<GoogleService.AuthRequest> call = mGoogleService.requestAuth(url.toString());
call.enqueue(googleCallback);
}
}
Aggregations