public static Block createTestBlock() { BlockBuilder blockBuilder = INTERVAL_DAY_TIME.createBlockBuilder(null, 15); INTERVAL_DAY_TIME.writeLong(blockBuilder, 1111); INTERVAL_DAY_TIME.writeLong(blockBuilder, 1111); INTERVAL_DAY_TIME.writeLong(blockBuilder, 1111); INTERVAL_DAY_TIME.writeLong(blockBuilder, 2222); INTERVAL_DAY_TIME.writeLong(blockBuilder, 2222); INTERVAL_DAY_TIME.writeLong(blockBuilder, 2222); INTERVAL_DAY_TIME.writeLong(blockBuilder, 2222); INTERVAL_DAY_TIME.writeLong(blockBuilder, 2222); INTERVAL_DAY_TIME.writeLong(blockBuilder, 3333); INTERVAL_DAY_TIME.writeLong(blockBuilder, 3333); INTERVAL_DAY_TIME.writeLong(blockBuilder, 4444); return blockBuilder.build(); }
@OutputFunction(StandardTypes.INTERVAL_DAY_TO_SECOND) public static void output(LongAndDoubleState state, BlockBuilder out) { long count = state.getLong(); if (count == 0) { out.appendNull(); } else { double value = state.getDouble(); INTERVAL_DAY_TIME.writeLong(out, round(value / count)); } } }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = INTERVAL_DAY_TIME.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { INTERVAL_DAY_TIME.writeLong(blockBuilder, i * 1000); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = INTERVAL_DAY_TIME.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { INTERVAL_DAY_TIME.writeLong(blockBuilder, i * 250); } return new Block[] {blockBuilder.build()}; }