Examples of BodyDescriptor


Examples of org.apache.james.mime4j.BodyDescriptor

* @version $Id: BodyDescriptorTest.java,v 1.2 2004/10/02 12:41:11 ntherning Exp $
*/
public class BodyDescriptorTest extends TestCase {

    public void testGetParameters() {
        BodyDescriptor bd = null;
       
        bd = new BodyDescriptor();
        bd.addField("Content-Type ", "text/plain; charset=ISO-8859-1; "
                + "boundary=foo; param1=value1; param2=value2; param3=value3");
        assertEquals(3, bd.getParameters().size());
        assertEquals("value1", (String) bd.getParameters().get("param1"));
        assertEquals("value2", (String) bd.getParameters().get("param2"));
        assertEquals("value3", (String) bd.getParameters().get("param3"));
       
        bd = new BodyDescriptor();
        bd.addField("Content-Type ", "text/plain; param1=value1; param2=value2;"
                     + " param3=value3");
        assertEquals(3, bd.getParameters().size());
        assertEquals("value1", (String) bd.getParameters().get("param1"));
        assertEquals("value2", (String) bd.getParameters().get("param2"));
        assertEquals("value3", (String) bd.getParameters().get("param3"));
       
        bd = new BodyDescriptor();
        bd.addField("Content-Type ", "text/plain; "
                + "param1= \" value with\tspaces \" ; "
                + "param2=\"\\\"value4 with escaped \\\" \\\"\";");
        assertEquals(2, bd.getParameters().size());
        assertEquals(" value with\tspaces ", (String) bd.getParameters().get("param1"));
        assertEquals("\"value4 with escaped \" \"", (String) bd.getParameters().get("param2"));
       
        /*
         * Make sure escaped characters (except ") are still escaped.
         * The parameter value should be \n\"
         */
        bd = new BodyDescriptor();
        bd.addField("Content-Type ", "text/plain; param=\"\\n\\\\\\\"\"");
        assertEquals(1, bd.getParameters().size());
        assertEquals("\\n\\\"", (String) bd.getParameters().get("param"));
    }
View Full Code Here

Examples of org.apache.james.mime4j.BodyDescriptor

        assertEquals(1, bd.getParameters().size());
        assertEquals("\\n\\\"", (String) bd.getParameters().get("param"));
    }
   
    public void testAddField() {
        BodyDescriptor bd = null;
       
        /*
         * Make sure that only the first Content-Type header added is used.
         */
        bd = new BodyDescriptor();
        bd.addField("Content-Type ", "text/plain; charset=ISO-8859-1");
        assertEquals("text/plain", bd.getMimeType());
        assertEquals("iso-8859-1", bd.getCharset());
        bd.addField("Content-Type ", "text/html; charset=us-ascii");
        assertEquals("text/plain", bd.getMimeType());
        assertEquals("iso-8859-1", bd.getCharset());
    }
View Full Code Here

Examples of org.apache.james.mime4j.BodyDescriptor

        assertEquals("text/plain", bd.getMimeType());
        assertEquals("iso-8859-1", bd.getCharset());
    }
   
    public void testGetMimeType() {
        BodyDescriptor bd = null;
       
        bd = new BodyDescriptor();
        bd.addField("Content-Type ", "text/PLAIN");
        assertEquals("text/plain", bd.getMimeType());
       
        bd = new BodyDescriptor();
        bd.addField("Content-Type ", "text/PLAIN;");
        assertEquals("text/plain", bd.getMimeType());
       
        bd = new BodyDescriptor();
        bd.addField("content-type", "   TeXt / html   ");
        assertEquals("text/html", bd.getMimeType());
       
        bd = new BodyDescriptor();
        bd.addField("CONTENT-TYPE", "   x-app/yada ;  param = yada");
        assertEquals("x-app/yada", bd.getMimeType());
       
        bd = new BodyDescriptor();
        bd.addField("CONTENT-TYPE", "   yada");
        assertEquals("text/plain", bd.getMimeType());
       
        /*
         * Make sure that only the first Content-Type header added is used.
         */
        bd = new BodyDescriptor();
        bd.addField("Content-Type ", "text/plain");
        assertEquals("text/plain", bd.getMimeType());
        bd.addField("Content-Type ", "text/html");
        assertEquals("text/plain", bd.getMimeType());
       
        /*
         * Implicit mime types.
         */
        BodyDescriptor child = null;
        BodyDescriptor parent = null;
       
        parent = new BodyDescriptor();
        parent.addField("Content-Type", "mutlipart/alternative; boundary=foo");
       
        child = new BodyDescriptor(parent);
        assertEquals("text/plain", child.getMimeType());
        child.addField("Content-Type", " child/type");
        assertEquals("child/type", child.getMimeType());
       
        parent = new BodyDescriptor();
        parent.addField("Content-Type", "multipart/digest; boundary=foo");
       
        child = new BodyDescriptor(parent);
        assertEquals("message/rfc822", child.getMimeType());
        child.addField("Content-Type", " child/type");
        assertEquals("child/type", child.getMimeType());
       
    }
View Full Code Here

