001    package railo.runtime.net.smtp;
002    
003    import java.io.ByteArrayInputStream;
004    import java.io.IOException;
005    import java.io.InputStream;
006    import java.io.OutputStream;
007    
008    import javax.activation.DataSource;
009    
010    public final class StringDataSource implements DataSource {
011    
012            private String text;
013            private String ct;
014            private String charset;
015    
016            public StringDataSource(String text, String ct, String charset) {
017                    this.text=text;
018                    this.ct=ct;
019                    this.charset=charset;
020            }
021    
022            @Override
023            public String getContentType() {
024                    return ct;
025            }
026    
027            @Override
028            public InputStream getInputStream() throws IOException {
029                    return new ByteArrayInputStream(text.getBytes(charset));
030            }
031    
032            @Override
033            public String getName() {
034                    return "StringDataSource";
035            }
036    
037            @Override
038            public OutputStream getOutputStream() throws IOException {
039                    throw new IOException("no access to write");
040            }
041    
042    }