org.apache.kafka.connect.data.Field.name()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(7.1k)|赞(0)|评价(0)|浏览(149)

本文整理了Java中org.apache.kafka.connect.data.Field.name()方法的一些代码示例,展示了Field.name()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Field.name()方法的具体详情如下:
包路径:org.apache.kafka.connect.data.Field
类名称:Field
方法名:name

Field.name介绍

[英]Get the name of this field.
[中]获取此字段的名称。

代码示例

代码示例来源:origin: confluentinc/ksql

private String avroCompatibleFieldName(final Field field) {
 // Currently the only incompatible field names expected are fully qualified
 // column identifiers. Once quoted identifier support is introduced we will
 // need to implement something more generic here.
 return field.name().replace(".", "_");
}

代码示例来源:origin: confluentinc/ksql

public static boolean matchFieldName(final Field field, final String fieldName) {
 return field.name().equals(fieldName)
   || field.name().equals(fieldName.substring(fieldName.indexOf(".") + 1));
}

代码示例来源:origin: confluentinc/ksql

public static String getFieldNameWithNoAlias(final Field field) {
 final String name = field.name();
 if (name.contains(".")) {
  return name.substring(name.indexOf(".") + 1);
 } else {
  return name;
 }
}

代码示例来源:origin: confluentinc/ksql

public static Set<Integer> getRowTimeRowKeyIndexes(final Schema schema) {
 final Set<Integer> indexSet = new HashSet<>();
 for (int i = 0; i < schema.fields().size(); i++) {
  final Field field = schema.fields().get(i);
  if (field.name().equalsIgnoreCase(SchemaUtil.ROWTIME_NAME)
    || field.name().equalsIgnoreCase(SchemaUtil.ROWKEY_NAME)) {
   indexSet.add(i);
  }
 }
 return indexSet;
}

代码示例来源:origin: confluentinc/ksql

private Map<String, Field> getCaseInsensitiveFieldMap(final Schema schema) {
 final Map<String, Field> fieldsByName = new HashMap<>();
 schema.fields().forEach(
   field -> fieldsByName.put(field.name().toUpperCase(), field)
 );
 return fieldsByName;
}

代码示例来源:origin: confluentinc/ksql

public static String getSchemaDefinitionString(final Schema schema) {
 return schema.fields().stream()
   .map(field -> field.name() + " : " + getSqlTypeName(field.schema()))
   .collect(Collectors.joining(", ", "[", "]"));
}

代码示例来源:origin: confluentinc/ksql

private static String getStructString(final Schema schema) {
 return schema.fields().stream()
   .map(field -> field.name() + " " + getSqlTypeName(field.schema()))
   .collect(Collectors.joining(", ", "STRUCT<", ">"));
}

代码示例来源:origin: confluentinc/ksql

public static Schema addImplicitRowTimeRowKeyToSchema(final Schema schema) {
 final SchemaBuilder schemaBuilder = SchemaBuilder.struct();
 schemaBuilder.field(SchemaUtil.ROWTIME_NAME, Schema.OPTIONAL_INT64_SCHEMA);
 schemaBuilder.field(SchemaUtil.ROWKEY_NAME, Schema.OPTIONAL_STRING_SCHEMA);
 for (final Field field : schema.fields()) {
  if (!field.name().equals(SchemaUtil.ROWKEY_NAME)
    && !field.name().equals(SchemaUtil.ROWTIME_NAME)) {
   schemaBuilder.field(field.name(), field.schema());
  }
 }
 return schemaBuilder.build();
}

代码示例来源:origin: confluentinc/ksql

public static Schema removeImplicitRowTimeRowKeyFromSchema(final Schema schema) {
 final SchemaBuilder schemaBuilder = SchemaBuilder.struct();
 for (final Field field : schema.fields()) {
  String fieldName = field.name();
  fieldName = fieldName.substring(fieldName.indexOf('.') + 1);
  if (!fieldName.equalsIgnoreCase(SchemaUtil.ROWTIME_NAME)
    && !fieldName.equalsIgnoreCase(SchemaUtil.ROWKEY_NAME)) {
   schemaBuilder.field(fieldName, field.schema());
  }
 }
 return schemaBuilder.build();
}

代码示例来源:origin: confluentinc/ksql

private boolean compareStructSchema(final Schema schema1, final Schema schema2) {
 if (schema1.fields().size() != schema2.fields().size()) {
  return false;
 }
 for (int i = 0; i < schema1.fields().size(); i++) {
  if (!schema1.fields().get(i).name().equalsIgnoreCase(schema2.fields().get(i).name())
    || !compareSchemas(schema1.fields().get(i).schema(),
    schema2.fields().get(i).schema())) {
   return false;
  }
 }
 return true;
}

