private static DateTime dt(int year, int month, int day, int hour, int minute, int second) { return new DateTime(year, month, day, hour, minute, second); } }
@SuppressWarnings("deprecation") @Override void modify(DateTimeOption holder, Object value) { Calendar calendar = (Calendar) value; holder.modify(new DateTime( calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH) + 1, calendar.get(Calendar.DATE), calendar.get(Calendar.HOUR_OF_DAY), calendar.get(Calendar.MINUTE), calendar.get(Calendar.SECOND))); } @Override
/** * Parses the target string using the specified format, and returns the corresponding date and time object. * @param timeString the target string * @param format the format kind * @return the corresponding date and time object * @throws IllegalArgumentException if the target string is malformed */ public static DateTime valueOf(String timeString, DateTime.Format format) { if (timeString == null) { throw new IllegalArgumentException("timeString must not be null"); //$NON-NLS-1$ } if (format == null) { throw new IllegalArgumentException("format must not be null"); //$NON-NLS-1$ } DateTime time = new DateTime(); time.setElapsedSeconds(format.parse(timeString)); return time; }
private DateTime time(long elapsed) { DateTime date = new DateTime(); date.setElapsedSeconds(elapsed); return date; } }
/** * test for date-time values. * @throws Exception if failed */ @Test public void datetime_values() throws Exception { assertRestorable(new DateTimeOption(new DateTime(2011, 3, 31, 23, 59, 59))); assertRestorable(new DateTimeOption(new DateTime(1971, 4, 1, 2 ,3, 4))); assertRestorable(new DateTimeOption()); dateTimeFormat = "yyyy-MM\"dd HH:mm:ss"; assertRestorable(new DateTimeOption(new DateTime(2011, 3, 31, 23, 59, 59))); assertRestorable(new DateTimeOption(new DateTime(1971, 4, 1, 2 ,3, 4))); dateTimeFormat = "yyyy-MM,dd HH:mm:ss"; assertRestorable(new DateTimeOption(new DateTime(2011, 3, 31, 23, 59, 59))); assertRestorable(new DateTimeOption(new DateTime(1971, 4, 1, 2 ,3, 4))); dateTimeFormat = "yyyy-MM\ndd HH:mm:ss"; assertRestorable(new DateTimeOption(new DateTime(2011, 3, 31, 23, 59, 59))); assertRestorable(new DateTimeOption(new DateTime(1971, 4, 1, 2 ,3, 4))); dateTimeFormat = "yyyy-MM\rdd HH:mm:ss"; assertRestorable(new DateTimeOption(new DateTime(2011, 3, 31, 23, 59, 59))); assertRestorable(new DateTimeOption(new DateTime(1971, 4, 1, 2 ,3, 4))); }
/** * test for date-time values. * @throws Exception if failed */ @Test public void datetime_values_direct() throws Exception { dateTimeFormat = "yyyyMMddHHmmss"; assertRestorable(new DateTimeOption(new DateTime(2011, 3, 31, 23, 59, 59))); assertRestorable(new DateTimeOption(new DateTime(1971, 4, 1, 2 ,3, 4))); assertRestorable(new DateTimeOption()); }
private SalesDetail sales(int day) { SalesDetail object = new SalesDetail(); object.setSalesDateTime(new DateTime(2011, 1, day, 0, 0, 0)); return object; }
private SalesDetail sales(int day) { SalesDetail object = new SalesDetail(); object.setSalesDateTime(new DateTime(2011, 1, day, 0, 0, 0)); return object; }
private SalesDetail sales(int day) { SalesDetail object = new SalesDetail(); object.setSalesDateTime(new DateTime(2011, 1, day, 0, 0, 0)); return object; }
private SalesDetail sales(int day) { SalesDetail object = new SalesDetail(); object.setSalesDateTime(new DateTime(2011, 1, day, 0, 0, 0)); return object; }
private DateTime time(int y, int m, int d, int h, int min, int s) { int days = DateUtil.getDayFromDate(y, m, d); int secs = DateUtil.getSecondFromTime(h, min, s); DateTime date = new DateTime(); date.setElapsedSeconds((long) days * 86400 + secs); return date; }
/** * datetime placeholder. * @throws Exception if failed */ @Test public void placeholder_datetime() throws Exception { Mock mock = new Mock(spec(DATETIME, "yyyy-MM-dd/HH")); mock.setMock(new DateTimeOption(new DateTime(2012, 2, 3, 4, 5, 6))); assertThat(mock.apply(), is("2012-02-03/04")); }
private DateTime time(int y, int m, int d, int h, int min, int s) { int days = DateUtil.getDayFromDate(y, m, d); int secs = DateUtil.getSecondFromTime(h, min, s); DateTime date = new DateTime(); date.setElapsedSeconds((long) days * 86400 + secs); return date; }
/** * w/ {@code timezone}. * @throws Exception if failed */ @Test public void timezone_field() throws Exception { ModelLoader loaded = generateJavaFromLines(new String[] { "@directio.text.tabular", "simple = {", " a : DATETIME;", " @directio.text.field(timezone = 'UTC')", " b : DATETIME;", "};", }); byte[] contents = restore(loaded, loaded.newModel("Simple") .setOption("a", new DateTimeOption(new DateTime(2017, 1, 2, 12, 34, 56))) .setOption("b", new DateTimeOption(new DateTime(2017, 1, 2, 12, 34, 56)))); assertThat(text(contents), is("2017-01-02 12:34:56\t2017-01-02 20:34:56\n")); }
/** * w/ {@code datetime_format}. * @throws Exception if failed */ @Test public void datetime_format_field() throws Exception { ModelLoader loaded = generateJavaFromLines(new String[] { "@directio.text.tabular", "simple = {", " @directio.text.field(datetime_format = 'yyyy_MM_dd HH-mm-ss')", " a : DATETIME;", " b : DATETIME;", "};", }); byte[] contents = restore(loaded, loaded.newModel("Simple") .setOption("a", new DateTimeOption(new DateTime(2017, 1, 6, 22, 10, 0))) .setOption("b", new DateTimeOption(new DateTime(2017, 1, 6, 22, 10, 0)))); assertThat(text(contents), is("2017_01_06 22-10-00\t2017-01-06 22:10:00\n")); }
/** * w/ {@code datetime_format}. * @throws Exception if failed */ @Test public void datetime_format() throws Exception { ModelLoader loaded = generateJavaFromLines(new String[] { "@directio.text.tabular(", " datetime_format = 'yyyy_MM_dd HH-mm-ss',", ")", "simple = {", " a : DATETIME;", "};", }); byte[] contents = restore(loaded, loaded.newModel("Simple") .setOption("a", new DateTimeOption(new DateTime(2017, 1, 6, 22, 10, 0)))); assertThat(text(contents), is("2017_01_06 22-10-00\n")); }
/** * w/ {@code timezone}. * @throws Exception if failed */ @Test public void timezone() throws Exception { ModelLoader loaded = generateJavaFromLines(new String[] { "@directio.text.tabular(", " timezone = 'UTC',", ")", "simple = {", " a : DATETIME;", "};", }); byte[] contents = restore(loaded, loaded.newModel("Simple") .setOption("a", new DateTimeOption(new DateTime(2017, 1, 2, 12, 34, 56)))); assertThat(text(contents), is("2017-01-02 20:34:56\n")); }
/** * Simple stress test for {@link DateTime} type. * @throws Exception if failed */ @Test public void stress_datetime() throws Exception { int count = 5000000; try (CsvEmitter emitter = new CsvEmitter(new VoidOutputStream(), "testing", createConfiguration())) { DateTimeOption value = new DateTimeOption(new DateTime(1999, 12, 31, 1, 23, 45)); for (int i = 0; i < count; i++) { emitter.emit(value); emitter.endRecord(); } } } }
/** * w/ {@code timezone}. * @throws Exception if failed */ @Test public void timezone() throws Exception { ModelLoader loaded = generateJavaFromLines(new String[] { "@directio.json(", " timezone = 'UTC',", ")", "simple = {", " a : DATETIME;", "};", }); byte[] contents = restore(loaded, loaded.newModel("Simple") .setOption("a", new DateTimeOption(new DateTime(2019, 1, 2, 12, 34, 56)))); assertThat(parse(contents), contains(map("a", "'2019-01-02 20:34:56'"))); }
/** * w/ {@code datetime_format}. * @throws Exception if failed */ @Test public void datetime_format() throws Exception { ModelLoader loaded = generateJavaFromLines(new String[] { "@directio.json(", " datetime_format = 'yyyy_MM_dd HH-mm-ss',", ")", "simple = {", " a : DATETIME;", "};", }); byte[] contents = restore(loaded, loaded.newModel("Simple") .setOption("a", new DateTimeOption(new DateTime(2019, 1, 2, 22, 10, 0)))); assertThat(parse(contents), contains(map("a", "'2019_01_02 22-10-00'"))); }