package es.upm.fi.dia.oeg.map4rdf.share.aemet; import java.io.Serializable; /** * * @author Daniel Garijo */ public class AemetIntervalo implements Serializable { private static final long serialVersionUID = 994118153711293856L; private int anno; private int mes; private int dia; private int hora; private int min; //This timeFormatted need to be initialized with dateTimeFormat format. private String timeFormatted; private static String dateTimeFormat="yyyy-MM-dd HH:mm"; AemetIntervalo() { //For serialization } public AemetIntervalo(int anno, int mes, int dia, int hora, int minuto) { this.anno = anno; this.mes = mes; this.dia = dia; this.hora = hora; this.min = minuto; StringBuffer time= new StringBuffer(anno+"-"); //I do this bad practice because GWT dont implement String.Format(String format, Object... args) if(mes>=10){ time.append(mes+"-"); }else{ time.append("0"+mes+"-"); } if(dia>=10){ time.append(dia+" "); }else{ time.append("0"+dia+" "); } if(hora>=10){ time.append(hora+":"); }else{ time.append("0"+hora+":"); } if(min>=10){ time.append(min); }else{ time.append("0"+min); } timeFormatted=time.toString(); } public AemetIntervalo(String timeFormatted){ String [] annoMesDiaSplit=timeFormatted.split(" ")[0].split("-"); String [] horaMinSplit=timeFormatted.split(" ")[1].split(":"); this.anno=Integer.valueOf(annoMesDiaSplit[0]); this.mes=Integer.valueOf(annoMesDiaSplit[1]); this.dia=Integer.valueOf(annoMesDiaSplit[2]); this.hora=Integer.valueOf(horaMinSplit[0]); this.min=Integer.valueOf(horaMinSplit[1]); this.timeFormatted=timeFormatted; } public int getAnno() { return anno; } public int getDia() { return dia; } public int getHora() { return hora; } public int getMes() { return mes; } public int getMin() { return min; } public String asXSDDateTime() { return anno + "-" + (mes < 10 ? "0" : "") + mes + "-" + (dia < 10 ? "0" : "") + dia + "T" + (hora < 10 ? "0" : "") + hora + ":" + (min < 10 ? "0" : "") + min + ":00Z"; } public String getTimeFormatted(){ return timeFormatted; } public static String getDateTimeFormat(){ return dateTimeFormat; } @Override public String toString() { return (hora + ":" + min + " " + dia + "/" + mes + "/" + anno); } }