@Override final public void addBinary(Binary value) { parent.add(DatumFactory.createChar(value.getBytes())); } }
@Override Datum next() throws IOException { byte[] bytes = reader.next(); if (bytes == null) { return NullDatum.get(); } // TODO: enforce char length return DatumFactory.createChar(bytes); }
@Override final public void addBinary(Binary value) { parent.add(DatumFactory.createChar(value.toStringUsingUTF8())); } }
@Override final public void addBinary(Binary value) { parent.add(DatumFactory.createChar(value.getBytes())); } }
@Override Datum next() throws IOException { byte[] bytes = reader.next(); if (bytes == null) { return NullDatum.get(); } // TODO: enforce char length return DatumFactory.createChar(bytes); }
private Datum convertString(Object value, TajoDataTypes.Type tajoType) { switch (tajoType) { case CHAR: return DatumFactory.createChar(fromAvroString(value)); default: return DatumFactory.createText(fromAvroString(value)); } }
private Datum convertString(Object value, TajoDataTypes.Type tajoType) { switch (tajoType) { case CHAR: return DatumFactory.createChar(fromAvroString(value)); default: return DatumFactory.createText(fromAvroString(value)); } }
private Datum convertString(Object value, TajoDataTypes.Type tajoType) { switch (tajoType) { case CHAR: return DatumFactory.createChar(fromAvroString(value)); default: return DatumFactory.createText(fromAvroString(value)); } }
sb.append(DatumFactory.createChar("str")).append('|'); sb.append(DatumFactory.createInt2((short) 17)).append('|'); sb.append(DatumFactory.createInt4(59)).append('|');
public Datum toDatum(int i) { if (keys[i] == null) { return NullDatum.get(); } switch (keyTypes[i]) { case NULL_TYPE: return NullDatum.get(); case BOOLEAN: return DatumFactory.createBool((Boolean) keys[i]); case BIT: return DatumFactory.createBit((Byte)keys[i]); case INT1: case INT2: return DatumFactory.createInt2((Short) keys[i]); case INT4: return DatumFactory.createInt4((Integer) keys[i]); case DATE: return DatumFactory.createDate((Integer) keys[i]); case INT8: return DatumFactory.createInt8((Long) keys[i]); case TIME: return DatumFactory.createTime((Long) keys[i]); case TIMESTAMP: return DatumFactory.createTimestamp((Long) keys[i]); case FLOAT4: return DatumFactory.createFloat4((Float) keys[i]); case FLOAT8: return DatumFactory.createFloat8((Double) keys[i]); case TEXT: return DatumFactory.createText((byte[]) keys[i]); case CHAR: return DatumFactory.createChar((byte[]) keys[i]); case BLOB: return DatumFactory.createBlob((byte[]) keys[i]); case DATUM: return (Datum)keys[i]; default: throw new IllegalArgumentException(); } } }
public Datum toDatum(int i) { if (keys[i] == null) { return NullDatum.get(); } switch (keyTypes[i]) { case NULL_TYPE: return NullDatum.get(); case BOOLEAN: return DatumFactory.createBool((Boolean) keys[i]); case BIT: return DatumFactory.createBit((Byte)keys[i]); case INT1: case INT2: return DatumFactory.createInt2((Short) keys[i]); case INT4: return DatumFactory.createInt4((Integer) keys[i]); case DATE: return DatumFactory.createDate((Integer) keys[i]); case INET4: return DatumFactory.createInet4((Integer) keys[i]); case INT8: return DatumFactory.createInt8((Long) keys[i]); case TIME: return DatumFactory.createTime((Long) keys[i]); case TIMESTAMP: return DatumFactory.createTimestamp((Long) keys[i]); case FLOAT4: return DatumFactory.createFloat4((Float) keys[i]); case FLOAT8: return DatumFactory.createFloat8((Double) keys[i]); case TEXT: return DatumFactory.createText((byte[]) keys[i]); case CHAR: return DatumFactory.createChar((byte[]) keys[i]); case BLOB: return DatumFactory.createBlob((byte[]) keys[i]); case DATUM: return (Datum)keys[i]; default: throw new IllegalArgumentException(); } } }
DatumFactory.createChar("1"), }); DatumFactory.createChar("12"), });
return createFloat8(value); case CHAR: return createChar(value); case TEXT: return createText(value);
return createFloat8(value); case CHAR: return createChar(value); case TEXT: return createText(value);
@Before public void setUp() throws Exception { tuple1 = new VTuple(new Datum[] { DatumFactory.createBool(true), DatumFactory.createBit((byte) 0x99), DatumFactory.createChar('9'), DatumFactory.createInt2((short) 17), DatumFactory.createInt4(59), DatumFactory.createInt8(23L), DatumFactory.createFloat4(77.9f), DatumFactory.createFloat8(271.9f), DatumFactory.createText("hyunsik"), DatumFactory.createBlob("hyunsik".getBytes()), }); tuple2 = new VTuple(new Datum[] { DatumFactory.createBool(true), DatumFactory.createBit((byte) 0x99), DatumFactory.createChar('9'), DatumFactory.createInt2((short) 17), DatumFactory.createInt4(59), DatumFactory.createInt8(23L), DatumFactory.createFloat4(77.9f), DatumFactory.createFloat8(271.9f), DatumFactory.createText("hyunsik"), DatumFactory.createBlob("hyunsik".getBytes()), }); }
@Test public void testVarioutType() throws IOException { TajoConf conf = new TajoConf(); TableMeta meta = CatalogUtil.newTableMeta(BuiltinStorages.JSON, conf); Path tablePath = new Path(getResourcePath("dataset", "TestJsonSerDe"), "testVariousType.json"); FileSystem fs = FileSystem.getLocal(conf); FileStatus status = fs.getFileStatus(tablePath); FileFragment fragment = new FileFragment("table", tablePath, 0, status.getLen()); Scanner scanner = TablespaceManager.getLocalFs().getScanner(meta, schema, fragment, null); scanner.init(); Tuple tuple = scanner.next(); assertNotNull(tuple); assertNull(scanner.next()); scanner.close(); Tuple baseTuple = new VTuple(new Datum[] { DatumFactory.createBool(true), // 0 DatumFactory.createChar("hyunsik"), // 1 DatumFactory.createInt2((short) 17), // 2 DatumFactory.createInt4(59), // 3 DatumFactory.createInt8(23L), // 4 DatumFactory.createFloat4(77.9f), // 5 DatumFactory.createFloat8(271.9d), // 6 DatumFactory.createText("hyunsik"), // 7 DatumFactory.createBlob("hyunsik".getBytes()), // 8 NullDatum.get(), // 9 }); assertEquals(baseTuple, tuple); }
@Test public final void testFixedSizeChar() { Schema schema = SchemaBuilder.builder().add("col1", CatalogUtil.newDataTypeWithLen(Type.CHAR, 5)).build(); Tuple tuple = new VTuple(1); tuple.put(new Datum[] { DatumFactory.createChar("abc\0\0") }); RowStoreEncoder encoder = RowStoreUtil.createEncoder(schema); RowStoreDecoder decoder = RowStoreUtil.createDecoder(schema); byte [] bytes = encoder.toBytes(tuple); Tuple tuple2 = decoder.toTuple(bytes); assertEquals(tuple, tuple2); }
Tuple tuple = new VTuple(schema.size()); tuple.put(0, DatumFactory.createBool(true)); tuple.put(1, DatumFactory.createChar('t')); tuple.put(2, DatumFactory.createInt2((short)2048)); tuple.put(3, DatumFactory.createInt4(4096));
DatumFactory.createChar('7'), DatumFactory.createInt2((short) 17), DatumFactory.createInt4(59),
@Test public void testGetDatum() { LazyTuple t1 = new LazyTuple(schema, textRow, -1, nullbytes, serde); assertEquals(DatumFactory.createBool(true), t1.get(0)); assertEquals(DatumFactory.createChar("str"), t1.get(1)); assertEquals(DatumFactory.createInt2((short) 17), t1.get(2)); assertEquals(DatumFactory.createInt4(59), t1.get(3)); assertEquals(DatumFactory.createInt8(23l), t1.get(4)); assertEquals(DatumFactory.createFloat4(77.9f), t1.get(5)); assertEquals(DatumFactory.createFloat8(271.9f), t1.get(6)); assertEquals(DatumFactory.createText("str2"), t1.get(7)); assertEquals(DatumFactory.createBlob("jinho".getBytes()), t1.get(8)); assertEquals(NullDatum.get(), t1.get(9)); assertEquals(NullDatum.get(), t1.get(10)); }