/******************************************************************************* * Copyright (c) 2006-2010 eBay Inc. All Rights Reserved. * 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 *******************************************************************************/ package org.ebayopensource.turmeric.runtime.tests.service1.sample.handlers; import org.ebayopensource.turmeric.runtime.common.impl.handlers.BaseHandler; import org.ebayopensource.turmeric.runtime.common.pipeline.Message; import org.ebayopensource.turmeric.runtime.common.pipeline.MessageContext; import org.ebayopensource.turmeric.runtime.tests.service1.exceptions.ServiceException; import org.ebayopensource.turmeric.runtime.tests.service1.sample.Test1Constants; import org.ebayopensource.turmeric.runtime.tests.service1.sample.errors.TestServerErrorTypes; public class ClientExceptionTestHandler extends BaseHandler { public void invoke(MessageContext ctx) throws org.ebayopensource.turmeric.runtime.common.exceptions.ServiceException { boolean needTest1Exception = false; boolean needTest1ServiceException = false; Message soaMsg = ctx.getRequestMessage(); try { needTest1Exception = soaMsg.hasTransportHeader( Test1Constants.TR_HDR_TEST1_EXCEPTION); } catch (ServiceException e) { throw new IllegalStateException("Enexpected exception: " + e.toString(), e); } try { needTest1ServiceException = soaMsg.hasTransportHeader( Test1Constants.TR_HDR_TEST1_SERVICE_EXCEPTION); } catch (ServiceException e) { throw new IllegalStateException("Enexpected exception: " + e.toString(), e); } if (needTest1Exception) { throw new NullPointerException(); } if (needTest1ServiceException) { throw new ServiceException(TestServerErrorTypes.TEST1_SERVICE_EXCEPTION, new Object[] {"my_program_data"}); } } }