Revision 038ac9a4 src/com/rackspacecloud/android/AddServerActivity.java
b/src/com/rackspacecloud/android/AddServerActivity.java | ||
---|---|---|
32 | 32 |
|
33 | 33 |
/** |
34 | 34 |
* @author Mike Mayo - mike.mayo@rackspace.com - twitter.com/greenisus |
35 |
* |
|
35 |
*
|
|
36 | 36 |
*/ |
37 |
public class AddServerActivity extends GaActivity implements OnItemSelectedListener, OnClickListener { |
|
37 |
public class AddServerActivity extends GaActivity implements |
|
38 |
OnItemSelectedListener, OnClickListener { |
|
38 | 39 |
|
39 | 40 |
private Image[] images; |
40 | 41 |
private Flavor[] flavors; |
... | ... | |
51 | 52 |
@Override |
52 | 53 |
public void onCreate(Bundle savedInstanceState) { |
53 | 54 |
super.onCreate(savedInstanceState); |
54 |
trackPageView(PAGE_ADD_SERVER);
|
|
55 |
trackPageView(PAGE_ADD_SERVER); |
|
55 | 56 |
setContentView(R.layout.createserver); |
56 | 57 |
serverName = (EditText) findViewById(R.id.server_name); |
57 | 58 |
((Button) findViewById(R.id.save_button)).setOnClickListener(this); |
... | ... | |
60 | 61 |
loadServerCount(); |
61 | 62 |
} |
62 | 63 |
|
63 |
private void loadServerCount(){ |
|
64 |
numberDisplay = (TextView)findViewById(R.id.server_count_text); |
|
65 |
numberBar = (SeekBar)findViewById(R.id.number_of_servers); |
|
64 |
private void loadServerCount() {
|
|
65 |
numberDisplay = (TextView) findViewById(R.id.server_count_text);
|
|
66 |
numberBar = (SeekBar) findViewById(R.id.number_of_servers);
|
|
66 | 67 |
numberBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { |
67 | 68 |
|
68 | 69 |
@Override |
... | ... | |
82 | 83 |
boolean fromUser) { |
83 | 84 |
// TODO Auto-generated method stub |
84 | 85 |
numberDisplay.setText(getCountText(progress)); |
85 |
TextView number = (TextView)findViewById(R.id.server_name_number); |
|
86 |
if(progress == 0){
|
|
86 |
TextView number = (TextView) findViewById(R.id.server_name_number);
|
|
87 |
if (progress == 0) {
|
|
87 | 88 |
number.setText(""); |
88 |
} |
|
89 |
else{ |
|
90 |
number.setText("[1.." + (progress+1) + "]"); |
|
89 |
} else { |
|
90 |
number.setText("[1.." + (progress + 1) + "]"); |
|
91 | 91 |
} |
92 | 92 |
} |
93 | 93 |
|
94 |
private String getCountText(int i){ |
|
95 |
if(i == 0){
|
|
94 |
private String getCountText(int i) {
|
|
95 |
if (i == 0) {
|
|
96 | 96 |
return "1 Server"; |
97 |
} |
|
98 |
else{ |
|
99 |
//count starts at 0 |
|
100 |
return i+1 + " Servers"; |
|
97 |
} else { |
|
98 |
// count starts at 0 |
|
99 |
return i + 1 + " Servers"; |
|
101 | 100 |
} |
102 | 101 |
} |
103 | 102 |
}); |
... | ... | |
107 | 106 |
private void loadImageSpinner() { |
108 | 107 |
imageSpinner = (Spinner) findViewById(R.id.image_spinner); |
109 | 108 |
imageSpinner.setOnItemSelectedListener(this); |
110 |
String imageNames[] = new String[Image.getImages().size()];
|
|
109 |
String imageNames[] = new String[Image.getImages().size()]; |
|
111 | 110 |
images = new Image[Image.getImages().size()]; |
112 | 111 |
|
113 | 112 |
Iterator<Image> iter = Image.getImages().values().iterator(); |
... | ... | |
119 | 118 |
i++; |
120 | 119 |
} |
121 | 120 |
|
122 |
//Sort so they display better in the spinner |
|
121 |
// Sort so they display better in the spinner
|
|
123 | 122 |
Arrays.sort(images); |
124 | 123 |
Arrays.sort(imageNames); |
125 | 124 |
|
126 | 125 |
selectedImageId = images[0].getId(); |
127 |
ArrayAdapter<String> imageAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, imageNames); |
|
128 |
imageAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
|
126 |
ArrayAdapter<String> imageAdapter = new ArrayAdapter<String>(this, |
|
127 |
android.R.layout.simple_spinner_item, imageNames); |
|
128 |
imageAdapter |
|
129 |
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
|
129 | 130 |
imageSpinner.setAdapter(imageAdapter); |
130 | 131 |
} |
131 | 132 |
|
132 | 133 |
private void loadFlavorSpinner() { |
133 | 134 |
flavorSpinner = (Spinner) findViewById(R.id.flavor_spinner); |
134 | 135 |
flavorSpinner.setOnItemSelectedListener(this); |
135 |
String flavorNames[] = new String[Flavor.getFlavors().size()];
|
|
136 |
String flavorNames[] = new String[Flavor.getFlavors().size()]; |
|
136 | 137 |
flavors = new Flavor[Flavor.getFlavors().size()]; |
137 | 138 |
|
138 | 139 |
Iterator<Flavor> iter = Flavor.getFlavors().values().iterator(); |
... | ... | |
140 | 141 |
while (iter.hasNext()) { |
141 | 142 |
Flavor flavor = iter.next(); |
142 | 143 |
flavors[i] = flavor; |
143 |
flavorNames[i] = flavor.getName() + ", " + flavor.getDisk() + " GB disk"; |
|
144 |
flavorNames[i] = flavor.getName() + ", " + flavor.getDisk() |
|
145 |
+ " GB disk"; |
|
144 | 146 |
i++; |
145 | 147 |
} |
146 | 148 |
selectedFlavorId = flavors[0].getId(); |
147 |
ArrayAdapter<String> flavorAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, flavorNames); |
|
148 |
flavorAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
|
149 |
ArrayAdapter<String> flavorAdapter = new ArrayAdapter<String>(this, |
|
150 |
android.R.layout.simple_spinner_item, flavorNames); |
|
151 |
flavorAdapter |
|
152 |
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
|
149 | 153 |
flavorSpinner.setAdapter(flavorAdapter); |
150 | 154 |
} |
151 | 155 |
|
152 |
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { |
|
156 |
public void onItemSelected(AdapterView<?> parent, View view, int position, |
|
157 |
long id) { |
|
153 | 158 |
if (parent == imageSpinner) { |
154 | 159 |
selectedImageId = images[position].getId(); |
155 | 160 |
} else if (parent == flavorSpinner) { |
... | ... | |
164 | 169 |
if ("".equals(serverName.getText().toString())) { |
165 | 170 |
showAlert("Required Fields Missing", "Server name is required."); |
166 | 171 |
} else { |
167 |
trackEvent(CATEGORY_SERVER, EVENT_CREATE, "", numberBar.getProgress()+1); |
|
172 |
trackEvent(CATEGORY_SERVER, EVENT_CREATE, "", |
|
173 |
numberBar.getProgress() + 1); |
|
168 | 174 |
showActivityIndicators(); |
169 | 175 |
server = new Server(); |
170 |
server.setName(serverName.getText().toString());
|
|
176 |
server.setName(serverName.getText().toString()); |
|
171 | 177 |
server.setImageId(selectedImageId); |
172 | 178 |
server.setFlavorId(selectedFlavorId); |
173 | 179 |
new SaveServerTask().execute((Void[]) null); |
... | ... | |
181 | 187 |
alert.setButton("OK", new DialogInterface.OnClickListener() { |
182 | 188 |
public void onClick(DialogInterface dialog, int which) { |
183 | 189 |
return; |
184 |
} }); |
|
190 |
} |
|
191 |
}); |
|
185 | 192 |
alert.show(); |
186 | 193 |
hideActivityIndicators(); |
187 | 194 |
} |
... | ... | |
208 | 215 |
@Override |
209 | 216 |
protected Server doInBackground(Void... arg0) { |
210 | 217 |
try { |
211 |
if(numberBar.getProgress() == 0){ |
|
212 |
(new ServerManager()).create(server, getApplicationContext()); |
|
213 |
} |
|
214 |
else{ |
|
215 |
for(int i = 0; i < numberBar.getProgress() + 1; i++){ |
|
216 |
server.setName(serverName.getText().toString() + Integer.toString(i+1)); |
|
217 |
(new ServerManager()).create(server, getApplicationContext()); |
|
218 |
if (numberBar.getProgress() == 0) { |
|
219 |
(new ServerManager()).create(server, |
|
220 |
getApplicationContext()); |
|
221 |
} else { |
|
222 |
for (int i = 0; i < numberBar.getProgress() + 1; i++) { |
|
223 |
server.setName(serverName.getText().toString() |
|
224 |
+ Integer.toString(i + 1)); |
|
225 |
(new ServerManager()).create(server, |
|
226 |
getApplicationContext()); |
|
218 | 227 |
} |
219 | 228 |
} |
220 | 229 |
} catch (CloudServersException e) { |
... | ... | |
226 | 235 |
@Override |
227 | 236 |
protected void onPostExecute(Server result) { |
228 | 237 |
if (exception != null) { |
229 |
showAlert("Error", "There was a problem creating your server: " + exception.getMessage()); |
|
238 |
showAlert("Error", "There was a problem creating your server: " |
|
239 |
+ exception.getMessage()); |
|
230 | 240 |
} else { |
231 | 241 |
hideActivityIndicators(); |
232 | 242 |
setResult(Activity.RESULT_OK); |
Also available in: Unified diff