rdblue commented on code in PR #12346:
URL: https://github.com/apache/iceberg/pull/12346#discussion_r1994430054


##########
api/src/main/java/org/apache/iceberg/types/Types.java:
##########
@@ -543,6 +563,122 @@ public int hashCode() {
     }
   }
 
+  public static class GeometryType extends PrimitiveType {
+
+    private final String crs;
+
+    private GeometryType(String crs) {
+      Preconditions.checkNotNull(crs, "CRS cannot be null");
+      this.crs = crs;
+    }
+
+    public static GeometryType get() {
+      return new GeometryType("");
+    }
+
+    public static GeometryType of(String crs) {
+      return new GeometryType(crs == null ? "" : crs);
+    }
+
+    @Override
+    public TypeID typeId() {
+      return TypeID.GEOMETRY;
+    }
+
+    public String crs() {
+      return crs;
+    }
+
+    @Override
+    public boolean equals(Object o) {
+      if (this == o) {
+        return true;
+      } else if (!(o instanceof GeometryType)) {
+        return false;
+      }
+
+      GeometryType that = (GeometryType) o;
+      return crs.equals(that.crs);
+    }
+
+    @Override
+    public int hashCode() {
+      return Objects.hash(GeometryType.class, crs);
+    }
+
+    @Override
+    public String toString() {
+      return String.format("geometry(%s)", crs);

Review Comment:
   Using empty string for CRS would produce `geometry()` instead of `geometry`. 
I would also not use `geometry(crs84)` when that is equivalent to `geometry`. 
So whatever we store for the default CRS (null?) this should translate the 
default to `geometry`.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to