1 /* 2 * $Id: UMOInterceptor.java 3798 2006-11-04 04:07:14Z aperepel $ 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 MuleSource MPL 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; 12 13 /** 14 * <code>UMOInterceptor</code> is based on a similar concept of servlet filters and 15 * works much the same way. This method is more commonally known as the interceptor 16 * pattern and it allows for pre and processing of invocations on the object being 17 * intercepted. 18 * 19 * @author <a HREF="mailto:ross.mason@symphonysoft.com">Ross Mason</a> 20 * @version $Revision: 3798 $ 21 */ 22 public interface UMOInterceptor 23 { 24 /** 25 * Invoked by the previous interceptor in the chain 26 * 27 * @param invocation the invocation containing info about the current message and 28 * component 29 * @return A result message that may have been altered by this invocation 30 * @throws UMOException if the invocation fails 31 */ 32 UMOMessage intercept(Invocation invocation) throws UMOException; 33 } 34