1 /* 2 * $Id: UMOBaseTransformer.java 7963 2007-08-21 08:53:15Z 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 package org.mule.umo.transformer; 11 12 import org.mule.umo.endpoint.UMOImmutableEndpoint; 13 import org.mule.umo.lifecycle.Initialisable; 14 15 /** 16 * <code>UMOTransformer</code> can be chained together to covert message payloads from one 17 * object type to another. 18 19 */ 20 public interface UMOBaseTransformer extends Initialisable, Cloneable 21 { 22 /** 23 * The endpoint that this transformer is attached to 24 * @return the endpoint associated with the transformer 25 */ 26 UMOImmutableEndpoint getEndpoint(); 27 28 /** 29 * Sets the endpoint associated with with this connector 30 * @param endpoint sets the endpoint associated with the transfromer 31 */ 32 void setEndpoint(UMOImmutableEndpoint endpoint); 33 34 /** 35 * @param newName the logical name for the transformer 36 */ 37 void setName(String newName); 38 39 /** 40 * @return the logical name of the transformer 41 */ 42 String getName(); 43 44 // TODO RM*: This can be removed for Mule 2.0 (we'll use Spring bean prototypes) 45 Object clone() throws CloneNotSupportedException; 46 47 }