Guest User

Untitled

a guest
Mar 22nd, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.20 KB | None | 0 0
  1. private fun midnightTimeClearCache(dataType: DataType, requestCode: Int) {
  2. val calendar = Calendar.getInstance()
  3. calendar.timeInMillis = System.currentTimeMillis()
  4. calendar.set(Calendar.HOUR_OF_DAY, 23)
  5. calendar.set(Calendar.MINUTE, 59)
  6. val intent = Intent(context, ClearDataReceiver::class.java)
  7. intent.putExtra(ClearDataReceiver.DATA_TYPE_EXTRA, dataType.name)
  8. val pendingIntent = PendingIntent.getBroadcast(context, requestCode, intent, PendingIntent.FLAG_UPDATE_CURRENT)
  9. alarmManager.setExact(AlarmManager.RTC_WAKEUP, calendar.timeInMillis, pendingIntent)
  10.  
  11. }
  12.  
  13. private fun weekTimeClearCache(dataType: DataType, requestCode: Int) {
  14. val calendar = Calendar.getInstance()
  15. calendar.timeInMillis = System.currentTimeMillis()
  16. calendar.set(Calendar.HOUR_OF_DAY, 23)
  17. calendar.set(Calendar.MINUTE, 59)
  18. var i: Int = calendar.get(Calendar.WEEK_OF_MONTH)
  19. calendar.set(Calendar.WEEK_OF_MONTH, i++)
  20. val intent = Intent(context, ClearDataReceiver::class.java)
  21. intent.putExtra(ClearDataReceiver.DATA_TYPE_EXTRA, dataType.name)
  22. val pendingIntent = PendingIntent.getBroadcast(context, requestCode, intent, PendingIntent.FLAG_UPDATE_CURRENT)
  23. alarmManager.setExact(AlarmManager.RTC_WAKEUP, calendar.timeInMillis, pendingIntent)
  24. }
  25.  
  26. class ClearDataReceiver : DaggerBroadcastReceiver() {
  27. override fun onReceive(context: Context?, intent: Intent?) {
  28. super.onReceive(context, intent)
  29. var bundle = intent!!.extras
  30. val dataTypeString = bundle.getString(DATA_TYPE_EXTRA)
  31. val dataType = DataType.valueOf(dataTypeString)
  32. Log.d("JJJ", "clearing data for " + dataTypeString)
  33. when (dataType) {
  34. DataType.CUSTOMER_DETAILS -> {
  35. storage.clearDetails()
  36. storageClearSchedular.setCustomerDetailsClear()
  37. }
  38. DataType.CUSTOMER_PIC -> {
  39. storage.clearPic()
  40. storageClearSchedular.setPicClear()
  41. }
  42. }
  43.  
  44. storageClearSchedular = StorageClearSchedular(context!!, context!!.getSystemService(Context.ALARM_SERVICE) as AlarmManager)
  45. storageClearSchedular.setAllSchedulars()
Add Comment
Please, Sign In to add comment