diff options
Diffstat (limited to 'pdf-as-lib/src/main/java/at')
42 files changed, 3947 insertions, 35 deletions
diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/api/sign/IPlainSigner.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/api/sign/IPlainSigner.java index 6155a245..0ad40cc4 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/api/sign/IPlainSigner.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/api/sign/IPlainSigner.java @@ -7,9 +7,11 @@ import java.io.IOException; import org.apache.pdfbox.cos.COSName; import org.apache.pdfbox.exceptions.SignatureException; +import at.gv.egiz.pdfas.common.exceptions.PdfAsException; + public interface IPlainSigner { - public X509Certificate getCertificate(); - public byte[] sign(byte[] input) throws SignatureException, IOException; + public X509Certificate getCertificate() throws PdfAsException; + public byte[] sign(byte[] input, int[] byteRange) throws PdfAsException; public String getPDFSubFilter(); public String getPDFFilter(); } diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/PdfAsImpl.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/PdfAsImpl.java index 6f74303c..75408567 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/PdfAsImpl.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/PdfAsImpl.java @@ -23,6 +23,7 @@ import at.gv.egiz.pdfas.common.exceptions.PdfAsSettingsException; import at.gv.egiz.pdfas.common.settings.ISettings; import at.gv.egiz.pdfas.common.settings.Settings; import at.gv.egiz.pdfas.common.settings.SignatureProfileSettings; +import at.gv.egiz.pdfas.common.utils.PDFUtils; import at.gv.egiz.pdfas.lib.api.Configuration; import at.gv.egiz.pdfas.lib.api.IConfigurationConstants; import at.gv.egiz.pdfas.lib.api.PdfAs; @@ -47,6 +48,7 @@ import at.gv.egiz.pdfas.lib.impl.status.OperationStatus; import at.gv.egiz.pdfas.lib.impl.status.RequestedSignature; import at.gv.egiz.pdfas.lib.impl.verify.IVerifyFilter; import at.gv.egiz.pdfas.lib.impl.verify.VerifierDispatcher; +import at.knowcenter.wag.egov.egiz.pdf.PDFUtilities; import at.knowcenter.wag.egov.egiz.pdf.PositioningInstruction; import at.knowcenter.wag.egov.egiz.pdf.TablePos; import at.knowcenter.wag.egov.egiz.table.Table; @@ -83,6 +85,8 @@ public class PdfAsImpl implements PdfAs, IConfigurationConstants { RequestedSignature requestedSignature = new RequestedSignature( status); + status.setRequestedSignature(requestedSignature); + requestedSignature.setCertificate(status.getSignParamter() .getPlainSigner().getCertificate()); @@ -334,13 +338,25 @@ public class PdfAsImpl implements PdfAs, IConfigurationConstants { SignatureDataExtractor signatureDataExtractor = new SignatureDataExtractor( request.getCertificate(), pdfFilter, pdfSubFilter, status.getSigningDate()); - + IPdfSigner signer = PdfSignerFactory.createPdfSigner(); signer.signPDF(status.getPdfObject(), status.getRequestedSignature(), signatureDataExtractor); + + StringBuilder sb = new StringBuilder(); + + int[] byteRange = PDFUtils.extractSignatureByteRange(signatureDataExtractor + .getSignatureData()); + + for(int i = 0; i < byteRange.length; i++) { + sb.append(" " + byteRange[i]); + } + + logger.info("ByteRange: " + sb.toString()); + request.setSignatureData(signatureDataExtractor .getSignatureData()); - request.setByteRange(signatureDataExtractor.getByteRange()); + request.setByteRange(byteRange); request.setNeedSignature(true); } catch (Throwable e) { @@ -349,12 +365,14 @@ public class PdfAsImpl implements PdfAs, IConfigurationConstants { } } else if (request.needSignature()) { request.setNeedSignature(false); - // TODO: Inject signature byte[] into signedDocument - int offset = request.getSignatureData().length; - - for (int i = 0; i < request.getSignature().length; i++) { - status.getPdfObject().getSignedDocument()[offset + i] = request - .getSignature()[i]; + // Inject signature byte[] into signedDocument + int offset = request.getSignatureDataByteRange()[1] + 1; + + String signature = new COSString(request.getSignature()).getHexString(); + byte[] pdfSignature = signature.getBytes(); + + for (int i = 0; i < pdfSignature.length; i++) { + status.getPdfObject().getSignedDocument()[offset + i] = pdfSignature[i]; } /* * diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox/PADESPDFBOXSigner.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox/PADESPDFBOXSigner.java index 3f566f06..2e5dc62b 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox/PADESPDFBOXSigner.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox/PADESPDFBOXSigner.java @@ -22,7 +22,6 @@ import at.gv.egiz.pdfas.common.messages.MessageResolver; import at.gv.egiz.pdfas.common.settings.SignatureProfileSettings; import at.gv.egiz.pdfas.common.utils.StreamUtils; import at.gv.egiz.pdfas.common.utils.TempFileHelper; -import at.gv.egiz.pdfas.lib.api.sign.IPlainSigner; import at.gv.egiz.pdfas.lib.impl.signing.IPdfSigner; import at.gv.egiz.pdfas.lib.impl.signing.sig_interface.PDFASSignatureInterface; import at.gv.egiz.pdfas.lib.impl.stamping.TableFactory; @@ -109,7 +108,7 @@ public class PADESPDFBOXSigner implements IPdfSigner { } } - +/* public void signPDF(String src, String dst, SignatureInterface signer) throws Exception { //ByteArrayOutputStream os = new ByteArrayOutputStream(); FileInputStream fis = new FileInputStream(new File(src)); @@ -144,5 +143,5 @@ public class PADESPDFBOXSigner implements IPdfSigner { fos.close(); // FileUtils.writeByteArrayToFile(new File(dst), os.toByteArray()); } - +*/ } diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox/PdfboxSignerWrapper.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox/PdfboxSignerWrapper.java index 91734312..6ded2d8a 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox/PdfboxSignerWrapper.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox/PdfboxSignerWrapper.java @@ -10,6 +10,9 @@ import org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import at.gv.egiz.pdfas.common.exceptions.PdfAsException; +import at.gv.egiz.pdfas.common.exceptions.PdfAsWrappedIOException; +import at.gv.egiz.pdfas.common.utils.PDFUtils; import at.gv.egiz.pdfas.common.utils.StreamUtils; import at.gv.egiz.pdfas.common.utils.StringUtils; import at.gv.egiz.pdfas.lib.api.sign.IPlainSigner; @@ -17,27 +20,35 @@ import at.gv.egiz.pdfas.lib.impl.signing.sig_interface.PDFASSignatureInterface; public class PdfboxSignerWrapper implements PDFASSignatureInterface { - private static final Logger logger = LoggerFactory.getLogger(PdfboxSignerWrapper.class); - - private IPlainSigner signer; - private PDSignature signature; - private int[] byteRange; - private Calendar date; - - public PdfboxSignerWrapper(IPlainSigner signer) { - this.signer = signer; - this.date = Calendar.getInstance(); - } - - public byte[] sign(InputStream inputStream) throws SignatureException, IOException { - byteRange = this.signature.getByteRange(); - byte[] signature = signer.sign(StreamUtils.inputStreamToByteArray(inputStream)); - logger.debug("Signature Data: " + StringUtils.bytesToHexString(signature)); - FileOutputStream fos = new FileOutputStream("/tmp/fos.bin"); - fos.write(signature); - fos.close(); - return signature; - } + private static final Logger logger = LoggerFactory + .getLogger(PdfboxSignerWrapper.class); + + private IPlainSigner signer; + private PDSignature signature; + private int[] byteRange; + private Calendar date; + + public PdfboxSignerWrapper(IPlainSigner signer) { + this.signer = signer; + this.date = Calendar.getInstance(); + } + + public byte[] sign(InputStream inputStream) throws SignatureException, + IOException { + byte[] data = StreamUtils.inputStreamToByteArray(inputStream); + byteRange = PDFUtils.extractSignatureByteRange(data); + try { + byte[] signature = signer.sign(data, byteRange); + logger.debug("Signature Data: " + + StringUtils.bytesToHexString(signature)); + FileOutputStream fos = new FileOutputStream("/tmp/fos.bin"); + fos.write(signature); + fos.close(); + return signature; + } catch (PdfAsException e) { + throw new PdfAsWrappedIOException(e); + } + } public int[] getByteRange() { return byteRange; @@ -52,7 +63,7 @@ public class PdfboxSignerWrapper implements PDFASSignatureInterface { } public void setPDSignature(PDSignature signature) { - this.signature = signature; + this.signature = signature; } public Calendar getSigningDate() { diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/AllSignatoriesType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/AllSignatoriesType.java new file mode 100644 index 00000000..6951073c --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/AllSignatoriesType.java @@ -0,0 +1,55 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlEnum; +import javax.xml.bind.annotation.XmlEnumValue; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for AllSignatoriesType. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * <p> + * <pre> + * <simpleType name="AllSignatoriesType"> + * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> + * <enumeration value="all"/> + * </restriction> + * </simpleType> + * </pre> + * + */ +@XmlType(name = "AllSignatoriesType") +@XmlEnum +public enum AllSignatoriesType { + + @XmlEnumValue("all") + ALL("all"); + private final String value; + + AllSignatoriesType(String v) { + value = v; + } + + public String value() { + return value; + } + + public static AllSignatoriesType fromValue(String v) { + for (AllSignatoriesType c: AllSignatoriesType.values()) { + if (c.value.equals(v)) { + return c; + } + } + throw new IllegalArgumentException(v); + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/AnyChildrenType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/AnyChildrenType.java new file mode 100644 index 00000000..cebf21ae --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/AnyChildrenType.java @@ -0,0 +1,78 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAnyElement; +import javax.xml.bind.annotation.XmlType; +import org.w3c.dom.Element; + + +/** + * <p>Java class for AnyChildrenType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="AnyChildrenType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence maxOccurs="unbounded" minOccurs="0"> + * <any processContents='lax'/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "AnyChildrenType", propOrder = { + "any" +}) +public class AnyChildrenType { + + @XmlAnyElement(lax = true) + protected List<Object> any; + + /** + * Gets the value of the any property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the any property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getAny().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link Element } + * {@link Object } + * + * + */ + public List<Object> getAny() { + if (any == null) { + any = new ArrayList<Object>(); + } + return this.any; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/AnyMixedChildrenType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/AnyMixedChildrenType.java new file mode 100644 index 00000000..03afc871 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/AnyMixedChildrenType.java @@ -0,0 +1,85 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAnyElement; +import javax.xml.bind.annotation.XmlMixed; +import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.bind.annotation.XmlType; +import org.w3c.dom.Element; + + +/** + * <p>Java class for AnyMixedChildrenType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="AnyMixedChildrenType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence maxOccurs="unbounded" minOccurs="0"> + * <any processContents='lax'/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "AnyMixedChildrenType", propOrder = { + "content" +}) +@XmlSeeAlso({ + XMLContentType.class +}) +public class AnyMixedChildrenType { + + @XmlMixed + @XmlAnyElement(lax = true) + protected List<Object> content; + + /** + * Gets the value of the content property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the content property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getContent().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link Element } + * {@link String } + * {@link Object } + * + * + */ + public List<Object> getContent() { + if (content == null) { + content = new ArrayList<Object>(); + } + return this.content; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64ContentType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64ContentType.java new file mode 100644 index 00000000..7bbb4448 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64ContentType.java @@ -0,0 +1,71 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for Base64ContentType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="Base64ContentType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <choice minOccurs="0"> + * <element name="Base64Content" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/> + * </choice> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Base64ContentType", propOrder = { + "base64Content" +}) +@XmlSeeAlso({ + Base64OptRefContentType.class +}) +public class Base64ContentType { + + @XmlElement(name = "Base64Content") + protected byte[] base64Content; + + /** + * Gets the value of the base64Content property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getBase64Content() { + return base64Content; + } + + /** + * Sets the value of the base64Content property. + * + * @param value + * allowed object is + * byte[] + */ + public void setBase64Content(byte[] value) { + this.base64Content = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64OptRefContentType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64OptRefContentType.java new file mode 100644 index 00000000..44094a72 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64OptRefContentType.java @@ -0,0 +1,69 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for Base64OptRefContentType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="Base64OptRefContentType"> + * <complexContent> + * <extension base="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}Base64ContentType"> + * <attribute name="Reference" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> + * </extension> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Base64OptRefContentType") +public class Base64OptRefContentType + extends Base64ContentType +{ + + @XmlAttribute(name = "Reference") + @XmlSchemaType(name = "anyURI") + protected String reference; + + /** + * Gets the value of the reference property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getReference() { + return reference; + } + + /** + * Sets the value of the reference property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setReference(String value) { + this.reference = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64XMLContentType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64XMLContentType.java new file mode 100644 index 00000000..dd0055a6 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/Base64XMLContentType.java @@ -0,0 +1,99 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for Base64XMLContentType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="Base64XMLContentType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <choice minOccurs="0"> + * <element name="Base64Content" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/> + * <element name="XMLContent" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}XMLContentType"/> + * </choice> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Base64XMLContentType", propOrder = { + "base64Content", + "xmlContent" +}) +@XmlSeeAlso({ + InfoboxAssocArrayPairType.class +}) +public class Base64XMLContentType { + + @XmlElement(name = "Base64Content") + protected byte[] base64Content; + @XmlElement(name = "XMLContent") + protected XMLContentType xmlContent; + + /** + * Gets the value of the base64Content property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getBase64Content() { + return base64Content; + } + + /** + * Sets the value of the base64Content property. + * + * @param value + * allowed object is + * byte[] + */ + public void setBase64Content(byte[] value) { + this.base64Content = value; + } + + /** + * Gets the value of the xmlContent property. + * + * @return + * possible object is + * {@link XMLContentType } + * + */ + public XMLContentType getXMLContent() { + return xmlContent; + } + + /** + * Sets the value of the xmlContent property. + * + * @param value + * allowed object is + * {@link XMLContentType } + * + */ + public void setXMLContent(XMLContentType value) { + this.xmlContent = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/BindingType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/BindingType.java new file mode 100644 index 00000000..55baaa94 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/BindingType.java @@ -0,0 +1,72 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 12:58:46 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for BindingType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="BindingType"> + * <complexContent> + * <extension base="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}AnyChildrenType"> + * <attribute name="Identifier" use="required" type="{http://www.w3.org/2001/XMLSchema}token" /> + * </extension> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "BindingType") +public class BindingType + extends AnyChildrenType +{ + + @XmlAttribute(name = "Identifier", required = true) + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + @XmlSchemaType(name = "token") + protected String identifier; + + /** + * Gets the value of the identifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getIdentifier() { + return identifier; + } + + /** + * Sets the value of the identifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setIdentifier(String value) { + this.identifier = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/CMSDataObjectOptionalMetaType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/CMSDataObjectOptionalMetaType.java new file mode 100644 index 00000000..36ae9398 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/CMSDataObjectOptionalMetaType.java @@ -0,0 +1,129 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for CMSDataObjectOptionalMetaType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="CMSDataObjectOptionalMetaType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="MetaInfo" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}MetaInfoType" minOccurs="0"/> + * <element name="Content" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}Base64OptRefContentType"/> + * <element name="ExcludedByteRange" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}ExcludedByteRangeType" minOccurs="0"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "CMSDataObjectOptionalMetaType", propOrder = { + "metaInfo", + "content", + "excludedByteRange" +}) +@XmlSeeAlso({ + CMSDataObjectRequiredMetaType.class +}) +public class CMSDataObjectOptionalMetaType { + + @XmlElement(name = "MetaInfo") + protected MetaInfoType metaInfo; + @XmlElement(name = "Content", required = true) + protected Base64OptRefContentType content; + @XmlElement(name = "ExcludedByteRange") + protected ExcludedByteRangeType excludedByteRange; + + /** + * Gets the value of the metaInfo property. + * + * @return + * possible object is + * {@link MetaInfoType } + * + */ + public MetaInfoType getMetaInfo() { + return metaInfo; + } + + /** + * Sets the value of the metaInfo property. + * + * @param value + * allowed object is + * {@link MetaInfoType } + * + */ + public void setMetaInfo(MetaInfoType value) { + this.metaInfo = value; + } + + /** + * Gets the value of the content property. + * + * @return + * possible object is + * {@link Base64OptRefContentType } + * + */ + public Base64OptRefContentType getContent() { + return content; + } + + /** + * Sets the value of the content property. + * + * @param value + * allowed object is + * {@link Base64OptRefContentType } + * + */ + public void setContent(Base64OptRefContentType value) { + this.content = value; + } + + /** + * Gets the value of the excludedByteRange property. + * + * @return + * possible object is + * {@link ExcludedByteRangeType } + * + */ + public ExcludedByteRangeType getExcludedByteRange() { + return excludedByteRange; + } + + /** + * Sets the value of the excludedByteRange property. + * + * @param value + * allowed object is + * {@link ExcludedByteRangeType } + * + */ + public void setExcludedByteRange(ExcludedByteRangeType value) { + this.excludedByteRange = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/CMSDataObjectRequiredMetaType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/CMSDataObjectRequiredMetaType.java new file mode 100644 index 00000000..87440ef3 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/CMSDataObjectRequiredMetaType.java @@ -0,0 +1,44 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for CMSDataObjectRequiredMetaType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="CMSDataObjectRequiredMetaType"> + * <complexContent> + * <restriction base="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}CMSDataObjectOptionalMetaType"> + * <sequence> + * <element name="MetaInfo" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}MetaInfoType"/> + * <element name="Content" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}Base64OptRefContentType"/> + * <element name="ExcludedByteRange" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}ExcludedByteRangeType" minOccurs="0"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "CMSDataObjectRequiredMetaType") +public class CMSDataObjectRequiredMetaType + extends CMSDataObjectOptionalMetaType +{ + + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/CreateCMSSignatureRequestType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/CreateCMSSignatureRequestType.java new file mode 100644 index 00000000..8d5599e6 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/CreateCMSSignatureRequestType.java @@ -0,0 +1,137 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for CreateCMSSignatureRequestType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="CreateCMSSignatureRequestType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="KeyboxIdentifier" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}BoxIdentifierType"/> + * <element name="DataObject" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}CMSDataObjectRequiredMetaType"/> + * </sequence> + * <attribute name="Structure" use="required"> + * <simpleType> + * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> + * <enumeration value="detached"/> + * <enumeration value="enveloping"/> + * </restriction> + * </simpleType> + * </attribute> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "CreateCMSSignatureRequestType", propOrder = { + "keyboxIdentifier", + "dataObject" +}) +@XmlRootElement +public class CreateCMSSignatureRequestType { + + @XmlElement(name = "KeyboxIdentifier", required = true) + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + protected String keyboxIdentifier; + @XmlElement(name = "DataObject", required = true) + protected CMSDataObjectRequiredMetaType dataObject; + @XmlAttribute(name = "Structure", required = true) + protected String structure; + + /** + * Gets the value of the keyboxIdentifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getKeyboxIdentifier() { + return keyboxIdentifier; + } + + /** + * Sets the value of the keyboxIdentifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setKeyboxIdentifier(String value) { + this.keyboxIdentifier = value; + } + + /** + * Gets the value of the dataObject property. + * + * @return + * possible object is + * {@link CMSDataObjectRequiredMetaType } + * + */ + public CMSDataObjectRequiredMetaType getDataObject() { + return dataObject; + } + + /** + * Sets the value of the dataObject property. + * + * @param value + * allowed object is + * {@link CMSDataObjectRequiredMetaType } + * + */ + public void setDataObject(CMSDataObjectRequiredMetaType value) { + this.dataObject = value; + } + + /** + * Gets the value of the structure property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getStructure() { + return structure; + } + + /** + * Sets the value of the structure property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setStructure(String value) { + this.structure = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/CreateCMSSignatureResponseType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/CreateCMSSignatureResponseType.java new file mode 100644 index 00000000..d5a68de8 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/CreateCMSSignatureResponseType.java @@ -0,0 +1,67 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for CreateCMSSignatureResponseType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="CreateCMSSignatureResponseType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="CMSSignature" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "CreateCMSSignatureResponseType", propOrder = { + "cmsSignature" +}) +public class CreateCMSSignatureResponseType { + + @XmlElement(name = "CMSSignature", required = true) + protected byte[] cmsSignature; + + /** + * Gets the value of the cmsSignature property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getCMSSignature() { + return cmsSignature; + } + + /** + * Sets the value of the cmsSignature property. + * + * @param value + * allowed object is + * byte[] + */ + public void setCMSSignature(byte[] value) { + this.cmsSignature = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/ErrorResponseType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/ErrorResponseType.java new file mode 100644 index 00000000..2a30b430 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/ErrorResponseType.java @@ -0,0 +1,89 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for ErrorResponseType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="ErrorResponseType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="ErrorCode" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}ErrorCodeType"/> + * <element name="Info" type="{http://www.w3.org/2001/XMLSchema}string"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "ErrorResponseType", propOrder = { + "errorCode", + "info" +}) +public class ErrorResponseType { + + @XmlElement(name = "ErrorCode") + protected int errorCode; + @XmlElement(name = "Info", required = true) + protected String info; + + /** + * Gets the value of the errorCode property. + * + */ + public int getErrorCode() { + return errorCode; + } + + /** + * Sets the value of the errorCode property. + * + */ + public void setErrorCode(int value) { + this.errorCode = value; + } + + /** + * Gets the value of the info property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getInfo() { + return info; + } + + /** + * Sets the value of the info property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setInfo(String value) { + this.info = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/ExcludedByteRangeType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/ExcludedByteRangeType.java new file mode 100644 index 00000000..bc1bc303 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/ExcludedByteRangeType.java @@ -0,0 +1,101 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import java.math.BigInteger; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for ExcludedByteRangeType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="ExcludedByteRangeType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="From" type="{http://www.w3.org/2001/XMLSchema}unsignedLong"/> + * <element name="To" type="{http://www.w3.org/2001/XMLSchema}unsignedLong"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "ExcludedByteRangeType", propOrder = { + "from", + "to" +}) +public class ExcludedByteRangeType { + + @XmlElement(name = "From", required = true) + @XmlSchemaType(name = "unsignedLong") + protected BigInteger from; + @XmlElement(name = "To", required = true) + @XmlSchemaType(name = "unsignedLong") + protected BigInteger to; + + /** + * Gets the value of the from property. + * + * @return + * possible object is + * {@link BigInteger } + * + */ + public BigInteger getFrom() { + return from; + } + + /** + * Sets the value of the from property. + * + * @param value + * allowed object is + * {@link BigInteger } + * + */ + public void setFrom(BigInteger value) { + this.from = value; + } + + /** + * Gets the value of the to property. + * + * @return + * possible object is + * {@link BigInteger } + * + */ + public BigInteger getTo() { + return to; + } + + /** + * Sets the value of the to property. + * + * @param value + * allowed object is + * {@link BigInteger } + * + */ + public void setTo(BigInteger value) { + this.to = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesRequest.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesRequest.java new file mode 100644 index 00000000..448a45d5 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesRequest.java @@ -0,0 +1,41 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 12:58:46 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for anonymous complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType> + * <complexContent> + * <extension base="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}GetPropertiesRequestType"> + * </extension> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "") +@XmlRootElement(name = "GetPropertiesRequest") +public class GetPropertiesRequest + extends GetPropertiesRequestType +{ + + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesRequestType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesRequestType.java new file mode 100644 index 00000000..5a455ab0 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesRequestType.java @@ -0,0 +1,41 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 12:58:46 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for GetPropertiesRequestType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="GetPropertiesRequestType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetPropertiesRequestType") +@XmlSeeAlso({ + GetPropertiesRequest.class +}) +public class GetPropertiesRequestType { + + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesResponseType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesResponseType.java new file mode 100644 index 00000000..4fa8a9c4 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetPropertiesResponseType.java @@ -0,0 +1,249 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 12:58:46 PM CET +// + + +package at.gv.egiz.sl; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAnyElement; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for GetPropertiesResponseType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="GetPropertiesResponseType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="ViewerMediaType" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}MimeTypeType" maxOccurs="unbounded"/> + * <element name="XMLSignatureTransform" type="{http://www.w3.org/2001/XMLSchema}anyURI" maxOccurs="unbounded"/> + * <element name="KeyboxIdentifier" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}QualifiedBoxIdentifierType" maxOccurs="unbounded" minOccurs="0"/> + * <element name="Binding" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}BindingType" maxOccurs="unbounded"/> + * <element name="ProtocolVersion" type="{http://www.w3.org/2001/XMLSchema}token" maxOccurs="unbounded"/> + * <any namespace='##other' maxOccurs="unbounded" minOccurs="0"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetPropertiesResponseType", propOrder = { + "viewerMediaType", + "xmlSignatureTransform", + "keyboxIdentifier", + "binding", + "protocolVersion", + "any" +}) +public class GetPropertiesResponseType { + + @XmlElement(name = "ViewerMediaType", required = true) + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + protected List<String> viewerMediaType; + @XmlElement(name = "XMLSignatureTransform", required = true) + @XmlSchemaType(name = "anyURI") + protected List<String> xmlSignatureTransform; + @XmlElement(name = "KeyboxIdentifier") + protected List<QualifiedBoxIdentifierType> keyboxIdentifier; + @XmlElement(name = "Binding", required = true) + protected List<BindingType> binding; + @XmlElement(name = "ProtocolVersion", required = true) + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + @XmlSchemaType(name = "token") + protected List<String> protocolVersion; + @XmlAnyElement(lax = true) + protected List<Object> any; + + /** + * Gets the value of the viewerMediaType property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the viewerMediaType property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getViewerMediaType().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link String } + * + * + */ + public List<String> getViewerMediaType() { + if (viewerMediaType == null) { + viewerMediaType = new ArrayList<String>(); + } + return this.viewerMediaType; + } + + /** + * Gets the value of the xmlSignatureTransform property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the xmlSignatureTransform property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getXMLSignatureTransform().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link String } + * + * + */ + public List<String> getXMLSignatureTransform() { + if (xmlSignatureTransform == null) { + xmlSignatureTransform = new ArrayList<String>(); + } + return this.xmlSignatureTransform; + } + + /** + * Gets the value of the keyboxIdentifier property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the keyboxIdentifier property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getKeyboxIdentifier().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link QualifiedBoxIdentifierType } + * + * + */ + public List<QualifiedBoxIdentifierType> getKeyboxIdentifier() { + if (keyboxIdentifier == null) { + keyboxIdentifier = new ArrayList<QualifiedBoxIdentifierType>(); + } + return this.keyboxIdentifier; + } + + /** + * Gets the value of the binding property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the binding property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getBinding().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link BindingType } + * + * + */ + public List<BindingType> getBinding() { + if (binding == null) { + binding = new ArrayList<BindingType>(); + } + return this.binding; + } + + /** + * Gets the value of the protocolVersion property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the protocolVersion property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getProtocolVersion().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link String } + * + * + */ + public List<String> getProtocolVersion() { + if (protocolVersion == null) { + protocolVersion = new ArrayList<String>(); + } + return this.protocolVersion; + } + + /** + * Gets the value of the any property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the any property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getAny().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link Object } + * + * + */ + public List<Object> getAny() { + if (any == null) { + any = new ArrayList<Object>(); + } + return this.any; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetStatusRequestType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetStatusRequestType.java new file mode 100644 index 00000000..78a6d941 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetStatusRequestType.java @@ -0,0 +1,100 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import java.math.BigInteger; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for GetStatusRequestType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="GetStatusRequestType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence minOccurs="0"> + * <element name="TokenStatus" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}TokenStatusType"/> + * <element name="MaxDelay" type="{http://www.w3.org/2001/XMLSchema}nonNegativeInteger"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetStatusRequestType", propOrder = { + "tokenStatus", + "maxDelay" +}) +public class GetStatusRequestType { + + @XmlElement(name = "TokenStatus") + protected TokenStatusType tokenStatus; + @XmlElement(name = "MaxDelay") + @XmlSchemaType(name = "nonNegativeInteger") + protected BigInteger maxDelay; + + /** + * Gets the value of the tokenStatus property. + * + * @return + * possible object is + * {@link TokenStatusType } + * + */ + public TokenStatusType getTokenStatus() { + return tokenStatus; + } + + /** + * Sets the value of the tokenStatus property. + * + * @param value + * allowed object is + * {@link TokenStatusType } + * + */ + public void setTokenStatus(TokenStatusType value) { + this.tokenStatus = value; + } + + /** + * Gets the value of the maxDelay property. + * + * @return + * possible object is + * {@link BigInteger } + * + */ + public BigInteger getMaxDelay() { + return maxDelay; + } + + /** + * Sets the value of the maxDelay property. + * + * @param value + * allowed object is + * {@link BigInteger } + * + */ + public void setMaxDelay(BigInteger value) { + this.maxDelay = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetStatusResponseType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetStatusResponseType.java new file mode 100644 index 00000000..5c4fa9e4 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/GetStatusResponseType.java @@ -0,0 +1,69 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for GetStatusResponseType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="GetStatusResponseType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="TokenStatus" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}TokenStatusType"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetStatusResponseType", propOrder = { + "tokenStatus" +}) +public class GetStatusResponseType { + + @XmlElement(name = "TokenStatus", required = true) + protected TokenStatusType tokenStatus; + + /** + * Gets the value of the tokenStatus property. + * + * @return + * possible object is + * {@link TokenStatusType } + * + */ + public TokenStatusType getTokenStatus() { + return tokenStatus; + } + + /** + * Sets the value of the tokenStatus property. + * + * @param value + * allowed object is + * {@link TokenStatusType } + * + */ + public void setTokenStatus(TokenStatusType value) { + this.tokenStatus = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxAssocArrayPairType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxAssocArrayPairType.java new file mode 100644 index 00000000..4745f0df --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxAssocArrayPairType.java @@ -0,0 +1,67 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for InfoboxAssocArrayPairType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="InfoboxAssocArrayPairType"> + * <complexContent> + * <extension base="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}Base64XMLContentType"> + * <attribute name="Key" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /> + * </extension> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxAssocArrayPairType") +public class InfoboxAssocArrayPairType + extends Base64XMLContentType +{ + + @XmlAttribute(name = "Key", required = true) + protected String key; + + /** + * Gets the value of the key property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getKey() { + return key; + } + + /** + * Sets the value of the key property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setKey(String value) { + this.key = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadDataAssocArrayType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadDataAssocArrayType.java new file mode 100644 index 00000000..489c9656 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadDataAssocArrayType.java @@ -0,0 +1,116 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for InfoboxReadDataAssocArrayType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="InfoboxReadDataAssocArrayType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <choice> + * <sequence maxOccurs="unbounded" minOccurs="0"> + * <element name="Key" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}BoxIdentifierType"/> + * </sequence> + * <sequence maxOccurs="unbounded" minOccurs="0"> + * <element name="Pair" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}InfoboxAssocArrayPairType"/> + * </sequence> + * </choice> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadDataAssocArrayType", propOrder = { + "key", + "pair" +}) +public class InfoboxReadDataAssocArrayType { + + @XmlElement(name = "Key") + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + protected List<String> key; + @XmlElement(name = "Pair") + protected List<InfoboxAssocArrayPairType> pair; + + /** + * Gets the value of the key property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the key property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getKey().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link String } + * + * + */ + public List<String> getKey() { + if (key == null) { + key = new ArrayList<String>(); + } + return this.key; + } + + /** + * Gets the value of the pair property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the pair property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getPair().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link InfoboxAssocArrayPairType } + * + * + */ + public List<InfoboxAssocArrayPairType> getPair() { + if (pair == null) { + pair = new ArrayList<InfoboxAssocArrayPairType>(); + } + return this.pair; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadParamsAssocArrayType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadParamsAssocArrayType.java new file mode 100644 index 00000000..fd238971 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadParamsAssocArrayType.java @@ -0,0 +1,434 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for InfoboxReadParamsAssocArrayType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="InfoboxReadParamsAssocArrayType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <choice> + * <element name="ReadKeys"> + * <complexType> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <attribute name="SearchString" use="required" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}WildCardSearchStringType" /> + * <attribute name="UserMakesUnique" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * </restriction> + * </complexContent> + * </complexType> + * </element> + * <element name="ReadPairs"> + * <complexType> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <attribute name="SearchString" use="required" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}WildCardSearchStringType" /> + * <attribute name="UserMakesUnique" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * <attribute name="ValuesAreXMLEntities" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * </restriction> + * </complexContent> + * </complexType> + * </element> + * <element name="ReadValue"> + * <complexType> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <attribute name="Key" use="required" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}BoxIdentifierType" /> + * <attribute name="ValueIsXMLEntity" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * </restriction> + * </complexContent> + * </complexType> + * </element> + * </choice> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadParamsAssocArrayType", propOrder = { + "readKeys", + "readPairs", + "readValue" +}) +public class InfoboxReadParamsAssocArrayType { + + @XmlElement(name = "ReadKeys") + protected InfoboxReadParamsAssocArrayType.ReadKeys readKeys; + @XmlElement(name = "ReadPairs") + protected InfoboxReadParamsAssocArrayType.ReadPairs readPairs; + @XmlElement(name = "ReadValue") + protected InfoboxReadParamsAssocArrayType.ReadValue readValue; + + /** + * Gets the value of the readKeys property. + * + * @return + * possible object is + * {@link InfoboxReadParamsAssocArrayType.ReadKeys } + * + */ + public InfoboxReadParamsAssocArrayType.ReadKeys getReadKeys() { + return readKeys; + } + + /** + * Sets the value of the readKeys property. + * + * @param value + * allowed object is + * {@link InfoboxReadParamsAssocArrayType.ReadKeys } + * + */ + public void setReadKeys(InfoboxReadParamsAssocArrayType.ReadKeys value) { + this.readKeys = value; + } + + /** + * Gets the value of the readPairs property. + * + * @return + * possible object is + * {@link InfoboxReadParamsAssocArrayType.ReadPairs } + * + */ + public InfoboxReadParamsAssocArrayType.ReadPairs getReadPairs() { + return readPairs; + } + + /** + * Sets the value of the readPairs property. + * + * @param value + * allowed object is + * {@link InfoboxReadParamsAssocArrayType.ReadPairs } + * + */ + public void setReadPairs(InfoboxReadParamsAssocArrayType.ReadPairs value) { + this.readPairs = value; + } + + /** + * Gets the value of the readValue property. + * + * @return + * possible object is + * {@link InfoboxReadParamsAssocArrayType.ReadValue } + * + */ + public InfoboxReadParamsAssocArrayType.ReadValue getReadValue() { + return readValue; + } + + /** + * Sets the value of the readValue property. + * + * @param value + * allowed object is + * {@link InfoboxReadParamsAssocArrayType.ReadValue } + * + */ + public void setReadValue(InfoboxReadParamsAssocArrayType.ReadValue value) { + this.readValue = value; + } + + + /** + * <p>Java class for anonymous complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <attribute name="SearchString" use="required" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}WildCardSearchStringType" /> + * <attribute name="UserMakesUnique" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class ReadKeys { + + @XmlAttribute(name = "SearchString", required = true) + protected String searchString; + @XmlAttribute(name = "UserMakesUnique") + protected Boolean userMakesUnique; + + /** + * Gets the value of the searchString property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getSearchString() { + return searchString; + } + + /** + * Sets the value of the searchString property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setSearchString(String value) { + this.searchString = value; + } + + /** + * Gets the value of the userMakesUnique property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public boolean isUserMakesUnique() { + if (userMakesUnique == null) { + return false; + } else { + return userMakesUnique; + } + } + + /** + * Sets the value of the userMakesUnique property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setUserMakesUnique(Boolean value) { + this.userMakesUnique = value; + } + + } + + + /** + * <p>Java class for anonymous complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <attribute name="SearchString" use="required" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}WildCardSearchStringType" /> + * <attribute name="UserMakesUnique" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * <attribute name="ValuesAreXMLEntities" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class ReadPairs { + + @XmlAttribute(name = "SearchString", required = true) + protected String searchString; + @XmlAttribute(name = "UserMakesUnique") + protected Boolean userMakesUnique; + @XmlAttribute(name = "ValuesAreXMLEntities") + protected Boolean valuesAreXMLEntities; + + /** + * Gets the value of the searchString property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getSearchString() { + return searchString; + } + + /** + * Sets the value of the searchString property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setSearchString(String value) { + this.searchString = value; + } + + /** + * Gets the value of the userMakesUnique property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public boolean isUserMakesUnique() { + if (userMakesUnique == null) { + return false; + } else { + return userMakesUnique; + } + } + + /** + * Sets the value of the userMakesUnique property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setUserMakesUnique(Boolean value) { + this.userMakesUnique = value; + } + + /** + * Gets the value of the valuesAreXMLEntities property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public boolean isValuesAreXMLEntities() { + if (valuesAreXMLEntities == null) { + return false; + } else { + return valuesAreXMLEntities; + } + } + + /** + * Sets the value of the valuesAreXMLEntities property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setValuesAreXMLEntities(Boolean value) { + this.valuesAreXMLEntities = value; + } + + } + + + /** + * <p>Java class for anonymous complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <attribute name="Key" use="required" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}BoxIdentifierType" /> + * <attribute name="ValueIsXMLEntity" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class ReadValue { + + @XmlAttribute(name = "Key", required = true) + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + protected String key; + @XmlAttribute(name = "ValueIsXMLEntity") + protected Boolean valueIsXMLEntity; + + /** + * Gets the value of the key property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getKey() { + return key; + } + + /** + * Sets the value of the key property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setKey(String value) { + this.key = value; + } + + /** + * Gets the value of the valueIsXMLEntity property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public boolean isValueIsXMLEntity() { + if (valueIsXMLEntity == null) { + return false; + } else { + return valueIsXMLEntity; + } + } + + /** + * Sets the value of the valueIsXMLEntity property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setValueIsXMLEntity(Boolean value) { + this.valueIsXMLEntity = value; + } + + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadParamsBinaryFileType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadParamsBinaryFileType.java new file mode 100644 index 00000000..18e25614 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadParamsBinaryFileType.java @@ -0,0 +1,69 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for InfoboxReadParamsBinaryFileType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="InfoboxReadParamsBinaryFileType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <attribute name="ContentIsXMLEntity" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" /> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadParamsBinaryFileType") +public class InfoboxReadParamsBinaryFileType { + + @XmlAttribute(name = "ContentIsXMLEntity") + protected Boolean contentIsXMLEntity; + + /** + * Gets the value of the contentIsXMLEntity property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public boolean isContentIsXMLEntity() { + if (contentIsXMLEntity == null) { + return false; + } else { + return contentIsXMLEntity; + } + } + + /** + * Sets the value of the contentIsXMLEntity property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setContentIsXMLEntity(Boolean value) { + this.contentIsXMLEntity = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadRequestType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadRequestType.java new file mode 100644 index 00000000..b39dcb2f --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadRequestType.java @@ -0,0 +1,160 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for InfoboxReadRequestType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="InfoboxReadRequestType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="InfoboxIdentifier" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}BoxIdentifierType"/> + * <choice> + * <element name="BinaryFileParameters" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}InfoboxReadParamsBinaryFileType"/> + * <element name="AssocArrayParameters" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}InfoboxReadParamsAssocArrayType"/> + * </choice> + * <element name="BoxSpecificParameters" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}AnyChildrenType" minOccurs="0"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadRequestType", propOrder = { + "infoboxIdentifier", + "binaryFileParameters", + "assocArrayParameters", + "boxSpecificParameters" +}) +@XmlRootElement +public class InfoboxReadRequestType { + + @XmlElement(name = "InfoboxIdentifier", required = true) + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + protected String infoboxIdentifier; + @XmlElement(name = "BinaryFileParameters") + protected InfoboxReadParamsBinaryFileType binaryFileParameters; + @XmlElement(name = "AssocArrayParameters") + protected InfoboxReadParamsAssocArrayType assocArrayParameters; + @XmlElement(name = "BoxSpecificParameters") + protected AnyChildrenType boxSpecificParameters; + + /** + * Gets the value of the infoboxIdentifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getInfoboxIdentifier() { + return infoboxIdentifier; + } + + /** + * Sets the value of the infoboxIdentifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setInfoboxIdentifier(String value) { + this.infoboxIdentifier = value; + } + + /** + * Gets the value of the binaryFileParameters property. + * + * @return + * possible object is + * {@link InfoboxReadParamsBinaryFileType } + * + */ + public InfoboxReadParamsBinaryFileType getBinaryFileParameters() { + return binaryFileParameters; + } + + /** + * Sets the value of the binaryFileParameters property. + * + * @param value + * allowed object is + * {@link InfoboxReadParamsBinaryFileType } + * + */ + public void setBinaryFileParameters(InfoboxReadParamsBinaryFileType value) { + this.binaryFileParameters = value; + } + + /** + * Gets the value of the assocArrayParameters property. + * + * @return + * possible object is + * {@link InfoboxReadParamsAssocArrayType } + * + */ + public InfoboxReadParamsAssocArrayType getAssocArrayParameters() { + return assocArrayParameters; + } + + /** + * Sets the value of the assocArrayParameters property. + * + * @param value + * allowed object is + * {@link InfoboxReadParamsAssocArrayType } + * + */ + public void setAssocArrayParameters(InfoboxReadParamsAssocArrayType value) { + this.assocArrayParameters = value; + } + + /** + * Gets the value of the boxSpecificParameters property. + * + * @return + * possible object is + * {@link AnyChildrenType } + * + */ + public AnyChildrenType getBoxSpecificParameters() { + return boxSpecificParameters; + } + + /** + * Sets the value of the boxSpecificParameters property. + * + * @param value + * allowed object is + * {@link AnyChildrenType } + * + */ + public void setBoxSpecificParameters(AnyChildrenType value) { + this.boxSpecificParameters = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadResponseType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadResponseType.java new file mode 100644 index 00000000..fe8a6db4 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/InfoboxReadResponseType.java @@ -0,0 +1,99 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for InfoboxReadResponseType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="InfoboxReadResponseType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <choice> + * <element name="BinaryFileData" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}Base64XMLContentType"/> + * <element name="AssocArrayData" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}InfoboxReadDataAssocArrayType"/> + * </choice> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadResponseType", propOrder = { + "binaryFileData", + "assocArrayData" +}) +@XmlRootElement +public class InfoboxReadResponseType { + + @XmlElement(name = "BinaryFileData") + protected Base64XMLContentType binaryFileData; + @XmlElement(name = "AssocArrayData") + protected InfoboxReadDataAssocArrayType assocArrayData; + + /** + * Gets the value of the binaryFileData property. + * + * @return + * possible object is + * {@link Base64XMLContentType } + * + */ + public Base64XMLContentType getBinaryFileData() { + return binaryFileData; + } + + /** + * Sets the value of the binaryFileData property. + * + * @param value + * allowed object is + * {@link Base64XMLContentType } + * + */ + public void setBinaryFileData(Base64XMLContentType value) { + this.binaryFileData = value; + } + + /** + * Gets the value of the assocArrayData property. + * + * @return + * possible object is + * {@link InfoboxReadDataAssocArrayType } + * + */ + public InfoboxReadDataAssocArrayType getAssocArrayData() { + return assocArrayData; + } + + /** + * Sets the value of the assocArrayData property. + * + * @param value + * allowed object is + * {@link InfoboxReadDataAssocArrayType } + * + */ + public void setAssocArrayData(InfoboxReadDataAssocArrayType value) { + this.assocArrayData = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/MetaInfoType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/MetaInfoType.java new file mode 100644 index 00000000..72080288 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/MetaInfoType.java @@ -0,0 +1,136 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAnyElement; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for MetaInfoType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="MetaInfoType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="MimeType" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}MimeTypeType"/> + * <element name="Description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> + * <any namespace='##other' maxOccurs="unbounded" minOccurs="0"/> + * </sequence> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "MetaInfoType", propOrder = { + "mimeType", + "description", + "any" +}) +public class MetaInfoType { + + @XmlElement(name = "MimeType", required = true) + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + protected String mimeType; + @XmlElement(name = "Description") + protected String description; + @XmlAnyElement(lax = true) + protected List<Object> any; + + /** + * Gets the value of the mimeType property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getMimeType() { + return mimeType; + } + + /** + * Sets the value of the mimeType property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setMimeType(String value) { + this.mimeType = value; + } + + /** + * Gets the value of the description property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getDescription() { + return description; + } + + /** + * Sets the value of the description property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setDescription(String value) { + this.description = value; + } + + /** + * Gets the value of the any property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the any property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getAny().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link Object } + * + * + */ + public List<Object> getAny() { + if (any == null) { + any = new ArrayList<Object>(); + } + return this.any; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/NullOperationRequestType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/NullOperationRequestType.java new file mode 100644 index 00000000..69b2f060 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/NullOperationRequestType.java @@ -0,0 +1,37 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for NullOperationRequestType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="NullOperationRequestType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "NullOperationRequestType") +public class NullOperationRequestType { + + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/NullOperationResponseType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/NullOperationResponseType.java new file mode 100644 index 00000000..c7d3132e --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/NullOperationResponseType.java @@ -0,0 +1,37 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for NullOperationResponseType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="NullOperationResponseType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "NullOperationResponseType") +public class NullOperationResponseType { + + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/ObjectFactory.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/ObjectFactory.java new file mode 100644 index 00000000..3e9ca0d3 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/ObjectFactory.java @@ -0,0 +1,368 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.JAXBElement; +import javax.xml.bind.annotation.XmlElementDecl; +import javax.xml.bind.annotation.XmlRegistry; +import javax.xml.namespace.QName; + + +/** + * This object contains factory methods for each + * Java content interface and Java element interface + * generated in the at.gv.egiz.sl package. + * <p>An ObjectFactory allows you to programatically + * construct new instances of the Java representation + * for XML content. The Java representation of XML + * content can consist of schema derived interfaces + * and classes representing the binding of schema + * type definitions, element declarations and model + * groups. Factory methods for each of these are + * provided in this class. + * + */ +@XmlRegistry +public class ObjectFactory { + + private final static QName _NullOperationRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "NullOperationRequest"); + private final static QName _CreateCMSSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "CreateCMSSignatureRequest"); + private final static QName _InfoboxReadRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "InfoboxReadRequest"); + private final static QName _GetStatusResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "GetStatusResponse"); + private final static QName _CreateCMSSignatureResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "CreateCMSSignatureResponse"); + private final static QName _GetStatusRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "GetStatusRequest"); + private final static QName _ErrorResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "ErrorResponse"); + private final static QName _IdentityLinkDomainIdentifier_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "IdentityLinkDomainIdentifier"); + private final static QName _VerifyCMSSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "VerifyCMSSignatureRequest"); + private final static QName _InfoboxReadResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "InfoboxReadResponse"); + private final static QName _NullOperationResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "NullOperationResponse"); + + /** + * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.egiz.sl + * + */ + public ObjectFactory() { + } + + /** + * Create an instance of {@link InfoboxReadParamsAssocArrayType } + * + */ + public InfoboxReadParamsAssocArrayType createInfoboxReadParamsAssocArrayType() { + return new InfoboxReadParamsAssocArrayType(); + } + + /** + * Create an instance of {@link NullOperationResponseType } + * + */ + public NullOperationResponseType createNullOperationResponseType() { + return new NullOperationResponseType(); + } + + /** + * Create an instance of {@link InfoboxReadResponseType } + * + */ + public InfoboxReadResponseType createInfoboxReadResponseType() { + return new InfoboxReadResponseType(); + } + + /** + * Create an instance of {@link VerifyCMSSignatureRequestType } + * + */ + public VerifyCMSSignatureRequestType createVerifyCMSSignatureRequestType() { + return new VerifyCMSSignatureRequestType(); + } + + /** + * Create an instance of {@link GetStatusResponseType } + * + */ + public GetStatusResponseType createGetStatusResponseType() { + return new GetStatusResponseType(); + } + + /** + * Create an instance of {@link InfoboxReadRequestType } + * + */ + public InfoboxReadRequestType createInfoboxReadRequestType() { + return new InfoboxReadRequestType(); + } + + /** + * Create an instance of {@link CreateCMSSignatureRequestType } + * + */ + public CreateCMSSignatureRequestType createCreateCMSSignatureRequestType() { + return new CreateCMSSignatureRequestType(); + } + + /** + * Create an instance of {@link NullOperationRequestType } + * + */ + public NullOperationRequestType createNullOperationRequestType() { + return new NullOperationRequestType(); + } + + /** + * Create an instance of {@link ErrorResponseType } + * + */ + public ErrorResponseType createErrorResponseType() { + return new ErrorResponseType(); + } + + /** + * Create an instance of {@link GetStatusRequestType } + * + */ + public GetStatusRequestType createGetStatusRequestType() { + return new GetStatusRequestType(); + } + + /** + * Create an instance of {@link CreateCMSSignatureResponseType } + * + */ + public CreateCMSSignatureResponseType createCreateCMSSignatureResponseType() { + return new CreateCMSSignatureResponseType(); + } + + /** + * Create an instance of {@link InfoboxReadParamsBinaryFileType } + * + */ + public InfoboxReadParamsBinaryFileType createInfoboxReadParamsBinaryFileType() { + return new InfoboxReadParamsBinaryFileType(); + } + + /** + * Create an instance of {@link ExcludedByteRangeType } + * + */ + public ExcludedByteRangeType createExcludedByteRangeType() { + return new ExcludedByteRangeType(); + } + + /** + * Create an instance of {@link Base64OptRefContentType } + * + */ + public Base64OptRefContentType createBase64OptRefContentType() { + return new Base64OptRefContentType(); + } + + /** + * Create an instance of {@link InfoboxReadDataAssocArrayType } + * + */ + public InfoboxReadDataAssocArrayType createInfoboxReadDataAssocArrayType() { + return new InfoboxReadDataAssocArrayType(); + } + + /** + * Create an instance of {@link CMSDataObjectOptionalMetaType } + * + */ + public CMSDataObjectOptionalMetaType createCMSDataObjectOptionalMetaType() { + return new CMSDataObjectOptionalMetaType(); + } + + /** + * Create an instance of {@link Base64XMLContentType } + * + */ + public Base64XMLContentType createBase64XMLContentType() { + return new Base64XMLContentType(); + } + + /** + * Create an instance of {@link CMSDataObjectRequiredMetaType } + * + */ + public CMSDataObjectRequiredMetaType createCMSDataObjectRequiredMetaType() { + return new CMSDataObjectRequiredMetaType(); + } + + /** + * Create an instance of {@link XMLContentType } + * + */ + public XMLContentType createXMLContentType() { + return new XMLContentType(); + } + + /** + * Create an instance of {@link MetaInfoType } + * + */ + public MetaInfoType createMetaInfoType() { + return new MetaInfoType(); + } + + /** + * Create an instance of {@link Base64ContentType } + * + */ + public Base64ContentType createBase64ContentType() { + return new Base64ContentType(); + } + + /** + * Create an instance of {@link InfoboxAssocArrayPairType } + * + */ + public InfoboxAssocArrayPairType createInfoboxAssocArrayPairType() { + return new InfoboxAssocArrayPairType(); + } + + /** + * Create an instance of {@link AnyMixedChildrenType } + * + */ + public AnyMixedChildrenType createAnyMixedChildrenType() { + return new AnyMixedChildrenType(); + } + + /** + * Create an instance of {@link AnyChildrenType } + * + */ + public AnyChildrenType createAnyChildrenType() { + return new AnyChildrenType(); + } + + /** + * Create an instance of {@link InfoboxReadParamsAssocArrayType.ReadKeys } + * + */ + public InfoboxReadParamsAssocArrayType.ReadKeys createInfoboxReadParamsAssocArrayTypeReadKeys() { + return new InfoboxReadParamsAssocArrayType.ReadKeys(); + } + + /** + * Create an instance of {@link InfoboxReadParamsAssocArrayType.ReadPairs } + * + */ + public InfoboxReadParamsAssocArrayType.ReadPairs createInfoboxReadParamsAssocArrayTypeReadPairs() { + return new InfoboxReadParamsAssocArrayType.ReadPairs(); + } + + /** + * Create an instance of {@link InfoboxReadParamsAssocArrayType.ReadValue } + * + */ + public InfoboxReadParamsAssocArrayType.ReadValue createInfoboxReadParamsAssocArrayTypeReadValue() { + return new InfoboxReadParamsAssocArrayType.ReadValue(); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link NullOperationRequestType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "NullOperationRequest") + public JAXBElement<NullOperationRequestType> createNullOperationRequest(NullOperationRequestType value) { + return new JAXBElement<NullOperationRequestType>(_NullOperationRequest_QNAME, NullOperationRequestType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link CreateCMSSignatureRequestType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "CreateCMSSignatureRequest") + public JAXBElement<CreateCMSSignatureRequestType> createCreateCMSSignatureRequest(CreateCMSSignatureRequestType value) { + return new JAXBElement<CreateCMSSignatureRequestType>(_CreateCMSSignatureRequest_QNAME, CreateCMSSignatureRequestType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link InfoboxReadRequestType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "InfoboxReadRequest") + public JAXBElement<InfoboxReadRequestType> createInfoboxReadRequest(InfoboxReadRequestType value) { + return new JAXBElement<InfoboxReadRequestType>(_InfoboxReadRequest_QNAME, InfoboxReadRequestType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link GetStatusResponseType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "GetStatusResponse") + public JAXBElement<GetStatusResponseType> createGetStatusResponse(GetStatusResponseType value) { + return new JAXBElement<GetStatusResponseType>(_GetStatusResponse_QNAME, GetStatusResponseType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link CreateCMSSignatureResponseType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "CreateCMSSignatureResponse") + public JAXBElement<CreateCMSSignatureResponseType> createCreateCMSSignatureResponse(CreateCMSSignatureResponseType value) { + return new JAXBElement<CreateCMSSignatureResponseType>(_CreateCMSSignatureResponse_QNAME, CreateCMSSignatureResponseType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link GetStatusRequestType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "GetStatusRequest") + public JAXBElement<GetStatusRequestType> createGetStatusRequest(GetStatusRequestType value) { + return new JAXBElement<GetStatusRequestType>(_GetStatusRequest_QNAME, GetStatusRequestType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link ErrorResponseType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "ErrorResponse") + public JAXBElement<ErrorResponseType> createErrorResponse(ErrorResponseType value) { + return new JAXBElement<ErrorResponseType>(_ErrorResponse_QNAME, ErrorResponseType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "IdentityLinkDomainIdentifier") + public JAXBElement<String> createIdentityLinkDomainIdentifier(String value) { + return new JAXBElement<String>(_IdentityLinkDomainIdentifier_QNAME, String.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link VerifyCMSSignatureRequestType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "VerifyCMSSignatureRequest") + public JAXBElement<VerifyCMSSignatureRequestType> createVerifyCMSSignatureRequest(VerifyCMSSignatureRequestType value) { + return new JAXBElement<VerifyCMSSignatureRequestType>(_VerifyCMSSignatureRequest_QNAME, VerifyCMSSignatureRequestType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link InfoboxReadResponseType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "InfoboxReadResponse") + public JAXBElement<InfoboxReadResponseType> createInfoboxReadResponse(InfoboxReadResponseType value) { + return new JAXBElement<InfoboxReadResponseType>(_InfoboxReadResponse_QNAME, InfoboxReadResponseType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link NullOperationResponseType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", name = "NullOperationResponse") + public JAXBElement<NullOperationResponseType> createNullOperationResponse(NullOperationResponseType value) { + return new JAXBElement<NullOperationResponseType>(_NullOperationResponse_QNAME, NullOperationResponseType.class, null, value); + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/QualifiedBoxIdentifierType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/QualifiedBoxIdentifierType.java new file mode 100644 index 00000000..97908a88 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/QualifiedBoxIdentifierType.java @@ -0,0 +1,108 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 12:58:46 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.XmlValue; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for QualifiedBoxIdentifierType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="QualifiedBoxIdentifierType"> + * <simpleContent> + * <extension base="<http://www.buergerkarte.at/namespaces/securitylayer/1.2#>BoxIdentifierType"> + * <attribute name="Signature" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" /> + * <attribute name="Encryption" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" /> + * </extension> + * </simpleContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "QualifiedBoxIdentifierType", propOrder = { + "value" +}) +public class QualifiedBoxIdentifierType { + + @XmlValue + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + protected String value; + @XmlAttribute(name = "Signature", required = true) + protected boolean signature; + @XmlAttribute(name = "Encryption", required = true) + protected boolean encryption; + + /** + * Gets the value of the value property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getValue() { + return value; + } + + /** + * Sets the value of the value property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setValue(String value) { + this.value = value; + } + + /** + * Gets the value of the signature property. + * + */ + public boolean isSignature() { + return signature; + } + + /** + * Sets the value of the signature property. + * + */ + public void setSignature(boolean value) { + this.signature = value; + } + + /** + * Gets the value of the encryption property. + * + */ + public boolean isEncryption() { + return encryption; + } + + /** + * Sets the value of the encryption property. + * + */ + public void setEncryption(boolean value) { + this.encryption = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/TokenStatusType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/TokenStatusType.java new file mode 100644 index 00000000..a9f5e513 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/TokenStatusType.java @@ -0,0 +1,58 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlEnum; +import javax.xml.bind.annotation.XmlEnumValue; +import javax.xml.bind.annotation.XmlType; + + +/** + * <p>Java class for TokenStatusType. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * <p> + * <pre> + * <simpleType name="TokenStatusType"> + * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> + * <enumeration value="ready"/> + * <enumeration value="removed"/> + * </restriction> + * </simpleType> + * </pre> + * + */ +@XmlType(name = "TokenStatusType") +@XmlEnum +public enum TokenStatusType { + + @XmlEnumValue("ready") + READY("ready"), + @XmlEnumValue("removed") + REMOVED("removed"); + private final String value; + + TokenStatusType(String v) { + value = v; + } + + public String value() { + return value; + } + + public static TokenStatusType fromValue(String v) { + for (TokenStatusType c: TokenStatusType.values()) { + if (c.value.equals(v)) { + return c; + } + } + throw new IllegalArgumentException(v); + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/VerifyCMSSignatureRequestType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/VerifyCMSSignatureRequestType.java new file mode 100644 index 00000000..8ed1bc03 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/VerifyCMSSignatureRequestType.java @@ -0,0 +1,161 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; +import javax.xml.datatype.XMLGregorianCalendar; + + +/** + * <p>Java class for VerifyCMSSignatureRequestType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="VerifyCMSSignatureRequestType"> + * <complexContent> + * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> + * <sequence> + * <element name="DateTime" type="{http://www.w3.org/2001/XMLSchema}dateTime" minOccurs="0"/> + * <element name="CMSSignature" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/> + * <element name="DataObject" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}CMSDataObjectOptionalMetaType" minOccurs="0"/> + * </sequence> + * <attribute name="Signatories" type="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}SignatoriesType" default="1" /> + * </restriction> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "VerifyCMSSignatureRequestType", propOrder = { + "dateTime", + "cmsSignature", + "dataObject" +}) +public class VerifyCMSSignatureRequestType { + + @XmlElement(name = "DateTime") + @XmlSchemaType(name = "dateTime") + protected XMLGregorianCalendar dateTime; + @XmlElement(name = "CMSSignature", required = true) + protected byte[] cmsSignature; + @XmlElement(name = "DataObject") + protected CMSDataObjectOptionalMetaType dataObject; + @XmlAttribute(name = "Signatories") + protected List<String> signatories; + + /** + * Gets the value of the dateTime property. + * + * @return + * possible object is + * {@link XMLGregorianCalendar } + * + */ + public XMLGregorianCalendar getDateTime() { + return dateTime; + } + + /** + * Sets the value of the dateTime property. + * + * @param value + * allowed object is + * {@link XMLGregorianCalendar } + * + */ + public void setDateTime(XMLGregorianCalendar value) { + this.dateTime = value; + } + + /** + * Gets the value of the cmsSignature property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getCMSSignature() { + return cmsSignature; + } + + /** + * Sets the value of the cmsSignature property. + * + * @param value + * allowed object is + * byte[] + */ + public void setCMSSignature(byte[] value) { + this.cmsSignature = value; + } + + /** + * Gets the value of the dataObject property. + * + * @return + * possible object is + * {@link CMSDataObjectOptionalMetaType } + * + */ + public CMSDataObjectOptionalMetaType getDataObject() { + return dataObject; + } + + /** + * Sets the value of the dataObject property. + * + * @param value + * allowed object is + * {@link CMSDataObjectOptionalMetaType } + * + */ + public void setDataObject(CMSDataObjectOptionalMetaType value) { + this.dataObject = value; + } + + /** + * Gets the value of the signatories property. + * + * <p> + * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a <CODE>set</CODE> method for the signatories property. + * + * <p> + * For example, to add a new item, do as follows: + * <pre> + * getSignatories().add(newItem); + * </pre> + * + * + * <p> + * Objects of the following type(s) are allowed in the list + * {@link String } + * + * + */ + public List<String> getSignatories() { + if (signatories == null) { + signatories = new ArrayList<String>(); + } + return this.signatories; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/XMLContentType.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/XMLContentType.java new file mode 100644 index 00000000..6d1342fc --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/XMLContentType.java @@ -0,0 +1,70 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + + +package at.gv.egiz.sl; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + * <p>Java class for XMLContentType complex type. + * + * <p>The following schema fragment specifies the expected content contained within this class. + * + * <pre> + * <complexType name="XMLContentType"> + * <complexContent> + * <extension base="{http://www.buergerkarte.at/namespaces/securitylayer/1.2#}AnyMixedChildrenType"> + * <attribute ref="{http://www.w3.org/XML/1998/namespace}space"/> + * </extension> + * </complexContent> + * </complexType> + * </pre> + * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "XMLContentType") +public class XMLContentType + extends AnyMixedChildrenType +{ + + @XmlAttribute(name = "space", namespace = "http://www.w3.org/XML/1998/namespace") + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + protected String space; + + /** + * Gets the value of the space property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getSpace() { + return space; + } + + /** + * Sets the value of the space property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setSpace(String value) { + this.space = value; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/package-info.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/package-info.java new file mode 100644 index 00000000..6e4f6072 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/package-info.java @@ -0,0 +1,9 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4-2 +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2013.11.05 at 04:21:33 PM CET +// + +@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/1.2#", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) +package at.gv.egiz.sl; diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BKUSLConnector.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BKUSLConnector.java new file mode 100644 index 00000000..3381dca5 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BKUSLConnector.java @@ -0,0 +1,165 @@ +package at.gv.egiz.sl.util; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; + +import javax.xml.bind.JAXBElement; +import javax.xml.bind.JAXBException; + +import org.apache.http.HttpResponse; +import org.apache.http.client.ClientProtocolException; +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.ContentType; +import org.apache.http.entity.mime.MultipartEntityBuilder; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.DefaultHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import at.gv.egiz.pdfas.common.exceptions.PDFIOException; +import at.gv.egiz.pdfas.common.exceptions.PdfAsException; +import at.gv.egiz.pdfas.common.exceptions.SLPdfAsException; +import at.gv.egiz.pdfas.lib.api.Configuration; +import at.gv.egiz.sl.CreateCMSSignatureRequestType; +import at.gv.egiz.sl.CreateCMSSignatureResponseType; +import at.gv.egiz.sl.ErrorResponseType; +import at.gv.egiz.sl.InfoboxReadRequestType; +import at.gv.egiz.sl.InfoboxReadResponseType; + +public class BKUSLConnector extends BaseSLConnector { + + private static final Logger logger = LoggerFactory + .getLogger(BKUSLConnector.class); + + public static final String CONFIG_BKU_URL = "bku.sign.url"; + + private String bkuUrl; + + public BKUSLConnector(Configuration config) { + this.bkuUrl = config.getValue(CONFIG_BKU_URL); + } + + private CloseableHttpClient buildHttpClient() { + HttpClientBuilder builder = HttpClientBuilder.create(); + return builder.build(); + } + + private String performHttpRequestToBKU(String xmlRequest) + throws ClientProtocolException, IOException, IllegalStateException { + CloseableHttpClient client = null; + try { + client = buildHttpClient(); + HttpPost post = new HttpPost(this.bkuUrl); + + MultipartEntityBuilder entityBuilder = MultipartEntityBuilder + .create(); + entityBuilder.addTextBody(XMLREQUEST, xmlRequest, + ContentType.TEXT_XML); + + post.setEntity(entityBuilder.build()); + + HttpResponse response = client.execute(post); + logger.debug("Response Code : " + + response.getStatusLine().getStatusCode()); + + BufferedReader rd = new BufferedReader(new InputStreamReader( + response.getEntity().getContent())); + + StringBuffer result = new StringBuffer(); + String line = ""; + while ((line = rd.readLine()) != null) { + result.append(line); + } + + logger.trace(result.toString()); + return result.toString(); + } finally { + if(client != null) { + client.close(); + } + } + } + + @SuppressWarnings("rawtypes") + public InfoboxReadResponseType sendInfoboxReadRequest( + InfoboxReadRequestType request) throws PdfAsException { + JAXBElement element = null; + String slRequest; + try { + slRequest = SLMarschaller.marshalToString(of + .createInfoboxReadRequest(request)); + logger.trace(slRequest); + + String slResponse = performHttpRequestToBKU(slRequest); + + element = (JAXBElement) SLMarschaller + .unmarshalFromString(slResponse); + + } catch (JAXBException e) { + throw new PDFIOException("SL_COM", e); + } catch (ClientProtocolException e) { + throw new PDFIOException("SL_COM", e); + } catch (IOException e) { + throw new PDFIOException("SL_COM", e); + } + + if (element == null) { + throw new PDFIOException("SL ELEMENT NOT AVAILABLE"); + } + + if (element.getValue() instanceof InfoboxReadResponseType) { + InfoboxReadResponseType infoboxReadResponseType = (InfoboxReadResponseType) element + .getValue(); + return infoboxReadResponseType; + } else if (element.getValue() instanceof ErrorResponseType) { + ErrorResponseType errorResponseType = (ErrorResponseType) element + .getValue(); + throw new SLPdfAsException(errorResponseType.getErrorCode(), + errorResponseType.getInfo()); + } + throw new PdfAsException("Invalid SL Repsonse"); + } + + public CreateCMSSignatureResponseType sendCMSRequest( + CreateCMSSignatureRequestType request) throws PdfAsException { + JAXBElement element = null; + String slRequest; + try { + slRequest = SLMarschaller.marshalToString(of + .createCreateCMSSignatureRequest(request)); + logger.trace(slRequest); + + String slResponse = performHttpRequestToBKU(slRequest); + + element = (JAXBElement) SLMarschaller + .unmarshalFromString(slResponse); + } catch (JAXBException e) { + throw new PDFIOException("SL_COM", e); + } catch (ClientProtocolException e) { + throw new PDFIOException("SL_COM", e); + } catch (IOException e) { + throw new PDFIOException("SL_COM", e); + } + + if (element == null) { + throw new PDFIOException("SL ELEMENT NOT AVAILABLE"); + } + + if (element.getValue() instanceof CreateCMSSignatureResponseType) { + CreateCMSSignatureResponseType createCMSSignatureResponseType = (CreateCMSSignatureResponseType) element + .getValue(); + logger.debug(createCMSSignatureResponseType.toString()); + return createCMSSignatureResponseType; + } else if (element.getValue() instanceof ErrorResponseType) { + ErrorResponseType errorResponseType = (ErrorResponseType) element + .getValue(); + throw new SLPdfAsException(errorResponseType.getErrorCode(), + errorResponseType.getInfo()); + } + throw new PdfAsException("Invalid SL Repsonse"); + + } +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BaseSLConnector.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BaseSLConnector.java new file mode 100644 index 00000000..51b63f51 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/BaseSLConnector.java @@ -0,0 +1,120 @@ +package at.gv.egiz.sl.util; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.nio.Buffer; +import java.util.Arrays; + +import javax.xml.bind.JAXBElement; +import javax.xml.bind.JAXBException; + +import org.apache.http.HttpResponse; +import org.apache.http.client.ClientProtocolException; +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.ContentType; +import org.apache.http.entity.mime.HttpMultipartMode; +import org.apache.http.entity.mime.MultipartEntity; +import org.apache.http.entity.mime.MultipartEntityBuilder; +import org.apache.http.entity.mime.content.StringBody; +import org.apache.http.impl.client.DefaultHttpClient; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import at.gv.egiz.pdfas.common.exceptions.PDFIOException; +import at.gv.egiz.pdfas.common.exceptions.PdfAsException; +import at.gv.egiz.pdfas.common.exceptions.SLPdfAsException; +import at.gv.egiz.pdfas.lib.impl.signing.pdfbox.PADESPDFBOXSigner; +import at.gv.egiz.sl.Base64OptRefContentType; +import at.gv.egiz.sl.CMSDataObjectRequiredMetaType; +import at.gv.egiz.sl.CreateCMSSignatureRequestType; +import at.gv.egiz.sl.CreateCMSSignatureResponseType; +import at.gv.egiz.sl.ErrorResponseType; +import at.gv.egiz.sl.InfoboxReadParamsAssocArrayType; +import at.gv.egiz.sl.InfoboxReadRequestType; +import at.gv.egiz.sl.InfoboxReadResponseType; +import at.gv.egiz.sl.MetaInfoType; +import at.gv.egiz.sl.InfoboxReadParamsAssocArrayType.ReadValue; +import at.gv.egiz.sl.ObjectFactory; + +public abstract class BaseSLConnector implements ISLConnector { + + private static final Logger logger = LoggerFactory.getLogger(BaseSLConnector.class); + + public static final String SecureSignatureKeypair = "SecureSignatureKeypair"; + + public static final String PDF_MIME_TYPE = "application/pdf"; + public static final String PDF_MIME_TYPE_DESC = "Adobe PDF-Dateien"; + + public static final String DETACHED = "detached"; + + public static final String XMLREQUEST = "XMLRequest"; + + protected ObjectFactory of = new ObjectFactory(); + + public InfoboxReadRequestType createInfoboxReadRequest() { + InfoboxReadRequestType request = new InfoboxReadRequestType(); + request.setInfoboxIdentifier("Certificates"); + InfoboxReadParamsAssocArrayType readData = new InfoboxReadParamsAssocArrayType(); + + ReadValue readValue = new ReadValue(); + readValue.setKey(SecureSignatureKeypair); + + readData.setReadValue(readValue); + request.setAssocArrayParameters(readData); + return request; + } + + public CreateCMSSignatureRequestType createCMSRequest(byte[] signatureData, int[] byteRange) { + // TODO build byte[] from signatureData and fill 0 bytes in byteRanged + if(byteRange.length % 2 != 0) { + // TODO: error + } + + int lastOffset = byteRange[byteRange.length - 2]; + int lastSize = byteRange[byteRange.length - 1]; + + int dataSize = lastOffset + lastSize; + + byte[] data = new byte[dataSize]; + int currentdataOff = 0; + + Arrays.fill(data, (byte)0); + + for(int i = 0; i < byteRange.length; i = i + 2) { + int offset = byteRange[i]; + int size = byteRange[i+1]; + + for(int j = 0; j < size; j++) { + data[offset + j] = signatureData[currentdataOff]; + currentdataOff++; + } + + } + + // == MetaInfoType + MetaInfoType metaInfoType = new MetaInfoType(); + metaInfoType.setMimeType(PDF_MIME_TYPE); + metaInfoType.setDescription(PDF_MIME_TYPE_DESC); + + // == Base64OptRefContentType + Base64OptRefContentType base64OptRefContentType = new Base64OptRefContentType(); + base64OptRefContentType.setBase64Content(data); + + // == CMSDataObjectRequiredMetaType + CMSDataObjectRequiredMetaType cmsDataObjectRequiredMetaType = new CMSDataObjectRequiredMetaType(); + cmsDataObjectRequiredMetaType.setMetaInfo(metaInfoType); + cmsDataObjectRequiredMetaType.setContent(base64OptRefContentType); + // cmsDataObjectRequiredMetaType.setExcludedByteRange() + + // == CreateCMSSignatureRequestType + CreateCMSSignatureRequestType request = new CreateCMSSignatureRequestType(); + request.setKeyboxIdentifier(SecureSignatureKeypair); + request.setDataObject(cmsDataObjectRequiredMetaType); + request.setStructure(DETACHED); + + return request; + } + +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/ISLConnector.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/ISLConnector.java new file mode 100644 index 00000000..82571720 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/ISLConnector.java @@ -0,0 +1,15 @@ +package at.gv.egiz.sl.util; + +import at.gv.egiz.pdfas.common.exceptions.PdfAsException; +import at.gv.egiz.sl.CreateCMSSignatureRequestType; +import at.gv.egiz.sl.CreateCMSSignatureResponseType; +import at.gv.egiz.sl.InfoboxReadRequestType; +import at.gv.egiz.sl.InfoboxReadResponseType; + +public interface ISLConnector { + + public InfoboxReadRequestType createInfoboxReadRequest(); + public InfoboxReadResponseType sendInfoboxReadRequest(InfoboxReadRequestType request) throws PdfAsException; + public CreateCMSSignatureRequestType createCMSRequest(byte[] signatureData, int[] byteRange); + public CreateCMSSignatureResponseType sendCMSRequest(CreateCMSSignatureRequestType request) throws PdfAsException; +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java new file mode 100644 index 00000000..8f1b3cc5 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java @@ -0,0 +1,49 @@ +package at.gv.egiz.sl.util; + +import java.io.InputStream; +import java.io.OutputStream; +import java.io.StringReader; +import java.io.StringWriter; + +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBException; +import javax.xml.bind.Marshaller; +import javax.xml.bind.Unmarshaller; + +public class SLMarschaller { + private static Marshaller marshaller = null; + private static Unmarshaller unmarshaller = null; + + static { + try { + JAXBContext context = JAXBContext.newInstance("at.gv.egiz.sl"); + marshaller = context.createMarshaller(); + marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); + marshaller.setProperty(Marshaller.JAXB_ENCODING, "UTF-8"); + + unmarshaller = context.createUnmarshaller(); + } catch (JAXBException e) { + throw new RuntimeException( + "There was a problem creating a JAXBContext object for formatting the object to XML."); + } + } + + public static void marshal(Object obj, OutputStream os) throws JAXBException { + marshaller.marshal(obj, os); + } + + public static String marshalToString(Object obj) throws JAXBException { + StringWriter sw = new StringWriter(); + marshaller.marshal(obj, sw); + return sw.toString(); + } + + public static Object unmarshal(InputStream is) throws JAXBException { + return unmarshaller.unmarshal(is); + } + + public static Object unmarshalFromString(String message) throws JAXBException { + StringReader sr = new StringReader(message); + return unmarshaller.unmarshal(sr); + } +} diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/package-info.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/package-info.java new file mode 100644 index 00000000..f370e34d --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/package-info.java @@ -0,0 +1,8 @@ +/** + * + */ +/** + * @author afitzek + * + */ +package at.gv.egiz.sl.util;
\ No newline at end of file |