protected BaseValueHandler getHandler()

in baremaps-core/src/main/java/org/apache/baremaps/storage/postgres/PostgresDataSchema.java [251:274]


  protected BaseValueHandler getHandler(Type type) {
    return switch (type) {
      case STRING -> new StringValueHandler();
      case SHORT -> new ShortValueHandler<Short>();
      case INTEGER -> new IntegerValueHandler<Integer>();
      case LONG -> new LongValueHandler<Long>();
      case FLOAT -> new FloatValueHandler<Float>();
      case DOUBLE -> new DoubleValueHandler<Double>();
      case GEOMETRY -> new GeometryValueHandler();
      case POINT -> new GeometryValueHandler();
      case MULTIPOINT -> new GeometryValueHandler();
      case LINESTRING -> new GeometryValueHandler();
      case MULTILINESTRING -> new GeometryValueHandler();
      case POLYGON -> new GeometryValueHandler();
      case MULTIPOLYGON -> new GeometryValueHandler();
      case GEOMETRYCOLLECTION -> new GeometryValueHandler();
      case INET4_ADDRESS -> new Inet4AddressValueHandler();
      case INET6_ADDRESS -> new Inet6AddressValueHandler();
      case LOCAL_DATE -> new LocalDateValueHandler();
      case LOCAL_TIME -> new LocalTimeValueHandler();
      case LOCAL_DATE_TIME -> new LocalDateTimeValueHandler();
      default -> throw new IllegalArgumentException("Unsupported type: " + type);
    };
  }