1package eu.siacs.conversations.ui.util;
2
3import android.app.AlertDialog;
4import android.app.Dialog;
5import android.content.Context;
6import android.support.annotation.StringRes;
7
8import eu.siacs.conversations.R;
9import eu.siacs.conversations.services.QuickConversationsService;
10
11public class ApiErrorDialogHelper {
12
13 public static Dialog create(Context context, int code) {
14 @StringRes final int res;
15 switch (code) {
16 case QuickConversationsService.API_ERROR_AIRPLANE_MODE:
17 res = R.string.no_network_connection;
18 break;
19 case QuickConversationsService.API_ERROR_OTHER:
20 res = R.string.unknown_api_error_network;
21 break;
22 case QuickConversationsService.API_ERROR_CONNECT:
23 res = R.string.unable_to_connect_to_server;
24 break;
25 case QuickConversationsService.API_ERROR_SSL_HANDSHAKE:
26 res = R.string.unable_to_establish_secure_connection;
27 break;
28 case QuickConversationsService.API_ERROR_UNKNOWN_HOST:
29 res = R.string.unable_to_find_server;
30 break;
31 case 400:
32 res = R.string.invalid_user_input;
33 break;
34 case 502:
35 case 503:
36 case 504:
37 res = R.string.temporarily_unavailable;
38 break;
39 default:
40 res = R.string.unknown_api_error_response;
41 }
42 AlertDialog.Builder builder = new AlertDialog.Builder(context);
43 builder.setMessage(res);
44 builder.setPositiveButton(R.string.ok, null);
45 return builder.create();
46 }
47}