test_class.declarator: sources = {
        "A",
        "Column_Name",
        "COLUMN_NAME",
        "컬럼"
    }
test_class.original_string: String [] sources = {
        "A",
        "Column_Name",
        "COLUMN_NAME",
        "컬럼"
    };
test_class.type: String []
test_class.var_name: sources
test_class.declarator: normalized = {
        "a",
        "column_name",
        "column_name",
        "컬럼"
    }
test_class.original_string: String [] normalized = {
        "a",
        "column_name",
        "column_name",
        "컬럼"
    };
test_class.type: String []
test_class.var_name: normalized
test_class.file: tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestCatalogUtil.java
test_class.identifier: TestCatalogUtil
test_case.body: @Test
    public final void testNormalizeIdentifier() {
      for (int i = 0; i < sources.length; i++) {
        assertEquals(normalized[i], CatalogUtil.normalizeIdentifier(sources[i]));
      }
    }
test_case.class_method_signature: TestCatalogUtil.testNormalizeIdentifier()
test_case.full_signature: @Test public final void testNormalizeIdentifier()
test_case.identifier: testNormalizeIdentifier
test_case.invocations: assertEquals normalizeIdentifier
test_case.modifiers: @Test public final
test_case.parameters: ()
test_case.return: void
test_case.signature: void testNormalizeIdentifier()
focal_class.declarator: RESERVED_KEYWORDS_SET = new HashSet<String>()
focal_class.modifier: public static final
focal_class.original_string: public static final Set<String> RESERVED_KEYWORDS_SET = new HashSet<String>();
focal_class.type: Set<String>
focal_class.var_name: RESERVED_KEYWORDS_SET
focal_class.declarator: RESERVED_KEYWORDS = {
        "AS", "ALL", "AND", "ANY", "ASYMMETRIC", "ASC",
        "BOTH",
        "CASE", "CAST", "CREATE", "CROSS",
        "DESC", "DISTINCT",
        "END", "ELSE", "EXCEPT",
        "FALSE", "FULL", "FROM",
        "GROUP",
        "HAVING",
        "ILIKE", "IN", "INNER", "INTERSECT", "INTO", "IS",
        "JOIN",
        "LEADING", "LEFT", "LIKE", "LIMIT",
        "NATURAL", "NOT", "NULL",
        "ON", "OUTER", "OR", "ORDER",
        "RIGHT",
        "SELECT", "SOME", "SYMMETRIC",
        "TABLE", "THEN", "TRAILING", "TRUE",
        "UNION", "UNIQUE", "USING",
        "WHEN", "WHERE", "WITH"
    }
focal_class.modifier: static final
focal_class.original_string: static final String [] RESERVED_KEYWORDS = {
        "AS", "ALL", "AND", "ANY", "ASYMMETRIC", "ASC",
        "BOTH",
        "CASE", "CAST", "CREATE", "CROSS",
        "DESC", "DISTINCT",
        "END", "ELSE", "EXCEPT",
        "FALSE", "FULL", "FROM",
        "GROUP",
        "HAVING",
        "ILIKE", "IN", "INNER", "INTERSECT", "INTO", "IS",
        "JOIN",
        "LEADING", "LEFT", "LIKE", "LIMIT",
        "NATURAL", "NOT", "NULL",
        "ON", "OUTER", "OR", "ORDER",
        "RIGHT",
        "SELECT", "SOME", "SYMMETRIC",
        "TABLE", "THEN", "TRAILING", "TRUE",
        "UNION", "UNIQUE", "USING",
        "WHEN", "WHERE", "WITH"
    };
