MeteoSystem/app/src/main/java/cc/pogoda/mobile/meteosystem/dao/TrendDao.java

66 wiersze
1.5 KiB
Java
Czysty Zwykły widok Historia

2021-12-10 10:21:06 +00:00
package cc.pogoda.mobile.meteosystem.dao;
import static cc.pogoda.mobile.meteosystem.config.WebIoConfig.TIMEOUT_SECOND;
2022-01-06 21:06:53 +00:00
import org.tinylog.Logger;
import java.io.IOException;
2021-12-10 10:21:06 +00:00
import cc.pogoda.mobile.meteosystem.type.web.Trend;
import cc.pogoda.mobile.meteosystem.web.RestClientConfig;
import cc.pogoda.mobile.meteosystem.web.TrendConsumer;
import retrofit2.Response;
public class TrendDao {
Response<Trend> trend;
String station = null;
class Worker implements Runnable {
2021-10-16 20:41:14 +00:00
RestClientConfig restClient;
@Override
public void run() {
restClient = new RestClientConfig();
TrendConsumer trendConsumer = restClient.getWeatherStationClient().create(TrendConsumer.class);
try {
trend = trendConsumer.getTrendForStation(station).execute();
}
catch (IOException e) {
2022-01-06 21:06:53 +00:00
Logger.error("[TrendDao][Worker][Exception][e = " + e.getLocalizedMessage() +"]");
2021-10-16 20:41:14 +00:00
e.printStackTrace();
}
}
}
public Trend getStationTrend(String station) {
Trend out = new Trend();
this.station = station;
Thread thread = new Thread(new Worker());
thread.start();
try {
thread.join();
if (trend != null) {
out = trend.body();
}
} catch (InterruptedException e) {
e.printStackTrace();
}
2021-10-16 20:41:14 +00:00
catch (NullPointerException e) {
e.printStackTrace();
}
return out;
}
}