001    package com.hammurapi.render;
002    
003    import com.hammurapi.common.Context;
004    import com.hammurapi.convert.AtomicConverter;
005    import com.hammurapi.convert.Converter;
006    
007    /**
008     * Converts objects to MultiFileJxpRenderer.
009     * @author Pavel Vlasov
010     *
011     */
012    public class OutputStreamRendererAtomicConverter implements AtomicConverter<Object, OutputStreamRenderer> {
013            
014            @Override
015            public OutputStreamRenderer convert(Object source, Converter master, Context context, ClassLoader classLoader) {
016                    WriterRenderer wr = master.convert(source, WriterRenderer.class, context);
017                    return wr==null ? null : new OutputStreamRendererAdapter(wr);
018            }
019    
020            @Override
021            public Class<Object> getSourceType() {
022                    return Object.class;
023            }
024    
025            @Override
026            public Class<? extends OutputStreamRenderer> getTargetType() {
027                    return OutputStreamRenderer.class;
028            }
029    
030    }