Clover coverage report - Maven Clover report
Coverage timestamp: Sun Aug 20 2006 04:01:44 PDT
file stats: LOC: 76   Methods: 6
NCLOC: 47   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
MimePartDataSource.java 83.3% 70.6% 50% 69%
coverage coverage
 1    /**
 2    *
 3    * Copyright 2003-2006 The Apache Software Foundation
 4    *
 5    * Licensed under the Apache License, Version 2.0 (the "License");
 6    * you may not use this file except in compliance with the License.
 7    * You may obtain a copy of the License at
 8    *
 9    * http://www.apache.org/licenses/LICENSE-2.0
 10    *
 11    * Unless required by applicable law or agreed to in writing, software
 12    * distributed under the License is distributed on an "AS IS" BASIS,
 13    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 14    * See the License for the specific language governing permissions and
 15    * limitations under the License.
 16    */
 17   
 18    package javax.mail.internet;
 19   
 20    import java.io.IOException;
 21    import java.io.InputStream;
 22    import java.io.OutputStream;
 23    import java.net.UnknownServiceException;
 24    import javax.activation.DataSource;
 25    import javax.mail.MessageAware;
 26    import javax.mail.MessageContext;
 27    import javax.mail.MessagingException;
 28   
 29    /**
 30    * @version $Rev: 421852 $ $Date: 2006-07-14 03:02:19 -0700 (Fri, 14 Jul 2006) $
 31    */
 32    public class MimePartDataSource implements DataSource, MessageAware {
 33    // the part that provides the data form this data source.
 34    protected MimePart part;
 35   
 36  7 public MimePartDataSource(MimePart part) {
 37  7 this.part = part;
 38    }
 39   
 40  7 public InputStream getInputStream() throws IOException {
 41  7 try {
 42  7 InputStream stream;
 43  7 if (part instanceof MimeMessage) {
 44  2 stream = ((MimeMessage) part).getContentStream();
 45  5 } else if (part instanceof MimeBodyPart) {
 46  5 stream = ((MimeBodyPart) part).getContentStream();
 47    } else {
 48  0 throw new MessagingException("Unknown part");
 49    }
 50  6 String encoding = part.getEncoding();
 51  6 return encoding == null ? stream : MimeUtility.decode(stream, encoding);
 52    } catch (MessagingException e) {
 53  1 throw (IOException) new IOException(e.getMessage()).initCause(e);
 54    }
 55    }
 56   
 57  0 public OutputStream getOutputStream() throws IOException {
 58  0 throw new UnknownServiceException();
 59    }
 60   
 61  14 public String getContentType() {
 62  14 try {
 63  14 return part.getContentType();
 64    } catch (MessagingException e) {
 65  0 return null;
 66    }
 67    }
 68   
 69  0 public String getName() {
 70  0 return "";
 71    }
 72   
 73  0 public synchronized MessageContext getMessageContext() {
 74  0 return new MessageContext(part);
 75    }
 76    }