private static DynamoDbHiveShims loadHiveShims()

in shims/loader/src/main/java/org/apache/hadoop/hive/dynamodb/shims/ShimsLoader.java [36:59]


  private static DynamoDbHiveShims loadHiveShims() {
    String hiveVersion = HiveVersionInfo.getShortVersion();
    if (DynamoDbHive1Shims.supportsVersion(hiveVersion)) {
      try {
        return DynamoDbHive1Shims.class.newInstance();
      } catch (InstantiationException | IllegalAccessException e) {
        throw new RuntimeException("unable to get instance of Hive 1.x shim class");
      }
    } else if (DynamoDbHive1Dot2Shims.supportsVersion(hiveVersion)) {
      try {
        return DynamoDbHive1Dot2Shims.class.newInstance();
      } catch (InstantiationException | IllegalAccessException e) {
        throw new RuntimeException("unable to get instance of Hive 1.2.x shim class");
      }
    } else if (DynamoDbHive2Shims.supportsVersion(hiveVersion)) {
      try {
        return DynamoDbHive2Shims.class.newInstance();
      } catch (InstantiationException | IllegalAccessException e) {
        throw new RuntimeException("unable to get instance of Hive 2.x shim class");
      }
    } else {
      throw new RuntimeException("Shim class for Hive version " + hiveVersion + " does not exist");
    }
  }