Skip to content

Commit

Permalink
chore: Cleanup persistence layer (#2968)
Browse files Browse the repository at this point in the history
* chore: Cleanup persistence layer

* Fix checkstyle

* Fix test

* Use Json serialization hint
  • Loading branch information
dominikriemer authored Jun 28, 2024
1 parent 0275a60 commit a38a06e
Show file tree
Hide file tree
Showing 56 changed files with 248 additions and 652 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,9 @@

public class DataExplorerSchemaManagement implements IDataExplorerSchemaManagement {

CRUDStorage<String, DataLakeMeasure> dataLakeStorage;
CRUDStorage<DataLakeMeasure> dataLakeStorage;

public DataExplorerSchemaManagement(CRUDStorage<String, DataLakeMeasure> dataLakeStorage) {
public DataExplorerSchemaManagement(CRUDStorage<DataLakeMeasure> dataLakeStorage) {
this.dataLakeStorage = dataLakeStorage;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public class DataExplorerSchemaManagementTest {
public static final String NEW_PROPERTY = "newProperty";
public static final String OLD_PROPERTY = "oldProperty";

private CRUDStorage<String, DataLakeMeasure> dataLakeStorageMock;
private CRUDStorage<DataLakeMeasure> dataLakeStorageMock;

@BeforeEach
public void setUp() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public class FileResolver extends AbstractResolver<FileMetadata> {

@Override
public FileMetadata findDocument(String resourceId) {
return getNoSqlStore().getFileMetadataStorage().getMetadataById(resourceId);
return getNoSqlStore().getFileMetadataStorage().getElementById(resourceId);
}

@Override
Expand All @@ -49,7 +49,7 @@ public ExportItem convert(FileMetadata document) {

@Override
public void writeDocument(String document) throws JsonProcessingException {
getNoSqlStore().getFileMetadataStorage().addFileMetadata(deserializeDocument(document));
getNoSqlStore().getFileMetadataStorage().persist(deserializeDocument(document));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,14 @@
*/
package org.apache.streampipes.model.client.assetdashboard;

import org.apache.streampipes.model.shared.api.Storable;

import com.google.gson.annotations.SerializedName;

import java.util.List;
import java.util.Map;

public class AssetDashboardConfig {
public class AssetDashboardConfig implements Storable {

private @SerializedName("_id") String dashboardId;
private @SerializedName("_rev") String rev;
Expand Down Expand Up @@ -100,4 +102,14 @@ public String getRev() {
public void setRev(String rev) {
this.rev = rev;
}

@Override
public String getElementId() {
return this.dashboardId;
}

@Override
public void setElementId(String elementId) {
this.dashboardId = elementId;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,11 @@
*/
package org.apache.streampipes.model.client.user;

import org.apache.streampipes.model.shared.api.Storable;

import com.google.gson.annotations.SerializedName;

public abstract class AbstractMailToken {
public abstract class AbstractMailToken implements Storable {

protected @SerializedName("_id") String token;
protected @SerializedName("_rev") String rev;
Expand Down Expand Up @@ -49,4 +51,14 @@ public String getUsername() {
public void setUsername(String username) {
this.username = username;
}

@Override
public String getElementId() {
return this.token;
}

@Override
public void setElementId(String elementId) {
this.token = elementId;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
package org.apache.streampipes.model.client.user;

import org.apache.streampipes.model.shared.annotation.TsModel;
import org.apache.streampipes.model.shared.api.Storable;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.google.gson.annotations.SerializedName;
Expand All @@ -26,15 +27,15 @@
import java.util.Set;

@TsModel
public class Group {
public class Group implements Storable {

protected @SerializedName("_id") String groupId;
protected @SerializedName("_rev") String rev;

// This field should be called $type since this is the identifier used in the CouchDB view
@SuppressWarnings("checkstyle:MemberName")
@SerializedName("$type")
@JsonIgnore
private String $type = "group";
private String type = "group";

private String groupName;

Expand All @@ -60,6 +61,16 @@ public void setRev(String rev) {
this.rev = rev;
}

@Override
public String getElementId() {
return this.groupId;
}

@Override
public void setElementId(String elementId) {
this.groupId = elementId;
}

public String getGroupName() {
return groupName;
}
Expand All @@ -76,13 +87,11 @@ public void setRoles(Set<Role> roles) {
this.roles = roles;
}

@SuppressWarnings("checkstyle:MethodName")
public String get$type() {
return $type;
public String getType() {
return type;
}

@SuppressWarnings({"checkstyle:MethodName", "checkstyle:ParameterName"})
public void set$type(String $type) {
this.$type = $type;
public void setType(String type) {
this.type = type;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,12 @@
package org.apache.streampipes.model.client.user;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.google.gson.annotations.SerializedName;

public class PasswordRecoveryToken extends AbstractMailToken {

// This field should be called $type since this is the identifier used in the CouchDB view
@SerializedName("$type")
@JsonIgnore
private String type = "password-recovery";

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,12 @@
package org.apache.streampipes.model.client.user;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.google.gson.annotations.SerializedName;

public class UserActivationToken extends AbstractMailToken {

// This field should be called $type since this is the identifier used in the CouchDB view
@SerializedName("$type")
@JsonIgnore
private String type = "user-activation";

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
*
*/

package org.apache.streampipes.model.api;
package org.apache.streampipes.model.shared.api;

public interface Storable {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@


import org.apache.streampipes.model.SpDataStream;
import org.apache.streampipes.model.api.Storable;
import org.apache.streampipes.model.extensions.ExtensionAssetType;
import org.apache.streampipes.model.extensions.ExtensionItemDescription;
import org.apache.streampipes.model.shared.annotation.TsModel;
import org.apache.streampipes.model.shared.api.Storable;
import org.apache.streampipes.model.util.ServiceDefinitionUtil;

import com.fasterxml.jackson.annotation.JsonAlias;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package org.apache.streampipes.model.dashboard;

import org.apache.streampipes.model.api.Storable;
import org.apache.streampipes.model.datalake.DataExplorerWidgetModel;
import org.apache.streampipes.model.shared.api.Storable;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.fasterxml.jackson.annotation.JsonSubTypes;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package org.apache.streampipes.model.dashboard;

import org.apache.streampipes.model.api.Storable;
import org.apache.streampipes.model.shared.annotation.TsModel;
import org.apache.streampipes.model.shared.api.Storable;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.google.gson.annotations.SerializedName;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@

package org.apache.streampipes.model.datalake;

import org.apache.streampipes.model.api.Storable;
import org.apache.streampipes.model.schema.EventSchema;
import org.apache.streampipes.model.shared.annotation.TsIgnore;
import org.apache.streampipes.model.shared.annotation.TsModel;
import org.apache.streampipes.model.shared.api.Storable;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.fasterxml.jackson.annotation.JsonIgnore;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,14 @@
package org.apache.streampipes.model.extensions.configuration;

import org.apache.streampipes.model.shared.annotation.TsModel;
import org.apache.streampipes.model.shared.api.Storable;

import com.google.gson.annotations.SerializedName;

import java.util.List;

@TsModel
public class SpServiceConfiguration {
public class SpServiceConfiguration implements Storable {

protected @SerializedName("_rev") String rev;
private @SerializedName("_id") String serviceGroup;
Expand Down Expand Up @@ -75,4 +76,14 @@ public String getRev() {
public void setRev(String rev) {
this.rev = rev;
}

@Override
public String getElementId() {
return this.serviceGroup;
}

@Override
public void setElementId(String elementId) {
this.serviceGroup = elementId;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,14 @@

import org.apache.streampipes.model.extensions.ExtensionItemDescription;
import org.apache.streampipes.model.shared.annotation.TsModel;
import org.apache.streampipes.model.shared.api.Storable;

import com.google.gson.annotations.SerializedName;

import java.util.Set;

@TsModel
public class SpServiceRegistration {
public class SpServiceRegistration implements Storable {

private String svcType;
private String svcGroup;
Expand Down Expand Up @@ -130,6 +131,16 @@ public void setRev(String rev) {
this.rev = rev;
}

@Override
public String getElementId() {
return this.svcId;
}

@Override
public void setElementId(String elementId) {
this.svcId = elementId;
}

public String getScheme() {
return scheme;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,12 @@
package org.apache.streampipes.model.file;

import org.apache.streampipes.model.shared.annotation.TsModel;
import org.apache.streampipes.model.shared.api.Storable;

import com.google.gson.annotations.SerializedName;

@TsModel
public class FileMetadata {
public class FileMetadata implements Storable {

private @SerializedName("_id") String fileId;

Expand Down Expand Up @@ -52,6 +53,16 @@ public void setRev(String rev) {
this.rev = rev;
}

@Override
public String getElementId() {
return this.fileId;
}

@Override
public void setElementId(String elementId) {
this.fileId = elementId;
}

public String getFilename() {
return filename;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
*/
package org.apache.streampipes.model.template;

import org.apache.streampipes.model.api.Storable;
import org.apache.streampipes.model.shared.annotation.TsModel;
import org.apache.streampipes.model.shared.api.Storable;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.google.gson.annotations.SerializedName;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
import org.apache.streampipes.commons.file.FileHasher;
import org.apache.streampipes.model.file.FileMetadata;
import org.apache.streampipes.sdk.helpers.Filetypes;
import org.apache.streampipes.storage.api.IFileMetadataStorage;
import org.apache.streampipes.storage.api.CRUDStorage;
import org.apache.streampipes.storage.management.StorageDispatcher;

import org.apache.commons.io.input.BOMInputStream;
Expand All @@ -34,11 +34,11 @@

public class FileManager {

private final IFileMetadataStorage fileMetadataStorage;
private final CRUDStorage<FileMetadata> fileMetadataStorage;
private final FileHandler fileHandler;
private final FileHasher fileHasher;

public FileManager(IFileMetadataStorage fileMetadataStorage,
public FileManager(CRUDStorage<FileMetadata> fileMetadataStorage,
FileHandler fileHandler,
FileHasher fileHasher) {
this.fileMetadataStorage = fileMetadataStorage;
Expand All @@ -60,7 +60,7 @@ public List<FileMetadata> getAllFiles() {
}

public List<FileMetadata> getAllFiles(String filetypes) {
List<FileMetadata> allFiles = fileMetadataStorage.getAllFileMetadataDescriptions();
List<FileMetadata> allFiles = fileMetadataStorage.findAll();
return filetypes != null ? filterFiletypes(allFiles, filetypes) : allFiles;
}

Expand Down Expand Up @@ -94,10 +94,10 @@ public FileMetadata storeFile(String user,


public void deleteFile(String id) {
var fileMetadata = fileMetadataStorage.getMetadataById(id);
var fileMetadata = fileMetadataStorage.getElementById(id);
if (fileMetadata != null) {
fileHandler.deleteFile(fileMetadata.getFilename());
fileMetadataStorage.deleteFileMetadata(id);
fileMetadataStorage.deleteElementById(id);
}
}

Expand Down Expand Up @@ -168,7 +168,7 @@ private FileMetadata makeFileMetadata(String user,
}

private void storeFileMetadata(FileMetadata fileMetadata) {
fileMetadataStorage.addFileMetadata(fileMetadata);
fileMetadataStorage.persist(fileMetadata);
}


Expand Down
Loading

0 comments on commit a38a06e

Please sign in to comment.