Package com.linkedin.data.schema

Examples of com.linkedin.data.schema.DataSchema


    final boolean debug = false;

    MyAvroOverrideFactory avroOverrideFactory = new MyAvroOverrideFactory();

    DataSchema schema = TestUtil.dataSchemaFromString(schemaText);
    AvroOverride avroOverride = avroOverrideFactory.createFromDataSchema(schema);
    String message = avroOverrideFactory._messageList.toString();

    assertTrue(message.isEmpty());
    assertSame(avroOverride.getAvroSchemaDataMap(), ((DataMap) schema.getProperties().get("avro")).get("schema"));
    assertEquals(avroOverride.getAvroSchemaFullName(), "org.foobar.CustomFoo");

    assertSame(avroOverride.getCustomDataTranslatorClassName(), ((DataMap) ((DataMap) schema.getProperties().get("avro")).get("translator")).get("class"));
    assertSame(avroOverride.getCustomDataTranslator().getClass(), MyCustomDataTranslator.class);
  }
View Full Code Here


    {
      String name = row[0];
      String fullName = row[1];

      String schemaText = schemaTemplate.replaceAll("NAME", name);
      DataSchema schema = TestUtil.dataSchemaFromString(schemaText);

      AvroOverride avroOverride = avroOverrideFactory.createFromDataSchema(schema);
      String message = avroOverrideFactory._messageList.toString();
      assertTrue(message.isEmpty());
View Full Code Here

    for (String[] row : inputs)
    {
      String schemaText = row[0];

      DataSchema schema = TestUtil.dataSchemaFromString(schemaText);
      AvroOverride avroOverride = avroOverrideFactory.createFromDataSchema(schema);

      String message = avroOverrideFactory._messageList.toString();
      if (debug) TestUtil.out.println(message);
View Full Code Here

          }
        }
        else
        {
          StringBuilder errorMessage = new StringBuilder();
          DataSchema schema = getSchemaResolver().findDataSchema(source, errorMessage);
          if (schema == null)
          {
            getMessage().append("File cannot be opened or schema name cannot be resolved: " + source + "\n");
          }
          if (errorMessage.length() > 0)
View Full Code Here

    OptionsResponse optionsResponse = REST_CLIENT.sendRequest(optionsRequest).getResponse().getEntity();
    Map<String, DataSchema> rawDataSchemas = optionsResponse.getDataSchemas();

    for(NamedDataSchema dataSchema: schemas)
    {
      DataSchema optionsDataSchema = rawDataSchemas.get(dataSchema.getFullName());
      Assert.assertEquals(optionsDataSchema, dataSchema);
    }
  }
View Full Code Here

  private final void validateSchema(ValidatorContext context, DataSchema schema)
  {
    if (schema.getType() == DataSchema.Type.TYPEREF)
    {
      DataSchema refSchema = ((TyperefDataSchema) schema).getRef();
      validateSchema(context, refSchema);
      getAndInvokeValidatorList(context, schema);
    }
    else
    {
View Full Code Here

  @Override
  public void validate(ValidatorContext context)
  {
    DataElement element = context.dataElement();
    DataSchema schema = element.getSchema();
    if (schema != null)
    {
      validateSchema(context, schema);
    }
    DataElement parentElement = element.getParent();
    if (parentElement != null)
    {
      DataSchema parentSchema = parentElement.getSchema();
      // check if the value belongs to a field in a record
      // if it belongs to a field, check if the field has
      // validators.
      if (parentSchema != null && parentSchema.getType() == DataSchema.Type.RECORD)
      {
        Object name = element.getName();
        if (name.getClass() == String.class)
        {
          RecordDataSchema recordDataSchema = (RecordDataSchema) parentSchema;
View Full Code Here

    if (parser.hasError())
    {
      throw new IllegalArgumentException(parser.errorMessage());
    }
    assert(parser.topLevelDataSchemas().size() == 1);
    DataSchema dataSchema = parser.topLevelDataSchemas().get(0);
    DataSchema resultDataSchema = null;

    AvroToDataSchemaTranslationMode translationMode = options.getTranslationMode();
    if (translationMode == AvroToDataSchemaTranslationMode.RETURN_EMBEDDED_SCHEMA ||
        translationMode == AvroToDataSchemaTranslationMode.VERIFY_EMBEDDED_SCHEMA)
    {
View Full Code Here

          }
          result = byteString;
          break;
        case MAP:
          DataMap map = (DataMap) value;
          DataSchema valueDataSchema = ((MapDataSchema) dataSchema).getValues();
          Map<String, Object> resultMap = new DataMap(map.size() * 2);
          for (Map.Entry<String, Object> entry : map.entrySet())
          {
            String key = entry.getKey();
            path.add(key);
            Object entryAvroValue = translate(path, entry.getValue(), valueDataSchema);
            path.remove(path.size() - 1);
            resultMap.put(key, entryAvroValue);
          }
          result = resultMap;
          break;
        case ARRAY:
          DataList list = (DataList) value;
          DataList resultList = new DataList(list.size());
          DataSchema elementDataSchema = ((ArrayDataSchema) dataSchema).getItems();
          for (int i = 0; i < list.size(); i++)
          {
            path.add(i);
            Object entryAvroValue = translate(path, list.get(i), elementDataSchema);
            path.remove(path.size() - 1);
View Full Code Here

      // test value
      Object expectedValue = row[1];
      assertSame(expectedValue, element.getValue());

      // test schema
      DataSchema expectedSchema = (DataSchema) row[2];
      assertSame(expectedSchema, element.getSchema());

      // test name
      Object[] expectedPath = (Object[]) row[3];
      Object expectedName = expectedPath.length == 0 ? DataElement.ROOT_NAME : expectedPath[expectedPath.length - 1];
View Full Code Here

TOP

Related Classes of com.linkedin.data.schema.DataSchema

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.