Skip to content
Snippets Groups Projects
Commit 2ddf7ba0 authored by OZGCloud's avatar OZGCloud
Browse files

OZG-3626 add projection class to nativ build

parent 957fcaaa
Branches
Tags
No related merge requests found
......@@ -90,6 +90,9 @@ pipeline {
}
stage ('OWASP Dependency-Check Vulnerabilities') {
when {
branch 'master'
}
steps {
dependencyCheck additionalArguments: '''
-o "./"
......
/*
* Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* Lizenziert unter der EUPL, Version 1.2 oder - sobald
* diese von der Europäischen Kommission genehmigt wurden -
* Folgeversionen der EUPL ("Lizenz");
* Sie dürfen dieses Werk ausschließlich gemäß
* dieser Lizenz nutzen.
* Eine Kopie der Lizenz finden Sie hier:
*
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
*
* Sofern nicht durch anwendbare Rechtsvorschriften
* gefordert oder in schriftlicher Form vereinbart, wird
* die unter der Lizenz verbreitete Software "so wie sie
* ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
* ausdrücklich oder stillschweigend - verbreitet.
* Die sprachspezifischen Genehmigungen und Beschränkungen
* unter der Lizenz sind dem Lizenztext zu entnehmen.
*/
package de.itvsh.kop.user;
import org.bson.codecs.pojo.annotations.BsonIgnore;
import org.bson.types.ObjectId;
import io.quarkus.mongodb.panache.common.ProjectionFor;
import lombok.Getter;
import lombok.Setter;
@ProjectionFor(User.class)
@Setter
@Getter
public class UserIdProjection {
private ObjectId id;
@BsonIgnore
public String getAsString() {
return id.toHexString();
}
}
......@@ -35,10 +35,7 @@ import org.bson.types.ObjectId;
import de.itvsh.kop.common.logging.KopLogging;
import de.itvsh.kop.user.common.errorhandling.ResourceNotFoundException;
import io.quarkus.mongodb.panache.PanacheMongoRepository;
import io.quarkus.mongodb.panache.common.ProjectionFor;
import io.quarkus.panache.common.Parameters;
import lombok.Getter;
import lombok.Setter;
@ApplicationScoped
@KopLogging
......@@ -126,18 +123,11 @@ class UserRepository implements PanacheMongoRepository<User> {
}
public Stream<String> findAllDeletedUserIds() {
return find(DELETED_FIELD, true).project(UserIdProjection.class).stream().map(UserIdProjection::getId).map(ObjectId::toHexString);
return find(DELETED_FIELD, true).project(UserIdProjection.class).stream().map(UserIdProjection::getAsString);
}
public void deleteById(String id) {
deleteById(new ObjectId(id));
}
@ProjectionFor(User.class)
@Setter
@Getter
public static class UserIdProjection {
private ObjectId id;
}
}
\ No newline at end of file
......@@ -42,7 +42,8 @@ import io.quarkus.runtime.annotations.RegisterForReflection;
org.jboss.resteasy.plugins.providers.multipart.MultipartFormAnnotationWriter.class,
org.jboss.resteasy.plugins.providers.multipart.MimeMultipartProvider.class,
org.jboss.resteasy.plugins.providers.multipart.XopWithMultipartRelatedReader.class,
org.jboss.resteasy.plugins.providers.multipart.XopWithMultipartRelatedWriter.class
org.jboss.resteasy.plugins.providers.multipart.XopWithMultipartRelatedWriter.class,
de.itvsh.kop.user.UserIdProjection.class
})
public class NativeConfig {
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment