blob: 36b66dc8707efc5809ce87d7441e009b9fffe101 [file] [log] [blame]
/*
* 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.
*/
package org.apache.axis2.jaxws.proxy.rpclit;
import org.apache.axis2.jaxws.TestLogger;
import org.apache.axis2.jaxws.proxy.rpclit.sei.RPCFault;
import org.apache.axis2.jaxws.proxy.rpclit.sei.RPCLit;
import org.test.proxy.rpclit.ComplexAll;
import org.test.proxy.rpclit.Enum;
import javax.jws.WebService;
import javax.xml.datatype.DatatypeConstants;
import javax.xml.datatype.DatatypeFactory;
import javax.xml.datatype.XMLGregorianCalendar;
import javax.xml.namespace.QName;
import javax.xml.ws.Holder;
import java.math.BigInteger;
/**
*
*
*/
@WebService(serviceName="RPCLitService",
targetNamespace="http://org/apache/axis2/jaxws/proxy/rpclit",
endpointInterface="org.apache.axis2.jaxws.proxy.rpclit.sei.RPCLit")
public class RPCLitImpl implements RPCLit {
public static DatatypeFactory df ;
public static XMLGregorianCalendar bday;
public static XMLGregorianCalendar holiday;
public static BigInteger bigInt1 = new BigInteger("1");
public static BigInteger bigInt2 = new BigInteger("2");
public static QName qname1 = new QName("urn://sample", "hello" );
public static QName qname2 = new QName("urn://sample", "world" );
static {
try {
df = DatatypeFactory.newInstance();
bday = df.newXMLGregorianCalendarDate(1964, 12, 3, DatatypeConstants.FIELD_UNDEFINED);
holiday = bday = df.newXMLGregorianCalendarDate(2007, 1, 1, DatatypeConstants.FIELD_UNDEFINED);
} catch (Exception e) {}
}
/**
* Echo the input
*/
public String testSimple(String simpleIn) {
assertTrue(simpleIn != null); // According to JAX-WS an RPC service should never receive a null
// Test to ensure that returning null causes the proper exception
if (simpleIn.contains("returnNull")) {
return null;
}
return simpleIn;
}
/**
* Echo the input
*/
public String testSimple2(String simple2In1, String simple2In2) {
return simple2In1 + simple2In2;
}
public QName[] testLists(
QName[] qNames,
XMLGregorianCalendar[] calendars,
String[] texts,
BigInteger[] bigInts,
Long[] longs,
Enum[] enums,
String[] text2,
ComplexAll all) {
assertTrue(qNames.length==2);
assertTrue(qNames[0].equals(qname1));
assertTrue(qNames[1].equals(qname2));
return qNames;
}
public XMLGregorianCalendar[] testCalendarList1(XMLGregorianCalendar[] cals) {
assertTrue(cals.length == 2);
assertTrue(cals[0].compare(bday) == 0);
assertTrue(cals[1].compare(holiday) == 0);
return cals;
}
public String[] testStringList2(String[] arg20) {
assertTrue(arg20.length==2);
assertTrue(arg20[0].equals("Hello"));
assertTrue(arg20[1].equals("World"));
return arg20;
}
public BigInteger[] testBigIntegerList3(BigInteger[] arg30) {
assertTrue(arg30.length==2);
assertTrue(arg30[0].compareTo(bigInt1) == 0);
assertTrue(arg30[1].compareTo(bigInt2) == 0);
return arg30;
}
public Long[] testLongList4(Long[] longs) {
assertTrue(longs.length==3);
assertTrue(longs[0] == 0);
assertTrue(longs[1] == 1);
assertTrue(longs[2] == 2);
return longs;
}
public Enum[] testEnumList5(Enum[] enums) {
assertTrue(enums.length==3);
assertTrue(enums[0] == Enum.ONE);
assertTrue(enums[1] == Enum.TWO);
assertTrue(enums[2] == Enum.THREE);
return enums;
}
public ComplexAll testComplexAll6(ComplexAll arg60) {
// TODO Auto-generated method stub
return null;
}
public String[] testEnumList7(String[] arg70) {
assertTrue(arg70.length==2);
assertTrue(arg70[0].equals("Apple"));
assertTrue(arg70[0].equals("Orange"));
return arg70;
}
private void assertTrue(boolean value) throws RuntimeException {
if (!value) {
RuntimeException re = new RuntimeException();
TestLogger.logger.debug("Test FAILURE=" + re);
throw re;
}
}
public String testHeader(String bodyParam, String headerParam) {
return bodyParam + headerParam;
}
public void testFault() throws RPCFault {
throw new RPCFault("Throw RPCFault", 123);
}
public String testSimpleInOut(Holder<String> simpleInOut) {
return simpleInOut.value;
}
}