Revision 23cc0515 src/com/rackspacecloud/android/ViewServerActivity.java
b/src/com/rackspacecloud/android/ViewServerActivity.java | ||
---|---|---|
16 | 16 |
import android.graphics.Color; |
17 | 17 |
import android.os.AsyncTask; |
18 | 18 |
import android.os.Bundle; |
19 |
import android.util.Log; |
|
19 | 20 |
import android.view.Menu; |
20 | 21 |
import android.view.MenuInflater; |
21 | 22 |
import android.view.MenuItem; |
... | ... | |
29 | 30 |
import com.rackspace.cloud.servers.api.client.CloudServersException; |
30 | 31 |
import com.rackspace.cloud.servers.api.client.Flavor; |
31 | 32 |
import com.rackspace.cloud.servers.api.client.Image; |
33 |
import com.rackspace.cloud.servers.api.client.ImageManager; |
|
32 | 34 |
import com.rackspace.cloud.servers.api.client.Server; |
33 | 35 |
import com.rackspace.cloud.servers.api.client.ServerManager; |
34 | 36 |
import com.rackspace.cloud.servers.api.client.http.HttpBundle; |
... | ... | |
52 | 54 |
private PollServerTask pollServerTask; |
53 | 55 |
private boolean canPoll; |
54 | 56 |
private boolean noAskForConfirm; |
57 |
private Image image; |
|
55 | 58 |
|
56 | 59 |
/** Called when the activity is first created. */ |
57 | 60 |
@Override |
... | ... | |
59 | 62 |
super.onCreate(savedInstanceState); |
60 | 63 |
trackPageView(GoogleAnalytics.PAGE_SERVER); |
61 | 64 |
server = (Server) this.getIntent().getExtras().get("server"); |
65 |
//if an old image it wont be on the image list |
|
66 |
//so you have to fetch it manually |
|
67 |
if(server.getImage().getName() == null){ |
|
68 |
GetImageTask getImageTask = new GetImageTask(); |
|
69 |
getImageTask.execute((Void[]) null); |
|
70 |
} |
|
62 | 71 |
setContentView(R.layout.viewserver); |
63 | 72 |
restoreState(savedInstanceState); |
64 | 73 |
} |
... | ... | |
127 | 136 |
|
128 | 137 |
private void loadServerData() { |
129 | 138 |
if(server != null){ |
139 |
|
|
130 | 140 |
TextView name = (TextView) findViewById(R.id.view_server_name); |
131 | 141 |
name.setText(server.getName()); |
132 | 142 |
|
133 | 143 |
TextView os = (TextView) findViewById(R.id.view_server_os); |
134 |
os.setText(server.getImage().getName()); |
|
144 |
if(server.getImage().getName() == null){ |
|
145 |
if(image != null){ |
|
146 |
os.setText(image.getName()); |
|
147 |
} |
|
148 |
} else { |
|
149 |
os.setText(server.getImage().getName()); |
|
150 |
} |
|
135 | 151 |
|
136 | 152 |
TextView memory = (TextView) findViewById(R.id.view_server_memory); |
137 | 153 |
memory.setText(server.getFlavor().getRam() + " MB"); |
... | ... | |
522 | 538 |
} |
523 | 539 |
|
524 | 540 |
} |
541 |
|
|
542 |
private class GetImageTask extends AsyncTask<Void, Void, Image> { |
|
543 |
|
|
544 |
private Image tempImage; |
|
545 |
|
|
546 |
@Override |
|
547 |
protected Image doInBackground(Void... arg0) { |
|
548 |
try { |
|
549 |
tempImage = (new ImageManager()).getImageDetails(Integer.parseInt(server.getImageId()), getContext()); |
|
550 |
} catch (NumberFormatException e) { |
|
551 |
|
|
552 |
} |
|
553 |
return tempImage; |
|
554 |
} |
|
525 | 555 |
|
556 |
@Override |
|
557 |
protected void onPostExecute(Image result) { |
|
558 |
image = result; |
|
559 |
loadServerData(); |
|
560 |
} |
|
526 | 561 |
|
562 |
} |
|
563 |
|
|
527 | 564 |
private class SoftRebootServerTask extends AsyncTask<Void, Void, HttpBundle> { |
528 | 565 |
|
529 | 566 |
private CloudServersException exception; |
Also available in: Unified diff