Advertisement
Guest User

Untitled

a guest
Apr 21st, 2015
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.51 KB | None | 0 0
  1. package id.bewei.flipcard.util;
  2.  
  3. import android.content.Context;
  4. import android.database.Cursor;
  5. import android.database.DatabaseUtils;
  6. import android.provider.CalendarContract;
  7. import android.util.Log;
  8.  
  9. import java.util.ArrayList;
  10. import java.util.Calendar;
  11. import java.util.Collections;
  12. import java.util.Comparator;
  13. import java.util.Date;
  14. import java.util.List;
  15.  
  16. import id.bewei.flipcard.model.FCEvent;
  17.  
  18. /**
  19. * Created by Fazlur Rahman - BWI on 3/3/2015 - 5:10 PM.
  20. * For event operation
  21. */
  22. public class EventUtils {
  23. public static final String TAG = "EventUtils";
  24.  
  25. public static List<FCEvent> getAllEvents(Context context) {
  26. List<FCEvent> eventsList = new ArrayList<>();
  27.  
  28. String[] projection = new String[] { CalendarContract.Events.CALENDAR_ID, CalendarContract.Events.TITLE, CalendarContract.Events.DESCRIPTION, CalendarContract.Events.DTSTART, CalendarContract.Events.DTEND, CalendarContract.Events.ALL_DAY, CalendarContract.Events.EVENT_LOCATION };
  29.  
  30. // 0 = January, 1 = February, ...
  31. Calendar startTime = Calendar.getInstance();
  32. // startTime.set(2014,0,1,0,0);
  33.  
  34. int nextYear = startTime.get(Calendar.YEAR) + 1;
  35.  
  36. Calendar endTime= Calendar.getInstance();
  37. endTime.set(nextYear,0,1,0,0);
  38.  
  39. // the range is all data from 2014
  40. String selection = "(( " + CalendarContract.Events.DTSTART + " >= " + startTime.getTimeInMillis() + " ) AND ( " + CalendarContract.Events.DTSTART + " <= " + endTime.getTimeInMillis() + " ))";
  41.  
  42. Cursor cursor = context.getContentResolver().query( CalendarContract.Events.CONTENT_URI, projection, selection, null, null );
  43.  
  44. String dumpedCursor = DatabaseUtils.dumpCursorToString(cursor);
  45.  
  46. Log.d(TAG, dumpedCursor);
  47.  
  48. // output the events
  49. if (cursor.moveToFirst()) {
  50. do {
  51. FCEvent event = new FCEvent();
  52. event.setName(cursor.getString(1));
  53. event.setLocation(cursor.getString(6));
  54. event.setStartDate(new Date(cursor.getLong(3)).toString());
  55. event.setEndDate(new Date(cursor.getLong(4)).toString());
  56. event.setNotes(cursor.getString(2));
  57.  
  58. eventsList.add(event);
  59. } while ( cursor.moveToNext());
  60. }
  61.  
  62. // Sort events by date
  63. Collections.sort(eventsList, new Comparator<FCEvent>() {
  64. public int compare(FCEvent o1, FCEvent o2) {
  65. return o1.getStartDate().compareTo(o2.getStartDate());
  66. }
  67. });
  68.  
  69. return eventsList;
  70. }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement