From a6dcb82b21325934ae3f4df9cfc5aad04d414653 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 27 Feb 2012 23:26:34 +0000 Subject: Really cool uri stuff, needs more thinking about, but its really cool :) --- src/net/cbaines/suma/BusActivity.java | 75 ++++++++++++++++------------------- 1 file changed, 35 insertions(+), 40 deletions(-) (limited to 'src/net/cbaines/suma/BusActivity.java') diff --git a/src/net/cbaines/suma/BusActivity.java b/src/net/cbaines/suma/BusActivity.java index 2b76176..f4edc3f 100644 --- a/src/net/cbaines/suma/BusActivity.java +++ b/src/net/cbaines/suma/BusActivity.java @@ -24,8 +24,7 @@ import android.widget.Toast; import com.j256.ormlite.android.apptools.OrmLiteBaseActivity; -public class BusActivity extends OrmLiteBaseActivity implements - Preferences { +public class BusActivity extends OrmLiteBaseActivity implements Preferences { final static String TAG = "BusActivity"; private TextView U1RouteTextView; @@ -71,13 +70,28 @@ public class BusActivity extends OrmLiteBaseActivity implements setContentView(R.layout.bus_activity); instance = this; - String busID = getIntent().getExtras().getString("busID"); + Log.i(TAG, "getIntent().getDataString() " + getIntent().getDataString()); + + String busID; + + if (getIntent().getDataString().startsWith("http://data")) { + + String[] uriParts = getIntent().getDataString().split("/"); + + busID = uriParts[uriParts.length - 1].replace(".html", ""); + + } else { + + String[] uriParts = getIntent().getDataString().split("/"); + + busID = uriParts[uriParts.length - 1]; + } + String busStopID = getIntent().getExtras().getString("busStopID"); final DatabaseHelper helper = getHelper(); try { - List buses = helper.getBusDao().queryForEq(Bus.ID_FIELD_NAME, - busID); + List buses = helper.getBusDao().queryForEq(Bus.ID_FIELD_NAME, busID); bus = null; if (buses.size() == 0) { Log.e(TAG, "Bus " + busID + " not found!"); @@ -91,8 +105,7 @@ public class BusActivity extends OrmLiteBaseActivity implements busStop = null; if (busStopID != null) { - List busStops = helper.getBusStopDao().queryForEq( - BusStop.ID_FIELD_NAME, busStopID); + List busStops = helper.getBusStopDao().queryForEq(BusStop.ID_FIELD_NAME, busStopID); if (busStops.size() == 0) { Log.e(TAG, "BusStop " + busStopID + " not found!"); } else if (busStops.size() == 1) { @@ -115,8 +128,7 @@ public class BusActivity extends OrmLiteBaseActivity implements timetableView = (ListView) findViewById(R.id.busActivityTimes); if (bus.id != null) { - Log.i(TAG, "Bus id is not null (" + bus.id - + ") setting busIDTextView"); + Log.i(TAG, "Bus id is not null (" + bus.id + ") setting busIDTextView"); busIDTextView.setText(bus.id + " " + bus.getName()); } else { Log.w(TAG, "Bus id is null?"); @@ -165,29 +177,23 @@ public class BusActivity extends OrmLiteBaseActivity implements } /* - * for (int i = 0;; i++) { BusStop nextStop = - * bus.route.moveInRoute(instance, busStops.get(i), bus.direction, 1); + * for (int i = 0;; i++) { BusStop nextStop = bus.route.moveInRoute(instance, busStops.get(i), bus.direction, 1); * - * if (nextStop.equals(busStop) || (bus.destination != null && - * bus.destination.equals(nextStop))) { break; } + * if (nextStop.equals(busStop) || (bus.destination != null && bus.destination.equals(nextStop))) { break; } * * busStops.add(nextStop); busStopsActive.add(false); * - * if (busStops.size() > 50) { Log.e(TAG, "Got more than 50 bus stops"); - * break; } } + * if (busStops.size() > 50) { Log.e(TAG, "Got more than 50 bus stops"); break; } } */ refreshData = new Runnable() { public void run() { - for (int num = timetableView.getFirstVisiblePosition(); num < timetableView - .getLastVisiblePosition(); num++) { + for (int num = timetableView.getFirstVisiblePosition(); num < timetableView.getLastVisiblePosition(); num++) { Stop stop = timetable.get(num); GetTimetableStopTask task = tasks.get(busStops.get(num)); - if (stop.timeOfFetch == null - || (stop.timeOfFetch.getTime() - System - .currentTimeMillis()) > 20000) { + if (stop.timeOfFetch == null || (stop.timeOfFetch.getTime() - System.currentTimeMillis()) > 20000) { if (task != null) { if (task.getStatus() == AsyncTask.Status.FINISHED) { task = null; @@ -212,12 +218,9 @@ public class BusActivity extends OrmLiteBaseActivity implements public void onResume() { super.onResume(); - SharedPreferences sharedPrefs = PreferenceManager - .getDefaultSharedPreferences(this); - if (sharedPrefs.getBoolean(UNI_LINK_BUS_TIMES, - UNI_LINK_BUS_TIMES_ENABLED_BY_DEFAULT) - || sharedPrefs.getBoolean(NON_UNI_LINK_BUS_TIMES, - NON_UNI_LINK_BUS_TIMES_ENABLED_BY_DEFAULT)) { + SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this); + if (sharedPrefs.getBoolean(UNI_LINK_BUS_TIMES, UNI_LINK_BUS_TIMES_ENABLED_BY_DEFAULT) + || sharedPrefs.getBoolean(NON_UNI_LINK_BUS_TIMES, NON_UNI_LINK_BUS_TIMES_ENABLED_BY_DEFAULT)) { Log.i(TAG, "Live Times enabled"); timetable = (Timetable) getLastNonConfigurationInstance(); @@ -227,8 +230,7 @@ public class BusActivity extends OrmLiteBaseActivity implements Log.i(TAG, "No Previous timetable"); timetable = new Timetable(); for (int i = 0; i < busStops.size(); i++) { - timetable.add(new Stop(bus, busStops.get(i), null, null, - false)); + timetable.add(new Stop(bus, busStops.get(i), null, null, false)); } Log.v(TAG, "Finished adding placeholder stops"); } else { @@ -261,8 +263,7 @@ public class BusActivity extends OrmLiteBaseActivity implements super.onPause(); } - private class GetTimetableStopTask extends - AsyncTask { + private class GetTimetableStopTask extends AsyncTask { private String errorMessage; private BusStop busStop; @@ -331,26 +332,20 @@ public class BusActivity extends OrmLiteBaseActivity implements } else { if (visibleTimetable.size() == 0) { busActivityContentLayout.setGravity(Gravity.CENTER); - busContentMessage - .setText("No Busses (With the current enabled routes)"); + busContentMessage.setText("No Busses (With the current enabled routes)"); busContentMessage.setVisibility(View.VISIBLE); timetableView.setVisibility(View.GONE); } else { timetableView.setVisibility(View.VISIBLE); busContentMessage.setVisibility(View.GONE); BusSpecificTimetableAdapter adapter; - if ((adapter = (BusSpecificTimetableAdapter) timetableView - .getAdapter()) != null) { + if ((adapter = (BusSpecificTimetableAdapter) timetableView.getAdapter()) != null) { adapter.updateTimetable(visibleTimetable); } else { - adapter = new BusSpecificTimetableAdapter(this, - visibleTimetable); + adapter = new BusSpecificTimetableAdapter(this, visibleTimetable); timetableView.setAdapter(adapter); if (busStop != null) { - Log.i(TAG, - "Moving to position of " + busStop.description - + " which is " - + busStops.indexOf(busStop)); + Log.i(TAG, "Moving to position of " + busStop.description + " which is " + busStops.indexOf(busStop)); timetableView.setSelection(busStops.indexOf(busStop)); } } -- cgit v1.2.3 From 5f2b8712079aeb5b7cee476b06b36013edac4fb3 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 28 Feb 2012 22:22:27 +0000 Subject: Next release, many improvements. --- src/net/cbaines/suma/BusActivity.java | 37 ----------------------------------- 1 file changed, 37 deletions(-) (limited to 'src/net/cbaines/suma/BusActivity.java') diff --git a/src/net/cbaines/suma/BusActivity.java b/src/net/cbaines/suma/BusActivity.java index f4edc3f..1a8baf9 100644 --- a/src/net/cbaines/suma/BusActivity.java +++ b/src/net/cbaines/suma/BusActivity.java @@ -27,12 +27,6 @@ import com.j256.ormlite.android.apptools.OrmLiteBaseActivity; public class BusActivity extends OrmLiteBaseActivity implements Preferences { final static String TAG = "BusActivity"; - private TextView U1RouteTextView; - private TextView U1NRouteTextView; - private TextView U2RouteTextView; - private TextView U6RouteTextView; - private TextView U9RouteTextView; - private TextView busIDTextView; private TextView busContentMessage; @@ -115,12 +109,6 @@ public class BusActivity extends OrmLiteBaseActivity implements } } - U1RouteTextView = (TextView) findViewById(R.id.busActivityU1); - U1NRouteTextView = (TextView) findViewById(R.id.busActivityU1N); - U2RouteTextView = (TextView) findViewById(R.id.busActivityU2); - U6RouteTextView = (TextView) findViewById(R.id.busActivityU6); - U9RouteTextView = (TextView) findViewById(R.id.busActivityU9); - busIDTextView = (TextView) findViewById(R.id.busActivityBusID); busContentMessage = (TextView) findViewById(R.id.busActivityMessage); @@ -136,31 +124,6 @@ public class BusActivity extends OrmLiteBaseActivity implements busIDTextView.setText("Unidentified"); } - U1RouteTextView.setVisibility(View.GONE); - U1NRouteTextView.setVisibility(View.GONE); - U2RouteTextView.setVisibility(View.GONE); - U6RouteTextView.setVisibility(View.GONE); - U9RouteTextView.setVisibility(View.GONE); - - // if (bus.route.uniLink) { - Log.i(TAG, "Bus is uniLink"); - if (bus.route.code.equals("U1")) { - U1RouteTextView.setVisibility(View.VISIBLE); - } else if (bus.route.code.equals("U1N")) { - U1NRouteTextView.setVisibility(View.VISIBLE); - } else if (bus.route.code.equals("U2")) { - U2RouteTextView.setVisibility(View.VISIBLE); - } else if (bus.route.code.equals("U6")) { - U6RouteTextView.setVisibility(View.VISIBLE); - } else if (bus.route.code.equals("U9")) { - U9RouteTextView.setVisibility(View.VISIBLE); - } else { - Log.e(TAG, "Route not found " + bus.route.code); - } - // } else { - // Log.i(TAG, "Bus is not uniLink"); - // } - } catch (NumberFormatException e) { e.printStackTrace(); } catch (SQLException e) { -- cgit v1.2.3