X-Git-Url: http://plrg.eecs.uci.edu/git/?p=iot2.git;a=blobdiff_plain;f=benchmarks%2Fother%2FPhoneInterface%2FControl%2Fapp%2Fsrc%2Fmain%2Fjava%2Fcom%2Fexample%2Fali%2Fcontrol%2FMainActivity.java;h=1133cc4f4d9eee8619635dd381797741b9341d47;hp=7b57ef15cf32bae91d9c6d29be98e06663c3d20d;hb=bba1273366946a5e9b801200611865e50d21e31f;hpb=1f03a0ea82bcc8ad278e89c478fbf59c1185251b diff --git a/benchmarks/other/PhoneInterface/Control/app/src/main/java/com/example/ali/control/MainActivity.java b/benchmarks/other/PhoneInterface/Control/app/src/main/java/com/example/ali/control/MainActivity.java index 7b57ef1..1133cc4 100644 --- a/benchmarks/other/PhoneInterface/Control/app/src/main/java/com/example/ali/control/MainActivity.java +++ b/benchmarks/other/PhoneInterface/Control/app/src/main/java/com/example/ali/control/MainActivity.java @@ -7,8 +7,8 @@ import android.support.v7.widget.Toolbar; import android.os.StrictMode; import android.util.Log; -import android.widget.CompoundButton; -import android.widget.Switch; +import android.view.View; +import android.widget.Button; import android.widget.TextView; import iotcloud.*; import java.io.*; @@ -20,21 +20,20 @@ import android.os.Handler; * @author Rahmadi Trimananda * @version 1.0 */ -public class MainActivity extends AppCompatActivity { +public class MainActivity extends AppCompatActivity implements View.OnClickListener { - Switch alarmSwitch; + Button alarmButton; TextView alarmStatus; Table t1 = null; - Thread thread = null; Semaphore mutex = new Semaphore(1); - boolean didCrash = false; + boolean alarmOn = false; private Handler handler = new Handler(); private static final String CLOUD_SERVER = "http://dc-6.calit2.uci.edu/test.iotcloud/"; private static final String PASSWORD = "reallysecret"; - private static final int LOCAL_MACHINE_ID = 399; + private static final int LOCAL_MACHINE_ID = 400; private static final int LISTENING_PORT = -1; private Runnable runnable = new Runnable() { @@ -48,12 +47,11 @@ public class MainActivity extends AppCompatActivity { try { Log.e("Ali:::::", "loop............"); mutex.acquire(); - t1 = new Table(CLOUD_SERVER, PASSWORD, LOCAL_MACHINE_ID, LISTENING_PORT, MainActivity.this); - t1.rebuild(); - //t1.update(); + //t1 = new Table(CLOUD_SERVER, PASSWORD, LOCAL_MACHINE_ID, LISTENING_PORT, MainActivity.this); + //t1.rebuild(); + t1.update(); IoTString testValStatus = t1.getCommitted(iotAlarm); t1.update(); - mutex.release(); int intStatus = 0; if(testValStatus != null) { @@ -64,15 +62,18 @@ public class MainActivity extends AppCompatActivity { if (intStatus == 0) { alarmStatus.setText("OFF"); alarmStatus.setTextColor(Color.BLUE); - alarmSwitch.setChecked(false); + //alarmSwitch.setChecked(false); + alarmOn = false; Log.d("RAHMADI::::", "Set text to OFF and BLUE with alarm value: " + testValStatus); } else {// value 1 alarmStatus.setText("ON"); alarmStatus.setTextColor(Color.RED); - alarmSwitch.setChecked(true); + //alarmSwitch.setChecked(true); + alarmOn = true; Log.d("RAHMADI::::", "Set text to ON and RED with alarm value: " + testValStatus); } + mutex.release(); } catch (Exception e) { StringWriter sw = new StringWriter(); @@ -84,7 +85,6 @@ public class MainActivity extends AppCompatActivity { // Repeat every 2 seconds handler.postDelayed(runnable, 1000); - //handler.post(runnable); } }; @@ -119,58 +119,66 @@ public class MainActivity extends AppCompatActivity { alarmStatus = (TextView) findViewById(R.id.alarmStatus); alarmStatus.setText("OFF"); alarmStatus.setTextColor(Color.BLUE); - alarmSwitch = (Switch) findViewById(R.id.alarmSwitch); - - alarmSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton compoundButton, boolean bChecked) { - - String strAlarm = "alarm"; - IoTString iotAlarm = new IoTString(strAlarm); - String strStatusOn = "1"; - IoTString iotStatusOn = new IoTString(strStatusOn); - String strStatusOff = "0"; - IoTString iotStatusOff = new IoTString(strStatusOff); - - try { - if (bChecked) { - - try { - t1.update(); - t1.startTransaction(); - t1.addKV(iotAlarm, iotStatusOn); - t1.commitTransaction(); - } catch (Exception e) { - StringWriter sw = new StringWriter(); - PrintWriter pw = new PrintWriter(sw); - e.printStackTrace(pw); - Log.e("ALI::::", sw.toString()); - } - - } else { - - try { - t1.update(); - t1.startTransaction(); - t1.addKV(iotAlarm, iotStatusOff); - t1.commitTransaction(); - } catch (Exception e) { - StringWriter sw = new StringWriter(); - PrintWriter pw = new PrintWriter(sw); - e.printStackTrace(pw); - Log.e("ALI::::", sw.toString()); - } + alarmButton = (Button) findViewById(R.id.alarmButton); + alarmButton.setOnClickListener(this); + + handler.post(runnable); + } + + public void onClick(View v) { + + if (v == alarmButton) { + String strAlarm = "alarm"; + IoTString iotAlarm = new IoTString(strAlarm); + String strStatusOn = "1"; + IoTString iotStatusOn = new IoTString(strStatusOn); + String strStatusOff = "0"; + IoTString iotStatusOff = new IoTString(strStatusOff); + + Log.d("RAHMADI:::::", "Button pressed!"); + + try { + mutex.acquire(); + if (!alarmOn) { + + try { + t1.update(); + t1.startTransaction(); + t1.addKV(iotAlarm, iotStatusOn); + t1.commitTransaction(); + alarmOn = true; + alarmButton.setText("ON"); + } catch (Exception e) { + StringWriter sw = new StringWriter(); + PrintWriter pw = new PrintWriter(sw); + e.printStackTrace(pw); + Log.e("ALI::::", sw.toString()); } - } catch (Exception e) { - StringWriter sw = new StringWriter(); - PrintWriter pw = new PrintWriter(sw); - e.printStackTrace(pw); - Log.e("ALI::::", sw.toString()); + } else { + + try { + t1.update(); + t1.startTransaction(); + t1.addKV(iotAlarm, iotStatusOff); + t1.commitTransaction(); + alarmOn = false; + alarmButton.setText("OFF"); + } catch (Exception e) { + StringWriter sw = new StringWriter(); + PrintWriter pw = new PrintWriter(sw); + e.printStackTrace(pw); + Log.e("ALI::::", sw.toString()); + } } - } - }); + mutex.release(); - handler.post(runnable); + } catch (Exception e) { + StringWriter sw = new StringWriter(); + PrintWriter pw = new PrintWriter(sw); + e.printStackTrace(pw); + Log.e("ALI::::", sw.toString()); + } + } } }