This is an automated email from the ASF dual-hosted git repository.

andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git


The following commit(s) were added to refs/heads/main by this push:
     new 8e50a0d04a Fuseki GeoSPARQL TypeMapper initialization
8e50a0d04a is described below

commit 8e50a0d04ab3d419d9a8df273ae7857b64f37df1
Author: Andy Seaborne <[email protected]>
AuthorDate: Sun Nov 16 14:34:12 2025 +0000

    Fuseki GeoSPARQL TypeMapper initialization
---
 .../rdf_tables/datatypes/DatatypeController.java   | 23 +++++++++++-----------
 .../rdf_tables/datatypes/PrefixController.java     |  4 ----
 .../jena/fuseki/geosparql/DatasetException.java    |  4 ----
 .../jena/fuseki/geosparql/DatasetOperations.java   |  4 ----
 .../jena/fuseki/geosparql/cli/ArgsConfig.java      |  4 ----
 .../fuseki/geosparql/cli/FileGraphDelimiter.java   |  4 ----
 .../jena/fuseki/geosparql/cli/FileGraphFormat.java |  4 ----
 .../fuseki/geosparql/cli/IntegerListConverter.java |  4 ----
 .../fuseki/geosparql/cli/LongListConverter.java    |  4 ----
 .../fuseki/geosparql/cli/RDFFileParameter.java     |  4 ----
 .../fuseki/geosparql/cli/TabFileParameter.java     |  4 ----
 .../implementation/datatype/GeometryDatatype.java  |  7 ++++---
 12 files changed, 15 insertions(+), 55 deletions(-)

diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/ext/io/github/galbiston/rdf_tables/datatypes/DatatypeController.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/ext/io/github/galbiston/rdf_tables/datatypes/DatatypeController.java
index d5983324e1..f796bd7b45 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/ext/io/github/galbiston/rdf_tables/datatypes/DatatypeController.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/ext/io/github/galbiston/rdf_tables/datatypes/DatatypeController.java
@@ -19,6 +19,8 @@ package 
org.apache.jena.ext.io.github.galbiston.rdf_tables.datatypes;
 
 import java.lang.invoke.MethodHandles;
 import java.util.HashMap;
+import java.util.Map;
+
 import org.apache.jena.datatypes.BaseDatatype;
 import org.apache.jena.datatypes.RDFDatatype;
 import org.apache.jena.datatypes.TypeMapper;
