diff --git a/core/src/main/java/org/polypheny/db/adapter/AdapterManager.java b/core/src/main/java/org/polypheny/db/adapter/AdapterManager.java index 9de52a088f..8fba537cb9 100644 --- a/core/src/main/java/org/polypheny/db/adapter/AdapterManager.java +++ b/core/src/main/java/org/polypheny/db/adapter/AdapterManager.java @@ -170,7 +170,7 @@ public ImmutableMap> getSources() { } - public Adapter addAdapter( String adapterName, String uniqueName, long defaultNamespace, AdapterType adapterType, DeployMode mode, Map settings ) { + public Adapter addAdapter( String adapterName, String uniqueName, AdapterType adapterType, DeployMode mode, Map settings ) { uniqueName = uniqueName.toLowerCase(); if ( getAdapters().containsKey( uniqueName ) ) { throw new GenericRuntimeException( "There is already an adapter with this unique name" ); @@ -181,7 +181,7 @@ public Adapter addAdapter( String adapterName, String uniqueName, long defaul AdapterTemplate adapterTemplate = AdapterTemplate.fromString( adapterName, adapterType ); - long adapterId = Catalog.getInstance().createAdapter( uniqueName, adapterName, defaultNamespace, adapterType, settings, mode ); + long adapterId = Catalog.getInstance().createAdapter( uniqueName, adapterName, adapterType, settings, mode ); try { Adapter adapter = adapterTemplate.getDeployer().get( adapterId, uniqueName, settings ); adapterByName.put( adapter.getUniqueName(), adapter ); @@ -263,12 +263,4 @@ public interface Function4 { } - - @FunctionalInterface - public interface Function5 { - - R get( P1 p1, P2 p2, P3 p3, P4 p4 ); - - } - } diff --git a/core/src/main/java/org/polypheny/db/catalog/Catalog.java b/core/src/main/java/org/polypheny/db/catalog/Catalog.java index f4772074c5..b6166adc7c 100644 --- a/core/src/main/java/org/polypheny/db/catalog/Catalog.java +++ b/core/src/main/java/org/polypheny/db/catalog/Catalog.java @@ -191,13 +191,12 @@ public void removeObserver( PropertyChangeListener listener ) { * * @param uniqueName The unique name of the adapter * @param clazz The class name of the adapter - * @param defaultNamespace The default namespace of the adapter * @param type The type of adapter * @param settings The configuration of the adapter * @param mode The deploy mode of the adapter * @return The id of the newly added adapter */ - public abstract long createAdapter( String uniqueName, String clazz, long defaultNamespace, AdapterType type, Map settings, DeployMode mode ); + public abstract long createAdapter( String uniqueName, String clazz, AdapterType type, Map settings, DeployMode mode ); /** * Update settings of an adapter diff --git a/core/src/main/java/org/polypheny/db/catalog/entity/LogicalAdapter.java b/core/src/main/java/org/polypheny/db/catalog/entity/LogicalAdapter.java index 5c4627c877..fc5f4da189 100644 --- a/core/src/main/java/org/polypheny/db/catalog/entity/LogicalAdapter.java +++ b/core/src/main/java/org/polypheny/db/catalog/entity/LogicalAdapter.java @@ -53,8 +53,6 @@ public class LogicalAdapter implements PolyObject { public String adapterTypeName; @Serialize public DeployMode mode; - @Serialize - public long defaultNamespace; public enum AdapterType {STORE, SOURCE} @@ -66,8 +64,7 @@ public LogicalAdapter( @Deserialize("adapterName") @NonNull final String adapterName, @Deserialize("type") @NonNull final AdapterType adapterType, @Deserialize("mode") @NotNull final DeployMode mode, - @Deserialize("settings") @NonNull final Map settings, - @Deserialize("defaultNamespace") final long defaultNamespace ) { + @Deserialize("settings") @NonNull final Map settings ) { this.id = id; this.uniqueName = uniqueName; this.adapterName = adapterName; @@ -75,7 +72,6 @@ public LogicalAdapter( this.settings = new HashMap<>( settings ); this.adapterTypeName = getAdapterName(); this.mode = mode; - this.defaultNamespace = defaultNamespace; } diff --git a/core/src/main/java/org/polypheny/db/catalog/impl/PolyCatalog.java b/core/src/main/java/org/polypheny/db/catalog/impl/PolyCatalog.java index 44c05ab000..b96d5dae61 100644 --- a/core/src/main/java/org/polypheny/db/catalog/impl/PolyCatalog.java +++ b/core/src/main/java/org/polypheny/db/catalog/impl/PolyCatalog.java @@ -369,9 +369,9 @@ public void dropNamespace( long id ) { @Override - public long createAdapter( String uniqueName, String clazz, long defaultNamespace, AdapterType type, Map settings, DeployMode mode ) { + public long createAdapter( String uniqueName, String clazz, AdapterType type, Map settings, DeployMode mode ) { long id = idBuilder.getNewAdapterId(); - adapters.put( id, new LogicalAdapter( id, uniqueName, clazz, type, mode, settings, defaultNamespace ) ); + adapters.put( id, new LogicalAdapter( id, uniqueName, clazz, type, mode, settings ) ); change(); return id; } diff --git a/core/src/main/java/org/polypheny/db/ddl/DdlManager.java b/core/src/main/java/org/polypheny/db/ddl/DdlManager.java index a9edbf815a..bb7638e0da 100644 --- a/core/src/main/java/org/polypheny/db/ddl/DdlManager.java +++ b/core/src/main/java/org/polypheny/db/ddl/DdlManager.java @@ -102,16 +102,29 @@ public static DdlManager getInstance() { public abstract long createNamespace( String name, DataModel type, boolean ifNotExists, boolean replace, Statement statement ); /** - * Adds a new adapter (data store or data source) + * Adds a new data store(adapter) * - * @param uniqueName unique name of the newly created adapter - * @param adapterName name of adapter, which is used to create the adapter - * @param defaultNamespace the default namespace for the adapter - * @param adapterType the specific {@link AdapterType} for the adapter to create - * @param config configuration for the adapter + * @param uniqueName unique name of the newly created store + * @param adapterName name of store, which is used to create the store + * @param adapterType the specific {@link AdapterType} for the store to create + * @param config configuration for the store * @param mode the deploy mode */ - public abstract void createAdapter( String uniqueName, String adapterName, long defaultNamespace, AdapterType adapterType, Map config, DeployMode mode ); + public abstract void createStore( String uniqueName, String adapterName, AdapterType adapterType, Map config, DeployMode mode ); + + + /** + * Adds a new data source(adapter) + * + * @param uniqueName unique name of the newly created source + * @param adapterName name of source, which is used to create the source + * @param namespace the target namespace for the adapter + * @param adapterType the specific {@link AdapterType} for the source to create + * @param config configuration for the source + * @param mode the deploy mode + */ + public abstract void createSource( String uniqueName, String adapterName, long namespace, AdapterType adapterType, Map config, DeployMode mode ); + /** * Drop an adapter diff --git a/core/src/main/java/org/polypheny/db/type/entity/PolyBoolean.java b/core/src/main/java/org/polypheny/db/type/entity/PolyBoolean.java index f103552686..e94061eed1 100644 --- a/core/src/main/java/org/polypheny/db/type/entity/PolyBoolean.java +++ b/core/src/main/java/org/polypheny/db/type/entity/PolyBoolean.java @@ -31,10 +31,10 @@ import lombok.Value; import org.apache.calcite.linq4j.tree.Expression; import org.apache.calcite.linq4j.tree.Expressions; -import org.apache.commons.lang3.NotImplementedException; import org.apache.commons.lang3.ObjectUtils; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import org.polypheny.db.catalog.exceptions.GenericRuntimeException; import org.polypheny.db.type.PolySerializable; import org.polypheny.db.type.PolyType; @@ -95,18 +95,18 @@ public Object toJava() { } - public static PolyBoolean convert( Object value ) { + public static PolyBoolean convert( @Nullable PolyValue value ) { if ( value == null ) { return null; } - if ( value instanceof PolyValue poly ) { - if ( poly.isBoolean() ) { - return poly.asBoolean(); - } else if ( poly.isNumber() ) { - return poly.asBoolean(); - } + + if ( value.isBoolean() ) { + return value.asBoolean(); + } else if ( value.isNumber() ) { + return value.asBoolean(); } - throw new NotImplementedException( "convert value to Boolean" ); + + throw new GenericRuntimeException( getConvertError( value, PolyBoolean.class ) ); } diff --git a/core/src/main/java/org/polypheny/db/type/entity/PolyString.java b/core/src/main/java/org/polypheny/db/type/entity/PolyString.java index f917052e60..72d87c9f09 100644 --- a/core/src/main/java/org/polypheny/db/type/entity/PolyString.java +++ b/core/src/main/java/org/polypheny/db/type/entity/PolyString.java @@ -34,10 +34,10 @@ import lombok.Value; import org.apache.calcite.linq4j.tree.Expression; import org.apache.calcite.linq4j.tree.Expressions; -import org.apache.commons.lang3.NotImplementedException; import org.apache.commons.lang3.ObjectUtils; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import org.polypheny.db.catalog.exceptions.GenericRuntimeException; import org.polypheny.db.type.PolySerializable; import org.polypheny.db.type.PolyType; import org.polypheny.db.util.Util; @@ -102,20 +102,18 @@ public static PolyString concat( List strings ) { } - public static PolyString convert( Object value ) { + public static PolyString convert( @Nullable PolyValue value ) { if ( value == null ) { return null; } - if ( value instanceof PolyValue poly ) { - if ( poly.isString() ) { - return poly.asString(); - } else if ( poly.isDocument() ) { - return PolyString.of( poly.asDocument().toJson() ); - } else { - return PolyString.of( poly.toJson() ); - } + + if ( value.isString() ) { + return value.asString(); + } else if ( value.isDocument() ) { + return PolyString.of( value.asDocument().toJson() ); } - throw new NotImplementedException( "convert value to string" ); + + throw new GenericRuntimeException( getConvertError( value, PolyString.class ) ); } diff --git a/core/src/main/java/org/polypheny/db/type/entity/document/PolyDocument.java b/core/src/main/java/org/polypheny/db/type/entity/document/PolyDocument.java index 216f30656e..ad8ac3ceba 100644 --- a/core/src/main/java/org/polypheny/db/type/entity/document/PolyDocument.java +++ b/core/src/main/java/org/polypheny/db/type/entity/document/PolyDocument.java @@ -46,8 +46,8 @@ import lombok.extern.slf4j.Slf4j; import org.apache.calcite.linq4j.tree.Expression; import org.apache.calcite.linq4j.tree.Expressions; -import org.apache.commons.lang3.NotImplementedException; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import org.polypheny.db.catalog.exceptions.GenericRuntimeException; import org.polypheny.db.type.PolySerializable; import org.polypheny.db.type.PolyType; @@ -104,21 +104,16 @@ public PolyDocument( Pair... value ) { } - public static PolyDocument parse( String string ) { - throw new GenericRuntimeException( "error on parsing Document" ); - } - - - public static PolyDocument convert( Object value ) { + public static PolyDocument convert( @Nullable PolyValue value ) { if ( value == null ) { return null; } - if ( value instanceof PolyValue ) { - if ( ((PolyValue) value).isDocument() ) { - return ((PolyValue) value).asDocument(); - } + + if ( value.isDocument() ) { + return value.asDocument(); } - throw new NotImplementedException( "convert value to Document" ); + + throw new GenericRuntimeException( getConvertError( value, PolyDocument.class ) ); } diff --git a/core/src/main/java/org/polypheny/db/type/entity/temporal/PolyTime.java b/core/src/main/java/org/polypheny/db/type/entity/temporal/PolyTime.java index 9678fffd51..c2a9220a35 100644 --- a/core/src/main/java/org/polypheny/db/type/entity/temporal/PolyTime.java +++ b/core/src/main/java/org/polypheny/db/type/entity/temporal/PolyTime.java @@ -32,7 +32,6 @@ import org.polypheny.db.type.entity.PolyValue; import org.polypheny.db.type.entity.category.PolyNumber; import org.polypheny.db.type.entity.category.PolyTemporal; -import org.polypheny.db.type.entity.numerical.PolyDouble; import org.polypheny.db.util.TimeString; @EqualsAndHashCode(callSuper = true) @@ -90,7 +89,7 @@ public static PolyTime convert( @Nullable PolyValue value ) { return value.asTime(); } - throw new GenericRuntimeException( getConvertError( value, PolyDouble.class ) ); + throw new GenericRuntimeException( getConvertError( value, PolyTime.class ) ); } diff --git a/core/src/main/java/org/polypheny/db/type/entity/temporal/PolyTimestamp.java b/core/src/main/java/org/polypheny/db/type/entity/temporal/PolyTimestamp.java index 848fda6e9c..69906ce999 100644 --- a/core/src/main/java/org/polypheny/db/type/entity/temporal/PolyTimestamp.java +++ b/core/src/main/java/org/polypheny/db/type/entity/temporal/PolyTimestamp.java @@ -37,7 +37,6 @@ import org.polypheny.db.type.PolyType; import org.polypheny.db.type.entity.PolyValue; import org.polypheny.db.type.entity.category.PolyTemporal; -import org.polypheny.db.type.entity.numerical.PolyDouble; import org.polypheny.db.util.TimestampString; @Getter @@ -160,7 +159,7 @@ public static PolyTimestamp convert( @Nullable PolyValue value ) { } else if ( value.isTemporal() ) { return PolyTimestamp.of( value.asTemporal().getMillisSinceEpoch() ); } - throw new GenericRuntimeException( getConvertError( value, PolyDouble.class ) ); + throw new GenericRuntimeException( getConvertError( value, PolyTimestamp.class ) ); } diff --git a/core/src/test/java/org/polypheny/db/catalog/MockCatalog.java b/core/src/test/java/org/polypheny/db/catalog/MockCatalog.java index 0925fc4267..0a69cbdaf3 100644 --- a/core/src/test/java/org/polypheny/db/catalog/MockCatalog.java +++ b/core/src/test/java/org/polypheny/db/catalog/MockCatalog.java @@ -163,7 +163,7 @@ public void dropNamespace( long id ) { @Override - public long createAdapter( String uniqueName, String clazz, long defaultNamespace, AdapterType type, Map settings, DeployMode mode ) { + public long createAdapter( String uniqueName, String clazz, AdapterType type, Map settings, DeployMode mode ) { throw new NotImplementedException(); } diff --git a/dbms/src/main/java/org/polypheny/db/ddl/DdlManagerImpl.java b/dbms/src/main/java/org/polypheny/db/ddl/DdlManagerImpl.java index 214553df27..fb0789ec4d 100644 --- a/dbms/src/main/java/org/polypheny/db/ddl/DdlManagerImpl.java +++ b/dbms/src/main/java/org/polypheny/db/ddl/DdlManagerImpl.java @@ -206,17 +206,17 @@ public long createNamespace( String initialName, DataModel type, boolean ifNotEx @Override - public void createAdapter( String uniqueName, String adapterName, long defaultNamespace, AdapterType adapterType, Map config, DeployMode mode ) { + public void createStore( String uniqueName, String adapterName, AdapterType adapterType, Map config, DeployMode mode ) { uniqueName = uniqueName.toLowerCase(); - Adapter adapter = AdapterManager.getInstance().addAdapter( adapterName, uniqueName, defaultNamespace, adapterType, mode, config ); - - if ( adapter instanceof DataSource ) { - handleSource( (DataSource) adapter, defaultNamespace ); - } + Adapter adapter = AdapterManager.getInstance().addAdapter( adapterName, uniqueName, adapterType, mode, config ); } - private void handleSource( DataSource adapter, long defaultNamespace ) { + @Override + public void createSource( String uniqueName, String adapterName, long namespace, AdapterType adapterType, Map config, DeployMode mode ) { + uniqueName = uniqueName.toLowerCase(); + DataSource adapter = (DataSource) AdapterManager.getInstance().addAdapter( adapterName, uniqueName, adapterType, mode, config ); + Map> exportedColumns; try { exportedColumns = adapter.getExportedColumns(); @@ -228,26 +228,26 @@ private void handleSource( DataSource adapter, long defaultNamespace ) { for ( Map.Entry> entry : exportedColumns.entrySet() ) { // Make sure the table name is unique String tableName = entry.getKey(); - if ( catalog.getSnapshot().rel().getTable( defaultNamespace, tableName ).isPresent() ) { // apparently we put them all into 1? + if ( catalog.getSnapshot().rel().getTable( namespace, tableName ).isPresent() ) { int i = 0; - while ( catalog.getSnapshot().rel().getTable( defaultNamespace, tableName + i ).isPresent() ) { + while ( catalog.getSnapshot().rel().getTable( namespace, tableName + i ).isPresent() ) { i++; } tableName += i; } - LogicalTable logical = catalog.getLogicalRel( defaultNamespace ).addTable( tableName, EntityType.SOURCE, !(adapter).isDataReadOnly() ); + LogicalTable logical = catalog.getLogicalRel( namespace ).addTable( tableName, EntityType.SOURCE, !(adapter).isDataReadOnly() ); List columns = new ArrayList<>(); Pair partitionProperty = createSinglePartition( logical.namespaceId, logical ); - AllocationPlacement placement = catalog.getAllocRel( defaultNamespace ).addPlacement( logical.id, defaultNamespace, adapter.adapterId ); - AllocationEntity allocation = catalog.getAllocRel( defaultNamespace ).addAllocation( adapter.getAdapterId(), placement.id, partitionProperty.left.id, logical.id ); + AllocationPlacement placement = catalog.getAllocRel( namespace ).addPlacement( logical.id, namespace, adapter.adapterId ); + AllocationEntity allocation = catalog.getAllocRel( namespace ).addAllocation( adapter.getAdapterId(), placement.id, partitionProperty.left.id, logical.id ); List aColumns = new ArrayList<>(); int colPos = 1; for ( ExportedColumn exportedColumn : entry.getValue() ) { - LogicalColumn column = catalog.getLogicalRel( defaultNamespace ).addColumn( + LogicalColumn column = catalog.getLogicalRel( namespace ).addColumn( exportedColumn.name, logical.id, colPos++, @@ -260,7 +260,7 @@ private void handleSource( DataSource adapter, long defaultNamespace ) { exportedColumn.nullable, Collation.getDefaultCollation() ); - AllocationColumn allocationColumn = catalog.getAllocRel( defaultNamespace ).addColumn( + AllocationColumn allocationColumn = catalog.getAllocRel( namespace ).addColumn( placement.id, logical.id, column.id, diff --git a/dbms/src/main/java/org/polypheny/db/ddl/DefaultInserter.java b/dbms/src/main/java/org/polypheny/db/ddl/DefaultInserter.java index 50a6dc7895..8e268ac083 100644 --- a/dbms/src/main/java/org/polypheny/db/ddl/DefaultInserter.java +++ b/dbms/src/main/java/org/polypheny/db/ddl/DefaultInserter.java @@ -66,7 +66,7 @@ private static void restoreAdapters( DdlManager ddlManager, Catalog catalog, Run // Deploy default storeId Map defaultStore = Catalog.snapshot().getAdapterTemplate( Catalog.defaultStore.getAdapterName(), AdapterType.STORE ).orElseThrow().getDefaultSettings(); - ddlManager.createAdapter( "hsqldb", Catalog.defaultStore.getAdapterName(), Catalog.defaultNamespaceId, AdapterType.STORE, defaultStore, DeployMode.EMBEDDED ); + ddlManager.createStore( "hsqldb", Catalog.defaultStore.getAdapterName(), AdapterType.STORE, defaultStore, DeployMode.EMBEDDED ); if ( mode == RunMode.TEST ) { return; // source adapters create schema structure, which we do not want for testing @@ -74,7 +74,7 @@ private static void restoreAdapters( DdlManager ddlManager, Catalog catalog, Run // Deploy default CSV view Map defaultSource = Catalog.snapshot().getAdapterTemplate( Catalog.defaultSource.getAdapterName(), AdapterType.SOURCE ).orElseThrow().getDefaultSettings(); - ddlManager.createAdapter( "hr", Catalog.defaultSource.getAdapterName(), Catalog.defaultNamespaceId, AdapterType.SOURCE, defaultSource, DeployMode.REMOTE ); + ddlManager.createSource( "hr", Catalog.defaultSource.getAdapterName(), Catalog.defaultNamespaceId, AdapterType.SOURCE, defaultSource, DeployMode.REMOTE ); } diff --git a/plugins/google-sheet-adapter/src/main/java/org/polypheny/db/adapter/googlesheet/GoogleSheetPlugin.java b/plugins/google-sheet-adapter/src/main/java/org/polypheny/db/adapter/googlesheet/GoogleSheetPlugin.java index 9179ae14c8..2d05c2446c 100644 --- a/plugins/google-sheet-adapter/src/main/java/org/polypheny/db/adapter/googlesheet/GoogleSheetPlugin.java +++ b/plugins/google-sheet-adapter/src/main/java/org/polypheny/db/adapter/googlesheet/GoogleSheetPlugin.java @@ -21,6 +21,7 @@ import org.polypheny.db.plugins.PolyPlugin; +@SuppressWarnings("unused") public class GoogleSheetPlugin extends PolyPlugin { diff --git a/plugins/mql-language/src/test/java/org/polypheny/db/mql/mql2alg/MqlMockCatalog.java b/plugins/mql-language/src/test/java/org/polypheny/db/mql/mql2alg/MqlMockCatalog.java index 5eb95b3f4e..b6365568e2 100644 --- a/plugins/mql-language/src/test/java/org/polypheny/db/mql/mql2alg/MqlMockCatalog.java +++ b/plugins/mql-language/src/test/java/org/polypheny/db/mql/mql2alg/MqlMockCatalog.java @@ -35,18 +35,6 @@ public class MqlMockCatalog extends MockCatalog { - /*@Override - public LogicalNamespace getNamespace( long id ) { - return new LogicalNamespace( 1, "private", 0, 0, "tester", NamespaceType.DOCUMENT, true ); - } - - - @Override - public CatalogUser getUser( long id ) { - return new CatalogUser( 0, "name", "name" ); - }*/ - - @Override public void change() { diff --git a/plugins/sql-language/src/main/java/org/polypheny/db/sql/language/ddl/SqlAlterAdaptersAdd.java b/plugins/sql-language/src/main/java/org/polypheny/db/sql/language/ddl/SqlAlterAdaptersAdd.java index 2edef87e97..2afc9e0639 100644 --- a/plugins/sql-language/src/main/java/org/polypheny/db/sql/language/ddl/SqlAlterAdaptersAdd.java +++ b/plugins/sql-language/src/main/java/org/polypheny/db/sql/language/ddl/SqlAlterAdaptersAdd.java @@ -27,6 +27,7 @@ import org.polypheny.db.algebra.constant.Kind; import org.polypheny.db.catalog.Catalog; import org.polypheny.db.catalog.entity.LogicalAdapter.AdapterType; +import org.polypheny.db.catalog.exceptions.GenericRuntimeException; import org.polypheny.db.ddl.DdlManager; import org.polypheny.db.languages.ParserPos; import org.polypheny.db.nodes.Node; @@ -97,13 +98,18 @@ public void execute( Context context, Statement statement, ParsedQueryContext pa @SuppressWarnings("unchecked") Map configMap = new Gson().fromJson( removeQuotationMarks( config.toString() ), Map.class ); - DdlManager.getInstance().createAdapter( - removeQuotationMarks( uniqueName.toString() ), - removeQuotationMarks( adapterName.toString() ), - Catalog.defaultNamespaceId, - AdapterType.valueOf( removeQuotationMarks( adapterType.toString().toUpperCase() ) ), - configMap, - configMap.containsKey( "mode" ) ? DeployMode.valueOf( configMap.get( "mode" ).toUpperCase() ) : DeployMode.EMBEDDED ); + AdapterType type = AdapterType.valueOf( removeQuotationMarks( adapterType.toString().toUpperCase() ) ); + DeployMode mode = configMap.containsKey( "mode" ) ? DeployMode.valueOf( configMap.get( "mode" ).toUpperCase() ) : DeployMode.EMBEDDED; + String uniqueName = removeQuotationMarks( this.uniqueName.toString() ); + String adapterName = removeQuotationMarks( this.adapterName.toString() ); + if ( type == AdapterType.STORE ) { + DdlManager.getInstance().createStore( uniqueName, adapterName, type, configMap, mode ); + } else if ( type == AdapterType.SOURCE ) { + DdlManager.getInstance().createSource( uniqueName, adapterName, Catalog.defaultNamespaceId, type, configMap, mode ); + } else { + log.error( "Unknown adapter type: {}", type ); + throw new GenericRuntimeException( "Unknown adapter type: " + type ); + } } diff --git a/webui/src/main/java/org/polypheny/db/webui/HttpServer.java b/webui/src/main/java/org/polypheny/db/webui/HttpServer.java index 21b7001d05..f290c9bfd3 100644 --- a/webui/src/main/java/org/polypheny/db/webui/HttpServer.java +++ b/webui/src/main/java/org/polypheny/db/webui/HttpServer.java @@ -264,7 +264,7 @@ private void attachRoutes( Javalin webuiServer, Crud crud ) { webuiServer.get( "/getAvailableSources", crud::getAvailableSources ); - webuiServer.post( "/createAdapter", crud::addAdapter ); + webuiServer.post( "/createStore", crud::addAdapter ); webuiServer.post( "/pathAccess", crud::startAccessRequest );