Examples of org.apache.james.mime4j.BodyDescriptor

        assertEquals("child/type", child.getMimeType());
       
    }
   
    public void testParameters() {
        BodyDescriptor bd = null;

        /*
         * Test charset.
         */
        bd = new BodyDescriptor();
        assertEquals("us-ascii", bd.getCharset());
        bd.addField("Content-Type ", "some/type; charset=ISO-8859-1");
        assertEquals("iso-8859-1", bd.getCharset());
       
        bd = new BodyDescriptor();
        assertEquals("us-ascii", bd.getCharset());
        bd.addField("Content-Type ", "some/type");
        assertEquals("us-ascii", bd.getCharset());
       
        /*
         * Test boundary.
         */
        bd = new BodyDescriptor();
        bd.addField("Content-Type", "text/html; boundary=yada yada");
        assertNull(bd.getBoundary());

        bd = new BodyDescriptor();
        bd.addField("Content-Type", "multipart/yada; boundary=yada");
        assertEquals("yada", bd.getBoundary());

        /*
         * Test some weird parameters.
         */
        bd = new BodyDescriptor();
        bd.addField("Content-Type", "multipart/yada; boundary=yada yada");
        assertEquals("yada", bd.getBoundary());
       
        bd = new BodyDescriptor();
        bd.addField("Content-Type", "multipart/yada; boUNdarY= ya:*da; \tcharset\t =  big5");
        assertEquals("ya:*da", bd.getBoundary());
        assertEquals("big5", bd.getCharset());
       
        bd = new BodyDescriptor();
        bd.addField("Content-Type", "multipart/yada; boUNdarY= \"ya \\\"\\\"\tda \\\"\"; "
                            + "\tcharset\t =  \"\\\"hepp\\\"  =us\t-ascii\"");
        assertEquals("ya \"\"\tda \"", bd.getBoundary());
        assertEquals("\"hepp\"  =us\t-ascii", bd.getCharset());
       
    }
View Full Code Here

Examples of org.apache.james.mime4j.descriptor.BodyDescriptor

        mimeTokenStream.parse(is);
        OUTER: for (;;) {
            int state = mimeTokenStream.getState();
            switch (state) {
                case MimeTokenStream.T_BODY:
                    BodyDescriptor desc = mimeTokenStream.getBodyDescriptor();
                    InputStream bodyContent;
                    if (contentDecoding) {
                        bodyContent = mimeTokenStream.getDecodedInputStream();
                    } else {
                        bodyContent = mimeTokenStream.getInputStream();
View Full Code Here

Examples of org.apache.james.mime4j.descriptor.BodyDescriptor

     * @return Data stream, depending on the current state.
     * @throws IllegalStateException {@link #getState()} returns an
     *   invalid value.
     */
    public InputStream getDecodedInputStream() {
        BodyDescriptor bodyDescriptor = getBodyDescriptor();
        String transferEncoding = bodyDescriptor.getTransferEncoding();
        InputStream dataStream = currentStateMachine.getContentStream();
        if (MimeUtil.isBase64Encoding(transferEncoding)) {
            dataStream = new Base64InputStream(dataStream);
        } else if (MimeUtil.isQuotedPrintableEncoded(transferEncoding)) {
            dataStream = new QuotedPrintableInputStream(dataStream);
View Full Code Here

Examples of org.apache.james.mime4j.descriptor.BodyDescriptor

     * for decoding the charset
     * @throws IllegalCharsetNameException if the charset name specified
     * in the mime type is illegal
     */
    public Reader getReader() {
        final BodyDescriptor bodyDescriptor = getBodyDescriptor();
        final String mimeCharset = bodyDescriptor.getCharset();
        final Charset charset;
        if (mimeCharset == null || "".equals(mimeCharset)) {
            charset = Charset.forName("US-ASCII");
        } else {
            charset = Charset.forName(mimeCharset);
View Full Code Here

Examples of org.apache.james.mime4j.descriptor.BodyDescriptor

        mimeTokenStream.parse(is);
        OUTER: for (;;) {
            int state = mimeTokenStream.getState();
            switch (state) {
                case MimeTokenStream.T_BODY:
                    BodyDescriptor desc = mimeTokenStream.getBodyDescriptor();
                    InputStream bodyContent;
                    if (contentDecoding) {
                        bodyContent = mimeTokenStream.getDecodedInputStream();
                    } else {
                        bodyContent = mimeTokenStream.getInputStream();
View Full Code Here

Examples of org.apache.james.mime4j.descriptor.BodyDescriptor

        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_FIELD), MimeTokenStream.stateToString(parser.next()));
        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_FIELD), MimeTokenStream.stateToString(parser.next()));
        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_END_HEADER), MimeTokenStream.stateToString(parser.next()));
        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_START_MULTIPART), MimeTokenStream.stateToString(parser.next()));
        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_PREAMBLE), MimeTokenStream.stateToString(parser.next()));
        BodyDescriptor descriptor = parser.getBodyDescriptor();
        assertNotNull(descriptor);
        assertEquals("1729", descriptor.getBoundary());
        assertEquals( "multipart/alternative", descriptor.getMimeType());
    }
View Full Code Here

Examples of org.apache.james.mime4j.descriptor.BodyDescriptor

        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_END_HEADER), MimeTokenStream.stateToString(parser.next()));
        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_BODY), MimeTokenStream.stateToString(parser.next()));
        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_END_BODYPART), MimeTokenStream.stateToString(parser.next()));
        assertEquals(MimeTokenStream.stateToString(MimeTokenStream.T_EPILOGUE), MimeTokenStream.stateToString(parser.next()));

        BodyDescriptor descriptor = parser.getBodyDescriptor();
        assertNotNull(descriptor);
        assertEquals("1729", descriptor.getBoundary());
        assertEquals( "multipart/alternative", descriptor.getMimeType());
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.