Android Calendar Compare isBeforeRollingTime(Calendar date)

Here you can find the source of isBeforeRollingTime(Calendar date)

Description

Check if current time is before 19h15

License

Open Source License

Parameter

Parameter Description
date a parameter

Declaration

public static boolean isBeforeRollingTime(Calendar date) 

Method Source Code

//package com.java2s;
/*/*w  w w.ja  v a2  s .  c  o  m*/
 * Copyright (C) 2011  Nguyen Hoang Ton, a.k.a Ton Nguyen - tonng86@gmail.com
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 */

import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
import android.util.Log;

public class Main {
    private static final String TAG = "DateTimeUtil";
    private static final boolean DEBUG = false;
    public static final int HOUR_START_ROLLING = 19;
    public static final int MINUTE_START_ROLLING = 15;

    /**
     * Check if current time is before 19h15
     * @param date
     * @return
     */
    public static boolean isBeforeRollingTime(Calendar date) {
        Calendar today = getCalendar();
        today.setTime(date.getTime());
        Calendar startRollingTime = getCalendar(today.get(Calendar.YEAR),
                today.get(Calendar.MONTH),
                today.get(Calendar.DAY_OF_MONTH), HOUR_START_ROLLING,
                MINUTE_START_ROLLING);
        if (DEBUG)
            Log.d(TAG, "now=" + date.getTime());
        if (DEBUG)
            Log.d(TAG, "startRollingTime=" + startRollingTime.getTime());
        return startRollingTime.after(date);
    }

    public static Calendar getCalendar() {
        setDefaultTimeZoneToVietnam();
        Calendar today = Calendar.getInstance();
        today.setTime(new Date());
        return today;
    }

    private static Calendar getCalendar(int year, int month,
            int dayOfMonth, int hourOfDay, int minute) {
        Calendar startRollingTime = Calendar.getInstance();
        startRollingTime.set(Calendar.YEAR, year);
        startRollingTime.set(Calendar.MONTH, month);
        startRollingTime.set(Calendar.DAY_OF_MONTH, dayOfMonth);
        startRollingTime.set(Calendar.HOUR_OF_DAY, hourOfDay);
        startRollingTime.set(Calendar.MINUTE, minute);
        startRollingTime.set(Calendar.SECOND, 00);
        return startRollingTime;
    }

    private static void setDefaultTimeZoneToVietnam() {
        // set default time zone to Vietnam
        TimeZone.setDefault(TimeZone.getTimeZone("GMT+7"));
    }
}

Related

  1. compare(Calendar c1, Calendar c2, int what)
  2. compareCurrentDate(String currentDate)
  3. isAfterRollingTime(Calendar date)
  4. isAfterRollingTimeOut(Calendar date)
  5. isBeforeRollingEndTime(Calendar date)
  6. isSameDay(Calendar calSource, Calendar calDesti)
  7. isSameInstant(Calendar cal1, Calendar cal2)
  8. isSameLocalTime(Calendar calSource, Calendar calDesti)
  9. compare(Calendar d1, Calendar d2)