Class StreamsHiveResourceGenerator

java.lang.Object
org.apache.streams.plugins.hive.StreamsHiveResourceGenerator
All Implemented Interfaces:
Runnable

public class StreamsHiveResourceGenerator extends Object implements Runnable
Generates hive table definitions for using org.openx.data.jsonserde.JsonSerDe on new-line delimited json documents.
  • Constructor Details

  • Method Details

    • main

      public static void main(String[] args)
      Run from CLI without Maven

      java -jar streams-plugin-hive-jar-with-dependencies.jar StreamsHiveResourceGenerator src/main/jsonschema target/generated-resources
      Parameters:
      args - [sourceDirectory, targetDirectory]
    • run

      public void run()
      Specified by:
      run in interface Runnable
    • generate

      public void generate(StreamsHiveGenerationConfig config)
      run generate using supplied StreamsHiveGenerationConfig.
      Parameters:
      config - StreamsHiveGenerationConfig
    • generateResource

      public String generateResource(Schema schema, String resourceId)
      generateResource String from schema and resourceId.
      Parameters:
      schema - Schema
      resourceId - String
      Returns:
      CREATE TABLE ...
    • appendRootObject

      protected StringBuilder appendRootObject(StringBuilder builder, Schema schema, String resourceId, Character seperator)
    • appendArrayItems

      protected StringBuilder appendArrayItems(StringBuilder builder, Schema schema, String fieldId, com.fasterxml.jackson.databind.node.ObjectNode itemsNode, Character seperator)