diff --git a/lib/src/main/java/io/cloudquery/transformers/TypeTransformer.java b/lib/src/main/java/io/cloudquery/transformers/TypeTransformer.java index 1a337e3..83f1076 100644 --- a/lib/src/main/java/io/cloudquery/transformers/TypeTransformer.java +++ b/lib/src/main/java/io/cloudquery/transformers/TypeTransformer.java @@ -1,9 +1,7 @@ package io.cloudquery.transformers; import io.cloudquery.scalar.Timestamp; -import io.cloudquery.types.InetType; import io.cloudquery.types.JSONType; -import io.cloudquery.types.ListType; import io.cloudquery.types.UUIDType; import java.lang.reflect.Field; import org.apache.arrow.vector.types.FloatingPointPrecision; @@ -37,9 +35,6 @@ private static ArrowType transformArrowType(String name, Class type) case "java.util.Map" -> { return JSONType.INSTANCE; } - case "java.net.InetAddress" -> { - return InetType.INSTANCE; - } case "java.time.LocalDateTime" -> { return Timestamp.dt; } @@ -52,9 +47,7 @@ private static ArrowType transformArrowType(String name, Class type) if (componentType.getName().equals("byte")) { return ArrowType.Binary.INSTANCE; } - // if element type is already json just return JSON rather than a list of JSON - ArrowType elementType = transformArrowType(name, componentType); - return elementType == JSONType.INSTANCE ? elementType : ListType.listOf(elementType); + return JSONType.INSTANCE; } if (!type.isPrimitive()) { return JSONType.INSTANCE; diff --git a/lib/src/main/java/io/cloudquery/types/InetType.java b/lib/src/main/java/io/cloudquery/types/InetType.java deleted file mode 100644 index bd20ea9..0000000 --- a/lib/src/main/java/io/cloudquery/types/InetType.java +++ /dev/null @@ -1,41 +0,0 @@ -package io.cloudquery.types; - -import org.apache.arrow.memory.BufferAllocator; -import org.apache.arrow.vector.FieldVector; -import org.apache.arrow.vector.types.pojo.ArrowType; -import org.apache.arrow.vector.types.pojo.FieldType; - -public class InetType extends ArrowType.ExtensionType { - public static final InetType INSTANCE = new InetType(); - public static final String EXTENSION_NAME = "inet"; - - @Override - public ArrowType storageType() { - return Binary.INSTANCE; - } - - @Override - public String extensionName() { - return EXTENSION_NAME; - } - - @Override - public boolean extensionEquals(ExtensionType other) { - return other instanceof InetType; - } - - @Override - public String serialize() { - return null; - } - - @Override - public ArrowType deserialize(ArrowType storageType, String serializedData) { - return null; - } - - @Override - public FieldVector getNewVector(String name, FieldType fieldType, BufferAllocator allocator) { - return null; - } -} diff --git a/lib/src/main/java/io/cloudquery/types/ListType.java b/lib/src/main/java/io/cloudquery/types/ListType.java deleted file mode 100644 index de354fe..0000000 --- a/lib/src/main/java/io/cloudquery/types/ListType.java +++ /dev/null @@ -1,40 +0,0 @@ -package io.cloudquery.types; - -import java.util.Objects; -import org.apache.arrow.vector.types.pojo.ArrowType; - -public class ListType extends ArrowType.List { - - public static ListType listOf(ArrowType elementType) { - return new ListType(elementType); - } - - private final ArrowType elementType; - - public ListType(ArrowType elementType) { - this.elementType = elementType; - } - - public ArrowType getElementType() { - return elementType; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - if (!super.equals(o)) return false; - ListType listType = (ListType) o; - return Objects.equals(elementType, listType.elementType); - } - - @Override - public int hashCode() { - return Objects.hash(super.hashCode(), elementType); - } - - @Override - public String toString() { - return "ListType{" + "elementType=" + elementType + '}'; - } -} diff --git a/lib/src/test/java/io/cloudquery/transformers/TransformWithClassTest.java b/lib/src/test/java/io/cloudquery/transformers/TransformWithClassTest.java index dc56c30..e1e874b 100644 --- a/lib/src/test/java/io/cloudquery/transformers/TransformWithClassTest.java +++ b/lib/src/test/java/io/cloudquery/transformers/TransformWithClassTest.java @@ -12,10 +12,7 @@ import io.cloudquery.schema.Column; import io.cloudquery.schema.Table; -import io.cloudquery.types.InetType; import io.cloudquery.types.JSONType; -import io.cloudquery.types.ListType; -import java.net.InetAddress; import java.time.LocalDateTime; import java.time.ZoneOffset; import java.util.List; @@ -57,7 +54,6 @@ public static final class TestClass { private List intListCol; private String[] stringArrayCol; private List stringListCol; - private InetAddress inetAddressCol; private byte[] byteArrayCol; private Object[] anyArrayCol; private LocalDateTime timeCol; @@ -89,11 +85,10 @@ public static final class TestClass { Column.builder().name("boolean_col").type(Bool.INSTANCE).build(), Column.builder().name("boolean_object_col").type(Bool.INSTANCE).build(), Column.builder().name("json_col").type(JSONType.INSTANCE).build(), - Column.builder().name("int_array_col").type(ListType.listOf(new Int(64, true))).build(), + Column.builder().name("int_array_col").type(JSONType.INSTANCE).build(), Column.builder().name("int_list_col").type(JSONType.INSTANCE).build(), - Column.builder().name("string_array_col").type(ListType.listOf(Utf8.INSTANCE)).build(), + Column.builder().name("string_array_col").type(JSONType.INSTANCE).build(), Column.builder().name("string_list_col").type(JSONType.INSTANCE).build(), - Column.builder().name("inet_address_col").type(InetType.INSTANCE).build(), Column.builder().name("byte_array_col").type(Binary.INSTANCE).build(), Column.builder().name("any_array_col").type(JSONType.INSTANCE).build(), Column.builder() diff --git a/lib/src/test/java/io/cloudquery/transformers/TypeTransformerTest.java b/lib/src/test/java/io/cloudquery/transformers/TypeTransformerTest.java index e455229..df5704c 100644 --- a/lib/src/test/java/io/cloudquery/transformers/TypeTransformerTest.java +++ b/lib/src/test/java/io/cloudquery/transformers/TypeTransformerTest.java @@ -3,9 +3,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import io.cloudquery.transformers.TypeTransformer.DefaultTypeTransformer; -import io.cloudquery.types.InetType; import io.cloudquery.types.JSONType; -import io.cloudquery.types.ListType; import java.net.InetAddress; import java.time.LocalDateTime; import java.time.ZoneOffset; @@ -98,10 +96,6 @@ public static Stream testArgumentsSource() { // Inner class Arguments.of("innerClassObjectField", JSONType.INSTANCE), - // Array field - Arguments.of("intArrayField", ListType.listOf(new ArrowType.Int(64, true))), - Arguments.of("stringArrayField", ListType.listOf(ArrowType.Utf8.INSTANCE)), - // Time Arguments.of( "timeField", new ArrowType.Timestamp(TimeUnit.MILLISECOND, ZoneOffset.UTC.getId())), @@ -109,9 +103,6 @@ public static Stream testArgumentsSource() { // Byte Arguments.of("byteArrayField", ArrowType.Binary.INSTANCE), - // Inet - Arguments.of("inetField", InetType.INSTANCE), - // Object array Arguments.of("objectArrayField", JSONType.INSTANCE)); } diff --git a/lib/src/test/java/io/cloudquery/types/ListTypeTest.java b/lib/src/test/java/io/cloudquery/types/ListTypeTest.java deleted file mode 100644 index 64b1261..0000000 --- a/lib/src/test/java/io/cloudquery/types/ListTypeTest.java +++ /dev/null @@ -1,19 +0,0 @@ -package io.cloudquery.types; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotEquals; - -import org.apache.arrow.vector.types.pojo.ArrowType; -import org.junit.jupiter.api.Test; - -class ListTypeTest { - @Test - public void testEquality() { - ListType listType1 = ListType.listOf(new ArrowType.Int(64, true)); - ListType listType2 = ListType.listOf(new ArrowType.Int(64, true)); - ListType listType3 = ListType.listOf(new ArrowType.Int(32, true)); - - assertEquals(listType1, listType2); - assertNotEquals(listType1, listType3); - } -}