-package ro.ieval.unical;
-
-import android.content.ContentResolver;
-import android.content.Context;
-import android.database.Cursor;
-import android.provider.BaseColumns;
-import android.provider.CalendarContract.Calendars;
-
-final class GCalendar {
- private static final String[] PROJECTION = {
- BaseColumns._ID,
- Calendars.NAME,
- Calendars.CALENDAR_DISPLAY_NAME,
- Calendars.VISIBLE,
- Calendars.ACCOUNT_NAME,
- Calendars.ACCOUNT_TYPE,
- };
-
- /** Calendar ID */
- public final long _id;
- /** Calendar name */
- public final String name;
- /** Calendar display name */
- public final String displayName;
- /** Calendar visibility (false - do not show events associated with this calendar, true - show events associated with this calendar) */
- public final boolean visible;
- /** Name of the account used to sync this calendar */
- public final String accountName;
- /** Type of the calendar used to sync this calendar */
- public final String accountType;
-
- private GCalendar(final long _id, final String name, final String displayName, final boolean visible, final String accountName, final String accountType) {
- this._id=_id;
- this.name=name;
- this.displayName=displayName;
- this.visible=visible;
- this.accountName=accountName;
- this.accountType=accountType;
- }
-
- public static GCalendar[] getAllCalendars(final Context context){
- final ContentResolver cr=context.getContentResolver();
- final Cursor cursor = cr.query(Calendars.CONTENT_URI, PROJECTION, null, null, null);
- cursor.moveToFirst();
- final GCalendar[] calendars = new GCalendar[cursor.getCount()];
- for(int i=0;i<calendars.length;i++){
- calendars[i]=new GCalendar(cursor.getLong(0), cursor.getString(1), cursor.getString(2), cursor.getInt(3)!=0, cursor.getString(4), cursor.getString(5));
- cursor.moveToNext();
- }
- cursor.close();
- return calendars;
- }
-}