kopia lustrzana https://github.com/SP8EBC/MeteoSystem
41 wiersze
1.5 KiB
Java
41 wiersze
1.5 KiB
Java
package cc.pogoda.mobile.meteosystem.web;
|
|
|
|
import static cc.pogoda.mobile.meteosystem.config.WebIoConfig.TIMEOUT_SECOND;
|
|
|
|
import com.google.gson.Gson;
|
|
import com.google.gson.GsonBuilder;
|
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
import cc.pogoda.mobile.meteosystem.type.CustomLocalDateTime;
|
|
import cc.pogoda.mobile.meteosystem.web.deserializer.CustomLocalDateTimeDeserializer;
|
|
import okhttp3.OkHttpClient;
|
|
import okhttp3.logging.HttpLoggingInterceptor;
|
|
import retrofit2.Retrofit;
|
|
import retrofit2.converter.gson.GsonConverterFactory;
|
|
|
|
public class RestClientConfig {
|
|
|
|
public Retrofit getWeatherStationClient() {
|
|
Retrofit out = null;
|
|
|
|
Gson gson = new GsonBuilder().registerTypeAdapter(CustomLocalDateTime.class, new CustomLocalDateTimeDeserializer()).setLenient().create();
|
|
|
|
OkHttpClient.Builder builder = new OkHttpClient.Builder();
|
|
|
|
builder.readTimeout(TIMEOUT_SECOND, TimeUnit.SECONDS);
|
|
builder.writeTimeout(TIMEOUT_SECOND, TimeUnit.SECONDS);
|
|
builder.connectTimeout(TIMEOUT_SECOND, TimeUnit.SECONDS);
|
|
builder.callTimeout(TIMEOUT_SECOND, TimeUnit.SECONDS);
|
|
|
|
HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor();
|
|
loggingInterceptor.setLevel(HttpLoggingInterceptor.Level.HEADERS);
|
|
|
|
OkHttpClient client = builder.addInterceptor(loggingInterceptor).build();//new OkHttpClient(builder);
|
|
|
|
out = new Retrofit.Builder().baseUrl("http://pogoda.cc:8080/").addConverterFactory(GsonConverterFactory.create(gson)).client(client).build();
|
|
|
|
return out;
|
|
}
|
|
}
|