This is an automated email from the ASF dual-hosted git repository. riemer pushed a commit to branch no-direct-access-couchdb-manager in repository https://gitbox.apache.org/repos/asf/streampipes.git
commit e1f9935c3c8d4e43f9d30ae6c6b59bd6ad61dd97 Author: Dominik Riemer <[email protected]> AuthorDate: Mon Feb 9 21:27:07 2026 +0100 refactor: Remove direct references to couchdb manager --- .../management/CompactAdapterManagement.java | 4 +-- .../management/DescriptionManagement.java | 5 ++-- .../influx/DataExplorerQueryManagementInflux.java | 2 ++ .../dataexplorer/DataExplorerSchemaManagement.java | 3 +- .../dataexplorer/QueryResultProvider.java | 4 +++ .../dataexplorer/StreamedQueryResultProvider.java | 7 +++-- .../dataexplorer/utils/DataExplorerUtils.java | 33 ---------------------- .../resource/management/UserResourceManager.java | 3 +- .../rest/impl/datalake/DataLakeDataWriter.java | 4 +-- .../CertificateExpiryEmailScheduler.java | 5 ++-- .../svcdiscovery/SpServiceDiscovery.java | 3 +- .../svcdiscovery/SpServiceDiscoveryCore.java | 5 ++-- .../storage/couchdb/CouchDbStorageManager.java | 19 +++++-------- .../storage/couchdb/impl/AssetStorageImpl.java | 32 --------------------- .../storage/couchdb/impl/DefaultCrudStorage.java | 2 +- .../storage/couchdb/impl/PrivilegeStorageImpl.java | 29 ------------------- .../storage/couchdb/impl/RoleStorageImpl.java | 30 -------------------- .../storage/management/StorageDispatcher.java | 2 +- 18 files changed, 33 insertions(+), 159 deletions(-) diff --git a/streampipes-connect-management/src/main/java/org/apache/streampipes/connect/management/management/CompactAdapterManagement.java b/streampipes-connect-management/src/main/java/org/apache/streampipes/connect/management/management/CompactAdapterManagement.java index 6e49240c0c..11c06ec341 100644 --- a/streampipes-connect-management/src/main/java/org/apache/streampipes/connect/management/management/CompactAdapterManagement.java +++ b/streampipes-connect-management/src/main/java/org/apache/streampipes/connect/management/management/CompactAdapterManagement.java @@ -23,7 +23,7 @@ import org.apache.streampipes.connect.management.compact.generator.CompactAdapte import org.apache.streampipes.model.connect.adapter.AdapterDescription; import org.apache.streampipes.model.connect.adapter.compact.CompactAdapter; import org.apache.streampipes.storage.api.IAdapterStorage; -import org.apache.streampipes.storage.couchdb.CouchDbStorageManager; +import org.apache.streampipes.storage.management.StorageDispatcher; import java.util.List; @@ -75,7 +75,7 @@ public class CompactAdapterManagement { } private AdapterDescription findAdapterDescription(String appId) { - IAdapterStorage adapterStorage = CouchDbStorageManager.INSTANCE.getAdapterDescriptionStorage(); + IAdapterStorage adapterStorage = StorageDispatcher.INSTANCE.getNoSqlStore().getAdapterDescriptionStorage(); return adapterStorage.findAll() .stream() .filter(desc -> desc.getAppId() diff --git a/streampipes-connect-management/src/main/java/org/apache/streampipes/connect/management/management/DescriptionManagement.java b/streampipes-connect-management/src/main/java/org/apache/streampipes/connect/management/management/DescriptionManagement.java index 49306186b3..d43eed3d0e 100644 --- a/streampipes-connect-management/src/main/java/org/apache/streampipes/connect/management/management/DescriptionManagement.java +++ b/streampipes-connect-management/src/main/java/org/apache/streampipes/connect/management/management/DescriptionManagement.java @@ -22,7 +22,6 @@ import org.apache.streampipes.commons.exceptions.SpRuntimeException; import org.apache.streampipes.commons.exceptions.connect.AdapterException; import org.apache.streampipes.model.connect.adapter.AdapterDescription; import org.apache.streampipes.storage.api.IAdapterStorage; -import org.apache.streampipes.storage.couchdb.CouchDbStorageManager; import org.apache.streampipes.storage.management.StorageDispatcher; import java.util.List; @@ -31,7 +30,7 @@ import java.util.Optional; public class DescriptionManagement { public List<AdapterDescription> getAdapters() { - IAdapterStorage adapterStorage = CouchDbStorageManager.INSTANCE.getAdapterDescriptionStorage(); + IAdapterStorage adapterStorage = StorageDispatcher.INSTANCE.getNoSqlStore().getAdapterDescriptionStorage(); return adapterStorage.findAll(); } @@ -42,7 +41,7 @@ public class DescriptionManagement { } public void deleteAdapterDescription(String id) throws SpRuntimeException { - var adapterStorage = CouchDbStorageManager.INSTANCE.getAdapterDescriptionStorage(); + var adapterStorage = StorageDispatcher.INSTANCE.getNoSqlStore().getAdapterDescriptionStorage(); var adapter = adapterStorage.getElementById(id); if (!isAdapterUsed(adapter)) { adapterStorage.deleteElementById(id); diff --git a/streampipes-data-explorer-influx/src/main/java/org/apache/streampipes/dataexplorer/influx/DataExplorerQueryManagementInflux.java b/streampipes-data-explorer-influx/src/main/java/org/apache/streampipes/dataexplorer/influx/DataExplorerQueryManagementInflux.java index 01129f1ec2..b6bf82e659 100644 --- a/streampipes-data-explorer-influx/src/main/java/org/apache/streampipes/dataexplorer/influx/DataExplorerQueryManagementInflux.java +++ b/streampipes-data-explorer-influx/src/main/java/org/apache/streampipes/dataexplorer/influx/DataExplorerQueryManagementInflux.java @@ -50,6 +50,7 @@ public class DataExplorerQueryManagementInflux implements IDataExplorerQueryMana return new QueryResultProvider(queryParams, this, new DataExplorerInfluxQueryExecutor(), + dataExplorerSchemaManagement, ignoreMissingData ).getData(); } @@ -63,6 +64,7 @@ public class DataExplorerQueryManagementInflux implements IDataExplorerQueryMana new StreamedQueryResultProvider(params, format, this, new DataExplorerInfluxQueryExecutor(), + dataExplorerSchemaManagement, ignoreMissingValues ).getDataAsStream(outputStream); } diff --git a/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/DataExplorerSchemaManagement.java b/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/DataExplorerSchemaManagement.java index c9a5c9db78..e9de8e549b 100644 --- a/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/DataExplorerSchemaManagement.java +++ b/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/DataExplorerSchemaManagement.java @@ -19,7 +19,6 @@ package org.apache.streampipes.dataexplorer; import org.apache.streampipes.dataexplorer.api.IDataExplorerSchemaManagement; -import org.apache.streampipes.dataexplorer.utils.DataExplorerUtils; import org.apache.streampipes.manager.permission.DataLakePermissionManager; import org.apache.streampipes.model.datalake.DataLakeMeasure; import org.apache.streampipes.model.datalake.DataLakeMeasureSchemaUpdateStrategy; @@ -47,7 +46,7 @@ public class DataExplorerSchemaManagement implements IDataExplorerSchemaManageme @Override public List<DataLakeMeasure> getAllMeasurements() { - return DataExplorerUtils.getInfos(); + return dataLakeStorage.findAll(); } @Override diff --git a/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/QueryResultProvider.java b/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/QueryResultProvider.java index eeeadec24f..a05fb871cd 100644 --- a/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/QueryResultProvider.java +++ b/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/QueryResultProvider.java @@ -19,6 +19,7 @@ package org.apache.streampipes.dataexplorer; import org.apache.streampipes.dataexplorer.api.IDataExplorerQueryManagement; +import org.apache.streampipes.dataexplorer.api.IDataExplorerSchemaManagement; import org.apache.streampipes.dataexplorer.param.ProvidedRestQueryParamConverter; import org.apache.streampipes.dataexplorer.param.SelectQueryParams; import org.apache.streampipes.dataexplorer.query.DataExplorerQueryExecutor; @@ -34,17 +35,20 @@ public class QueryResultProvider { public static final String FOR_ID_KEY = "forId"; protected final boolean ignoreMissingData; protected final IDataExplorerQueryManagement dataExplorerQueryManagement; + protected final IDataExplorerSchemaManagement schemaManagement; protected final DataExplorerQueryExecutor<?, ?> queryExecutor; protected ProvidedRestQueryParams queryParams; public QueryResultProvider(ProvidedRestQueryParams queryParams, IDataExplorerQueryManagement dataExplorerQueryManagement, DataExplorerQueryExecutor<?, ?> queryExecutor, + IDataExplorerSchemaManagement schemaManagement, boolean ignoreMissingData) { this.queryParams = queryParams; this.ignoreMissingData = ignoreMissingData; this.dataExplorerQueryManagement = dataExplorerQueryManagement; this.queryExecutor = queryExecutor; + this.schemaManagement = schemaManagement; } public SpQueryResult getData() { diff --git a/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/StreamedQueryResultProvider.java b/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/StreamedQueryResultProvider.java index 936fc093d4..24cc28d6ea 100644 --- a/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/StreamedQueryResultProvider.java +++ b/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/StreamedQueryResultProvider.java @@ -19,10 +19,10 @@ package org.apache.streampipes.dataexplorer; import org.apache.streampipes.dataexplorer.api.IDataExplorerQueryManagement; +import org.apache.streampipes.dataexplorer.api.IDataExplorerSchemaManagement; import org.apache.streampipes.dataexplorer.export.ConfiguredOutputWriter; import org.apache.streampipes.dataexplorer.export.OutputFormat; import org.apache.streampipes.dataexplorer.query.DataExplorerQueryExecutor; -import org.apache.streampipes.dataexplorer.utils.DataExplorerUtils; import org.apache.streampipes.model.datalake.DataLakeMeasure; import org.apache.streampipes.model.datalake.SpQueryResult; import org.apache.streampipes.model.datalake.param.ProvidedRestQueryParams; @@ -44,8 +44,9 @@ public class StreamedQueryResultProvider extends QueryResultProvider { OutputFormat format, IDataExplorerQueryManagement dataExplorerQueryManagement, DataExplorerQueryExecutor<?, ?> queryExecutor, + IDataExplorerSchemaManagement schemaManagement, boolean ignoreMissingValues) { - super(params, dataExplorerQueryManagement, queryExecutor, ignoreMissingValues); + super(params, dataExplorerQueryManagement, queryExecutor, schemaManagement, ignoreMissingValues); this.format = format; } @@ -97,7 +98,7 @@ public class StreamedQueryResultProvider extends QueryResultProvider { } private Optional<DataLakeMeasure> findByMeasurementName(String measurementName) { - return DataExplorerUtils.getInfos() + return schemaManagement.getAllMeasurements() .stream() .filter(measurement -> measurement.getMeasureName().equals(measurementName)) .findFirst(); diff --git a/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/utils/DataExplorerUtils.java b/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/utils/DataExplorerUtils.java deleted file mode 100644 index b9c5942fd9..0000000000 --- a/streampipes-data-explorer/src/main/java/org/apache/streampipes/dataexplorer/utils/DataExplorerUtils.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ -package org.apache.streampipes.dataexplorer.utils; - -import org.apache.streampipes.model.datalake.DataLakeMeasure; -import org.apache.streampipes.storage.management.StorageDispatcher; - -import java.util.List; - -public class DataExplorerUtils { - - public static List<DataLakeMeasure> getInfos() { - return StorageDispatcher.INSTANCE - .getNoSqlStore() - .getDataLakeStorage() - .findAll(); - } -} diff --git a/streampipes-resource-management/src/main/java/org/apache/streampipes/resource/management/UserResourceManager.java b/streampipes-resource-management/src/main/java/org/apache/streampipes/resource/management/UserResourceManager.java index 343ecf0b3c..8de0292491 100644 --- a/streampipes-resource-management/src/main/java/org/apache/streampipes/resource/management/UserResourceManager.java +++ b/streampipes-resource-management/src/main/java/org/apache/streampipes/resource/management/UserResourceManager.java @@ -32,7 +32,6 @@ import org.apache.streampipes.model.client.user.UserActivationToken; import org.apache.streampipes.model.client.user.UserRegistrationData; import org.apache.streampipes.storage.api.CRUDStorage; import org.apache.streampipes.storage.api.IUserStorage; -import org.apache.streampipes.storage.couchdb.CouchDbStorageManager; import org.apache.streampipes.storage.management.StorageDispatcher; import org.apache.streampipes.user.management.util.PasswordUtil; import org.apache.streampipes.user.management.util.TokenUtil; @@ -78,7 +77,7 @@ public class UserResourceManager extends AbstractResourceManager<IUserStorage> { } public Principal getAdminUser() { - return CouchDbStorageManager.INSTANCE + return StorageDispatcher.INSTANCE.getNoSqlStore() .getUserStorageAPI() .getAllUserAccounts() .stream() diff --git a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/datalake/DataLakeDataWriter.java b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/datalake/DataLakeDataWriter.java index 0d3549f8a2..5bbdaa8bd6 100644 --- a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/datalake/DataLakeDataWriter.java +++ b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/datalake/DataLakeDataWriter.java @@ -27,7 +27,7 @@ import org.apache.streampipes.model.datalake.DataSeries; import org.apache.streampipes.model.datalake.SpQueryResult; import org.apache.streampipes.model.runtime.Event; import org.apache.streampipes.model.runtime.EventFactory; -import org.apache.streampipes.storage.couchdb.CouchDbStorageManager; +import org.apache.streampipes.storage.management.StorageDispatcher; import java.util.ArrayList; import java.util.HashSet; @@ -45,7 +45,7 @@ public class DataLakeDataWriter { } public void writeData(String measureName, SpQueryResult queryResult) { - var measure = CouchDbStorageManager.INSTANCE.getDataLakeStorage().getByMeasureName(measureName); + var measure = StorageDispatcher.INSTANCE.getNoSqlStore().getDataLakeStorage().getByMeasureName(measureName); if (measure == null) { throw new SpRuntimeException("Measure \"" + measureName + "\" not found"); } diff --git a/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/scheduler/certificates/CertificateExpiryEmailScheduler.java b/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/scheduler/certificates/CertificateExpiryEmailScheduler.java index 42ad863df0..eb4dd58fc2 100644 --- a/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/scheduler/certificates/CertificateExpiryEmailScheduler.java +++ b/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/scheduler/certificates/CertificateExpiryEmailScheduler.java @@ -25,7 +25,7 @@ import org.apache.streampipes.model.client.user.Principal; import org.apache.streampipes.model.mail.SpEmail; import org.apache.streampipes.model.opcua.Certificate; import org.apache.streampipes.storage.api.IUserStorage; -import org.apache.streampipes.storage.couchdb.CouchDbStorageManager; +import org.apache.streampipes.storage.management.StorageDispatcher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -141,8 +141,7 @@ public class CertificateExpiryEmailScheduler implements SchedulingConfigurer { } private IUserStorage getUserStorageAPI() { - return CouchDbStorageManager.INSTANCE - .getUserStorageAPI(); + return StorageDispatcher.INSTANCE.getNoSqlStore().getUserStorageAPI(); } } diff --git a/streampipes-service-discovery/src/main/java/org/apache/streampipes/svcdiscovery/SpServiceDiscovery.java b/streampipes-service-discovery/src/main/java/org/apache/streampipes/svcdiscovery/SpServiceDiscovery.java index ff2d96aa03..8f054e9063 100644 --- a/streampipes-service-discovery/src/main/java/org/apache/streampipes/svcdiscovery/SpServiceDiscovery.java +++ b/streampipes-service-discovery/src/main/java/org/apache/streampipes/svcdiscovery/SpServiceDiscovery.java @@ -17,12 +17,13 @@ */ package org.apache.streampipes.svcdiscovery; +import org.apache.streampipes.storage.management.StorageDispatcher; import org.apache.streampipes.svcdiscovery.api.ISpServiceDiscovery; public class SpServiceDiscovery { public static ISpServiceDiscovery getServiceDiscovery() { - return new SpServiceDiscoveryCore(); + return new SpServiceDiscoveryCore(StorageDispatcher.INSTANCE.getNoSqlStore().getExtensionsServiceStorage()); } } diff --git a/streampipes-service-discovery/src/main/java/org/apache/streampipes/svcdiscovery/SpServiceDiscoveryCore.java b/streampipes-service-discovery/src/main/java/org/apache/streampipes/svcdiscovery/SpServiceDiscoveryCore.java index 26deec5803..651be518bd 100644 --- a/streampipes-service-discovery/src/main/java/org/apache/streampipes/svcdiscovery/SpServiceDiscoveryCore.java +++ b/streampipes-service-discovery/src/main/java/org/apache/streampipes/svcdiscovery/SpServiceDiscoveryCore.java @@ -23,7 +23,6 @@ import org.apache.streampipes.model.extensions.svcdiscovery.SpServiceStatus; import org.apache.streampipes.model.extensions.svcdiscovery.SpServiceTag; import org.apache.streampipes.model.extensions.svcdiscovery.SpServiceTagPrefix; import org.apache.streampipes.storage.api.CRUDStorage; -import org.apache.streampipes.storage.management.StorageDispatcher; import org.apache.streampipes.svcdiscovery.api.ISpServiceDiscovery; import org.slf4j.Logger; @@ -42,8 +41,8 @@ public class SpServiceDiscoveryCore implements ISpServiceDiscovery { private final CRUDStorage<SpServiceRegistration> serviceStorage; - public SpServiceDiscoveryCore() { - this.serviceStorage = StorageDispatcher.INSTANCE.getNoSqlStore().getExtensionsServiceStorage(); + public SpServiceDiscoveryCore(CRUDStorage<SpServiceRegistration> serviceStorage) { + this.serviceStorage = serviceStorage; } @Override diff --git a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/CouchDbStorageManager.java b/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/CouchDbStorageManager.java index e7dd4cb98f..b8d8a05eb4 100644 --- a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/CouchDbStorageManager.java +++ b/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/CouchDbStorageManager.java @@ -51,7 +51,6 @@ import org.apache.streampipes.storage.api.ISpCoreConfigurationStorage; import org.apache.streampipes.storage.api.IUserStorage; import org.apache.streampipes.storage.couchdb.impl.AdapterDescriptionStorageImpl; import org.apache.streampipes.storage.couchdb.impl.AdapterInstanceStorageImpl; -import org.apache.streampipes.storage.couchdb.impl.AssetStorageImpl; import org.apache.streampipes.storage.couchdb.impl.CoreConfigurationStorageImpl; import org.apache.streampipes.storage.couchdb.impl.DataLakeMeasureStorage; import org.apache.streampipes.storage.couchdb.impl.DataProcessorStorageImpl; @@ -67,14 +66,10 @@ import org.apache.streampipes.storage.couchdb.impl.PipelineCanvasMetadataStorage import org.apache.streampipes.storage.couchdb.impl.PipelineElementDescriptionStorageImpl; import org.apache.streampipes.storage.couchdb.impl.PipelineElementTemplateStorageImpl; import org.apache.streampipes.storage.couchdb.impl.PipelineStorageImpl; -import org.apache.streampipes.storage.couchdb.impl.PrivilegeStorageImpl; -import org.apache.streampipes.storage.couchdb.impl.RoleStorageImpl; import org.apache.streampipes.storage.couchdb.impl.UserStorage; import org.apache.streampipes.storage.couchdb.utils.Utils; -public enum CouchDbStorageManager implements INoSqlStorage { - - INSTANCE; +public class CouchDbStorageManager implements INoSqlStorage { @Override public IAdapterStorage getAdapterDescriptionStorage() { @@ -228,12 +223,12 @@ public enum CouchDbStorageManager implements INoSqlStorage { @Override public CRUDStorage<Role> getRoleStorage() { - return new RoleStorageImpl(); + return new DefaultViewCrudStorage<>(Utils::getCouchDbUserClient, Role.class, "users/role"); } @Override public CRUDStorage<Privilege> getPrivilegeStorage() { - return new PrivilegeStorageImpl(); + return new DefaultViewCrudStorage<>(Utils::getCouchDbUserClient, Privilege.class, "users/privilege"); } @Override @@ -254,8 +249,10 @@ public enum CouchDbStorageManager implements INoSqlStorage { @Override public CRUDStorage<SpAssetModel> getAssetStorage() { - return new AssetStorageImpl( - () -> Utils.getCouchDbGsonClient("genericstorage") + return new DefaultViewCrudStorage<>( + () -> Utils.getCouchDbGsonClient("genericstorage"), + SpAssetModel.class, + "assets/all-assets" ); } @@ -267,6 +264,4 @@ public enum CouchDbStorageManager implements INoSqlStorage { "transformation-scripts/all-transformations" ); } - - } diff --git a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/AssetStorageImpl.java b/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/AssetStorageImpl.java deleted file mode 100644 index 3b1f39d68f..0000000000 --- a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/AssetStorageImpl.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -package org.apache.streampipes.storage.couchdb.impl; - -import org.apache.streampipes.model.assets.SpAssetModel; - -import org.lightcouch.CouchDbClient; - -import java.util.function.Supplier; - -public class AssetStorageImpl extends DefaultViewCrudStorage<SpAssetModel> { - - public AssetStorageImpl(Supplier<CouchDbClient> clientSupplier) { - super(clientSupplier, SpAssetModel.class, "assets/all-assets"); - } -} diff --git a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/DefaultCrudStorage.java b/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/DefaultCrudStorage.java index bb4d06352b..2275c52679 100644 --- a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/DefaultCrudStorage.java +++ b/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/DefaultCrudStorage.java @@ -53,7 +53,7 @@ public class DefaultCrudStorage<T extends Storable> extends AbstractDao<T> imple @Override public void deleteElement(T element) { try { - CouchDbStorageManager.INSTANCE.getGenericStorage().deleteAssetLinkToResource(element.getElementId()); + new CouchDbStorageManager().getGenericStorage().deleteAssetLinkToResource(element.getElementId()); } catch (IOException e) { LOG.error("Asset link for " + element.getElementId() + " could not be deleted."); } diff --git a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/PrivilegeStorageImpl.java b/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/PrivilegeStorageImpl.java deleted file mode 100644 index 5476220f02..0000000000 --- a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/PrivilegeStorageImpl.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -package org.apache.streampipes.storage.couchdb.impl; - -import org.apache.streampipes.model.client.user.Privilege; -import org.apache.streampipes.storage.couchdb.utils.Utils; - -public class PrivilegeStorageImpl extends DefaultViewCrudStorage<Privilege> { - - public PrivilegeStorageImpl() { - super(Utils::getCouchDbUserClient, Privilege.class, "users/privilege"); - } -} diff --git a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/RoleStorageImpl.java b/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/RoleStorageImpl.java deleted file mode 100644 index d24f5f36f4..0000000000 --- a/streampipes-storage-couchdb/src/main/java/org/apache/streampipes/storage/couchdb/impl/RoleStorageImpl.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -package org.apache.streampipes.storage.couchdb.impl; - -import org.apache.streampipes.model.client.user.Role; -import org.apache.streampipes.storage.couchdb.utils.Utils; - -public class RoleStorageImpl extends DefaultViewCrudStorage<Role> { - - public RoleStorageImpl() { - super(Utils::getCouchDbUserClient, Role.class, "users/role"); - } - -} diff --git a/streampipes-storage-management/src/main/java/org/apache/streampipes/storage/management/StorageDispatcher.java b/streampipes-storage-management/src/main/java/org/apache/streampipes/storage/management/StorageDispatcher.java index 1b6d57991b..8f45d03602 100644 --- a/streampipes-storage-management/src/main/java/org/apache/streampipes/storage/management/StorageDispatcher.java +++ b/streampipes-storage-management/src/main/java/org/apache/streampipes/storage/management/StorageDispatcher.java @@ -25,7 +25,7 @@ public enum StorageDispatcher { INSTANCE; public INoSqlStorage getNoSqlStore() { - return CouchDbStorageManager.INSTANCE; + return new CouchDbStorageManager(); } }