focal_class.type: String []
focal_class.var_name: RESERVED_KEYWORDS
focal_class.file: tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java
focal_class.identifier: CatalogUtil
focal_class.class_method_signature: CatalogUtil.normalizeIdentifier(String identifier)
focal_class.full_signature: public static String normalizeIdentifier(String identifier)
focal_class.identifier: normalizeIdentifier
focal_class.modifiers: public static
focal_class.parameters: (String identifier)
focal_class.return: String
focal_class.signature: String normalizeIdentifier(String identifier)
focal_class.class_method_signature: CatalogUtil.normalizeIdentifierPart(String part)
focal_class.full_signature: public static String normalizeIdentifierPart(String part)
focal_class.identifier: normalizeIdentifierPart
focal_class.modifiers: public static
focal_class.parameters: (String part)
focal_class.return: String
focal_class.signature: String normalizeIdentifierPart(String part)
focal_class.class_method_signature: CatalogUtil.denormalizeIdentifier(String identifier)
focal_class.full_signature: public static String denormalizeIdentifier(String identifier)
focal_class.identifier: denormalizeIdentifier
focal_class.modifiers: public static
focal_class.parameters: (String identifier)
focal_class.return: String
focal_class.signature: String denormalizeIdentifier(String identifier)
focal_class.class_method_signature: CatalogUtil.denormalizePart(String identifier)
focal_class.full_signature: public static String denormalizePart(String identifier)
focal_class.identifier: denormalizePart
focal_class.modifiers: public static
focal_class.parameters: (String identifier)
focal_class.return: String
focal_class.signature: String denormalizePart(String identifier)
focal_class.class_method_signature: CatalogUtil.isShouldBeQuoted(String columnName)
focal_class.full_signature: public static boolean isShouldBeQuoted(String columnName)
focal_class.identifier: isShouldBeQuoted
focal_class.modifiers: public static
focal_class.parameters: (String columnName)
focal_class.return: boolean
focal_class.signature: boolean isShouldBeQuoted(String columnName)
focal_class.class_method_signature: CatalogUtil.stripQuote(String str)
focal_class.full_signature: public static String stripQuote(String str)
focal_class.identifier: stripQuote
focal_class.modifiers: public static
focal_class.parameters: (String str)
focal_class.return: String
focal_class.signature: String stripQuote(String str)
focal_class.class_method_signature: CatalogUtil.isDelimited(String identifier)
focal_class.full_signature: public static boolean isDelimited(String identifier)
focal_class.identifier: isDelimited
focal_class.modifiers: public static
focal_class.parameters: (String identifier)
focal_class.return: boolean
focal_class.signature: boolean isDelimited(String identifier)
focal_class.class_method_signature: CatalogUtil.isFQColumnName(String tableName)
focal_class.full_signature: public static boolean isFQColumnName(String tableName)
focal_class.identifier: isFQColumnName
focal_class.modifiers: public static
focal_class.parameters: (String tableName)
focal_class.return: boolean
focal_class.signature: boolean isFQColumnName(String tableName)
focal_class.class_method_signature: CatalogUtil.isFQTableName(String tableName)
focal_class.full_signature: public static boolean isFQTableName(String tableName)
focal_class.identifier: isFQTableName
focal_class.modifiers: public static
focal_class.parameters: (String tableName)
focal_class.return: boolean
focal_class.signature: boolean isFQTableName(String tableName)
focal_class.class_method_signature: CatalogUtil.splitFQTableName(String qualifiedName)
focal_class.full_signature: public static String [] splitFQTableName(String qualifiedName)
focal_class.identifier: splitFQTableName
focal_class.modifiers: public static
focal_class.parameters: (String qualifiedName)
focal_class.return: String []
focal_class.signature: String [] splitFQTableName(String qualifiedName)
focal_class.class_method_signature: CatalogUtil.splitTableName(String tableName)
focal_class.full_signature: public static String [] splitTableName(String tableName)
focal_class.identifier: splitTableName
focal_class.modifiers: public static
focal_class.parameters: (String tableName)
focal_class.return: String []
focal_class.signature: String [] splitTableName(String tableName)
focal_class.class_method_signature: CatalogUtil.buildFQName(String... identifiers)
focal_class.full_signature: public static String buildFQName(String... identifiers)
focal_class.identifier: buildFQName
focal_class.modifiers: public static
focal_class.parameters: (String... identifiers)
focal_class.return: String
focal_class.signature: String buildFQName(String... identifiers)
focal_class.class_method_signature: CatalogUtil.extractQualifier(String name)
focal_class.full_signature: public static String extractQualifier(String name)
focal_class.identifier: extractQualifier
focal_class.modifiers: public static
focal_class.parameters: (String name)
focal_class.return: String
focal_class.signature: String extractQualifier(String name)
focal_class.class_method_signature: CatalogUtil.extractSimpleName(String name)
focal_class.full_signature: public static String extractSimpleName(String name)
focal_class.identifier: extractSimpleName
focal_class.modifiers: public static
focal_class.parameters: (String name)
focal_class.return: String
focal_class.signature: String extractSimpleName(String name)
focal_class.class_method_signature: CatalogUtil.getCanonicalTableName(String databaseName, String tableName)
focal_class.full_signature: public static String getCanonicalTableName(String databaseName, String tableName)
focal_class.identifier: getCanonicalTableName
focal_class.modifiers: public static
focal_class.parameters: (String databaseName, String tableName)
focal_class.return: String
focal_class.signature: String getCanonicalTableName(String databaseName, String tableName)
focal_class.class_method_signature: CatalogUtil.getCanonicalSignature(String functionName, Collection<DataType> paramTypes)
focal_class.full_signature: public static String getCanonicalSignature(String functionName, Collection<DataType> paramTypes)
focal_class.identifier: getCanonicalSignature
focal_class.modifiers: public static
focal_class.parameters: (String functionName, Collection<DataType> paramTypes)
focal_class.return: String
focal_class.signature: String getCanonicalSignature(String functionName, Collection<DataType> paramTypes)
focal_class.class_method_signature: CatalogUtil.getCanonicalSignature(String signature, DataType... paramTypes)
focal_class.full_signature: public static String getCanonicalSignature(String signature, DataType... paramTypes)
focal_class.identifier: getCanonicalSignature
focal_class.modifiers: public static
focal_class.parameters: (String signature, DataType... paramTypes)
focal_class.return: String
focal_class.signature: String getCanonicalSignature(String signature, DataType... paramTypes)
focal_class.class_method_signature: CatalogUtil.getStoreType(final String typeStr)
focal_class.full_signature: public static StoreType getStoreType(final String typeStr)
focal_class.identifier: getStoreType
focal_class.modifiers: public static
focal_class.parameters: (final String typeStr)
focal_class.return: StoreType
focal_class.signature: StoreType getStoreType(final String typeStr)
focal_class.class_method_signature: CatalogUtil.newTableMeta(StoreType type)
focal_class.full_signature: public static TableMeta newTableMeta(StoreType type)
focal_class.identifier: newTableMeta
focal_class.modifiers: public static
focal_class.parameters: (StoreType type)
focal_class.return: TableMeta
focal_class.signature: TableMeta newTableMeta(StoreType type)
focal_class.class_method_signature: CatalogUtil.newTableMeta(StoreType type, Options options)
focal_class.full_signature: public static TableMeta newTableMeta(StoreType type, Options options)
focal_class.identifier: newTableMeta
focal_class.modifiers: public static
focal_class.parameters: (StoreType type, Options options)
focal_class.return: TableMeta
focal_class.signature: TableMeta newTableMeta(StoreType type, Options options)
focal_class.class_method_signature: CatalogUtil.newTableDesc(String tableName, Schema schema, TableMeta meta, Path path)
focal_class.full_signature: public static TableDesc newTableDesc(String tableName, Schema schema, TableMeta meta, Path path)
focal_class.identifier: newTableDesc
focal_class.modifiers: public static
focal_class.parameters: (String tableName, Schema schema, TableMeta meta, Path path)
focal_class.return: TableDesc
focal_class.signature: TableDesc newTableDesc(String tableName, Schema schema, TableMeta meta, Path path)
focal_class.class_method_signature: CatalogUtil.newTableDesc(TableDescProto proto)
focal_class.full_signature: public static TableDesc newTableDesc(TableDescProto proto)
focal_class.identifier: newTableDesc
focal_class.modifiers: public static
focal_class.parameters: (TableDescProto proto)
focal_class.return: TableDesc
focal_class.signature: TableDesc newTableDesc(TableDescProto proto)
focal_class.class_method_signature: CatalogUtil.newPartitionMethodDesc(CatalogProtos.PartitionMethodProto proto)
focal_class.full_signature: public static PartitionMethodDesc newPartitionMethodDesc(CatalogProtos.PartitionMethodProto proto)
focal_class.identifier: newPartitionMethodDesc
focal_class.modifiers: public static
focal_class.parameters: (CatalogProtos.PartitionMethodProto proto)
focal_class.return: PartitionMethodDesc
focal_class.signature: PartitionMethodDesc newPartitionMethodDesc(CatalogProtos.PartitionMethodProto proto)
focal_class.class_method_signature: CatalogUtil.getQualfiedSchema(String tableName, SchemaProto schema)
focal_class.full_signature: public static SchemaProto getQualfiedSchema(String tableName, SchemaProto schema)
focal_class.identifier: getQualfiedSchema
focal_class.modifiers: public static
focal_class.parameters: (String tableName, SchemaProto schema)
focal_class.return: SchemaProto
focal_class.signature: SchemaProto getQualfiedSchema(String tableName, SchemaProto schema)
focal_class.class_method_signature: CatalogUtil.newDataType(Type type, String code)
focal_class.full_signature: public static DataType newDataType(Type type, String code)
focal_class.identifier: newDataType
focal_class.modifiers: public static
focal_class.parameters: (Type type, String code)
focal_class.return: DataType
focal_class.signature: DataType newDataType(Type type, String code)
focal_class.class_method_signature: CatalogUtil.newDataType(Type type, String code, int len)
focal_class.full_signature: public static DataType newDataType(Type type, String code, int len)
focal_class.identifier: newDataType
focal_class.modifiers: public static
focal_class.parameters: (Type type, String code, int len)
focal_class.return: DataType
focal_class.signature: DataType newDataType(Type type, String code, int len)
focal_class.class_method_signature: CatalogUtil.newSimpleDataType(Type type)
focal_class.full_signature: public static DataType newSimpleDataType(Type type)
focal_class.identifier: newSimpleDataType
focal_class.modifiers: public static
focal_class.parameters: (Type type)
focal_class.return: DataType
focal_class.signature: DataType newSimpleDataType(Type type)
focal_class.class_method_signature: CatalogUtil.newSimpleDataTypeArray(Type... types)
focal_class.full_signature: public static DataType [] newSimpleDataTypeArray(Type... types)
focal_class.identifier: newSimpleDataTypeArray
focal_class.modifiers: public static
focal_class.parameters: (Type... types)
focal_class.return: DataType []
focal_class.signature: DataType [] newSimpleDataTypeArray(Type... types)
focal_class.class_method_signature: CatalogUtil.newDataTypeWithLen(Type type, int length)
focal_class.full_signature: public static DataType newDataTypeWithLen(Type type, int length)
focal_class.identifier: newDataTypeWithLen
focal_class.modifiers: public static
focal_class.parameters: (Type type, int length)
focal_class.return: DataType
focal_class.signature: DataType newDataTypeWithLen(Type type, int length)
focal_class.class_method_signature: CatalogUtil.columnToDDLString(Column column)
focal_class.full_signature: public static String columnToDDLString(Column column)
focal_class.identifier: columnToDDLString
focal_class.modifiers: public static
focal_class.parameters: (Column column)
focal_class.return: String
focal_class.signature: String columnToDDLString(Column column)
focal_class.class_method_signature: CatalogUtil.isArrayType(TajoDataTypes.Type type)
focal_class.full_signature: public static boolean isArrayType(TajoDataTypes.Type type)
focal_class.identifier: isArrayType
focal_class.modifiers: public static
focal_class.parameters: (TajoDataTypes.Type type)
focal_class.return: boolean
focal_class.signature: boolean isArrayType(TajoDataTypes.Type type)
focal_class.class_method_signature: CatalogUtil.isMatchedFunction(List<DataType> definedTypes, List<DataType> givenTypes)
focal_class.full_signature: public static boolean isMatchedFunction(List<DataType> definedTypes, List<DataType> givenTypes)
focal_class.identifier: isMatchedFunction
focal_class.modifiers: public static
focal_class.parameters: (List<DataType> definedTypes, List<DataType> givenTypes)
focal_class.return: boolean
focal_class.signature: boolean isMatchedFunction(List<DataType> definedTypes, List<DataType> givenTypes)
focal_class.class_method_signature: CatalogUtil.checkIfMatchedNonVarLengthFunction(List<DataType> definedTypes, List<DataType> givenTypes,
                                                             int n, boolean lastArrayCompatible)
