001    /*
002     @license.text@
003      */
004    package biz.hammurapi.convert;
005    
006    import biz.hammurapi.config.Context;
007    
008    /**
009     * Part of composite decorators.
010     * @author Pavel Vlasov
011     *
012     * @version $Revision: 1.1 $
013     */
014    public interface AtomicDecorator {
015            
016            /**
017             * @return Type which converter converts from.
018             */
019            Class getSourceType();
020            
021            /**
022             * Creates decoration.
023             * @param source Source object.
024             * @param master Master decorator to delegate decoration 
025             * of object parts.
026             * @return Decoration or null.
027             */
028            Object decorate(Object source, Context context, Decorator master);
029    }