summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/tags/2.0.1-RC1/testing/itest/async-interactions/src/main/resources/wsdl/creditcard.wsdl
blob: 93988329cb80f17126ed7b8d1b4f332464f529fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?xml version="1.0" encoding="UTF-8"?>
<!--
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you 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.    
-->
<wsdl:definitions name="CreditCardPayment" targetNamespace="http://www.example.com/CreditCardPayment/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://www.example.com/CreditCardPayment/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
    <wsdl:types>
        <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.com/CreditCardPayment/"
            xmlns:tns="http://www.example.com/CreditCardPayment/">

            <!-- https://jaxb.dev.java.net/issues/show_bug.cgi?id=518 -->
            <!-- I have to change the complex types to be annoymous -->
            <xsd:element name="authorize">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element name="CreditCard" type="tns:CreditCardDetailsType"></xsd:element>
                        <xsd:element name="Amount" type="xsd:float"></xsd:element>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>

            <xsd:element name="authorizeResponse">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element name="Status" type="xsd:string"></xsd:element>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>

            <xsd:complexType name="CreditCardDetailsType">
                <xsd:sequence>
                    <xsd:element name="CreditCardType" type="tns:CreditCardTypeType" minOccurs="0" />
                    <xsd:element name="CreditCardNumber" type="xsd:string" minOccurs="0" />
                    <xsd:element name="ExpMonth" type="xsd:int" minOccurs="0" />
                    <xsd:element name="ExpYear" type="xsd:int" minOccurs="0" />
                    <xsd:element name="CardOwner" type="tns:PayerType" minOccurs="0" />
                    <xsd:element name="CVV2" type="xsd:string" minOccurs="0" />
                </xsd:sequence>
            </xsd:complexType>
            <xsd:simpleType name="CreditCardTypeType">
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Visa" />
                    <xsd:enumeration value="MasterCard" />
                    <xsd:enumeration value="Discover" />
                    <xsd:enumeration value="Amex" />
                </xsd:restriction>
            </xsd:simpleType>
            <xsd:complexType name="PayerType">
                <xsd:sequence>
                    <xsd:element name="Name" type="xsd:string" />
                    <xsd:element name="Address" type="tns:AddressType" />
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="AddressType">
                <xsd:sequence>
                    <xsd:element name="Street" type="xsd:string" />
                    <xsd:element name="City" type="xsd:string" />
                    <xsd:element name="State" type="xsd:string" />
                    <xsd:element name="ZipCode" type="xsd:string" />
                    <xsd:element name="HomePhone" type="xsd:string" />
                </xsd:sequence>
            </xsd:complexType>
            <xsd:element name="authorizeFault">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element name="errorCode" type="xsd:string"></xsd:element>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
        </xsd:schema>
    </wsdl:types>
    <wsdl:message name="AuthorizeRequest">
        <wsdl:part name="parameters" element="tns:authorize"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="AuthorizeResponse">
        <wsdl:part name="parameters" element="tns:authorizeResponse"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="AuthorizeFault">
        <wsdl:part name="parameters" element="tns:authorizeFault"></wsdl:part>
    </wsdl:message>
    <wsdl:portType name="CreditCardPayment">
        <wsdl:operation name="authorize">
            <wsdl:input message="tns:AuthorizeRequest"></wsdl:input>
            <wsdl:output message="tns:AuthorizeResponse"></wsdl:output>
            <wsdl:fault name="authorizationFailure" message="tns:AuthorizeFault"></wsdl:fault>
        </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="CreditCardPaymentBinding" type="tns:CreditCardPayment">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
        <wsdl:operation name="authorize">
            <soap:operation soapAction="http://www.example.com/CreditCardPayment/authorize" />
            <wsdl:input>
                <soap:body use="literal" />
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal" />
            </wsdl:output>
            <wsdl:fault name="authorizationFailure">
                <soap:fault name="authorizationFailure" use="literal" />
            </wsdl:fault>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="CreditCardPaymentService">
        <wsdl:port name="CreditCardPaymentPort" binding="tns:CreditCardPaymentBinding">
            <soap:address location="http://localhost:8080/CreditCardPayment" />
        </wsdl:port>
    </wsdl:service>

</wsdl:definitions>