diff options
Diffstat (limited to 'utils/src/main/java')
13 files changed, 815 insertions, 79 deletions
| diff --git a/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_1/TransformsInfoType.java b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_1/TransformsInfoType.java index 5ee40b95..e4a8f48e 100644 --- a/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_1/TransformsInfoType.java +++ b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_1/TransformsInfoType.java @@ -24,11 +24,15 @@  package at.buergerkarte.namespaces.securitylayer._1; +import javax.xml.bind.JAXBElement;  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.XmlElementRef;  import javax.xml.bind.annotation.XmlType;  import org.w3._2000._09.xmldsig_.TransformsType; +import org.w3c.dom.Element;  /** @@ -58,8 +62,9 @@ import org.w3._2000._09.xmldsig_.TransformsType;  })  public class TransformsInfoType { -    @XmlElement(name = "Transforms", namespace = "http://www.w3.org/2000/09/xmldsig#") -    protected TransformsType transforms; +    @XmlElementRef(name = "Transforms", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class) +    @XmlAnyElement(lax = true) +    protected Object transforms;      @XmlElement(name = "FinalDataMetaInfo", required = true)      protected MetaInfoType finalDataMetaInfo; @@ -68,10 +73,12 @@ public class TransformsInfoType {       *        * @return       *     possible object is -     *     {@link TransformsType } +     * {@link JAXBElement }{@code <}{@link String }{@code >} +     * {@link Object } +     * {@link Element }       *            */ -    public TransformsType getTransforms() { +    public Object getTransforms() {          return transforms;      } @@ -80,10 +87,12 @@ public class TransformsInfoType {       *        * @param value       *     allowed object is -     *     {@link TransformsType } +     * {@link JAXBElement }{@code <}{@link String }{@code >} +     * {@link Object } +     * {@link Element }       *            */ -    public void setTransforms(TransformsType value) { +    public void setTransforms(Object value) {          this.transforms = value;      } diff --git a/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/ErrorResponseType.java b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/ErrorResponseType.java new file mode 100644 index 00000000..69b5cd9d --- /dev/null +++ b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/ErrorResponseType.java @@ -0,0 +1,98 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.2-b01-fcs  +// 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: 2009.09.07 at 09:47:31 AM CEST  +// + + +package at.buergerkarte.namespaces.securitylayer._20020225_; + +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.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.w3.org/2001/XMLSchema}integer"/> + *         <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", required = true) +    protected BigInteger errorCode; +    @XmlElement(name = "Info", required = true) +    protected String info; + +    /** +     * Gets the value of the errorCode property. +     *  +     * @return +     *     possible object is +     *     {@link BigInteger } +     *      +     */ +    public BigInteger getErrorCode() { +        return errorCode; +    } + +    /** +     * Sets the value of the errorCode property. +     *  +     * @param value +     *     allowed object is +     *     {@link BigInteger } +     *      +     */ +    public void setErrorCode(BigInteger 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/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/ObjectFactory.java b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/ObjectFactory.java new file mode 100644 index 00000000..a02f9ca1 --- /dev/null +++ b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/ObjectFactory.java @@ -0,0 +1,280 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.2-b01-fcs  +// 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: 2009.09.07 at 09:47:31 AM CEST  +// + + +package at.buergerkarte.namespaces.securitylayer._20020225_; + +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.buergerkarte.namespaces.securitylayer._20020225_ 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 _CreateXMLSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "CreateXMLSignatureRequest"); +    private final static QName _InfoboxUpdateRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "InfoboxUpdateRequest"); +    private final static QName _ErrorResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "ErrorResponse"); +    private final static QName _VerifyXMLSignatureResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "VerifyXMLSignatureResponse"); +    private final static QName _CreateSessionKeyResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "CreateSessionKeyResponse"); +    private final static QName _GetPropertiesRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "GetPropertiesRequest"); +    private final static QName _GetPropertiesResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "GetPropertiesResponse"); +    private final static QName _InfoboxAvailableResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "InfoboxAvailableResponse"); +    private final static QName _InfoboxAvailableRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "InfoboxAvailableRequest"); +    private final static QName _CreateSessionKeyRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "CreateSessionKeyRequest"); +    private final static QName _InfoboxUpdateResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "InfoboxUpdateResponse"); +    private final static QName _CreateXMLSignatureResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "CreateXMLSignatureResponse"); +    private final static QName _GetStatusResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "GetStatusResponse"); +    private final static QName _CreateCMSSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "CreateCMSSignatureRequest"); +    private final static QName _CreateSymmetricSecretRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "CreateSymmetricSecretRequest"); +    private final static QName _VerifyXMLSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "VerifyXMLSignatureRequest"); +    private final static QName _CreateSymmetricSecretResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "CreateSymmetricSecretResponse"); +    private final static QName _CreateCMSSignatureResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "CreateCMSSignatureResponse"); +    private final static QName _VerifyCMSSignatureResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "VerifyCMSSignatureResponse"); +    private final static QName _InfoboxReadResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "InfoboxReadResponse"); +    private final static QName _VerifyCMSSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "VerifyCMSSignatureRequest"); +    private final static QName _InfoboxReadRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "InfoboxReadRequest"); +    private final static QName _GetStatusRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "GetStatusRequest"); + +    /** +     * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.buergerkarte.namespaces.securitylayer._20020225_ +     *  +     */ +    public ObjectFactory() { +    } + +    /** +     * Create an instance of {@link ErrorResponseType } +     *  +     */ +    public ErrorResponseType createErrorResponseType() { +        return new ErrorResponseType(); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "CreateXMLSignatureRequest") +    public JAXBElement<Object> createCreateXMLSignatureRequest(Object value) { +        return new JAXBElement<Object>(_CreateXMLSignatureRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "InfoboxUpdateRequest") +    public JAXBElement<Object> createInfoboxUpdateRequest(Object value) { +        return new JAXBElement<Object>(_InfoboxUpdateRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link ErrorResponseType }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", 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 Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "VerifyXMLSignatureResponse") +    public JAXBElement<Object> createVerifyXMLSignatureResponse(Object value) { +        return new JAXBElement<Object>(_VerifyXMLSignatureResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "CreateSessionKeyResponse") +    public JAXBElement<Object> createCreateSessionKeyResponse(Object value) { +        return new JAXBElement<Object>(_CreateSessionKeyResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "GetPropertiesRequest") +    public JAXBElement<Object> createGetPropertiesRequest(Object value) { +        return new JAXBElement<Object>(_GetPropertiesRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "GetPropertiesResponse") +    public JAXBElement<Object> createGetPropertiesResponse(Object value) { +        return new JAXBElement<Object>(_GetPropertiesResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "InfoboxAvailableResponse") +    public JAXBElement<Object> createInfoboxAvailableResponse(Object value) { +        return new JAXBElement<Object>(_InfoboxAvailableResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "InfoboxAvailableRequest") +    public JAXBElement<Object> createInfoboxAvailableRequest(Object value) { +        return new JAXBElement<Object>(_InfoboxAvailableRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "CreateSessionKeyRequest") +    public JAXBElement<Object> createCreateSessionKeyRequest(Object value) { +        return new JAXBElement<Object>(_CreateSessionKeyRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "InfoboxUpdateResponse") +    public JAXBElement<Object> createInfoboxUpdateResponse(Object value) { +        return new JAXBElement<Object>(_InfoboxUpdateResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "CreateXMLSignatureResponse") +    public JAXBElement<Object> createCreateXMLSignatureResponse(Object value) { +        return new JAXBElement<Object>(_CreateXMLSignatureResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "GetStatusResponse") +    public JAXBElement<Object> createGetStatusResponse(Object value) { +        return new JAXBElement<Object>(_GetStatusResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "CreateCMSSignatureRequest") +    public JAXBElement<Object> createCreateCMSSignatureRequest(Object value) { +        return new JAXBElement<Object>(_CreateCMSSignatureRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "CreateSymmetricSecretRequest") +    public JAXBElement<Object> createCreateSymmetricSecretRequest(Object value) { +        return new JAXBElement<Object>(_CreateSymmetricSecretRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "VerifyXMLSignatureRequest") +    public JAXBElement<Object> createVerifyXMLSignatureRequest(Object value) { +        return new JAXBElement<Object>(_VerifyXMLSignatureRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "CreateSymmetricSecretResponse") +    public JAXBElement<Object> createCreateSymmetricSecretResponse(Object value) { +        return new JAXBElement<Object>(_CreateSymmetricSecretResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "CreateCMSSignatureResponse") +    public JAXBElement<Object> createCreateCMSSignatureResponse(Object value) { +        return new JAXBElement<Object>(_CreateCMSSignatureResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "VerifyCMSSignatureResponse") +    public JAXBElement<Object> createVerifyCMSSignatureResponse(Object value) { +        return new JAXBElement<Object>(_VerifyCMSSignatureResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "InfoboxReadResponse") +    public JAXBElement<Object> createInfoboxReadResponse(Object value) { +        return new JAXBElement<Object>(_InfoboxReadResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "VerifyCMSSignatureRequest") +    public JAXBElement<Object> createVerifyCMSSignatureRequest(Object value) { +        return new JAXBElement<Object>(_VerifyCMSSignatureRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "InfoboxReadRequest") +    public JAXBElement<Object> createInfoboxReadRequest(Object value) { +        return new JAXBElement<Object>(_InfoboxReadRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", name = "GetStatusRequest") +    public JAXBElement<Object> createGetStatusRequest(Object value) { +        return new JAXBElement<Object>(_GetStatusRequest_QNAME, Object.class, null, value); +    } + +} diff --git a/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/package-info.java b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/package-info.java new file mode 100644 index 00000000..084f6b11 --- /dev/null +++ b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020225_/package-info.java @@ -0,0 +1,9 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.2-b01-fcs  +// 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: 2009.09.07 at 09:47:31 AM CEST  +// + +@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020225#", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) +package at.buergerkarte.namespaces.securitylayer._20020225_; diff --git a/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020831_/ObjectFactory.java b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020831_/ObjectFactory.java new file mode 100644 index 00000000..17f6d4b4 --- /dev/null +++ b/utils/src/main/java/at/buergerkarte/namespaces/securitylayer/_20020831_/ObjectFactory.java @@ -0,0 +1,112 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.2-b01-fcs  +// 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: 2009.09.07 at 09:47:31 AM CEST  +// + + +package at.buergerkarte.namespaces.securitylayer._20020831_; + +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.buergerkarte.namespaces.securitylayer._20020831_ 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 _CreateXMLSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020831#", "CreateXMLSignatureRequest"); +    private final static QName _GetPropertiesResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020831#", "GetPropertiesResponse"); +    private final static QName _VerifyXMLSignatureResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020831#", "VerifyXMLSignatureResponse"); +    private final static QName _VerifyXMLSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020831#", "VerifyXMLSignatureRequest"); +    private final static QName _VerifyCMSSignatureResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020831#", "VerifyCMSSignatureResponse"); +    private final static QName _CreateXMLSignatureResponse_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020831#", "CreateXMLSignatureResponse"); +    private final static QName _VerifyCMSSignatureRequest_QNAME = new QName("http://www.buergerkarte.at/namespaces/securitylayer/20020831#", "VerifyCMSSignatureRequest"); + +    /** +     * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.buergerkarte.namespaces.securitylayer._20020831_ +     *  +     */ +    public ObjectFactory() { +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020831#", name = "CreateXMLSignatureRequest") +    public JAXBElement<Object> createCreateXMLSignatureRequest(Object value) { +        return new JAXBElement<Object>(_CreateXMLSignatureRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020831#", name = "GetPropertiesResponse") +    public JAXBElement<Object> createGetPropertiesResponse(Object value) { +        return new JAXBElement<Object>(_GetPropertiesResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020831#", name = "VerifyXMLSignatureResponse") +    public JAXBElement<Object> createVerifyXMLSignatureResponse(Object value) { +        return new JAXBElement<Object>(_VerifyXMLSignatureResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020831#", name = "VerifyXMLSignatureRequest") +    public JAXBElement<Object> createVerifyXMLSignatureRequest(Object value) { +        return new JAXBElement<Object>(_VerifyXMLSignatureRequest_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020831#", name = "VerifyCMSSignatureResponse") +    public JAXBElement<Object> createVerifyCMSSignatureResponse(Object value) { +        return new JAXBElement<Object>(_VerifyCMSSignatureResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020831#", name = "CreateXMLSignatureResponse") +    public JAXBElement<Object> createCreateXMLSignatureResponse(Object value) { +        return new JAXBElement<Object>(_CreateXMLSignatureResponse_QNAME, Object.class, null, value); +    } + +    /** +     * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} +     *  +     */ +    @XmlElementDecl(namespace = "http://www.buergerkarte.at/namespaces/securitylayer/20020831#", name = "VerifyCMSSignatureRequest") +    public JAXBElement<Object> createVerifyCMSSignatureRequest(Object value) { +        return new JAXBElement<Object>(_VerifyCMSSignatureRequest_QNAME, Object.class, null, value); +    } + +} diff --git a/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingInputStream.java b/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingInputStream.java new file mode 100644 index 00000000..28ef6b88 --- /dev/null +++ b/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingInputStream.java @@ -0,0 +1,62 @@ +/** + *  + */ +package at.gv.egiz.bku.utils; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.CharBuffer; + +/** + * @author mcentner + * + */ +public class URLEncodingInputStream extends InputStream { + +  private char[] buffer = new char[1]; +   +  private CharBuffer charBuffer = CharBuffer.wrap(buffer);  + +  protected Readable in; +   +  /** +   * @param in +   */ +  public URLEncodingInputStream(Readable in) { +    this.in = in; +  } +   +  /* (non-Javadoc) +   * @see java.io.InputStream#read() +   */ +  @Override +  public int read() throws IOException { +    charBuffer.rewind(); +    if (in.read(charBuffer) == -1) { +      return -1; +    } +    if (buffer[0] == '+') { +      return ' '; +    } else if (buffer[0] == '%') { +      charBuffer.rewind(); +      if (in.read(charBuffer) == -1) { +        throw new IOException("Invalid URL encoding."); +      } +      int c1 = Character.digit(buffer[0], 16); +      charBuffer.rewind(); +      if (in.read(charBuffer) == -1) { +        throw new IOException("Invalid URL encoding."); +      } +      int c2 = Character.digit(buffer[0], 16); +      if (c1 == -1 || c2 == -1) { +        throw new IOException("Invalid URL encoding."); +      } +      return ((c1 << 4) | c2); +    } else { +      return buffer[0]; +    } +  } +   +   + +} diff --git a/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingOutputStream.java b/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingOutputStream.java new file mode 100644 index 00000000..df42df6d --- /dev/null +++ b/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingOutputStream.java @@ -0,0 +1,134 @@ +/* +* Copyright 2008 Federal Chancellery Austria and +* Graz University of Technology +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +*     http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package at.gv.egiz.bku.utils; + +import java.io.IOException; +import java.io.OutputStream; +import java.nio.CharBuffer; +import java.util.BitSet; + +/** + * An URLEncoding <a + * href="http://tools.ietf.org/html/rfc3986#section-2.1">RFC3986, Section 2.1</a> + * OutputStream. + *  + * @author mcentner + */ +public class URLEncodingOutputStream extends OutputStream { +   +  private static final int MAX_BUFFER_SIZE = 512; + +  private static final BitSet UNRESERVED = new BitSet(256); +   +  static { +    for (int i = '0'; i <= '9'; i++) { +      UNRESERVED.set(i); +    } +    for (int i = 'a'; i <= 'z'; i++) { +      UNRESERVED.set(i); +    } +    for (int i = 'A'; i <= 'Z'; i++) { +      UNRESERVED.set(i); +    } +    UNRESERVED.set('-'); +    UNRESERVED.set('_'); +    UNRESERVED.set('.'); +    UNRESERVED.set('*'); +    UNRESERVED.set(' '); +  } + +  private static final char[] HEX = new char[] { +    '0', '1', '2', '3', '4', '5', '6', '7',  +    '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' +  }; +   +  private char[] buf; +   +  protected Appendable out; + +  /** +   * Creates a new instance of this URLEncodingOutputStream that writes to the +   * given Appendable. +   * <p> +   * Note: According to +   * http://www.w3.org/TR/html40/appendix/notes.html#non-ascii-chars the input +   * for the {@link #write()} methods should be the UTF-8. +   * </p> +   *  +   * @param out +   */ +  public URLEncodingOutputStream(Appendable out) { +    this.out = out; +  } + +  /* (non-Javadoc) +   * @see java.io.OutputStream#write(int) +   */ +  @Override +  public void write(int b) throws IOException { +    b &= 0xFF; +    if (UNRESERVED.get(b)) { +      if (b == ' ') { +        out.append('+'); +      } else { +        out.append((char) b); +      } +    } else { +      out.append('%').append(HEX[b >>> 4]).append(HEX[b & 0xF]); +    } +     +  } + +  /* (non-Javadoc) +   * @see java.io.OutputStream#write(byte[], int, int) +   */ +  @Override +  public void write(byte[] b, int off, int len) throws IOException { +   +    // ensure a buffer at least double the size of end - start + 1 +    // but max  +    int sz = Math.min(len + 1, MAX_BUFFER_SIZE); +    if (buf == null || buf.length < sz) { +      buf = new char[sz]; +    } +   +    int bPos = 0; +    for (int i = 0; i < len; i++) { +      if (bPos + 3 > buf.length) { +        // flush buffer +        out.append(CharBuffer.wrap(buf, 0, bPos)); +        bPos = 0; +      } +      int c = 0xFF & b[off + i]; +      if (UNRESERVED.get(c)) { +        if (c == ' ') { +          buf[bPos++] = '+'; +        } else { +          buf[bPos++] = (char) c; +        } +      } else { +        buf[bPos++] = '%'; +        buf[bPos++] = HEX[c >>> 4]; +        buf[bPos++] = HEX[c & 0xF]; +      } +    } +    out.append(CharBuffer.wrap(buf, 0, bPos)); +     +  } + + +} diff --git a/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingWriter.java b/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingWriter.java new file mode 100644 index 00000000..3ba90265 --- /dev/null +++ b/utils/src/main/java/at/gv/egiz/bku/utils/URLEncodingWriter.java @@ -0,0 +1,57 @@ +/* + * Copyright 2008 Federal Chancellery Austria and + * Graz University of Technology + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + *     http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */package at.gv.egiz.bku.utils; + +import java.io.IOException; +import java.io.OutputStreamWriter; +import java.io.Writer; +import java.nio.charset.Charset; + +/** + * An URLEncoding <a + * href="http://tools.ietf.org/html/rfc3986#section-2.1">RFC3986, Section + * 2.1</a> Writer, that uses an UTF-8 encoding according to <a href + * ="http://www.w3.org/TR/html40/appendix/notes.html#non-ascii-chars" + * >http://www.w3.org/TR/html40/appendix/notes.html#non-ascii-chars</a> for + * writing non-ASCII characters. + *  + * @author mcentner + */ +public class URLEncodingWriter extends Writer { + +  protected OutputStreamWriter osw; + +  public URLEncodingWriter(Appendable out) { +    URLEncodingOutputStream urlEnc = new URLEncodingOutputStream(out); +    osw = new OutputStreamWriter(urlEnc, Charset.forName("UTF-8")); +  } + +  @Override +  public void close() throws IOException { +    osw.close(); +  } + +  @Override +  public void flush() throws IOException { +    osw.flush(); +  } + +  @Override +  public void write(char[] cbuf, int off, int len) throws IOException { +    osw.write(cbuf, off, len); +  } + +} diff --git a/utils/src/main/java/at/gv/egiz/marshal/MarshallerFactory.java b/utils/src/main/java/at/gv/egiz/marshal/MarshallerFactory.java index ccebcc81..3ac0a86e 100644 --- a/utils/src/main/java/at/gv/egiz/marshal/MarshallerFactory.java +++ b/utils/src/main/java/at/gv/egiz/marshal/MarshallerFactory.java @@ -31,13 +31,17 @@ public class MarshallerFactory {    private static final Log log = LogFactory.getLog(MarshallerFactory.class); -  public static Marshaller createMarshaller(JAXBContext ctx, boolean formattedOutput) throws JAXBException { +  public static Marshaller createMarshaller(JAXBContext ctx, boolean formattedOutput, boolean fragment) throws JAXBException {      Marshaller m = ctx.createMarshaller();      try {        if (formattedOutput) {          log.trace("setting marshaller property FORMATTED_OUTPUT");          m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);        } +      if (fragment) { +        log.trace("setting marshaller property FRAGMENT"); +        m.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE); +      }        log.trace("setting marshaller property NamespacePrefixMapper");        m.setProperty("com.sun.xml.bind.namespacePrefixMapper", new NamespacePrefixMapperImpl());      } catch (PropertyException ex) { @@ -45,8 +49,12 @@ public class MarshallerFactory {      }      return m;    } +   +  public static Marshaller createMarshaller(JAXBContext ctx, boolean formattedOutput) throws JAXBException { +    return createMarshaller(ctx, formattedOutput, false); +  }    public static Marshaller createMarshaller(JAXBContext ctx) throws JAXBException { -    return createMarshaller(ctx, false); +    return createMarshaller(ctx, false, false);    }  } diff --git a/utils/src/main/java/at/gv/egiz/marshal/NamespacePrefix.java b/utils/src/main/java/at/gv/egiz/marshal/NamespacePrefix.java deleted file mode 100644 index 3ae1d0ff..00000000 --- a/utils/src/main/java/at/gv/egiz/marshal/NamespacePrefix.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright 2008 Federal Chancellery Austria and - * Graz University of Technology - *  - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *  - *     http://www.apache.org/licenses/LICENSE-2.0 - *  - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package at.gv.egiz.marshal; - -/** - * - * @author Clemens Orthacker <clemens.orthacker@iaik.tugraz.at> - */ -public interface NamespacePrefix { -  String CARDCHANNEL_PREFIX = "cc"; -  String ECDSA_PREFIX = "ecdsa"; -  String PERSONDATA_PREFIX = "pr"; -  String SAML10_PREFIX = "saml"; -  String SL_PREFIX = "sl"; -  String XADES_PREFIX = "xades"; -  String XMLDSIG_PREFIX = "dsig"; -  String XSI_PREFIX = "xsi"; - -} diff --git a/utils/src/main/java/at/gv/egiz/marshal/NamespacePrefixMapperImpl.java b/utils/src/main/java/at/gv/egiz/marshal/NamespacePrefixMapperImpl.java index 519f6b1f..e0698977 100644 --- a/utils/src/main/java/at/gv/egiz/marshal/NamespacePrefixMapperImpl.java +++ b/utils/src/main/java/at/gv/egiz/marshal/NamespacePrefixMapperImpl.java @@ -17,6 +17,9 @@  package at.gv.egiz.marshal;  //import com.sun.xml.internal.bind.marshaller.NamespacePrefixMapper; +import java.util.HashMap; +import java.util.Map; +  import com.sun.xml.bind.marshaller.NamespacePrefixMapper;  import org.apache.commons.logging.Log;  import org.apache.commons.logging.LogFactory; @@ -29,45 +32,32 @@ public class NamespacePrefixMapperImpl extends NamespacePrefixMapper {    private static final Log log = LogFactory.getLog(NamespacePrefixMapperImpl.class); +  protected static final Map<String, String> prefixMap = new HashMap<String, String>(); +   +  static { +    prefixMap.put("http://www.w3.org/2001/XMLSchema-instance", "xsi"); +    prefixMap.put("http://www.w3.org/2000/09/xmldsig#", "dsig"); +    prefixMap.put("http://www.buergerkarte.at/namespaces/securitylayer/1.2#", "sl"); +    prefixMap.put("http://www.buergerkarte.at/cardchannel", "cc"); +    prefixMap.put("http://www.w3.org/2001/04/xmldsig-more#", "ecdsa"); +    prefixMap.put("http://reference.e-government.gv.at/namespace/persondata/20020228#", "pr"); +    prefixMap.put("urn:oasis:names:tc:SAML:1.0:assertion", "saml"); +    prefixMap.put("http://uri.etsi.org/01903/v1.1.1#", "xades"); +    prefixMap.put("http://www.buergerkarte.at/namespaces/securitylayer/20020225#", "sl10"); +    prefixMap.put("http://www.buergerkarte.at/namespaces/securitylayer/20020831#", "sl11"); +  } +   +      @Override    public String getPreferredPrefix(String namespaceUri, String suggestion, boolean requirePrefix) {      if (log.isTraceEnabled()) {        log.trace("prefix for namespace " + namespaceUri + " requested");      } -    if ("http://www.w3.org/2001/XMLSchema-instance".equals(namespaceUri)) { -      return NamespacePrefix.XSI_PREFIX; -    } - -    if ("http://www.w3.org/2000/09/xmldsig#".equals(namespaceUri)) { -      return NamespacePrefix.XMLDSIG_PREFIX; -    } - -    if ("http://www.buergerkarte.at/namespaces/securitylayer/1.2#".equals(namespaceUri)) { -      return NamespacePrefix.SL_PREFIX; -    } - -    if ("http://www.buergerkarte.at/cardchannel".equals(namespaceUri)) { -      return NamespacePrefix.CARDCHANNEL_PREFIX; -    } - -    if ("http://www.w3.org/2001/04/xmldsig-more#".equals(namespaceUri)) { -      return NamespacePrefix.ECDSA_PREFIX; -    } - -    if ("http://reference.e-government.gv.at/namespace/persondata/20020228#".equals(namespaceUri)) { -      return NamespacePrefix.PERSONDATA_PREFIX; -    } - -    if ("urn:oasis:names:tc:SAML:1.0:assertion".equals(namespaceUri)) { -      return NamespacePrefix.SAML10_PREFIX; -    } - -    if ("http://uri.etsi.org/01903/v1.1.1#".equals(namespaceUri)) { -      return NamespacePrefix.XADES_PREFIX; -    } -    return suggestion; +    String prefix = prefixMap.get(namespaceUri); +     +    return (prefix != null) ? prefix : suggestion;    }    /** diff --git a/utils/src/main/java/at/gv/egiz/validation/ValidationEventLogger.java b/utils/src/main/java/at/gv/egiz/validation/ReportingValidationEventHandler.java index 0fafdd7f..6543c333 100644 --- a/utils/src/main/java/at/gv/egiz/validation/ValidationEventLogger.java +++ b/utils/src/main/java/at/gv/egiz/validation/ReportingValidationEventHandler.java @@ -25,9 +25,11 @@ import org.apache.commons.logging.LogFactory;   *   * @author Clemens Orthacker <clemens.orthacker@iaik.tugraz.at>   */ -public class ValidationEventLogger implements ValidationEventHandler { +public class ReportingValidationEventHandler implements ValidationEventHandler { -  protected static final Log log = LogFactory.getLog(ValidationEventLogger.class); +  protected static final Log log = LogFactory.getLog(ReportingValidationEventHandler.class); +   +  protected ValidationEvent errorEvent;    /**     * @@ -43,13 +45,20 @@ public class ValidationEventLogger implements ValidationEventHandler {          return true;        case ValidationEvent.ERROR:          log.warn(event.getMessage()); +        errorEvent = event;          return false;        case ValidationEvent.FATAL_ERROR:          log.error(event.getMessage()); +        errorEvent = event;          return false;        default:          log.debug(event.getMessage());          return false;      }    } + +  public ValidationEvent getErrorEvent() { +    return errorEvent; +  } +    } diff --git a/utils/src/main/java/at/gv/egiz/xades/QualifyingPropertiesFactory.java b/utils/src/main/java/at/gv/egiz/xades/QualifyingPropertiesFactory.java index 71ca1db9..82cba624 100644 --- a/utils/src/main/java/at/gv/egiz/xades/QualifyingPropertiesFactory.java +++ b/utils/src/main/java/at/gv/egiz/xades/QualifyingPropertiesFactory.java @@ -16,8 +16,6 @@  */  package at.gv.egiz.xades; -import at.gv.egiz.marshal.MarshallerFactory; -import at.gv.egiz.marshal.NamespacePrefixMapperImpl;  import java.math.BigInteger;  import java.security.MessageDigest;  import java.security.NoSuchAlgorithmException; @@ -51,6 +49,8 @@ import org.w3._2000._09.xmldsig_.DigestMethodType;  import org.w3._2000._09.xmldsig_.X509IssuerSerialType;  import org.w3c.dom.Node; +import at.gv.egiz.marshal.MarshallerFactory; +  public class QualifyingPropertiesFactory {    public static String NS_URI_V1_1_1 = "http://uri.etsi.org/01903/v1.1.1#"; @@ -155,7 +155,7 @@ public class QualifyingPropertiesFactory {      return dataObjectFormatType;    } -  public JAXBElement<QualifyingPropertiesType> createQualifyingProperties111(Date signingTime, List<X509Certificate> certificates, String idValue, List<DataObjectFormatType> dataObjectFormats) throws QualifyingPropertiesException { +  public JAXBElement<QualifyingPropertiesType> createQualifyingProperties111(String target, Date signingTime, List<X509Certificate> certificates, String idValue, List<DataObjectFormatType> dataObjectFormats) throws QualifyingPropertiesException {      GregorianCalendar gregorianCalendar = new GregorianCalendar();      gregorianCalendar.setTimeZone(TimeZone.getTimeZone("UTC")); @@ -206,6 +206,8 @@ public class QualifyingPropertiesFactory {      QualifyingPropertiesType qualifyingPropertiesType = qpFactory.createQualifyingPropertiesType();      qualifyingPropertiesType.setSignedProperties(signedPropertiesType); +    qualifyingPropertiesType.setTarget(target); +          return qpFactory.createQualifyingProperties(qualifyingPropertiesType);    } | 
