1 package org.apache.axis2.phaserule;2 3 import junit.framework.TestCase;4 import org.apache.axis2.context.ConfigurationContext;5 import org.apache.axis2.context.MessageContext;6 import org.apache.axis2.description.HandlerDescription;7 import org.apache.axis2.description.PhaseRule;8 import org.apache.axis2.engine.AxisConfigurationImpl;9 import org.apache.axis2.engine.AxisFault;10 import org.apache.axis2.engine.Handler;11 import org.apache.axis2.engine.Phase;12 import org.apache.axis2.phaseresolver.PhaseHolder;13 14 import javax.xml.namespace.QName ;15 import java.util.ArrayList ;16 17 /*18 * Copyright 2004,2005 The Apache Software Foundation.19 *20 * Licensed under the Apache License, Version 2.0 (the "License");21 * you may not use this file except in compliance with the License.22 * You may obtain a copy of the License at23 *24 * http://www.apache.org/licenses/LICENSE-2.025 *26 * Unless required by applicable law or agreed to in writing, software27 * distributed under the License is distributed on an "AS IS" BASIS,28 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.29 * See the License for the specific language governing permissions and30 * limitations under the License.31 *32 * 33 */34 35 /**36 * Author : Deepal Jayasinghe37 * Date: May 20, 200538 * Time: 2:43:27 PM39 */40 public class InvalidPhaseFirstRulesTest extends TestCase{41 42 public void testInvalidPhaseFirst1() {43 try {44 ArrayList phases = new ArrayList ();45 Phase p1 = new Phase("PhaseA");46 phases.add(p1);47 Phase p2 = new Phase("PhaseB");48 phases.add(p2);49 50 MessageContext msg = new MessageContext(new ConfigurationContext(new AxisConfigurationImpl()));51 52 PhaseHolder ph = new PhaseHolder(phases);53 HandlerDescription hm = new HandlerDescription();54 hm.setClassName("org.apache.axis2.phaserule.PhaseRuleHandlers");55 Handler h1 = new PhaseRuleHandlers();56 h1.init(hm);57 ((PhaseRuleHandlers) h1).setName(new QName ("PhaseFirstHnadler"));58 hm.setHandler(h1);59 hm.setName(new QName ("H1"));60 PhaseRule rule = new PhaseRule();61 rule.setPhaseName("PhaseA");62 rule.setPhaseFirst(true);63 rule.setBefore("H2");64 hm.setRules(rule);65 ph.addHandler(hm);66 67 HandlerDescription hm1 = new HandlerDescription();68 hm1.setClassName("org.apache.axis2.phaserule.PhaseRuleHandlers");69 Handler h2 = new PhaseRuleHandlers();70 ((PhaseRuleHandlers) h2).setName(new QName ("Second Handler"));71 h2.init(hm1);72 hm1.setHandler(h2);73 hm1.setName(new QName ("H2"));74 PhaseRule rule1 = new PhaseRule();75 rule1.setPhaseName("PhaseA");76 hm1.setRules(rule1);77 ph.addHandler(hm1);78 fail("Handler with PhaseFirst can not have any before or after proprty error in ");79 } catch (AxisFault axisFault) {80 return;81 }82 83 }84 }85