@Override public void removeRoom(Room room) { if (room == null) throw new IllegalStateException(); EstimoteManager.getRoomMap().remove(room.getBeaconId()); persist(); Log.d(LOG_TAG, "Removed room " + room.getName()); }
@Override public int onStartCommand(Intent intent, int flags, int startId) { try { EstimoteManager.Create( (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE), this, intent); } catch (Exception e) { Log.e(LOG_TAG, "Exception", e); } return START_STICKY; }
private void load() { Map<String, Room> toReturn; FileInputStream fis; try { fis = openFileInput(STORAGE_FILENAME); ObjectInputStream oi = new ObjectInputStream(fis); toReturn = (Map<String, Room>) oi.readObject(); EstimoteManager.getRoomMap().clear(); EstimoteManager.getRoomMap().putAll(toReturn); oi.close(); } catch (FileNotFoundException e) { Log.e("InternalStorage", e.getMessage()); } catch (IOException e) { Log.e("InternalStorage", e.getMessage()); } catch (ClassNotFoundException e) { e.printStackTrace(); } }
private void persist() { try { FileOutputStream fos = openFileOutput(STORAGE_FILENAME, Context.MODE_PRIVATE); ObjectOutputStream of = new ObjectOutputStream(fos); of.writeObject(EstimoteManager.getRoomMap()); of.flush(); of.close(); fos.close(); } catch (Exception e) { Log.e("InternalStorage", e.getMessage()); } }
@Override public void updateRoom(Room room) { if (room == null) throw new IllegalStateException(); Room room1 = EstimoteManager.getRoomMap().get(room.getBeaconId()); if (room1 == null) throw new IllegalStateException(); room1.setDesiredTemperature(room.getDesiredTemperature()); persist(); Log.d(LOG_TAG, "Updated room " + room.getName()); }
@Override public void onDestroy() { EstimoteManager.stop(); super.onDestroy(); Log.d(LOG_TAG, "destroyed"); }
public Collection<Room> getAllRooms() { return EstimoteManager.getRoomMap().values(); }