focal_class.full_signature: public static boolean checkIfMatchedNonVarLengthFunction(List<DataType> definedTypes, List<DataType> givenTypes,
                                                             int n, boolean lastArrayCompatible)
focal_class.identifier: checkIfMatchedNonVarLengthFunction
focal_class.modifiers: public static
focal_class.parameters: (List<DataType> definedTypes, List<DataType> givenTypes,
                                                             int n, boolean lastArrayCompatible)
focal_class.return: boolean
focal_class.signature: boolean checkIfMatchedNonVarLengthFunction(List<DataType> definedTypes, List<DataType> givenTypes,
                                                             int n, boolean lastArrayCompatible)
focal_class.class_method_signature: CatalogUtil.checkIfCompatibleIncludingArray(Type defined, Type given)
focal_class.full_signature: public static boolean checkIfCompatibleIncludingArray(Type defined, Type given)
focal_class.identifier: checkIfCompatibleIncludingArray
focal_class.modifiers: public static
focal_class.parameters: (Type defined, Type given)
focal_class.return: boolean
focal_class.signature: boolean checkIfCompatibleIncludingArray(Type defined, Type given)
focal_class.class_method_signature: CatalogUtil.checkIfVariableLengthParamDefinition(List<DataType> definedTypes)
focal_class.full_signature: public static boolean checkIfVariableLengthParamDefinition(List<DataType> definedTypes)
focal_class.identifier: checkIfVariableLengthParamDefinition
focal_class.modifiers: public static
focal_class.parameters: (List<DataType> definedTypes)
focal_class.return: boolean
focal_class.signature: boolean checkIfVariableLengthParamDefinition(List<DataType> definedTypes)
focal_class.class_method_signature: CatalogUtil.getPrimitiveTypeOf(Type arrayType)
focal_class.full_signature: public static Type getPrimitiveTypeOf(Type arrayType)
focal_class.identifier: getPrimitiveTypeOf
focal_class.modifiers: public static
focal_class.parameters: (Type arrayType)
focal_class.return: Type
focal_class.signature: Type getPrimitiveTypeOf(Type arrayType)
focal_class.class_method_signature: CatalogUtil.isCompatibleType(final Type definedType, final Type givenType)
focal_class.full_signature: public static boolean isCompatibleType(final Type definedType, final Type givenType)
focal_class.identifier: isCompatibleType
focal_class.modifiers: public static
focal_class.parameters: (final Type definedType, final Type givenType)
focal_class.return: boolean
focal_class.signature: boolean isCompatibleType(final Type definedType, final Type givenType)
focal_class.class_method_signature: CatalogUtil.buildTableIdentifier(String databaseName, String tableName)
focal_class.full_signature: public static CatalogProtos.TableIdentifierProto buildTableIdentifier(String databaseName, String tableName)
focal_class.identifier: buildTableIdentifier
focal_class.modifiers: public static
focal_class.parameters: (String databaseName, String tableName)
focal_class.return: CatalogProtos.TableIdentifierProto
focal_class.signature: CatalogProtos.TableIdentifierProto buildTableIdentifier(String databaseName, String tableName)
focal_class.class_method_signature: CatalogUtil.closeQuietly(Connection conn)
focal_class.full_signature: public static void closeQuietly(Connection conn)
focal_class.identifier: closeQuietly
focal_class.modifiers: public static
focal_class.parameters: (Connection conn)
focal_class.return: void
focal_class.signature: void closeQuietly(Connection conn)
focal_class.class_method_signature: CatalogUtil.closeQuietly(Statement stmt)
focal_class.full_signature: public static void closeQuietly(Statement stmt)
focal_class.identifier: closeQuietly
focal_class.modifiers: public static
focal_class.parameters: (Statement stmt)
focal_class.return: void
focal_class.signature: void closeQuietly(Statement stmt)
focal_class.class_method_signature: CatalogUtil.closeQuietly(ResultSet res)
focal_class.full_signature: public static void closeQuietly(ResultSet res)
focal_class.identifier: closeQuietly
focal_class.modifiers: public static
focal_class.parameters: (ResultSet res)
focal_class.return: void
focal_class.signature: void closeQuietly(ResultSet res)
focal_class.class_method_signature: CatalogUtil.closeQuietly(Statement stmt, ResultSet res)
focal_class.full_signature: public static void closeQuietly(Statement stmt, ResultSet res)
focal_class.identifier: closeQuietly
focal_class.modifiers: public static
focal_class.parameters: (Statement stmt, ResultSet res)
focal_class.return: void
focal_class.signature: void closeQuietly(Statement stmt, ResultSet res)
focal_class.class_method_signature: CatalogUtil.renameColumn(String tableName, String oldColumName, String newColumName,
                                              AlterTableType alterTableType)
