23 |
23 |
import android.app.Activity;
|
24 |
24 |
import android.app.AlertDialog;
|
25 |
25 |
import android.app.Dialog;
|
|
26 |
import android.app.ProgressDialog;
|
26 |
27 |
import android.content.Context;
|
27 |
28 |
import android.content.DialogInterface;
|
28 |
29 |
import android.content.Intent;
|
... | ... | |
34 |
35 |
import android.view.View.OnClickListener;
|
35 |
36 |
import android.widget.Button;
|
36 |
37 |
import android.widget.EditText;
|
37 |
|
import android.widget.ImageView;
|
38 |
38 |
import android.widget.LinearLayout;
|
39 |
39 |
import android.widget.TextView;
|
40 |
40 |
import android.widget.Toast;
|
41 |
41 |
|
|
42 |
import com.rackspace.cloud.servers.api.client.Account;
|
42 |
43 |
import com.rackspace.cloud.servers.api.client.CloudServersException;
|
43 |
44 |
import com.rackspace.cloud.servers.api.client.Flavor;
|
44 |
45 |
import com.rackspace.cloud.servers.api.client.Image;
|
... | ... | |
63 |
64 |
private Image[] images;
|
64 |
65 |
private String[] imageNames;
|
65 |
66 |
private String selectedImageId;
|
|
67 |
private boolean isPolling;
|
|
68 |
private PollServerTask pollServerTask;
|
|
69 |
private boolean canPoll;
|
66 |
70 |
|
67 |
71 |
/** Called when the activity is first created. */
|
68 |
72 |
@Override
|
... | ... | |
78 |
82 |
protected void onSaveInstanceState(Bundle outState) {
|
79 |
83 |
super.onSaveInstanceState(outState);
|
80 |
84 |
outState.putSerializable("server", server);
|
81 |
|
//outState.putBoolean("imageLoaded", imageLoaded);
|
|
85 |
if(pollServerTask != null && isPolling){
|
|
86 |
Log.d("info", "captin cancelling the polling");
|
|
87 |
pollServerTask.cancel(true);
|
|
88 |
}
|
|
89 |
outState.putBoolean("wasPolling", isPolling);
|
82 |
90 |
}
|
83 |
91 |
|
84 |
92 |
private void restoreState(Bundle state) {
|
|
93 |
if(state != null && state.containsKey("wasPolling") && state.getBoolean("wasPolling") == true){
|
|
94 |
pollServerTask = new PollServerTask();
|
|
95 |
pollServerTask.execute((Void[]) null);
|
|
96 |
}
|
85 |
97 |
if (state != null && state.containsKey("server")) {
|
86 |
98 |
server = (Server) state.getSerializable("server");
|
87 |
99 |
//imageLoaded = state.getBoolean("imageLoaded");
|
... | ... | |
104 |
116 |
|
105 |
117 |
}
|
106 |
118 |
*/
|
|
119 |
|
|
120 |
/*
|
|
121 |
* need to manage the polling task
|
|
122 |
* if the activity is stopped
|
|
123 |
*/
|
|
124 |
@Override
|
|
125 |
public void onStop(){
|
|
126 |
super.onStop();
|
|
127 |
if(pollServerTask != null && isPolling){
|
|
128 |
Log.d("info", "captin in onStop cancelling");
|
|
129 |
pollServerTask.cancel(true);
|
|
130 |
isPolling = true;
|
|
131 |
Log.d("info", "captin polling is true");
|
|
132 |
}
|
|
133 |
canPoll = false;
|
|
134 |
|
|
135 |
}
|
|
136 |
|
|
137 |
/*
|
|
138 |
* restart the pollingtask
|
|
139 |
* if it was running before
|
|
140 |
*
|
|
141 |
*/
|
|
142 |
@Override
|
|
143 |
public void onStart(){
|
|
144 |
super.onStart();
|
|
145 |
if(isPolling){
|
|
146 |
Log.d("info", "captin in onStart starting");
|
|
147 |
pollServerTask = new PollServerTask();
|
|
148 |
pollServerTask.execute((Void[]) null);
|
|
149 |
}
|
|
150 |
canPoll = true;
|
|
151 |
|
|
152 |
}
|
|
153 |
|
107 |
154 |
private void loadServerData() {
|
108 |
155 |
TextView name = (TextView) findViewById(R.id.view_server_name);
|
109 |
156 |
name.setText(server.getName());
|
110 |
|
|
|
157 |
|
111 |
158 |
TextView os = (TextView) findViewById(R.id.view_server_os);
|
112 |
159 |
os.setText(server.getImage().getName());
|
113 |
|
|
|
160 |
|
114 |
161 |
TextView memory = (TextView) findViewById(R.id.view_server_memory);
|
115 |
162 |
memory.setText(server.getFlavor().getRam() + " MB");
|
116 |
|
|
|
163 |
|
117 |
164 |
TextView disk = (TextView) findViewById(R.id.view_server_disk);
|
118 |
165 |
disk.setText(server.getFlavor().getDisk() + " GB");
|
119 |
|
|
|
166 |
|
120 |
167 |
TextView status = (TextView) findViewById(R.id.view_server_status);
|
121 |
168 |
|
122 |
169 |
// show status and possibly the progress, with polling
|
123 |
170 |
if (!"ACTIVE".equals(server.getStatus())) {
|
124 |
|
status.setText(server.getStatus() + " - " + server.getProgress() + "%");
|
125 |
|
new PollServerTask().execute((Void[]) null);
|
|
171 |
status.setText(server.getStatus() + " - " + server.getProgress() + "%");
|
|
172 |
pollServerTask = new PollServerTask();
|
|
173 |
pollServerTask.execute((Void[]) null);
|
126 |
174 |
} else {
|
127 |
|
status.setText(server.getStatus());
|
|
175 |
status.setText(server.getStatus());
|
128 |
176 |
}
|
129 |
|
|
|
177 |
|
130 |
178 |
if (!ipAddressesLoaded) {
|
131 |
|
// public IPs
|
132 |
|
int layoutIndex = 12; // public IPs start here
|
133 |
|
LinearLayout layout = (LinearLayout) this.findViewById(R.id.view_server_layout);
|
134 |
|
String publicIps[] = server.getPublicIpAddresses();
|
135 |
|
for (int i = 0; i < publicIps.length; i++) {
|
136 |
|
TextView tv = new TextView(this.getBaseContext());
|
137 |
|
tv.setLayoutParams(os.getLayoutParams()); // easy quick styling! :)
|
138 |
|
tv.setTypeface(tv.getTypeface(), 1); // 1 == bold
|
139 |
|
tv.setTextSize(os.getTextSize());
|
140 |
|
tv.setTextColor(Color.WHITE);
|
141 |
|
tv.setText(publicIps[i]);
|
142 |
|
layout.addView(tv, layoutIndex++);
|
143 |
|
}
|
144 |
|
|
145 |
|
// private IPs
|
146 |
|
layoutIndex++; // skip over the Private IPs label
|
147 |
|
String privateIps[] = server.getPrivateIpAddresses();
|
148 |
|
for (int i = 0; i < privateIps.length; i++) {
|
149 |
|
TextView tv = new TextView(this.getBaseContext());
|
150 |
|
tv.setLayoutParams(os.getLayoutParams()); // easy quick styling! :)
|
151 |
|
tv.setTypeface(tv.getTypeface(), 1); // 1 == bold
|
152 |
|
tv.setTextSize(os.getTextSize());
|
153 |
|
tv.setTextColor(Color.WHITE);
|
154 |
|
tv.setText(privateIps[i]);
|
155 |
|
layout.addView(tv, layoutIndex++);
|
156 |
|
}
|
157 |
|
ipAddressesLoaded = true;
|
|
179 |
// public IPs
|
|
180 |
int layoutIndex = 12; // public IPs start here
|
|
181 |
LinearLayout layout = (LinearLayout) this.findViewById(R.id.view_server_layout);
|
|
182 |
String publicIps[] = server.getPublicIpAddresses();
|
|
183 |
for (int i = 0; i < publicIps.length; i++) {
|
|
184 |
TextView tv = new TextView(this.getBaseContext());
|
|
185 |
tv.setLayoutParams(os.getLayoutParams()); // easy quick styling! :)
|
|
186 |
tv.setTypeface(tv.getTypeface(), 1); // 1 == bold
|
|
187 |
tv.setTextSize(os.getTextSize());
|
|
188 |
tv.setTextColor(Color.WHITE);
|
|
189 |
tv.setText(publicIps[i]);
|
|
190 |
layout.addView(tv, layoutIndex++);
|
|
191 |
}
|
|
192 |
|
|
193 |
// private IPs
|
|
194 |
layoutIndex++; // skip over the Private IPs label
|
|
195 |
String privateIps[] = server.getPrivateIpAddresses();
|
|
196 |
for (int i = 0; i < privateIps.length; i++) {
|
|
197 |
TextView tv = new TextView(this.getBaseContext());
|
|
198 |
tv.setLayoutParams(os.getLayoutParams()); // easy quick styling! :)
|
|
199 |
tv.setTypeface(tv.getTypeface(), 1); // 1 == bold
|
|
200 |
tv.setTextSize(os.getTextSize());
|
|
201 |
tv.setTextColor(Color.WHITE);
|
|
202 |
tv.setText(privateIps[i]);
|
|
203 |
layout.addView(tv, layoutIndex++);
|
|
204 |
}
|
|
205 |
ipAddressesLoaded = true;
|
158 |
206 |
}
|
159 |
|
|
|
207 |
|
160 |
208 |
//loadImage();
|
161 |
209 |
}
|
162 |
210 |
|
... | ... | |
202 |
250 |
private void setupButtons() {
|
203 |
251 |
setupButton(R.id.view_server_soft_reboot_button, new OnClickListener() {
|
204 |
252 |
public void onClick(View v) {
|
205 |
|
showDialog(R.id.view_server_soft_reboot_button);
|
|
253 |
showDialog(R.id.view_server_soft_reboot_button);
|
206 |
254 |
}
|
207 |
255 |
});
|
208 |
256 |
|
209 |
257 |
setupButton(R.id.view_server_hard_reboot_button, new OnClickListener() {
|
210 |
258 |
public void onClick(View v) {
|
211 |
|
showDialog(R.id.view_server_hard_reboot_button);
|
|
259 |
showDialog(R.id.view_server_hard_reboot_button);
|
212 |
260 |
}
|
213 |
261 |
});
|
214 |
262 |
|
215 |
263 |
setupButton(R.id.view_server_resize_button, new OnClickListener() {
|
216 |
264 |
public void onClick(View v) {
|
217 |
|
showDialog(R.id.view_server_resize_button);
|
|
265 |
showDialog(R.id.view_server_resize_button);
|
218 |
266 |
}
|
219 |
267 |
});
|
220 |
268 |
|
221 |
269 |
setupButton(R.id.view_server_delete_button, new OnClickListener() {
|
222 |
270 |
public void onClick(View v) {
|
223 |
|
showDialog(R.id.view_server_delete_button);
|
|
271 |
showDialog(R.id.view_server_delete_button);
|
224 |
272 |
}
|
225 |
273 |
});
|
226 |
274 |
|
227 |
275 |
setupButton(R.id.view_server_rename_button, new OnClickListener() {
|
228 |
276 |
public void onClick(View v) {
|
229 |
|
showDialog(R.id.view_server_rename_button);
|
|
277 |
showDialog(R.id.view_server_rename_button);
|
230 |
278 |
}
|
231 |
279 |
});
|
232 |
280 |
|
233 |
281 |
setupButton(R.id.view_server_rebuild_button, new OnClickListener() {
|
234 |
282 |
public void onClick(View v) {
|
235 |
|
showDialog(R.id.view_server_rebuild_button);
|
|
283 |
showDialog(R.id.view_server_rebuild_button);
|
236 |
284 |
}
|
237 |
285 |
});
|
238 |
286 |
|
239 |
287 |
|
240 |
288 |
setupButton(R.id.view_server_backup_button, new OnClickListener() {
|
241 |
289 |
public void onClick(View v) {
|
242 |
|
Intent viewIntent = new Intent(v.getContext(), BackupServerActivity.class);
|
243 |
|
viewIntent.putExtra("server", server);
|
244 |
|
startActivity(viewIntent);
|
|
290 |
Intent viewIntent = new Intent(v.getContext(), BackupServerActivity.class);
|
|
291 |
viewIntent.putExtra("server", server);
|
|
292 |
startActivity(viewIntent);
|
245 |
293 |
}
|
246 |
294 |
});
|
247 |
|
|
|
295 |
|
248 |
296 |
setupButton(R.id.view_server_password_button, new OnClickListener() {
|
249 |
|
public void onClick(View v) {
|
250 |
|
Intent viewIntent = new Intent(v.getContext(), PasswordServerActivity.class);
|
251 |
|
viewIntent.putExtra("server", server);
|
252 |
|
startActivity(viewIntent);
|
253 |
|
}
|
|
297 |
public void onClick(View v) {
|
|
298 |
Intent viewIntent = new Intent(v.getContext(), PasswordServerActivity.class);
|
|
299 |
viewIntent.putExtra("server", server);
|
|
300 |
startActivity(viewIntent);
|
|
301 |
}
|
254 |
302 |
});
|
255 |
303 |
|
256 |
304 |
setupButton(R.id.view_server_ping_button, new OnClickListener() {
|
... | ... | |
260 |
308 |
//ping the first public ip
|
261 |
309 |
viewIntent.putExtra("ipAddress", server.getPublicIpAddresses()[0]);
|
262 |
310 |
startActivity(viewIntent);
|
|
311 |
|
|
312 |
|
263 |
313 |
}
|
264 |
314 |
});
|
265 |
315 |
|
266 |
316 |
}
|
267 |
317 |
|
268 |
318 |
private void showAlert(String title, String message) {
|
269 |
|
AlertDialog alert = new AlertDialog.Builder(this).create();
|
|
319 |
AlertDialog alert = new AlertDialog.Builder(ViewServerActivity.this).create();
|
270 |
320 |
alert.setTitle(title);
|
271 |
321 |
alert.setMessage(message);
|
272 |
322 |
alert.setButton("OK", new DialogInterface.OnClickListener() {
|
... | ... | |
282 |
332 |
Toast toast = Toast.makeText(context, message, duration);
|
283 |
333 |
toast.show();
|
284 |
334 |
}
|
|
335 |
|
|
336 |
private void showToast(String title, String message) {
|
|
337 |
Context context = getApplicationContext();
|
|
338 |
int duration = Toast.LENGTH_SHORT;
|
|
339 |
Toast toast = Toast.makeText(context, " "+title + "\n\n" + message, duration);
|
|
340 |
toast.show();
|
|
341 |
}
|
285 |
342 |
|
286 |
343 |
/**
|
287 |
344 |
* @return the server
|
... | ... | |
415 |
472 |
}
|
416 |
473 |
|
417 |
474 |
}
|
418 |
|
|
419 |
|
|
420 |
|
|
|
475 |
|
421 |
476 |
private CloudServersException parseCloudServersException(HttpResponse response) {
|
422 |
477 |
CloudServersException cse = new CloudServersException();
|
423 |
478 |
try {
|
... | ... | |
452 |
507 |
|
453 |
508 |
private class PollServerTask extends AsyncTask<Void, Void, Server> {
|
454 |
509 |
|
|
510 |
private Server tempServer;
|
|
511 |
|
|
512 |
@Override
|
|
513 |
protected void onPreExecute(){
|
|
514 |
Log.d("info", "captin The POLLING TASK HAS STARTED!");
|
|
515 |
isPolling = true;
|
|
516 |
}
|
|
517 |
|
455 |
518 |
@Override
|
456 |
519 |
protected Server doInBackground(Void... arg0) {
|
|
520 |
Log.d("info", "captin can poll is " + canPoll);
|
|
521 |
if(isCancelled() || !canPoll){
|
|
522 |
return null;
|
|
523 |
}
|
457 |
524 |
try {
|
458 |
|
server = (new ServerManager()).find(Integer.parseInt(server.getId()), context);
|
|
525 |
tempServer = (new ServerManager()).find(Integer.parseInt(server.getId()), context);
|
459 |
526 |
} catch (NumberFormatException e) {
|
460 |
527 |
// we're polling, so need to show exceptions
|
461 |
528 |
} catch (CloudServersException e) {
|
462 |
529 |
// we're polling, so need to show exceptions
|
463 |
530 |
}
|
464 |
|
return server;
|
|
531 |
return tempServer;
|
465 |
532 |
}
|
466 |
533 |
|
467 |
534 |
@Override
|
468 |
535 |
protected void onPostExecute(Server result) {
|
469 |
536 |
server = result;
|
470 |
|
loadServerData();
|
|
537 |
if(server != null){
|
|
538 |
Log.d("info", "captin about to load data");
|
|
539 |
loadServerData();
|
|
540 |
}
|
|
541 |
isPolling = false;
|
|
542 |
Log.d("info", "captin polling is false");
|
|
543 |
}
|
|
544 |
|
|
545 |
@Override
|
|
546 |
protected void onCancelled (){
|
|
547 |
isPolling = false;
|
|
548 |
Log.d("info", "captin polling is false and the poll has been canceled");
|
471 |
549 |
}
|
|
550 |
|
472 |
551 |
}
|
473 |
552 |
|
474 |
553 |
|
... | ... | |
495 |
574 |
|
496 |
575 |
@Override
|
497 |
576 |
protected void onPostExecute(HttpResponse response) {
|
498 |
|
|
499 |
577 |
if (response != null) {
|
500 |
578 |
int statusCode = response.getStatusLine().getStatusCode();
|
501 |
579 |
if(statusCode == 202){ showToast("Reboot successful"); }
|
502 |
580 |
if (statusCode != 202) {
|
503 |
581 |
CloudServersException cse = parseCloudServersException(response);
|
504 |
582 |
if ("".equals(cse.getMessage())) {
|
505 |
|
showAlert("Error", "There was a problem rebooting your server.");
|
|
583 |
showToast("Error", "There was a problem rebooting your server.");
|
506 |
584 |
} else {
|
507 |
|
showAlert("Error", "There was a problem rebooting your server: " + cse.getMessage());
|
|
585 |
showToast("Error", "There was a problem rebooting your server: " + cse.getMessage());
|
508 |
586 |
}
|
509 |
587 |
}
|
510 |
588 |
} else if (exception != null) {
|
511 |
|
showAlert("Error", "There was a problem rebooting your server: " + exception.getMessage());
|
|
589 |
showToast("Error", "There was a problem rebooting your server: " + exception.getMessage());
|
512 |
590 |
|
513 |
591 |
}
|
514 |
592 |
}
|
... | ... | |
543 |
621 |
if (statusCode != 202) {
|
544 |
622 |
CloudServersException cse = parseCloudServersException(response);
|
545 |
623 |
if ("".equals(cse.getMessage())) {
|
546 |
|
showAlert("Error", "There was a problem rebooting your server.");
|
|
624 |
showToast("Error", "There was a problem rebooting your server.");
|
547 |
625 |
} else {
|
548 |
|
showAlert("Error", "There was a problem rebooting your server: " + cse.getMessage());
|
|
626 |
showToast("Error", "There was a problem rebooting your server: " + cse.getMessage());
|
549 |
627 |
}
|
550 |
628 |
}
|
551 |
629 |
} else if (exception != null) {
|
552 |
|
showAlert("Error", "There was a problem rebooting your server: " + exception.getMessage());
|
|
630 |
showToast("Error", "There was a problem rebooting your server: " + exception.getMessage());
|
553 |
631 |
|
554 |
632 |
}
|
555 |
633 |
}
|
... | ... | |
558 |
636 |
private class ResizeServerTask extends AsyncTask<Void, Void, HttpResponse> {
|
559 |
637 |
|
560 |
638 |
private CloudServersException exception;
|
|
639 |
|
|
640 |
@Override
|
|
641 |
protected void onPreExecute(){
|
|
642 |
showToast("Resize process has begun, please confirm your resize after process finishes.");
|
|
643 |
}
|
561 |
644 |
|
562 |
645 |
@Override
|
563 |
646 |
protected HttpResponse doInBackground(Void... arg0) {
|
... | ... | |
575 |
658 |
if (response != null) {
|
576 |
659 |
int statusCode = response.getStatusLine().getStatusCode();
|
577 |
660 |
if (statusCode == 202) {
|
578 |
|
showToast("Resize process has begun, please confirm your resize after process finishes.");
|
579 |
|
new PollServerTask().execute((Void[]) null);
|
|
661 |
pollServerTask = new PollServerTask();
|
|
662 |
pollServerTask.execute((Void[]) null);
|
580 |
663 |
} else {
|
581 |
664 |
CloudServersException cse = parseCloudServersException(response);
|
582 |
665 |
if ("".equals(cse.getMessage())) {
|
583 |
|
showAlert("Error", "There was a problem resizing your server.");
|
|
666 |
showToast("Error", "There was a problem resizing your server.");
|
584 |
667 |
} else {
|
585 |
|
showAlert("Error", "There was a problem resizing your server: " + cse.getMessage());
|
|
668 |
showToast("Error", "There was a problem resizing your server: " + cse.getMessage());
|
586 |
669 |
}
|
587 |
670 |
}
|
588 |
671 |
} else if (exception != null) {
|
589 |
|
showAlert("Error", "There was a problem resizing your server: " + exception.getMessage());
|
|
672 |
showToast("Error", "There was a problem resizing your server: " + exception.getMessage());
|
590 |
673 |
|
591 |
674 |
}
|
592 |
675 |
|
... | ... | |
625 |
708 |
} else {
|
626 |
709 |
CloudServersException cse = parseCloudServersException(response);
|
627 |
710 |
if ("".equals(cse.getMessage())) {
|
628 |
|
showAlert("Error", "There was a problem deleting your server.");
|
|
711 |
showToast("Error", "There was a problem deleting your server.");
|
629 |
712 |
} else {
|
630 |
|
showAlert("Error", "There was a problem deleting your server: " + cse.getMessage());
|
|
713 |
showToast("Error", "There was a problem deleting your server: " + cse.getMessage());
|
631 |
714 |
}
|
632 |
715 |
}
|
633 |
716 |
} else if (exception != null) {
|
634 |
|
showAlert("Error", "There was a problem deleting your server: " + exception.getMessage());
|
|
717 |
showToast("Error", "There was a problem deleting your server: " + exception.getMessage());
|
635 |
718 |
}
|
636 |
719 |
}
|
637 |
720 |
}
|
... | ... | |
643 |
726 |
@Override
|
644 |
727 |
//let user know their process has started
|
645 |
728 |
protected void onPreExecute(){
|
646 |
|
showToast("Rename process has begun");
|
|
729 |
showToast("Rename process has begun.");
|
647 |
730 |
}
|
648 |
731 |
|
649 |
732 |
@Override
|
... | ... | |
663 |
746 |
int statusCode = response.getStatusLine().getStatusCode();
|
664 |
747 |
if (statusCode == 204) {
|
665 |
748 |
showToast("Rename successful");
|
666 |
|
new PollServerTask().execute((Void[]) null);
|
|
749 |
pollServerTask = new PollServerTask();
|
|
750 |
pollServerTask.execute((Void[]) null);
|
667 |
751 |
} else {
|
668 |
752 |
CloudServersException cse = parseCloudServersException(response);
|
669 |
753 |
if ("".equals(cse.getMessage())) {
|
670 |
|
showAlert("Error", "There was a problem renaming your server.");
|
|
754 |
showToast("Error", "There was a problem renaming your server.");
|
671 |
755 |
} else {
|
672 |
|
showAlert("Error", "There was a problem renaming your server: " + cse.getMessage());
|
|
756 |
showToast("Error", "There was a problem renaming your server: " + cse.getMessage());
|
673 |
757 |
}
|
674 |
758 |
}
|
675 |
759 |
}
|
676 |
760 |
else if (exception != null) {
|
677 |
|
showAlert("Error", "There was a problem renaming your server: " + exception.getMessage());
|
|
761 |
showToast("Error", "There was a problem renaming your server: " + exception.getMessage());
|
678 |
762 |
}
|
679 |
763 |
}
|
680 |
764 |
|
... | ... | |
685 |
769 |
private CloudServersException exception;
|
686 |
770 |
|
687 |
771 |
@Override
|
|
772 |
protected void onPreExecute(){
|
|
773 |
showToast("Rebuild process has begun");
|
|
774 |
}
|
|
775 |
|
|
776 |
@Override
|
688 |
777 |
protected HttpResponse doInBackground(Void... arg0) {
|
689 |
778 |
HttpResponse resp = null;
|
690 |
779 |
try {
|
... | ... | |
700 |
789 |
if (response != null) {
|
701 |
790 |
int statusCode = response.getStatusLine().getStatusCode();
|
702 |
791 |
if (statusCode == 202) {
|
703 |
|
showToast("Rebuild process has begun");
|
704 |
|
new PollServerTask().execute((Void[]) null);
|
|
792 |
pollServerTask = new PollServerTask();
|
|
793 |
pollServerTask.execute((Void[]) null);
|
705 |
794 |
} else {
|
706 |
795 |
CloudServersException cse = parseCloudServersException(response);
|
707 |
796 |
if ("".equals(cse.getMessage())) {
|
708 |
|
showAlert("Error", "There was a problem rebuilding your server.");
|
|
797 |
showToast("Error", "There was a problem rebuilding your server.");
|
709 |
798 |
} else {
|
710 |
|
showAlert("Error", "There was a problem rebuilding your server: " + cse.getMessage());
|
|
799 |
showToast("Error", "There was a problem rebuilding your server: " + cse.getMessage());
|
711 |
800 |
}
|
712 |
801 |
}
|
713 |
802 |
} else if (exception != null) {
|
714 |
|
showAlert("Error", "There was a problem rebuilding your server: " + exception.getMessage());
|
|
803 |
showToast("Error", "There was a problem rebuilding your server: " + exception.getMessage());
|
715 |
804 |
|
716 |
805 |
}
|
717 |
806 |
|