@Override public void writeSlice(BlockBuilder blockBuilder, Slice value) { writeSlice(blockBuilder, value, 0, value.length()); }
public void writeString(BlockBuilder blockBuilder, String value) { writeSlice(blockBuilder, Slices.utf8Slice(value)); }
@Override public void serialize(EvaluateClassifierPredictionsState state, BlockBuilder out) { Map<String, Map<String, Integer>> jsonState = new HashMap<>(); jsonState.put(TRUE_POSITIVES, state.getTruePositives()); jsonState.put(FALSE_POSITIVES, state.getFalsePositives()); jsonState.put(FALSE_NEGATIVES, state.getFalseNegatives()); try { VARCHAR.writeSlice(out, Slices.utf8Slice(OBJECT_MAPPER.writeValueAsString(jsonState))); } catch (JsonProcessingException e) { throw new RuntimeException(e); } }
private static void writeArray(BlockBuilder blockBuilder, Collection<String> values) { if (values.isEmpty()) { blockBuilder.appendNull(); } else { BlockBuilder array = blockBuilder.beginBlockEntry(); for (String value : values) { VARCHAR.writeSlice(array, utf8Slice(value)); } blockBuilder.closeEntry(); } }
private static Block resourceGroupIdToBlock(ResourceGroupId resourceGroupId) { requireNonNull(resourceGroupId, "resourceGroupId is null"); List<String> segments = resourceGroupId.getSegments(); BlockBuilder blockBuilder = createUnboundedVarcharType().createBlockBuilder(null, segments.size()); for (String segment : segments) { createUnboundedVarcharType().writeSlice(blockBuilder, utf8Slice(segment)); } return blockBuilder.build(); }
private static Block resourceGroupIdToBlock(ResourceGroupId resourceGroupId) { requireNonNull(resourceGroupId, "resourceGroupId is null"); List<String> segments = resourceGroupId.getSegments(); BlockBuilder blockBuilder = createUnboundedVarcharType().createBlockBuilder(null, segments.size()); for (String segment : segments) { createUnboundedVarcharType().writeSlice(blockBuilder, utf8Slice(segment)); } return blockBuilder.build(); }
public Block split(Slice source) { Matcher matcher = re2jPattern.matcher(source); BlockBuilder blockBuilder = VARCHAR.createBlockBuilder(null, 32); int lastEnd = 0; while (matcher.find()) { Slice slice = source.slice(lastEnd, matcher.start() - lastEnd); lastEnd = matcher.end(); VARCHAR.writeSlice(blockBuilder, slice); } VARCHAR.writeSlice(blockBuilder, source.slice(lastEnd, source.length() - lastEnd)); return blockBuilder.build(); }
public Block split(Slice source) { Matcher matcher = re2jPattern.matcher(source); BlockBuilder blockBuilder = VARCHAR.createBlockBuilder(null, 32); int lastEnd = 0; while (matcher.find()) { Slice slice = source.slice(lastEnd, matcher.start() - lastEnd); lastEnd = matcher.end(); VARCHAR.writeSlice(blockBuilder, slice); } VARCHAR.writeSlice(blockBuilder, source.slice(lastEnd, source.length() - lastEnd)); return blockBuilder.build(); }
private void writeRow(List<Object> testRow, BlockBuilder rowBlockBuilder) { BlockBuilder singleRowBlockWriter = rowBlockBuilder.beginBlockEntry(); for (Object fieldValue : testRow) { if (fieldValue instanceof String) { VARCHAR.writeSlice(singleRowBlockWriter, utf8Slice((String) fieldValue)); } else { throw new UnsupportedOperationException(); } } rowBlockBuilder.closeEntry(); }
private void writeRow(List<Object> testRow, BlockBuilder rowBlockBuilder) { BlockBuilder singleRowBlockWriter = rowBlockBuilder.beginBlockEntry(); for (Object fieldValue : testRow) { if (fieldValue instanceof String) { VARCHAR.writeSlice(singleRowBlockWriter, utf8Slice((String) fieldValue)); } else { throw new UnsupportedOperationException(); } } rowBlockBuilder.closeEntry(); }
public Block extractAll(Slice source, long groupIndex) { Matcher matcher = re2jPattern.matcher(source); int group = toIntExact(groupIndex); validateGroup(group, matcher.groupCount()); BlockBuilder blockBuilder = VARCHAR.createBlockBuilder(null, 32); while (true) { if (!matcher.find()) { break; } Slice searchedGroup = matcher.group(group); if (searchedGroup == null) { blockBuilder.appendNull(); continue; } VARCHAR.writeSlice(blockBuilder, searchedGroup); } return blockBuilder.build(); }
private void testIsFull(PageBuilderStatus pageBuilderStatus) { BlockBuilder blockBuilder = new VariableWidthBlockBuilder(pageBuilderStatus.createBlockBuilderStatus(), 32, 1024); assertTrue(pageBuilderStatus.isEmpty()); while (!pageBuilderStatus.isFull()) { VARCHAR.writeSlice(blockBuilder, Slices.allocate(VARCHAR_VALUE_SIZE)); } assertEquals(blockBuilder.getPositionCount(), EXPECTED_ENTRY_COUNT); assertEquals(pageBuilderStatus.isFull(), true); } }
private void testIsFull(PageBuilderStatus pageBuilderStatus) { BlockBuilder blockBuilder = new VariableWidthBlockBuilder(pageBuilderStatus.createBlockBuilderStatus(), 32, 1024); assertTrue(pageBuilderStatus.isEmpty()); while (!pageBuilderStatus.isFull()) { VARCHAR.writeSlice(blockBuilder, Slices.allocate(VARCHAR_VALUE_SIZE)); } assertEquals(blockBuilder.getPositionCount(), EXPECTED_ENTRY_COUNT); assertEquals(pageBuilderStatus.isFull(), true); } }
private void createBlockBuilderWithValues(Map<String, Long> map, BlockBuilder mapBlockBuilder) { if (map == null) { mapBlockBuilder.appendNull(); } else { BlockBuilder elementBlockBuilder = mapBlockBuilder.beginBlockEntry(); for (Map.Entry<String, Long> entry : map.entrySet()) { VARCHAR.writeSlice(elementBlockBuilder, utf8Slice(entry.getKey())); if (entry.getValue() == null) { elementBlockBuilder.appendNull(); } else { BIGINT.writeLong(elementBlockBuilder, entry.getValue()); } } mapBlockBuilder.closeEntry(); } }
private static Block createTestBlock() { RowBlockBuilder blockBuilder = (RowBlockBuilder) TYPE.createBlockBuilder(null, 3); SingleRowBlockWriter singleRowBlockWriter; singleRowBlockWriter = blockBuilder.beginBlockEntry(); BIGINT.writeLong(singleRowBlockWriter, 1); VARCHAR.writeSlice(singleRowBlockWriter, utf8Slice("cat")); blockBuilder.closeEntry(); singleRowBlockWriter = blockBuilder.beginBlockEntry(); BIGINT.writeLong(singleRowBlockWriter, 2); VARCHAR.writeSlice(singleRowBlockWriter, utf8Slice("cats")); blockBuilder.closeEntry(); singleRowBlockWriter = blockBuilder.beginBlockEntry(); BIGINT.writeLong(singleRowBlockWriter, 3); VARCHAR.writeSlice(singleRowBlockWriter, utf8Slice("dog")); blockBuilder.closeEntry(); return blockBuilder.build(); }
private static Block createTestBlock() { RowBlockBuilder blockBuilder = (RowBlockBuilder) TYPE.createBlockBuilder(null, 3); SingleRowBlockWriter singleRowBlockWriter; singleRowBlockWriter = blockBuilder.beginBlockEntry(); BIGINT.writeLong(singleRowBlockWriter, 1); VARCHAR.writeSlice(singleRowBlockWriter, utf8Slice("cat")); blockBuilder.closeEntry(); singleRowBlockWriter = blockBuilder.beginBlockEntry(); BIGINT.writeLong(singleRowBlockWriter, 2); VARCHAR.writeSlice(singleRowBlockWriter, utf8Slice("cats")); blockBuilder.closeEntry(); singleRowBlockWriter = blockBuilder.beginBlockEntry(); BIGINT.writeLong(singleRowBlockWriter, 3); VARCHAR.writeSlice(singleRowBlockWriter, utf8Slice("dog")); blockBuilder.closeEntry(); return blockBuilder.build(); }
private static BlockBuilder createBlockBuilderWithValues(Slice[][] expectedValues) { BlockBuilder blockBuilder = new ArrayBlockBuilder(VARCHAR, null, 100, 100); for (Slice[] expectedValue : expectedValues) { if (expectedValue == null) { blockBuilder.appendNull(); } else { BlockBuilder elementBlockBuilder = VARCHAR.createBlockBuilder(null, expectedValue.length); for (Slice v : expectedValue) { VARCHAR.writeSlice(elementBlockBuilder, v); } blockBuilder.appendStructure(elementBlockBuilder.build()); } } return blockBuilder; } }
private static BlockBuilder createBlockBuilderWithValues(Slice[][] expectedValues) { BlockBuilder blockBuilder = new ArrayBlockBuilder(VARCHAR, null, 100, 100); for (Slice[] expectedValue : expectedValues) { if (expectedValue == null) { blockBuilder.appendNull(); } else { BlockBuilder elementBlockBuilder = VARCHAR.createBlockBuilder(null, expectedValue.length); for (Slice v : expectedValue) { VARCHAR.writeSlice(elementBlockBuilder, v); } blockBuilder.appendStructure(elementBlockBuilder.build()); } } return blockBuilder; } }
@Override protected Object getGreaterValue(Object value) { RowBlockBuilder blockBuilder = (RowBlockBuilder) TYPE.createBlockBuilder(null, 1); SingleRowBlockWriter singleRowBlockWriter; Block block = (Block) value; singleRowBlockWriter = blockBuilder.beginBlockEntry(); BIGINT.writeLong(singleRowBlockWriter, block.getSingleValueBlock(0).getLong(0, 0) + 1); VARCHAR.writeSlice(singleRowBlockWriter, block.getSingleValueBlock(1).getSlice(0, 0, 1)); blockBuilder.closeEntry(); return TYPE.getObject(blockBuilder.build(), 0); } }
@Override protected Object getGreaterValue(Object value) { RowBlockBuilder blockBuilder = (RowBlockBuilder) TYPE.createBlockBuilder(null, 1); SingleRowBlockWriter singleRowBlockWriter; Block block = (Block) value; singleRowBlockWriter = blockBuilder.beginBlockEntry(); BIGINT.writeLong(singleRowBlockWriter, block.getSingleValueBlock(0).getLong(0, 0) + 1); VARCHAR.writeSlice(singleRowBlockWriter, block.getSingleValueBlock(1).getSlice(0, 0, 1)); blockBuilder.closeEntry(); return TYPE.getObject(blockBuilder.build(), 0); } }