focal_class.full_signature: public static AlterTableDesc renameColumn(String tableName, String oldColumName, String newColumName,
                                              AlterTableType alterTableType)
focal_class.identifier: renameColumn
focal_class.modifiers: public static
focal_class.parameters: (String tableName, String oldColumName, String newColumName,
                                              AlterTableType alterTableType)
focal_class.return: AlterTableDesc
focal_class.signature: AlterTableDesc renameColumn(String tableName, String oldColumName, String newColumName,
                                              AlterTableType alterTableType)
focal_class.class_method_signature: CatalogUtil.renameTable(String tableName, String newTableName, AlterTableType alterTableType)
focal_class.full_signature: public static AlterTableDesc renameTable(String tableName, String newTableName, AlterTableType alterTableType)
focal_class.identifier: renameTable
focal_class.modifiers: public static
focal_class.parameters: (String tableName, String newTableName, AlterTableType alterTableType)
focal_class.return: AlterTableDesc
focal_class.signature: AlterTableDesc renameTable(String tableName, String newTableName, AlterTableType alterTableType)
focal_class.class_method_signature: CatalogUtil.addNewColumn(String tableName, Column column, AlterTableType alterTableType)
focal_class.full_signature: public static AlterTableDesc addNewColumn(String tableName, Column column, AlterTableType alterTableType)
focal_class.identifier: addNewColumn
focal_class.modifiers: public static
focal_class.parameters: (String tableName, Column column, AlterTableType alterTableType)
focal_class.return: AlterTableDesc
focal_class.signature: AlterTableDesc addNewColumn(String tableName, Column column, AlterTableType alterTableType)
focal_method.body: public static String normalizeIdentifier(String identifier) {
      if (identifier == null || identifier.equals("")) {
        return identifier;
      }
      String [] splitted = identifier.split(CatalogConstants.IDENTIFIER_DELIMITER_REGEXP);
  
      StringBuilder sb = new StringBuilder();
      boolean first = true;
      for (String part : splitted) {
        if (first) {
          first = false;
        } else {
          sb.append(CatalogConstants.IDENTIFIER_DELIMITER);
        }
        sb.append(normalizeIdentifierPart(part));
      }
      return sb.toString();
    }
focal_method.class_method_signature: CatalogUtil.normalizeIdentifier(String identifier)
focal_method.full_signature: public static String normalizeIdentifier(String identifier)
focal_method.identifier: normalizeIdentifier
focal_method.invocations: equals split append append normalizeIdentifierPart toString
focal_method.modifiers: public static
focal_method.parameters: (String identifier)
focal_method.return: String
focal_method.signature: String normalizeIdentifier(String identifier)