Back to project page Go2-Rennes.
The source code is released under:
GNU General Public License
If you think the Android project Go2-Rennes listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
/******************************************************************************* * Copyright (c) 2011 Michel DAVID mimah35-at-gmail.com * //from w w w. ja v a 2 s . c o m * 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 3 of the License. * * 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, see <http://www.gnu.org/licenses/>. ******************************************************************************/ package fr.gotorennes.domain; import java.util.Calendar; import android.content.res.Resources; import android.database.Cursor; import android.os.Parcel; import android.os.Parcelable; import fr.gotorennes.R; public class Arret implements Parcelable { public long idTrajet; public long idStation; public int arrivee; public int depart; public int sequence; public Arret(Cursor cursor) { idTrajet = cursor.getLong(cursor.getColumnIndex("idTrajet")); idStation = cursor.getLong(cursor.getColumnIndex("idStation")); arrivee = cursor.getInt(cursor.getColumnIndex("arrivee")); depart = cursor.getInt(cursor.getColumnIndex("depart")); sequence = cursor.getInt(cursor.getColumnIndex("sequence")); } public Arret(Parcel in) { idTrajet = in.readLong(); idStation = in.readLong(); arrivee = in.readInt(); depart = in.readInt(); sequence = in.readInt(); } public int getHeuresDepart(boolean nuit) { return depart / 60; } public String getDepart() { return getTime(depart); } public String getArrivee() { return getTime(arrivee); } public int getHeuresArrivee(boolean nuit) { return arrivee / 60; } public int getMinutesDepart() { return depart % 60; } public int getMinutesArrivee() { return arrivee % 60; } public int getMinutesAvantDepart(boolean nuit) { Calendar calendar = Calendar.getInstance(); int now = getHours(calendar, nuit) * 60 + calendar.get(Calendar.MINUTE); return depart - now; } public String getDureeAvantDepart(boolean nuit, Resources resources) { int delta = getMinutesAvantDepart(nuit); StringBuffer buffer = new StringBuffer(); if (delta >= 60) { int hours = delta / 60; buffer.append(hours); buffer.append(hours > 1 ? resources.getString(R.string.heures) : resources.getString(R.string.heure)); int minutes = delta % 60; buffer.append(minutes < 10 ? "0" + minutes : minutes); } else { buffer.append(delta); buffer.append(delta > 1 ? resources.getString(R.string.minutes) : resources.getString(R.string.minute)); } return buffer.toString(); } public static String getTime(int time) { int hours = (time / 60) % 24; int minutes = time % 60; return (hours < 10 ? "0" + hours : hours) + ":" + (minutes < 10 ? "0" + minutes : minutes); } public static String getTimeInMinutes(boolean nuit) { return getTimeInMinutes(Calendar.getInstance(), nuit); } public static String getTimeInMinutes(Calendar calendar, boolean nuit) { return String.valueOf(getTime(calendar, nuit)); } public static int getTime(Calendar calendar, boolean nuit) { int hours = getHours(calendar, nuit); return hours * 60 + calendar.get(Calendar.MINUTE); } public static int getHours(Calendar calendar, boolean nuit) { int hours = calendar.get(Calendar.HOUR_OF_DAY); return getHours(hours, nuit); } protected static int getHours(int hours, boolean nuit) { if (!nuit && hours < 4) hours += 24; return hours; } @Override public String toString() { return getTime(depart); } @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel out, int flags) { out.writeLong(idTrajet); out.writeLong(idStation); out.writeInt(arrivee); out.writeInt(depart); out.writeInt(sequence); } public static final Parcelable.Creator<Arret> CREATOR = new Parcelable.Creator<Arret>() { @Override public Arret createFromParcel(Parcel in) { return new Arret(in); } @Override public Arret[] newArray(int size) { return new Arret[size]; } }; }