1 /* 2 * $Id: UMORouterCollection.java 7976 2007-08-21 14:26:13Z dirk.olmes $ 3 * -------------------------------------------------------------------------------------- 4 * Copyright (c) MuleSource, Inc. All rights reserved. http://www.mulesource.com 5 * 6 * The software in this package is published under the terms of the CPAL v1.0 7 * license, a copy of which has been included with this distribution in the 8 * LICENSE.txt file. 9 */ 10 11 package org.mule.umo.routing; 12 13 import org.mule.management.stats.RouterStatistics; 14 15 import java.util.List; 16 17 /** 18 * <code>UMORouterCollection</code> defines the interface for a MessageRouter that 19 * manages more than one router. A {@link UMORouterCatchAllStrategy} can be set on 20 * this router to route unwanted or unfiltered events. If a catch strategy is not 21 * set, the router just returns null. 22 */ 23 24 public interface UMORouterCollection 25 { 26 void setRouters(List routers); 27 28 List getRouters(); 29 30 void addRouter(UMORouter router); 31 32 UMORouter removeRouter(UMORouter router); 33 34 UMORouterCatchAllStrategy getCatchAllStrategy(); 35 36 void setCatchAllStrategy(UMORouterCatchAllStrategy catchAllStrategy); 37 38 boolean isMatchAll(); 39 40 RouterStatistics getStatistics(); 41 42 void setStatistics(RouterStatistics stat); 43 44 void setMatchAll(boolean matchAll); 45 }