use of se.oort.diplicity.apigen.TickerUnserializer in project android-diplicity by zond.
the class MessagingService method decodeDataPayload.
public static DiplicityJSON decodeDataPayload(String diplicityJSON) {
if (diplicityJSON == null) {
return null;
}
try {
byte[] compressedJSON = Base64.decode(diplicityJSON, Base64.DEFAULT);
Inflater decompresser = new Inflater();
decompresser.setInput(compressedJSON, 0, compressedJSON.length);
byte[] result = new byte[8192];
int resultLength = decompresser.inflate(result);
decompresser.end();
byte[] actualResult = Arrays.copyOfRange(result, 0, resultLength);
Gson gson = new GsonBuilder().registerTypeAdapter(Ticker.class, new TickerUnserializer()).create();
return gson.fromJson(new String(actualResult, "UTF-8"), DiplicityJSON.class);
} catch (UnsupportedEncodingException e) {
throw new RuntimeExecutionException(e);
} catch (DataFormatException e) {
throw new RuntimeException(e);
}
}
use of se.oort.diplicity.apigen.TickerUnserializer in project android-diplicity by zond.
the class RetrofitActivity method recreateServices.
protected void recreateServices() {
AuthenticatingCallAdapterFactory adapterFactory = new AuthenticatingCallAdapterFactory();
OkHttpClient.Builder builder = new OkHttpClient.Builder();
builder.addInterceptor(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Request toIssue = chain.request().newBuilder().addHeader("Accept", "application/json; charset=UTF-8").addHeader("X-Diplicity-API-Level", "" + DIPLICITY_API_LEVEL).build();
if (getLocalDevelopmentMode() && !getLocalDevelopmentModeFakeID().equals("")) {
HttpUrl url = toIssue.url().newBuilder().addQueryParameter("fake-id", getLocalDevelopmentModeFakeID()).build();
toIssue = toIssue.newBuilder().url(url).build();
} else if (!getAuthToken().equals("")) {
toIssue = toIssue.newBuilder().addHeader("Authorization", "bearer " + getAuthToken()).build();
}
Log.d("Diplicity", "" + toIssue.method() + "ing " + toIssue.url());
return chain.proceed(toIssue);
}
});
builder.connectTimeout(10, TimeUnit.SECONDS).writeTimeout(10, TimeUnit.SECONDS).readTimeout(10, TimeUnit.SECONDS);
Gson gson = new GsonBuilder().registerTypeAdapter(Ticker.class, new TickerUnserializer()).registerTypeAdapter(Game.class, new GameUnserializer(this)).create();
Retrofit retrofit = new Retrofit.Builder().baseUrl(getBaseURL()).addConverterFactory(GsonConverterFactory.create(gson)).addCallAdapterFactory(adapterFactory).client(builder.build()).build();
gameService = retrofit.create(GameService.class);
userStatsService = retrofit.create(UserStatsService.class);
memberService = retrofit.create(MemberService.class);
rootService = retrofit.create(RootService.class);
variantService = retrofit.create(VariantService.class);
optionsService = retrofit.create(OptionsService.class);
orderService = retrofit.create(OrderService.class);
phaseService = retrofit.create(PhaseService.class);
channelService = retrofit.create(ChannelService.class);
messageService = retrofit.create(MessageService.class);
phaseResultService = retrofit.create(PhaseResultService.class);
gameResultService = retrofit.create(GameResultService.class);
phaseStateService = retrofit.create(PhaseStateService.class);
gameStateService = retrofit.create(GameStateService.class);
userConfigService = retrofit.create(UserConfigService.class);
banService = retrofit.create(BanService.class);
}
Aggregations