Statistics
| Branch: | Revision:

root / src / com / rackspacecloud / android / AddLoadBalancerActivity.java @ 6ecf99bb

History | View | Annotate | Download (3.6 kB)

1
package com.rackspacecloud.android;
2

    
3
import java.util.ArrayList;
4
import java.util.Arrays;
5
import java.util.Iterator;
6

    
7
import com.rackspace.cloud.loadbalancer.api.client.Algorithm;
8
import com.rackspace.cloud.loadbalancer.api.client.LoadBalancer;
9
import com.rackspace.cloud.loadbalancer.api.client.Protocol;
10
import com.rackspace.cloud.loadbalancer.api.client.ProtocolManager;
11
import com.rackspace.cloud.servers.api.client.Image;
12

    
13
import android.app.Activity;
14
import android.app.AlertDialog;
15
import android.content.Context;
16
import android.content.DialogInterface;
17
import android.os.AsyncTask;
18
import android.os.Bundle;
19
import android.util.Log;
20
import android.view.View;
21
import android.widget.AdapterView;
22
import android.widget.AdapterView.OnItemSelectedListener;
23
import android.widget.ArrayAdapter;
24
import android.widget.EditText;
25
import android.widget.Spinner;
26

    
27
public class AddLoadBalancerActivity extends Activity implements OnItemSelectedListener {
28

    
29
        private Protocol[] protocols;
30
        private Algorithm[] algorithms;
31
        private LoadBalancer loadBalancer;
32
        private Context context;
33
        private Spinner protocolSpinner;
34
        private Spinner algorithmSpinner;
35
        private EditText portText;
36
        private Protocol selectedProtocol;
37

    
38
        @Override
39
        public void onCreate(Bundle savedInstanceState) {
40
                super.onCreate(savedInstanceState);
41
                setContentView(R.layout.view_add_loadbalancer);
42
                restoreState(savedInstanceState);
43
        }
44

    
45
        private void restoreState(Bundle state) {
46
                context = getApplicationContext();
47
                portText = (EditText)findViewById(R.id.edit_port_text);
48
                loadProtocolSpinner();
49
                loadAlgorithmSpinner();
50
        }
51

    
52
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
53
                if (parent == protocolSpinner) {
54
                        selectedProtocol = protocols[position];
55
                        portText.setText(protocols[position].getPort());
56
                } 
57
        }
58

    
59
        public void onNothingSelected(AdapterView<?> parent) {
60

    
61
        }
62

    
63
        private void loadProtocolSpinner() {
64
                protocolSpinner = (Spinner) findViewById(R.id.edit_protocol_spinner);
65
                protocolSpinner.setOnItemSelectedListener(this);
66
                String protocolNames[] = new String[Protocol.getProtocols().size()]; 
67
                protocols = new Protocol[Protocol.getProtocols().size()];
68

    
69
                for(int i = 0; i < Protocol.getProtocols().size(); i++){
70
                        protocols[i] = Protocol.getProtocols().get(i);
71
                        protocolNames[i] = Protocol.getProtocols().get(i).getName();
72
                }
73

    
74
                ArrayAdapter<String> protocolAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, protocolNames);
75
                protocolAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
76
                protocolSpinner.setAdapter(protocolAdapter);
77
        }
78
        
79
        private void loadAlgorithmSpinner() {
80
                algorithmSpinner = (Spinner) findViewById(R.id.edit_algorithm_spinner);
81
                algorithmSpinner.setOnItemSelectedListener(this);
82
                String algorithmNames[] = new String[Algorithm.getAlgorithms().size()]; 
83
                algorithms = new Algorithm[Algorithm.getAlgorithms().size()];
84
                
85
                for(int i = 0; i < Algorithm.getAlgorithms().size(); i++){
86
                        algorithms[i] = Algorithm.getAlgorithms().get(i);
87
                        algorithmNames[i] = Algorithm.getAlgorithms().get(i).getName();
88
                }
89

    
90
                ArrayAdapter<String> algorithmAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, algorithmNames);
91
                algorithmAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
92
                algorithmSpinner.setAdapter(algorithmAdapter);
93
        }
94

    
95
        private void showAlert(String title, String message) {
96
                AlertDialog alert = new AlertDialog.Builder(this).create();
97
                alert.setTitle(title);
98
                alert.setMessage(message);
99
                alert.setButton("OK", new DialogInterface.OnClickListener() {
100
                        public void onClick(DialogInterface dialog, int which) {
101
                                return;
102
                        } }); 
103
                alert.show();
104
        }
105
}