1 package org.apache.axis2.phaserule;2 3 import org.apache.axis2.AbstractTestCase;4 import org.apache.axis2.description.HandlerDescription;5 import org.apache.axis2.description.PhaseRule;6 import org.apache.axis2.engine.AxisConfiguration;7 import org.apache.axis2.engine.AxisConfigurationImpl;8 import org.apache.axis2.engine.Handler;9 import org.apache.axis2.phaseresolver.PhaseHolder;10 11 import javax.xml.namespace.QName ;12 import java.util.ArrayList ;13 14 /**15 * Created by IntelliJ IDEA.16 * Author : Deepal Jayasinghe17 * Date: Apr 26, 200518 * Time: 4:31:18 PM19 */20 public class PhaseRuleTest extends AbstractTestCase {21 22 PhaseRuleTest phaserul;23 AxisConfiguration axisSytem;24 25 public PhaseRuleTest(String testName) {26 super(testName);27 }28 29 public void testPhaseRules() throws Exception {30 super.setUp();31 //TODO fix me32 phaserul = new PhaseRuleTest("");33 axisSytem = new AxisConfigurationImpl();34 ArrayList inPhase = axisSytem.getInPhasesUptoAndIncludingPostDispatch();35 36 Handler han = null;//(Handler)Class.forName("org.apache.axis2.handlers.AbstractHandler",true, Thread.currentThread().getContextClassLoader()).newInstance();37 PhaseHolder ph = new PhaseHolder(inPhase);38 39 HandlerDescription hm = new HandlerDescription();40 hm.setClassName("org.apache.axis2.handlers.AbstractHandler");41 Handler h1 = new PhaseRuleHandlers();42 h1.init(hm);43 hm.setHandler(h1);44 hm.setName(new QName ("H1"));45 PhaseRule rule = new PhaseRule();46 rule.setPhaseName("PreDispatch");47 rule.setPhaseFirst(true);48 hm.setRules(rule);49 ph.addHandler(hm);50 51 HandlerDescription hm1 = new HandlerDescription();52 hm1.setClassName("org.apache.axis2.handlers.AbstractHandler");53 Handler h2 = new PhaseRuleHandlers();54 h2.init(hm1);55 hm1.setHandler(h2);56 hm1.setName(new QName ("H2"));57 PhaseRule rule1 = new PhaseRule();58 rule1.setPhaseName("PreDispatch");59 rule1.setAfter("H1");60 hm1.setRules(rule1);61 ph.addHandler(hm1);62 63 HandlerDescription hm2 = new HandlerDescription();64 hm2.setClassName("org.apache.axis2.handlers.AbstractHandler");65 Handler h3 = new PhaseRuleHandlers();66 h3.init(hm2);67 hm2.setHandler(h3);68 hm2.setName(new QName ("H3"));69 PhaseRule rule2 = new PhaseRule();70 rule2.setPhaseName("PreDispatch");71 rule2.setAfter("H1");72 rule2.setBefore("H2");73 hm2.setRules(rule2);74 ph.addHandler(hm2);75 76 HandlerDescription hm3 = new HandlerDescription();77 hm3.setClassName("org.apache.axis2.handlers.AbstractHandler");78 Handler h4 = new PhaseRuleHandlers();79 h4.init(hm3);80 hm3.setHandler(h4);81 hm3.setName(new QName ("H4"));82 PhaseRule rule3 = new PhaseRule();83 rule3.setPhaseName("Dispatch");84 hm3.setRules(rule3);85 ph.addHandler(hm3);86 87 88 /*ArrayList oh = ph.getOrderHandler();89 for (int i = 0; i < oh.size(); i++) {90 HandlerDescription metadata = (HandlerDescription) oh.get(i);91 System.out.println("Name:" + metadata.getName().getLocalPart());92 }*/93 }94 }95