public static TextDatum createText(byte[] val) { return new TextDatum(val); }
@Override public String toString() { return asChars(); } }
@Override public Datum equalsTo(Datum datum) { switch (datum.type()) { case TEXT: case CHAR: case BLOB: return DatumFactory.createBool(COMPARATOR.compare(bytes, datum.asByteArray()) == 0); case NULL_TYPE: return datum; default: throw new InvalidOperationException("Cannot equivalent check: " + this.type() + " and " + datum.type()); } }
@Override public Datum equalsTo(Datum datum) { switch (datum.kind()) { case TEXT: case CHAR: case BLOB: return DatumFactory.createBool(COMPARATOR.compare(bytes, datum.asByteArray()) == 0); case NULL_TYPE: return datum; default: throw new InvalidOperationException("Cannot equivalent check: " + this.type() + " and " + datum.type()); } }
public static TextDatum createText(byte[] val) { return new TextDatum(val); }
@Override public String toString() { return asChars(); } }
public static TextDatum createText(String val) { return new TextDatum(val); }
public static TextDatum createText(String val) { return new TextDatum(val); }
@Override public Datum eval(Tuple params) { if (df == null) { df = new DecimalFormat(params.getText(1)); } return new TextDatum(df.format(params.getInt8(0))); } }
@Override public Datum eval(Tuple params) { if (df == null) { df = new DecimalFormat(params.getText(1)); } return new TextDatum(df.format(params.getInt8(0))); } }
@Override public ResultSet getTableTypes() throws SQLException { List<MetaDataTuple> columns = new ArrayList<MetaDataTuple>(); MetaDataTuple tuple = new MetaDataTuple(2); tuple.put(0, new TextDatum("TABLE")); columns.add(tuple); ResultSet result = new TajoMetaDataResultSet( Arrays.asList("TABLE_TYPE") , Arrays.asList(Type.VARCHAR) , columns); return result; }
@Override public ResultSet getTableTypes() throws SQLException { List<MetaDataTuple> columns = new ArrayList<>(); MetaDataTuple tuple = new MetaDataTuple(2); tuple.put(0, new TextDatum("TABLE")); columns.add(tuple); ResultSet result = new TajoMetaDataResultSet( Collections.singletonList("TABLE_TYPE") , Collections.singletonList(Type.VARCHAR) , columns); return result; }
@Override public ResultSet getSchemas() throws SQLException { String databaseName; databaseName = conn.getQueryClient().getCurrentDatabase(); MetaDataTuple tuple = new MetaDataTuple(2); tuple.put(0, new TextDatum(DEFAULT_SCHEMA_NAME)); tuple.put(1, new TextDatum(databaseName)); return new TajoMetaDataResultSet( Arrays.asList("TABLE_SCHEM", "TABLE_CATALOG"), Arrays.asList(Type.VARCHAR, Type.VARCHAR), Collections.singletonList(tuple)); }
@Override public ResultSet getSchemas(String catalog, String schemaPattern) throws SQLException { String databaseName; databaseName = conn.getQueryClient().getCurrentDatabase(); MetaDataTuple tuple = new MetaDataTuple(2); tuple.put(0, new TextDatum(DEFAULT_SCHEMA_NAME)); tuple.put(1, new TextDatum(databaseName)); return new TajoMetaDataResultSet( Arrays.asList("TABLE_SCHEM", "TABLE_CATALOG"), Arrays.asList(Type.VARCHAR, Type.VARCHAR), Collections.singletonList(tuple)); }
@Override public ResultSet getSchemas() throws SQLException { String databaseName; databaseName = conn.getQueryClient().getCurrentDatabase(); MetaDataTuple tuple = new MetaDataTuple(2); tuple.put(0, new TextDatum(DEFAULT_SCHEMA_NAME)); tuple.put(1, new TextDatum(databaseName)); return new TajoMetaDataResultSet( Arrays.asList("TABLE_SCHEM", "TABLE_CATALOG"), Arrays.asList(Type.VARCHAR, Type.VARCHAR), Arrays.asList(tuple)); }
@Override public ResultSet getSchemas(String catalog, String schemaPattern) throws SQLException { String databaseName; databaseName = conn.getQueryClient().getCurrentDatabase(); MetaDataTuple tuple = new MetaDataTuple(2); tuple.put(0, new TextDatum(DEFAULT_SCHEMA_NAME)); tuple.put(1, new TextDatum(databaseName)); return new TajoMetaDataResultSet( Arrays.asList("TABLE_SCHEM", "TABLE_CATALOG"), Arrays.asList(Type.VARCHAR, Type.VARCHAR), Arrays.asList(tuple)); }
@Override public ResultSet getCatalogs() throws SQLException { Collection<String> databaseNames; databaseNames = conn.getCatalogAdminClient().getAllDatabaseNames(); List<MetaDataTuple> tuples = new ArrayList<MetaDataTuple>(); for (String databaseName : databaseNames) { MetaDataTuple tuple = new MetaDataTuple(1); tuple.put(0, new TextDatum(databaseName)); tuples.add(tuple); } return new TajoMetaDataResultSet( Arrays.asList("TABLE_CAT"), Arrays.asList(Type.VARCHAR) , tuples); }
@Override public ResultSet getCatalogs() throws SQLException { Collection<String> databaseNames; databaseNames = conn.getCatalogAdminClient().getAllDatabaseNames(); List<MetaDataTuple> tuples = new ArrayList<>(); for (String databaseName : databaseNames) { MetaDataTuple tuple = new MetaDataTuple(1); tuple.put(0, new TextDatum(databaseName)); tuples.add(tuple); } return new TajoMetaDataResultSet( Collections.singletonList("TABLE_CAT"), Collections.singletonList(Type.VARCHAR), tuples); }
@Override public Datum eval(Tuple params) { if (params.isBlankOrNull(0)) { return NullDatum.get(); } return new TextDatum(GeoIPUtil.getCountryCode(params.getInt4(0))); } }
@Override public Datum eval(Tuple params) { if (params.isBlankOrNull(0)) { return NullDatum.get(); } int ipaddr = params.getInt4(0); return new TextDatum(IPconvertUtil.int2ipstr(ipaddr)); } }