+++ /dev/null
-package adullact.publicrowdfunding.model.server.errorHandler;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-
-import adullact.publicrowdfunding.model.server.ServerObject;
-import adullact.publicrowdfunding.model.server.event.Event;
-import adullact.publicrowdfunding.model.server.request.Request;
-import retrofit.RetrofitError;
-
-/**
- * @author Ferrand and Nelaupe
- */
-public abstract class ErrorHandler
-<TRequest extends Request<TRequest, TEvent, TErrorHandler>,
-TEvent extends Event<TRequest, TEvent, TErrorHandler>,
-TErrorHandler extends ErrorHandler<TRequest, TEvent, TErrorHandler>>
-extends ServerObject<TRequest, TEvent, TErrorHandler> implements retrofit.ErrorHandler {
- private boolean m_networkError = false;
- private boolean m_serverError = false;
-
- public void manageCallback() {
- if(m_networkError) {
- event().errorNetwork();
- }
- if(m_serverError) {
- event().errorServer();
- }
- }
-
- @Override
- public Throwable handleError(RetrofitError error) {
- m_networkError = error.isNetworkError();
-
- if(error.getResponse().getStatus() == 500) {
- m_serverError = true;
- }
-
- return error;
- }
-
- private String streamToString(InputStream is) throws IOException {
- StringBuilder sb = new StringBuilder();
- BufferedReader rd = new BufferedReader(new InputStreamReader(is));
- String line;
- while ((line = rd.readLine()) != null) {
- sb.append(line);
- }
- return sb.toString();
- }
-}