代码示例来源:origin: confluentinc/ksql

private Schema toKsqlStructSchema(final Schema schema) {
  final SchemaBuilder schemaBuilder = SchemaBuilder.struct();
  for (final Field field : schema.fields()) {
   try {
    final Schema fieldSchema = toKsqlFieldSchema(field.schema());
    schemaBuilder.field(field.name().toUpperCase(), fieldSchema);
   } catch (final UnsupportedTypeException e) {
    log.error("Error inferring schema at field {}: {}", field.name(), e.getMessage());
   }
  }
  return schemaBuilder.optional().build();
 }
}

代码示例来源:origin: confluentinc/ksql

private static List<Pair<String, Type>> getStructItems(final Schema struct) {
 if (struct.type() != Schema.Type.STRUCT) {
  return null;
 }
 final List<Pair<String, Type>> itemList = new ArrayList<>();
 for (final Field field: struct.schema().fields()) {
  itemList.add(new Pair<>(field.name(), getKsqlType(field.schema())));
 }
 return itemList;
}

代码示例来源:origin: confluentinc/ksql

/**
 * Rename field names to be consistent with the internal column names.
 */
public static Schema getAvroSerdeKsqlSchema(final Schema schema) {
 final SchemaBuilder schemaBuilder = SchemaBuilder.struct();
 for (final Field field : schema.fields()) {
  schemaBuilder.field(field.name().replace(".", "_"), field.schema());
 }
 return schemaBuilder.build();
}

代码示例来源:origin: confluentinc/ksql

@Test
public void shouldReturnFieldNameWithoutAliasAsIs() {
 assertThat("Invalid field name", SchemaUtil.getFieldNameWithNoAlias(schema.fields().get(0)),
   equalTo(schema.fields().get(0).name()));
}

代码示例来源:origin: confluentinc/ksql

@Test
public void shouldGetTheCorrectFieldName() {
 final Optional<Field> field = SchemaUtil.getFieldByName(schema, "orderid".toUpperCase());
 Assert.assertTrue(field.isPresent());
 assertThat(field.get().schema(), sameInstance(Schema.OPTIONAL_INT64_SCHEMA));
 assertThat("", field.get().name().toLowerCase(), equalTo("orderid"));
 final Optional<Field> field1 = SchemaUtil.getFieldByName(schema, "orderid");
 Assert.assertFalse(field1.isPresent());
}

代码示例来源:origin: debezium/debezium

private Struct updateValue(Schema newValueSchema, Struct oldValue) {
  final Struct newValue = new Struct(newValueSchema);
  for (org.apache.kafka.connect.data.Field field : oldValue.schema().fields()) {
    newValue.put(field.name(), oldValue.get(field));
  }
  return newValue;
}

代码示例来源:origin: confluentinc/ksql

@Test
public void shouldStripAliasFromFieldName() {
 final Schema schemaWithAlias = SchemaUtil.buildSchemaWithAlias(schema, "alias");
 assertThat("Invalid field name", SchemaUtil.getFieldNameWithNoAlias(schemaWithAlias.fields().get(0)),
   equalTo(schema.fields().get(0).name()));
}

代码示例来源:origin: confluentinc/ksql

public static Schema buildSchemaWithAlias(final Schema schema, final String alias) {
 final SchemaBuilder newSchema = SchemaBuilder.struct().name(schema.name());
 for (final Field field : schema.fields()) {
  newSchema.field((alias + "." + field.name()), field.schema());
 }
 return newSchema;
}

代码示例来源:origin: debezium/debezium

private void assertSchema(Struct content) {
    if (schema == null) {
      return;
    }
    Schema schema = content.schema();
    Field field = schema.field(fieldName);
    assertNotNull(fieldName + " not found in schema " + SchemaUtil.asString(schema), field);
    VerifyRecord.assertConnectSchemasAreEqual(field.name(), field.schema(), this.schema);
  }
}

代码示例来源:origin: debezium/debezium

private void assertSchema(Struct content) {
    if (schema == null) {
      return;
    }
    Schema schema = content.schema();
    Field field = schema.field(fieldName);
    Assertions.assertThat(field).as(fieldName + " not found in schema " + schema).isNotNull();

    VerifyRecord.assertConnectSchemasAreEqual(field.name(), field.schema(), this.schema);
  }
}

相关文章

微信公众号

最新文章

更多