package routines; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.TimeZone; public class CustomDate { // Retourne la date de début au 01/01/1900 public static final Date minDateDebut = TalendDate.parseDate("dd/MM/yyyy", "01/01/1900"); // Retourne la date de fin au 31/12/2999 public static final Date maxDateFin = TalendDate.parseDate("dd/MM/yyyy", "31/12/2999"); // Retourne la date du jour au format JJ/MM/AAAA public static final Date currentDate = TalendDate.parseDate("dd/MM/yyyy", TalendDate.formatDate("dd/MM/yyyy", new Date())); /** * getMilisecAsHours: retourne un format heure:minute:seconde depuis une valeur en miliseconde * * * {talendTypes} long * * {Category} CustomDate * * {param} long("1536259") input: valeur en miliseconde * * {example} getMilisecAsHours("1536259") # "25:36:259". */ public static long getMilisecBetweenTowDates(Date date1, Date date2) { long elapsed = (date1 != null && date2 != null) ? date2.getTime()-date1.getTime() : (date1 != null) ? date1.getTime() : date2.getTime(); return elapsed; } /** * getMilisecAsHours: retourne un format heure:minute:seconde depuis une valeur en miliseconde * * * {talendTypes} long * * {Category} CustomDate * * {param} long("1536259") input: valeur en miliseconde * * {example} getMilisecAsHours("1536259") # "25:36:259". */ public static String getStringBetweenTowDates(Date date1, Date date2) { long elapsed = (date1 != null && date2 != null) ? date2.getTime()-date1.getTime() : (date1 != null) ? date1.getTime() : date2.getTime(); DateFormat df = new SimpleDateFormat("HH':'mm':'ss"); df.setTimeZone(TimeZone.getTimeZone("GMT+0")); return df.format(new Date(elapsed)); } }