Skip to content

Commit

Permalink
generate pretty container names
Browse files Browse the repository at this point in the history
  • Loading branch information
celuchmarek committed Apr 13, 2024
1 parent 4ba8aaa commit d9bc029
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions src/main/java/digital/slovensko/avm/core/SigningJob.java
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,28 @@ public SignedDocument signDocument(DataToSignStructure dataToSignStructure, Stri
throw new DataToSignMismatchException();

var doc = service.signDocument(document, signatureParameters, signatureValue);
doc.setName(generatePrettyName(doc.getName(), document.getName()));


return new SignedDocument(doc, token);
}

private static String generatePrettyName(String newName, String originalName) {
var lastDotIndex = originalName.lastIndexOf('.');
var nameWithoutExtension = lastDotIndex == -1 ? originalName : originalName.substring(0, lastDotIndex);
var extension = generatePrettyExtension(newName.substring(newName.lastIndexOf('.') + 1));

return nameWithoutExtension + "_signed." + extension;
}

private static String generatePrettyExtension(String extension) {
return switch (extension) {
case "scs" -> "asics";
case "sce" -> "asice";
default -> extension;
};
}

private static AbstractSignatureService getServiceForSignatureLevel(SignatureForm signatureForm, ASiCContainerType container, CertificateVerifier certificateVerifier) {
return switch (signatureForm) {
case XAdES -> container != null ? new ASiCWithXAdESService(certificateVerifier) : new XAdESService(certificateVerifier);
Expand Down

0 comments on commit d9bc029

Please sign in to comment.