public String toString() { return "Phase(" + getName() + ")"; } }
public String toString() { return "Phase(" + getName() + ")"; } }
public String toString() { return "Phase(" + getName() + ")"; } }
public String toString() { return "Phase(" + getName() + ")"; } }
public PhaseInterceptorChain(SortedSet<Phase> ps) { state = State.EXECUTING; isFineLogging = LOG.isLoggable(Level.FINE); int numPhases = ps.size(); phases = new Phase[numPhases]; nameMap = new HashMap<>(); heads = new InterceptorHolder[numPhases]; tails = new InterceptorHolder[numPhases]; hasAfters = new boolean[numPhases]; int idx = 0; for (Phase phase : ps) { phases[idx] = phase; nameMap.put(phase.getName(), idx); ++idx; } }
public PhaseInterceptorChain(SortedSet<Phase> ps) { state = State.EXECUTING; isFineLogging = LOG.isLoggable(Level.FINE); int numPhases = ps.size(); phases = new Phase[numPhases]; nameMap = new HashMap<String, Integer>(); heads = new InterceptorHolder[numPhases]; tails = new InterceptorHolder[numPhases]; hasAfters = new boolean[numPhases]; int idx = 0; for (Phase phase : ps) { phases[idx] = phase; nameMap.put(phase.getName(), idx); ++idx; } }
public PhaseInterceptorChain(SortedSet<Phase> ps) { state = State.EXECUTING; isFineLogging = LOG.isLoggable(Level.FINE); int numPhases = ps.size(); phases = new Phase[numPhases]; nameMap = new HashMap<>(); heads = new InterceptorHolder[numPhases]; tails = new InterceptorHolder[numPhases]; hasAfters = new boolean[numPhases]; int idx = 0; for (Phase phase : ps) { phases[idx] = phase; nameMap.put(phase.getName(), idx); ++idx; } }
public PhaseInterceptorChain(SortedSet<Phase> ps) { state = State.EXECUTING; isFineLogging = LOG.isLoggable(Level.FINE); int numPhases = ps.size(); phases = new Phase[numPhases]; nameMap = new HashMap<String, Integer>(); heads = new InterceptorHolder[numPhases]; tails = new InterceptorHolder[numPhases]; hasAfters = new boolean[numPhases]; int idx = 0; for (Phase phase : ps) { phases[idx] = phase; nameMap.put(phase.getName(), idx); ++idx; } }
public static void setPhases(SortedSet<Phase> list, String start, String end) { Phase startPhase = new Phase(start, 1); Phase endPhase = new Phase(end, 2); Iterator<Phase> iter = list.iterator(); boolean remove = true; while (iter.hasNext()) { Phase p = iter.next(); if (remove && p.getName().equals(startPhase.getName())) { remove = false; } else if (p.getName().equals(endPhase.getName())) { remove = true; } else if (remove) { iter.remove(); } } }
public static void setPhases(SortedSet<Phase> list, String start, String end) { Phase startPhase = new Phase(start, 1); Phase endPhase = new Phase(end, 2); Iterator<Phase> iter = list.iterator(); boolean remove = true; while (iter.hasNext()) { Phase p = iter.next(); if (remove && p.getName().equals(startPhase.getName())) { remove = false; } else if (p.getName().equals(endPhase.getName())) { remove = true; } else if (remove) { iter.remove(); } } }
private Phase getPhase(String name) { for (Phase p : inPhases) { if (p.getName().equals(name)) { return p; } } return null; } }
private void printPhase(int ph, StringBuilder chain) { chain.append(phases[ph].getName()) .append(" ["); InterceptorHolder i = heads[ph]; boolean first = true; while (i != tails[ph].next) { if (first) { first = false; } else { chain.append(", "); } String nm = i.interceptor.getClass().getSimpleName(); if (StringUtils.isEmpty(nm)) { nm = i.interceptor.getId(); } chain.append(nm); i = i.next; } chain.append("]\n"); }
private void printPhase(int ph, StringBuilder chain) { chain.append(phases[ph].getName()) .append(" ["); InterceptorHolder i = heads[ph]; boolean first = true; while (i != tails[ph].next) { if (first) { first = false; } else { chain.append(", "); } String nm = i.interceptor.getClass().getSimpleName(); if (StringUtils.isEmpty(nm)) { nm = i.interceptor.getId(); } chain.append(nm); i = i.next; } chain.append("]\n"); }
private void printPhase(int ph, StringBuilder chain) { chain.append(phases[ph].getName()) .append(" ["); InterceptorHolder i = heads[ph]; boolean first = true; while (i != tails[ph].next) { if (first) { first = false; } else { chain.append(", "); } String nm = i.interceptor.getClass().getSimpleName(); if (StringUtils.isEmpty(nm)) { nm = i.interceptor.getId(); } chain.append(nm); i = i.next; } chain.append("]\n"); }
private void printPhase(int ph, StringBuilder chain) { chain.append(phases[ph].getName()) .append(" ["); InterceptorHolder i = heads[ph]; boolean first = true; while (i != tails[ph].next) { if (first) { first = false; } else { chain.append(", "); } String nm = i.interceptor.getClass().getSimpleName(); if (StringUtils.isEmpty(nm)) { nm = i.interceptor.getId(); } chain.append(nm); i = i.next; } chain.append("]\n"); }
/** * This method will add a DemoInterceptor into every in and every out phase * of the interceptor chains. * * @param provider */ public static void addInterceptors(InterceptorProvider provider) { PhaseManager phases = BusFactory.getDefaultBus().getExtension(PhaseManager.class); for (Phase p : phases.getInPhases()) { provider.getInInterceptors().add(new DemoInterceptor(p.getName())); provider.getInFaultInterceptors().add(new DemoInterceptor(p.getName())); } for (Phase p : phases.getOutPhases()) { provider.getOutInterceptors().add(new DemoInterceptor(p.getName())); provider.getOutFaultInterceptors().add(new DemoInterceptor(p.getName())); } }
private static InterceptorChain getRedeliveryInterceptorChain(Message m, String phase) { Exchange exchange = m.getExchange(); Endpoint ep = exchange.getEndpoint(); Bus bus = exchange.getBus(); PhaseManager pm = bus.getExtension(PhaseManager.class); SortedSet<Phase> phases = new TreeSet<>(pm.getInPhases()); for (Iterator<Phase> it = phases.iterator(); it.hasNext();) { Phase p = it.next(); if (phase.equals(p.getName())) { break; } it.remove(); } PhaseInterceptorChain chain = new PhaseInterceptorChain(phases); List<Interceptor<? extends Message>> il = ep.getInInterceptors(); addInterceptors(chain, il); il = ep.getService().getInInterceptors(); addInterceptors(chain, il); il = ep.getBinding().getInInterceptors(); addInterceptors(chain, il); il = bus.getInInterceptors(); addInterceptors(chain, il); if (ep.getService().getDataBinding() instanceof InterceptorProvider) { il = ((InterceptorProvider)ep.getService().getDataBinding()).getInInterceptors(); addInterceptors(chain, il); } return chain; }