diff options
author | Thomas <> | 2021-03-26 15:42:00 +0100 |
---|---|---|
committer | Thomas <> | 2021-03-26 15:42:00 +0100 |
commit | 935a42e0c046282d1dda8aaf418822e25677c81a (patch) | |
tree | 05d0997caade3a271b6e15bd25190c58b99b346a /pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/ValueResolver.java | |
parent | 8a8d467d6415c5b12262ad18ff7f21f6b07cdcd4 (diff) | |
download | pdf-as-4-935a42e0c046282d1dda8aaf418822e25677c81a.tar.gz pdf-as-4-935a42e0c046282d1dda8aaf418822e25677c81a.tar.bz2 pdf-as-4-935a42e0c046282d1dda8aaf418822e25677c81a.zip |
simple PoC for this task
Diffstat (limited to 'pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/ValueResolver.java')
-rw-r--r-- | pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/ValueResolver.java | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/ValueResolver.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/ValueResolver.java index f7210036..c6cddc9e 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/ValueResolver.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/ValueResolver.java @@ -27,12 +27,17 @@ import at.gv.egiz.pdfas.common.settings.IProfileConstants; import at.gv.egiz.pdfas.common.settings.SignatureProfileSettings; import at.gv.egiz.pdfas.lib.impl.status.ICertificateProvider; import at.gv.egiz.pdfas.lib.impl.status.OperationStatus; + +import org.apache.commons.lang3.RandomStringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.nio.charset.Charset; import java.text.SimpleDateFormat; import java.util.Calendar; +import java.util.Collections; +import java.util.HashMap; +import java.util.Map; import java.util.TimeZone; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -56,13 +61,21 @@ public class ValueResolver implements IProfileConstants, IResolver { private static final Charset UTF_8 = Charset.forName("UTF-8"); - private CertificateResolver certificateResolver; + private IResolver internalResolver; public ValueResolver(ICertificateProvider certProvider, OperationStatus operationStatus) { - certificateResolver = new CertificateResolver( + internalResolver = new CertificateResolver( certProvider.getCertificate(), operationStatus); } + public ValueResolver(OperationStatus operationStatus) { + Map<String, String> test = new HashMap<>(); + test.put("schoolNameRand", RandomStringUtils.randomAlphabetic(5)); + test.put("schoolName", "EGIZ testschule"); + internalResolver = new RequestParameterResolver(test); + + } + public String resolve(String key, String value, SignatureProfileSettings settings) { @@ -104,7 +117,7 @@ public class ValueResolver implements IProfileConstants, IResolver { int idxe = matcher.end(0); result += value.substring(curidx, idx); curidx = idxe; - result += certificateResolver.resolve(key, + result += internalResolver.resolve(key, matcher.group(1), settings); } while (matcher.find()); } else { |