@@ -30,16 +32,14 @@ import org.slf4j.LoggerFactory;
 
 public class DatatypeController {
 
-    //TODO load from file
     private static final Logger LOGGER = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
 
-    private static final HashMap<String, String> DATATYPE_PREFIXES = new 
HashMap<>();
-    private static final TypeMapper TYPE_MAPPER = TypeMapper.getInstance();
-
+    private static final Map<String, String> DATATYPE_PREFIXES = new 
HashMap<>();
     public static final String HTTP_PREFIX = "http://";;
-    public static final String BOOLEAN_URI = 
XSDBaseNumericType.XSDboolean.getURI();
 
-    public static HashMap<String, String> getDatatypePrefixes() {
+    private static TypeMapper typeMapper() { return TypeMapper.getInstance(); }
+
+    public static Map<String, String> getDatatypePrefixes() {
 
         if (DATATYPE_PREFIXES.isEmpty()) {
             loadXSDDatatypePrefixes();
@@ -48,7 +48,6 @@ public class DatatypeController {
     }
 
     private static void loadXSDDatatypePrefixes() {
-
         DATATYPE_PREFIXES.put("string", XSDBaseNumericType.XSDstring.getURI());
         DATATYPE_PREFIXES.put("int", XSDBaseNumericType.XSDint.getURI());
         DATATYPE_PREFIXES.put("integer", 
XSDBaseNumericType.XSDinteger.getURI());
@@ -116,7 +115,7 @@ public class DatatypeController {
         String datatypeURI = datatype.getURI();
         if (PrefixController.checkURI(datatypeURI)) {
             DATATYPE_PREFIXES.put(prefix, datatypeURI);
-            TYPE_MAPPER.registerDatatype(datatype);
+            typeMapper().registerDatatype(datatype);
         } else {
             LOGGER.error("Datatype URI is not a URI: {} {}", prefix, 
datatypeURI);
             throw new AssertionError();
@@ -141,7 +140,7 @@ public class DatatypeController {
         } else {
             String datatypeURI = PrefixController.lookupURI(datatypeLabel, 
baseURI);
             DATATYPE_PREFIXES.put(datatypeLabel, datatypeURI);
-            TYPE_MAPPER.registerDatatype(new BaseDatatype(datatypeURI));
+            typeMapper().registerDatatype(new BaseDatatype(datatypeURI));
             return datatypeURI;
         }
     }
@@ -154,7 +153,7 @@ public class DatatypeController {
      */
     public static RDFDatatype lookupDatatype(String datatypeURI) {
         getDatatypePrefixes();
-        RDFDatatype datatype = TYPE_MAPPER.getTypeByName(datatypeURI);
+        RDFDatatype datatype = typeMapper().getTypeByName(datatypeURI);
 
         if (datatype != null) {
             return datatype;
@@ -173,7 +172,7 @@ public class DatatypeController {
      */
     public static Literal createLiteral(String data, String datatypeURI) {
         getDatatypePrefixes();
-        RDFDatatype datatype = TYPE_MAPPER.getTypeByName(datatypeURI);
+        RDFDatatype datatype = typeMapper().getTypeByName(datatypeURI);
 
         if (datatype != null) {
             String tidyData = tidyDatatype(data, datatypeURI);
@@ -195,7 +194,7 @@ public class DatatypeController {
     private static String tidyDatatype(String untidyData, String dataTypeURI) {
         String tidyData = untidyData.trim();
 
-        if (dataTypeURI.equals(DatatypeController.BOOLEAN_URI)) {
+        if (dataTypeURI.equals(XSDBaseNumericType.XSDboolean.getURI())) {
             tidyData = tidyData.toLowerCase();
         }
 
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/ext/io/github/galbiston/rdf_tables/datatypes/PrefixController.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/ext/io/github/galbiston/rdf_tables/datatypes/PrefixController.java
index bae8a06a2e..b8cc900c23 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/ext/io/github/galbiston/rdf_tables/datatypes/PrefixController.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/ext/io/github/galbiston/rdf_tables/datatypes/PrefixController.java
@@ -25,10 +25,6 @@ import java.util.Map;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-/**
- *
- * @author Gerg
- */
 public class PrefixController {
 
     private static final Logger LOGGER = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/DatasetException.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/DatasetException.java
index cdacb2d014..5eace22471 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/DatasetException.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/DatasetException.java
@@ -17,10 +17,6 @@
  */
 package org.apache.jena.fuseki.geosparql;
 
-/**
- *
- *
- */
 public class DatasetException extends Exception {
 
     public DatasetException(String msg) {
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/DatasetOperations.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/DatasetOperations.java
index 0feeb3a4af..03a8479223 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/DatasetOperations.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/DatasetOperations.java
@@ -44,10 +44,6 @@ import org.apache.jena.tdb2.TDB2Factory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-/**
- *
- *
- */
 public class DatasetOperations {
 
     private static final Logger LOGGER = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/ArgsConfig.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/ArgsConfig.java
index 6f4794724a..e21cf9f4bd 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/ArgsConfig.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/ArgsConfig.java
@@ -25,10 +25,6 @@ import java.util.Arrays;
 import java.util.List;
 import static 
org.apache.jena.fuseki.geosparql.DatasetOperations.SPATIAL_INDEX_FILE;
 
-/**
- *
- *
- */
 public class ArgsConfig {
 
     //1) Port
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/FileGraphDelimiter.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/FileGraphDelimiter.java
index c8557840b7..699f9aea7d 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/FileGraphDelimiter.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/FileGraphDelimiter.java
@@ -20,10 +20,6 @@ package org.apache.jena.fuseki.geosparql.cli;
 import java.io.File;
 import java.util.Objects;
 
-/**
- *
- *
- */
 public class FileGraphDelimiter {
 
     private final File tabFile;
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/FileGraphFormat.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/FileGraphFormat.java
index 88aef15819..b0ec955252 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/FileGraphFormat.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/FileGraphFormat.java
@@ -21,10 +21,6 @@ import java.io.File;
 import java.util.Objects;
 import org.apache.jena.riot.RDFFormat;
 
-/**
- *
- *
- */
 public class FileGraphFormat {
 
     private final File rdfFile;
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/IntegerListConverter.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/IntegerListConverter.java
index 0594110062..b7b58d7bd8 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/IntegerListConverter.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/IntegerListConverter.java
@@ -21,10 +21,6 @@ import com.beust.jcommander.IStringConverter;
 import java.util.ArrayList;
 import java.util.List;
 
-/**
- *
- *
- */
 public class IntegerListConverter implements IStringConverter<List<Integer>> {
 
     @Override
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/LongListConverter.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/LongListConverter.java
index 0c072c1189..267215f652 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/LongListConverter.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/LongListConverter.java
@@ -21,10 +21,6 @@ import com.beust.jcommander.IStringConverter;
 import java.util.ArrayList;
 import java.util.List;
 
-/**
- *
- *
- */
 public class LongListConverter implements IStringConverter<List<Long>> {
 
     @Override
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/RDFFileParameter.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/RDFFileParameter.java
index a937c0c3e1..3427cb706a 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/RDFFileParameter.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/RDFFileParameter.java
@@ -28,10 +28,6 @@ import java.util.List;
 import org.apache.jena.ext.io.github.galbiston.rdf_tables.cli.FormatParameter;
 import org.apache.jena.riot.RDFFormat;
 
-/**
- *
- *
- */
 public class RDFFileParameter implements 
IStringConverter<List<FileGraphFormat>>, IParameterValidator {
 
     private static final FormatParameter FORMAT_PARAMETER = new 
FormatParameter();
diff --git 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/TabFileParameter.java
 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/TabFileParameter.java
index 12926c4f8a..d695aa273e 100644
--- 
a/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/TabFileParameter.java
+++ 
b/jena-fuseki2/jena-fuseki-geosparql/src/main/java/org/apache/jena/fuseki/geosparql/cli/TabFileParameter.java
@@ -27,10 +27,6 @@ import java.io.File;
 import java.util.ArrayList;
 import java.util.List;
 
-/**
- *
- *
- */
 public class TabFileParameter implements 
IStringConverter<List<FileGraphDelimiter>>, IParameterValidator {
 
     private static final DelimiterValidator DELIMITER_VALIDATOR = new 
DelimiterValidator();
diff --git 
a/jena-geosparql/src/main/java/org/apache/jena/geosparql/implementation/datatype/GeometryDatatype.java
 
b/jena-geosparql/src/main/java/org/apache/jena/geosparql/implementation/datatype/GeometryDatatype.java
index 11ce4bf4d3..d3af4e9343 100644
--- 
a/jena-geosparql/src/main/java/org/apache/jena/geosparql/implementation/datatype/GeometryDatatype.java
+++ 
b/jena-geosparql/src/main/java/org/apache/jena/geosparql/implementation/datatype/GeometryDatatype.java
@@ -56,7 +56,6 @@ public abstract class GeometryDatatype extends BaseDatatype {
             throw new DatatypeFormatException(ex.getMessage() + " - Illegal 
Geometry Literal: " + lexicalForm);
         }
     }
-
     public static void registerDatatypes() {
         Types.init();
     }
@@ -74,6 +73,8 @@ public abstract class GeometryDatatype extends BaseDatatype {
         }
         public static void init() {}
     }
+    private static TypeMapper typeMapper() { return Types.MAPPER; }
+
 
     public static final GeometryDatatype get(RDFDatatype rdfDatatype) throws 
DatatypeFormatException {
         if (rdfDatatype instanceof GeometryDatatype) {
@@ -85,12 +86,12 @@ public abstract class GeometryDatatype extends BaseDatatype 
{
 
     public static final GeometryDatatype get(String datatypeURI) {
         checkURI(datatypeURI);
-        RDFDatatype rdfDatatype = Types.MAPPER.getTypeByName(datatypeURI);
+        RDFDatatype rdfDatatype = typeMapper().getTypeByName(datatypeURI);
         return GeometryDatatype.get(rdfDatatype);
     }
 
     public static final boolean checkURI(String datatypeURI) throws 
DatatypeFormatException {
-        RDFDatatype rdfDatatype = Types.MAPPER.getTypeByName(datatypeURI);
+        RDFDatatype rdfDatatype = typeMapper().getTypeByName(datatypeURI);
         if (rdfDatatype != null) {
             return rdfDatatype instanceof GeometryDatatype;
         } else {

Reply via email to