You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@commons.apache.org by tn...@apache.org on 2015/05/23 08:51:00 UTC
svn commit: r952406 [23/42] - in
/websites/production/commons/content/proper/commons-email: ./ apidocs/
apidocs/org/apache/commons/mail/ apidocs/org/apache/commons/mail/class-use/
apidocs/org/apache/commons/mail/resolver/ apidocs/org/apache/commons/mai...
Added: websites/production/commons/content/proper/commons-email/jacoco/index.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/index.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/index.html Sat May 23 06:50:57 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href=".resources/report.css" type="text/css"/><link rel="shortcut icon" href=".resources/report.gif" type="image/gif"/><title>Apache Commons Email</title><script type="text/javascript" src=".resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href=".sessions.html" class="el_session">Sessions</a></span><span class="el_report">Apache Commons Email</span></div><h1>Apache Commons Email</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed
Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">1,301 of 4,314</td><td class="ctr2">70%</td><td class="bar">179 of 492</td><td class="ctr2">64%</td><td class="ctr1">187</td><td class="ctr2"
>476</td><td class="ctr1">291</td><td class="ctr2">1,036</td><td class="ctr1">50</td><td class="ctr2">230</td><td class="ctr1">2</td><td class="ctr2">19</td></tr></tfoot><tbody><tr><td id="a0"><a href="org.apache.commons.mail/index.html" class="el_package">org.apache.commons.mail</a></td><td class="bar" id="b0"><img src=".resources/redbar.gif" width="40" height="10" title="1,108" alt="1,108"/><img src=".resources/greenbar.gif" width="79" height="10" title="2,207" alt="2,207"/></td><td class="ctr2" id="c2">67%</td><td class="bar" id="d0"><img src=".resources/redbar.gif" width="45" height="10" title="138" alt="138"/><img src=".resources/greenbar.gif" width="74" height="10" title="226" alt="226"/></td><td class="ctr2" id="e2">62%</td><td class="ctr1" id="f0">146</td><td class="ctr2" id="g0">350</td><td class="ctr1" id="h0">249</td><td class="ctr2" id="i0">803</td><td class="ctr1" id="j0">42</td><td class="ctr2" id="k0">168</td><td class="ctr1" id="l0">2</td><td class="ctr2" id="m0">12<
/td></tr><tr><td id="a2"><a href="org.apache.commons.mail.util/index.html" class="el_package">org.apache.commons.mail.util</a></td><td class="bar" id="b1"><img src=".resources/redbar.gif" width="4" height="10" title="119" alt="119"/><img src=".resources/greenbar.gif" width="15" height="10" title="426" alt="426"/></td><td class="ctr2" id="c1">78%</td><td class="bar" id="d1"><img src=".resources/redbar.gif" width="8" height="10" title="27" alt="27"/><img src=".resources/greenbar.gif" width="16" height="10" title="49" alt="49"/></td><td class="ctr2" id="e1">64%</td><td class="ctr1" id="f1">23</td><td class="ctr2" id="g1">70</td><td class="ctr1" id="h1">23</td><td class="ctr2" id="i1">124</td><td class="ctr1" id="j2">3</td><td class="ctr2" id="k1">32</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m2">2</td></tr><tr><td id="a1"><a href="org.apache.commons.mail.resolver/index.html" class="el_package">org.apache.commons.mail.resolver</a></td><td class="bar" id="b2"><img src=".reso
urces/redbar.gif" width="2" height="10" title="74" alt="74"/><img src=".resources/greenbar.gif" width="13" height="10" title="380" alt="380"/></td><td class="ctr2" id="c0">84%</td><td class="bar" id="d2"><img src=".resources/redbar.gif" width="4" height="10" title="14" alt="14"/><img src=".resources/greenbar.gif" width="12" height="10" title="38" alt="38"/></td><td class="ctr2" id="e0">73%</td><td class="ctr1" id="f2">18</td><td class="ctr2" id="g2">56</td><td class="ctr1" id="h2">19</td><td class="ctr2" id="i2">109</td><td class="ctr1" id="j1">5</td><td class="ctr2" id="k2">30</td><td class="ctr1" id="l2">0</td><td class="ctr2" id="m1">5</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/index.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/index.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/index.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/jacoco.csv
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/jacoco.csv (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/jacoco.csv Sat May 23 06:50:57 2015
@@ -0,0 +1,20 @@
+GROUP,PACKAGE,CLASS,INSTRUCTION_MISSED,INSTRUCTION_COVERED,BRANCH_MISSED,BRANCH_COVERED,LINE_MISSED,LINE_COVERED,COMPLEXITY_MISSED,COMPLEXITY_COVERED,METHOD_MISSED,METHOD_COVERED
+Apache Commons Email,org.apache.commons.mail.resolver,DataSourceUrlResolver,16,74,5,9,5,20,6,7,1,5
+Apache Commons Email,org.apache.commons.mail.resolver,DataSourceCompositeResolver,12,100,1,9,1,22,1,9,0,5
+Apache Commons Email,org.apache.commons.mail.resolver,DataSourceClassPathResolver,27,104,5,9,7,23,6,8,2,5
+Apache Commons Email,org.apache.commons.mail.resolver,DataSourceBaseResolver,0,35,1,3,0,10,1,7,0,6
+Apache Commons Email,org.apache.commons.mail.resolver,DataSourceFileResolver,19,67,2,8,6,15,4,7,2,4
+Apache Commons Email,org.apache.commons.mail.util,MimeMessageUtils,98,46,17,3,18,15,13,3,3,3
+Apache Commons Email,org.apache.commons.mail.util,MimeMessageParser,21,380,10,46,5,86,10,44,0,26
+Apache Commons Email,org.apache.commons.mail,EmailConstants,3,0,0,0,2,0,1,0,1,0
+Apache Commons Email,org.apache.commons.mail,HtmlEmail,323,326,25,35,54,82,23,19,3,9
+Apache Commons Email,org.apache.commons.mail,HtmlEmail.InlineImage,29,15,4,0,9,6,6,2,4,2
+Apache Commons Email,org.apache.commons.mail,EmailAttachment,0,50,0,0,0,20,0,11,0,11
+Apache Commons Email,org.apache.commons.mail,MultiPartEmail,201,249,13,21,45,76,19,21,6,17
+Apache Commons Email,org.apache.commons.mail,Email,237,1151,44,124,61,262,48,116,14,66
+Apache Commons Email,org.apache.commons.mail,EmailUtils,52,237,22,36,10,57,19,19,1,8
+Apache Commons Email,org.apache.commons.mail,ByteArrayDataSource,204,0,26,0,51,0,22,0,9,0
+Apache Commons Email,org.apache.commons.mail,DefaultAuthenticator,0,13,0,0,0,4,0,2,0,2
+Apache Commons Email,org.apache.commons.mail,SimpleEmail,0,17,0,2,0,5,0,3,0,2
+Apache Commons Email,org.apache.commons.mail,ImageHtmlEmail,12,136,4,8,3,36,4,8,0,6
+Apache Commons Email,org.apache.commons.mail,EmailException,47,13,0,0,14,6,4,3,4,3
Added: websites/production/commons/content/proper/commons-email/jacoco/jacoco.xml
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/jacoco.xml (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/jacoco.xml Sat May 23 06:50:57 2015
@@ -0,0 +1 @@
[... 3 lines stripped ...]
Propchange: websites/production/commons/content/proper/commons-email/jacoco/jacoco.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/jacoco.xml
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/jacoco.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.html Sat May 23 06:50:57 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceBaseResolver</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_class">DataSourceBaseResolver</span></div><h1>DataSourceBaseResolver</h1><table class="coverage" cellspacing="0" id="coveraget
able"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 35</td><td class="ctr2">100%</td><td class="bar">1 of 4</td><td class="ctr2">75%</td><td class="ctr1">1</td><td class="ctr2">
8</td><td class="ctr1">0</td><td class="ctr2">10</td><td class="ctr1">0</td><td class="ctr2">6</td></tr></tfoot><tbody><tr><td id="a4"><a href="DataSourceBaseResolver.java.html#L90" class="el_method">isHttpUrl(String)</a></td><td class="bar" id="b0"><img src="../.resources/greenbar.gif" width="120" height="10" title="12" alt="12"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="30" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="90" height="10" title="3" alt="3"/></td><td class="ctr2" id="e0">75%</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">3</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="DataSourceBaseResolver.java.html#L36" class="el_method">DataSourceBaseResolver()</a></td><td class="bar" id="b1"><img src="../.resources/greenbar.gif" width="60" height="10" title="6" alt="
6"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i0">3</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="DataSourceBaseResolver.java.html#L46" class="el_method">DataSourceBaseResolver(boolean)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="60" height="10" title="6" alt="6"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i1">3</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a2"><a href="DataSourceBaseResolver.java.html#L68" class="el_method">isCid(String)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="40" height="10" titl
e="4" alt="4"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a3"><a href="DataSourceBaseResolver.java.html#L79" class="el_method">isFileUrl(String)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="40" height="10" title="4" alt="4"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a5"><a href="DataSourceBaseResolver.java.html#L57" class="el_method">isLenient()</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="30" height="10" title="3"
alt="3"/></td><td class="ctr2" id="c5">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.java.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.java.html Sat May 23 06:50:57 2015
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceBaseResolver.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.source.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_source">DataSourceBaseRes
olver.java</span></div><h1>DataSourceBaseResolver.java</h1><pre class="source lang-java linenums">/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.mail.resolver;
+
+import org.apache.commons.mail.DataSourceResolver;
+
+/**
+ * Base class for various resolvers.
+ *
+ * @since 1.3
+ * @version $Id$
+ */
+public abstract class DataSourceBaseResolver implements DataSourceResolver
+{
+ /** shall we ignore resources not found or complain with an exception */
+ private final boolean lenient;
+
+ /**
+ * Constructor.
+ */
+ public DataSourceBaseResolver()
+<span class="fc" id="L36"> {</span>
+<span class="fc" id="L37"> this.lenient = false;</span>
+<span class="fc" id="L38"> }</span>
+
+ /**
+ * Constructor.
+ *
+ * @param lenient shall we ignore resources not found or throw an exception?
+ */
+ public DataSourceBaseResolver(final boolean lenient)
+<span class="fc" id="L46"> {</span>
+<span class="fc" id="L47"> this.lenient = lenient;</span>
+<span class="fc" id="L48"> }</span>
+
+ /**
+ * Shall we ignore resources not found or throw an exception?
+ *
+ * @return the lenient flag
+ */
+ public boolean isLenient()
+ {
+<span class="fc" id="L57"> return lenient;</span>
+ }
+
+ /**
+ * Is this a content id?
+ *
+ * @param resourceLocation the resource location
+ * @return true if it is a CID
+ */
+ protected boolean isCid(final String resourceLocation)
+ {
+<span class="fc" id="L68"> return resourceLocation.startsWith("cid:");</span>
+ }
+
+ /**
+ * Is this a file URL?
+ *
+ * @param urlString the URL string
+ * @return true if it is a file URL
+ */
+ protected boolean isFileUrl(final String urlString)
+ {
+<span class="fc" id="L79"> return urlString.startsWith("file:/");</span>
+ }
+
+ /**
+ * Is this a HTTP/HTTPS URL?
+ *
+ * @param urlString the URL string
+ * @return true if it is a HTTP/HTTPS URL
+ */
+ protected boolean isHttpUrl(final String urlString)
+ {
+<span class="pc bpc" id="L90" title="1 of 4 branches missed."> return urlString.startsWith("http://") || urlString.startsWith("https://");</span>
+ }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.java.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.java.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceBaseResolver.java.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.html Sat May 23 06:50:57 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceClassPathResolver</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_class">DataSourceClassPathResolver</span></div><h1>DataSourceClassPathResolver</h1><table class="coverage" cellspacing="0
" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">27 of 131</td><td class="ctr2">79%</td><td class="bar">5 of 14</td><td class="ctr2">64%</td><td class="ctr1">6</td>
<td class="ctr2">14</td><td class="ctr1">7</td><td class="ctr2">30</td><td class="ctr1">2</td><td class="ctr2">7</td></tr></tfoot><tbody><tr><td id="a1"><a href="DataSourceClassPathResolver.java.html#L51" class="el_method">DataSourceClassPathResolver(String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="35" height="10" title="19" alt="19"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="24" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">0%</td><td class="ctr1" id="f1">2</td><td class="ctr2" id="g1">2</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i1">3</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="DataSourceClassPathResolver.java.html#L41" class="el_method">DataSourceClassPathResolver()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="11" height="10" title="6" alt="6"/></td><td class="ctr2" id="c6">0%<
/td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h1">3</td><td class="ctr2" id="i2">3</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a6"><a href="DataSourceClassPathResolver.java.html#L84" class="el_method">resolve(String, boolean)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="3" height="10" title="2" alt="2"/><img src="../.resources/greenbar.gif" width="116" height="10" title="62" alt="62"/></td><td class="ctr2" id="c4">97%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="36" height="10" title="3" alt="3"/><img src="../.resources/greenbar.gif" width="84" height="10" title="7" alt="7"/></td><td class="ctr2" id="e1">70%</td><td class="ctr1" id="f0">3</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i0">18</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1<
/td></tr><tr><td id="a2"><a href="DataSourceClassPathResolver.java.html#L63" class="el_method">DataSourceClassPathResolver(String, boolean)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="37" height="10" title="20" alt="20"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d2"><img src="../.resources/greenbar.gif" width="24" height="10" title="2" alt="2"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g2">2</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">3</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="DataSourceClassPathResolver.java.html#L134" class="el_method">getResourceName(String)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="24" height="10" title="13" alt="13"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2"
id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a5"><a href="DataSourceClassPathResolver.java.html#L78" class="el_method">resolve(String)</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="11" height="10" title="6" alt="6"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a3"><a href="DataSourceClassPathResolver.java.html#L72" class="el_method">getClassPathBase()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td clas
s="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.java.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.java.html Sat May 23 06:50:57 2015
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceClassPathResolver.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.source.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_source">DataSourceCl
assPathResolver.java</span></div><h1>DataSourceClassPathResolver.java</h1><pre class="source lang-java linenums">/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.mail.resolver;
+
+import javax.activation.DataSource;
+import javax.activation.FileTypeMap;
+import javax.mail.util.ByteArrayDataSource;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * Creates a <code>DataSource</code> based on an class path.
+ *
+ * @since 1.3
+ * @version $Id$
+ */
+public class DataSourceClassPathResolver extends DataSourceBaseResolver
+{
+ /** the base string of the resource relative to the classpath when resolving relative paths */
+ private final String classPathBase;
+
+ /**
+ * Constructor
+ */
+ public DataSourceClassPathResolver()
+<span class="nc" id="L41"> {</span>
+<span class="nc" id="L42"> this.classPathBase = "/";</span>
+<span class="nc" id="L43"> }</span>
+
+ /**
+ * Constructor.
+ *
+ * @param classPathBase a base class path
+ */
+ public DataSourceClassPathResolver(final String classPathBase)
+<span class="nc" id="L51"> {</span>
+<span class="nc bnc" id="L52" title="All 2 branches missed."> this.classPathBase = classPathBase.endsWith("/") ? classPathBase : classPathBase + "/";</span>
+<span class="nc" id="L53"> }</span>
+
+ /**
+ * Constructor.
+ *
+ * @param classPathBase a base class path
+ * @param lenient shall we ignore resources not found or throw an exception?
+ */
+ public DataSourceClassPathResolver(final String classPathBase, final boolean lenient)
+ {
+<span class="fc" id="L63"> super(lenient);</span>
+<span class="fc bfc" id="L64" title="All 2 branches covered."> this.classPathBase = classPathBase.endsWith("/") ? classPathBase : classPathBase + "/";</span>
+<span class="fc" id="L65"> }</span>
+
+ /**
+ * @return the classPathBase
+ */
+ public String getClassPathBase()
+ {
+<span class="fc" id="L72"> return classPathBase;</span>
+ }
+
+ /** {@inheritDoc} */
+ public DataSource resolve(final String resourceLocation) throws IOException
+ {
+<span class="fc" id="L78"> return resolve(resourceLocation, isLenient());</span>
+ }
+
+ /** {@inheritDoc} */
+ public DataSource resolve(final String resourceLocation, final boolean isLenient) throws IOException
+ {
+<span class="fc" id="L84"> DataSource result = null;</span>
+
+ try
+ {
+<span class="pc bpc" id="L88" title="2 of 4 branches missed."> if (!isCid(resourceLocation) && !isHttpUrl(resourceLocation))</span>
+ {
+<span class="fc" id="L90"> final String mimeType = FileTypeMap.getDefaultFileTypeMap().getContentType(resourceLocation);</span>
+<span class="fc" id="L91"> final String resourceName = getResourceName(resourceLocation);</span>
+<span class="fc" id="L92"> final InputStream is = DataSourceClassPathResolver.class.getResourceAsStream(resourceName);</span>
+
+<span class="fc bfc" id="L94" title="All 2 branches covered."> if (is != null)</span>
+ {
+<span class="fc" id="L96"> final ByteArrayDataSource ds = new ByteArrayDataSource(is, mimeType);</span>
+ // EMAIL-125: set the name of the DataSource to the normalized resource URL
+ // similar to other DataSource implementations, e.g. FileDataSource, URLDataSource
+<span class="fc" id="L99"> ds.setName(DataSourceClassPathResolver.class.getResource(resourceName).toString());</span>
+<span class="fc" id="L100"> result = ds;</span>
+<span class="fc" id="L101"> }</span>
+ else
+ {
+<span class="fc bfc" id="L104" title="All 2 branches covered."> if (isLenient)</span>
+ {
+<span class="fc" id="L106"> return null;</span>
+ }
+<span class="fc" id="L108"> throw new IOException("The following class path resource was not found : " + resourceLocation);</span>
+ }
+ }
+
+
+<span class="fc" id="L113"> return result;</span>
+ }
+<span class="fc" id="L115"> catch (final IOException e)</span>
+ {
+<span class="pc bpc" id="L117" title="1 of 2 branches missed."> if (isLenient)</span>
+ {
+<span class="nc" id="L119"> return null;</span>
+ }
+<span class="fc" id="L121"> throw e;</span>
+ }
+ }
+
+ /**
+ * Returns the resource name for a given resource location.
+ *
+ * @param resourceLocation the resource location
+ * @return {@link #getClassPathBase()} + {@code resourceLocation}
+ * @see #getClassPathBase()
+ */
+ private String getResourceName(final String resourceLocation)
+ {
+<span class="fc" id="L134"> return (getClassPathBase() + resourceLocation).replaceAll("//", "/");</span>
+ }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.java.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.java.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceClassPathResolver.java.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.html Sat May 23 06:50:57 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceCompositeResolver</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_class">DataSourceCompositeResolver</span></div><h1>DataSourceCompositeResolver</h1><table class="coverage" cellspacing="0
" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">12 of 112</td><td class="ctr2">89%</td><td class="bar">1 of 10</td><td class="ctr2">90%</td><td class="ctr1">1</td>
<td class="ctr2">10</td><td class="ctr1">1</td><td class="ctr2">23</td><td class="ctr1">0</td><td class="ctr2">5</td></tr></tfoot><tbody><tr><td id="a4"><a href="DataSourceCompositeResolver.java.html#L89" class="el_method">resolve(String, boolean)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="36" height="10" title="12" alt="12"/><img src="../.resources/greenbar.gif" width="83" height="10" title="27" alt="27"/></td><td class="ctr2" id="c4">69%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="20" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="100" height="10" title="5" alt="5"/></td><td class="ctr2" id="e1">83%</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i0">8</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="DataSourceCompositeResolver.java.html#L76" class="el_method">resolve(String)</a>
</td><td class="bar" id="b1"><img src="../.resources/greenbar.gif" width="73" height="10" title="24" alt="24"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d1"><img src="../.resources/greenbar.gif" width="80" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">4</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="DataSourceCompositeResolver.java.html#L55" class="el_method">DataSourceCompositeResolver(DataSourceResolver[], boolean)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="52" height="10" title="17" alt="17"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">4</td><td class="ctr1" id="j2">0</td><t
d class="ctr2" id="k2">1</td></tr><tr><td id="a0"><a href="DataSourceCompositeResolver.java.html#L42" class="el_method">DataSourceCompositeResolver(DataSourceResolver[])</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="49" height="10" title="16" alt="16"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">4</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a2"><a href="DataSourceCompositeResolver.java.html#L68" class="el_method">getDataSourceResolvers()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="49" height="10" title="16" alt="16"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class=
"ctr2" id="i4">3</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.java.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.java.html Sat May 23 06:50:57 2015
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceCompositeResolver.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.source.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_source">DataSourceCo
mpositeResolver.java</span></div><h1>DataSourceCompositeResolver.java</h1><pre class="source lang-java linenums">/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.mail.resolver;
+
+import org.apache.commons.mail.DataSourceResolver;
+
+import javax.activation.DataSource;
+import java.io.IOException;
+
+/**
+ * A composite data source resolver. It allows to resolve data sources coming from
+ * multiple locations such as the classpath, the file system or an URL.
+ *
+ * @since 1.3
+ * @version $Id$
+ */
+public class DataSourceCompositeResolver extends DataSourceBaseResolver
+{
+ /** the list of resolvers */
+ private final DataSourceResolver[] dataSourceResolvers;
+
+ /**
+ * Constructor.
+ *
+ * @param dataSourceResolvers a list of of resolvers being used
+ */
+ public DataSourceCompositeResolver(final DataSourceResolver[] dataSourceResolvers)
+<span class="fc" id="L42"> {</span>
+<span class="fc" id="L43"> this.dataSourceResolvers = new DataSourceResolver[dataSourceResolvers.length];</span>
+<span class="fc" id="L44"> System.arraycopy(dataSourceResolvers, 0, this.dataSourceResolvers, 0, dataSourceResolvers.length);</span>
+<span class="fc" id="L45"> }</span>
+
+ /**
+ * Constructor.
+ *
+ * @param dataSourceResolvers a list of of resolvers being used
+ * @param isLenient shall we ignore resources not found or throw an exception?
+ */
+ public DataSourceCompositeResolver(final DataSourceResolver[] dataSourceResolvers, final boolean isLenient)
+ {
+<span class="fc" id="L55"> super(isLenient);</span>
+<span class="fc" id="L56"> this.dataSourceResolvers = new DataSourceResolver[dataSourceResolvers.length];</span>
+<span class="fc" id="L57"> System.arraycopy(dataSourceResolvers, 0, this.dataSourceResolvers, 0, dataSourceResolvers.length);</span>
+<span class="fc" id="L58"> }</span>
+
+ /**
+ * Get the underlying data source resolvers.
+ *
+ * @return underlying data source resolvers
+ */
+ public DataSourceResolver[] getDataSourceResolvers()
+ {
+ // clone the internal array to prevent external modification (see EMAIL-116)
+<span class="fc" id="L68"> final DataSourceResolver[] resolvers = new DataSourceResolver[dataSourceResolvers.length];</span>
+<span class="fc" id="L69"> System.arraycopy(dataSourceResolvers, 0, resolvers, 0, dataSourceResolvers.length);</span>
+<span class="fc" id="L70"> return resolvers;</span>
+ }
+
+ /** {@inheritDoc} */
+ public DataSource resolve(final String resourceLocation) throws IOException
+ {
+<span class="fc" id="L76"> final DataSource result = resolve(resourceLocation, true);</span>
+
+<span class="fc bfc" id="L78" title="All 4 branches covered."> if (isLenient() || result != null)</span>
+ {
+<span class="fc" id="L80"> return result;</span>
+ }
+<span class="fc" id="L82"> throw new IOException("The following resource was not found : " + resourceLocation);</span>
+
+ }
+
+ /** {@inheritDoc} */
+ public DataSource resolve(final String resourceLocation, final boolean isLenient) throws IOException
+ {
+<span class="fc bfc" id="L89" title="All 2 branches covered."> for (int i = 0; i < getDataSourceResolvers().length; i++)</span>
+ {
+<span class="fc" id="L91"> final DataSourceResolver dataSourceResolver = getDataSourceResolvers()[i];</span>
+<span class="fc" id="L92"> final DataSource dataSource = dataSourceResolver.resolve(resourceLocation, isLenient);</span>
+
+<span class="fc bfc" id="L94" title="All 2 branches covered."> if (dataSource != null)</span>
+ {
+<span class="fc" id="L96"> return dataSource;</span>
+ }
+ }
+
+<span class="pc bpc" id="L100" title="1 of 2 branches missed."> if (isLenient)</span>
+ {
+<span class="fc" id="L102"> return null;</span>
+ }
+<span class="nc" id="L104"> throw new IOException("The following resource was not found : " + resourceLocation);</span>
+ }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.java.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.java.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceCompositeResolver.java.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.html Sat May 23 06:50:57 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceFileResolver</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_class">DataSourceFileResolver</span></div><h1>DataSourceFileResolver</h1><table class="coverage" cellspacing="0" id="coveraget
able"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">19 of 86</td><td class="ctr2">78%</td><td class="bar">2 of 10</td><td class="ctr2">80%</td><td class="ctr1">4</td><td class="ctr2"
>11</td><td class="ctr1">6</td><td class="ctr2">21</td><td class="ctr1">2</td><td class="ctr2">6</td></tr></tfoot><tbody><tr><td id="a0"><a href="DataSourceFileResolver.java.html#L40" class="el_method">DataSourceFileResolver()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="19" height="10" title="9" alt="9"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i1">3</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="DataSourceFileResolver.java.html#L50" class="el_method">DataSourceFileResolver(File)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="13" height="10" title="6" alt="6"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</
td><td class="ctr1" id="h1">3</td><td class="ctr2" id="i2">3</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a5"><a href="DataSourceFileResolver.java.html#L86" class="el_method">resolve(String, boolean)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="8" height="10" title="4" alt="4"/><img src="../.resources/greenbar.gif" width="111" height="10" title="51" alt="51"/></td><td class="ctr2" id="c3">93%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="24" height="10" title="2" alt="2"/><img src="../.resources/greenbar.gif" width="96" height="10" title="8" alt="8"/></td><td class="ctr2" id="e0">80%</td><td class="ctr1" id="f0">2</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i0">10</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a2"><a href="DataSourceFileResolver.java.html#L62" class="el_method">DataSourceFileResolver(File, boolean
)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="15" height="10" title="7" alt="7"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">3</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="DataSourceFileResolver.java.html#L79" class="el_method">resolve(String)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="13" height="10" title="6" alt="6"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a3"><a href="DataSourceFileResolver.java.html#L73" class="el_method">getBaseDir()</a><
/td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.java.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.java.html Sat May 23 06:50:57 2015
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceFileResolver.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.source.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_source">DataSourceFileRes
olver.java</span></div><h1>DataSourceFileResolver.java</h1><pre class="source lang-java linenums">/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.mail.resolver;
+
+import javax.activation.DataSource;
+import javax.activation.FileDataSource;
+import java.io.File;
+import java.io.IOException;
+
+/**
+ * Creates a <code>DataSource</code> based on an URL. The implementation
+ * also resolves file resources.
+ *
+ * @since 1.3
+ * @version $Id$
+ */
+public class DataSourceFileResolver extends DataSourceBaseResolver
+{
+ /** the base directory of the resource when resolving relative paths */
+ private final File baseDir;
+
+ /**
+ * Constructor.
+ */
+ public DataSourceFileResolver()
+<span class="nc" id="L40"> {</span>
+<span class="nc" id="L41"> baseDir = new File(".");</span>
+<span class="nc" id="L42"> }</span>
+
+ /**
+ * Constructor.
+ *
+ * @param baseDir the base directory of the resource when resolving relative paths
+ */
+ public DataSourceFileResolver(final File baseDir)
+<span class="nc" id="L50"> {</span>
+<span class="nc" id="L51"> this.baseDir = baseDir;</span>
+<span class="nc" id="L52"> }</span>
+
+ /**
+ * Constructor.
+ *
+ * @param baseDir the base directory of the resource when resolving relative paths
+ * @param lenient shall we ignore resources not found or complain with an exception
+ */
+ public DataSourceFileResolver(final File baseDir, final boolean lenient)
+ {
+<span class="fc" id="L62"> super(lenient);</span>
+<span class="fc" id="L63"> this.baseDir = baseDir;</span>
+<span class="fc" id="L64"> }</span>
+
+ /**
+ * Get the base directory used for resolving relative resource locations.
+ *
+ * @return the baseUrl
+ */
+ public File getBaseDir()
+ {
+<span class="fc" id="L73"> return baseDir;</span>
+ }
+
+ /** {@inheritDoc} */
+ public DataSource resolve(final String resourceLocation) throws IOException
+ {
+<span class="fc" id="L79"> return resolve(resourceLocation, isLenient());</span>
+ }
+
+ /** {@inheritDoc} */
+ public DataSource resolve(final String resourceLocation, final boolean isLenient) throws IOException
+ {
+ File file;
+<span class="fc" id="L86"> DataSource result = null;</span>
+
+<span class="pc bpc" id="L88" title="1 of 2 branches missed."> if (!isCid(resourceLocation))</span>
+ {
+<span class="fc" id="L90"> file = new File(resourceLocation);</span>
+
+<span class="fc bfc" id="L92" title="All 2 branches covered."> if (!file.isAbsolute())</span>
+ {
+<span class="pc bpc" id="L94" title="1 of 2 branches missed."> file = getBaseDir() != null ? new File(getBaseDir(), resourceLocation) : new File(resourceLocation);</span>
+ }
+
+<span class="fc bfc" id="L97" title="All 2 branches covered."> if (file.exists())</span>
+ {
+<span class="fc" id="L99"> result = new FileDataSource(file);</span>
+ }
+ else
+ {
+<span class="fc bfc" id="L103" title="All 2 branches covered."> if (!isLenient)</span>
+ {
+<span class="fc" id="L105"> throw new IOException("Cant resolve the following file resource :" + file.getAbsolutePath());</span>
+ }
+ }
+ }
+
+<span class="fc" id="L110"> return result;</span>
+ }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.java.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.java.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceFileResolver.java.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.html Sat May 23 06:50:57 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceUrlResolver</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_class">DataSourceUrlResolver</span></div><h1>DataSourceUrlResolver</h1><table class="coverage" cellspacing="0" id="coveragetabl
e"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">16 of 90</td><td class="ctr2">82%</td><td class="bar">5 of 14</td><td class="ctr2">64%</td><td class="ctr1">6</td><td class="ctr2">13
</td><td class="ctr1">5</td><td class="ctr2">25</td><td class="ctr1">1</td><td class="ctr2">6</td></tr></tfoot><tbody><tr><td id="a0"><a href="DataSourceUrlResolver.java.html#L113" class="el_method">createUrl(String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="29" height="10" title="10" alt="10"/><img src="../.resources/greenbar.gif" width="90" height="10" title="31" alt="31"/></td><td class="ctr2" id="c4">76%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="48" height="10" title="4" alt="4"/><img src="../.resources/greenbar.gif" width="72" height="10" title="6" alt="6"/></td><td class="ctr2" id="e1">60%</td><td class="ctr1" id="f0">4</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h1">2</td><td class="ctr2" id="i1">7</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="DataSourceUrlResolver.java.html#L43" class="el_method">DataSourceUrlResolver(URL)</a></td><td class="bar" id="b1
"><img src="../.resources/redbar.gif" width="17" height="10" title="6" alt="6"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i2">3</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a5"><a href="DataSourceUrlResolver.java.html#L78" class="el_method">resolve(String, boolean)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="79" height="10" title="27" alt="27"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="12" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="36" height="10" title="3" alt="3"/></td><td class="ctr2" id="e0">75%</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i0">10</td><td class="ctr1" id="j2">0</
td><td class="ctr2" id="k2">1</td></tr><tr><td id="a2"><a href="DataSourceUrlResolver.java.html#L55" class="el_method">DataSourceUrlResolver(URL, boolean)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="20" height="10" title="7" alt="7"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">3</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="DataSourceUrlResolver.java.html#L72" class="el_method">resolve(String)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="17" height="10" title="6" alt="6"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ct
r1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a3"><a href="DataSourceUrlResolver.java.html#L66" class="el_method">getBaseUrl()</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="8" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.java.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.java.html Sat May 23 06:50:57 2015
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DataSourceUrlResolver.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <a href="index.source.html" class="el_package">org.apache.commons.mail.resolver</a> > <span class="el_source">DataSourceUrlResol
ver.java</span></div><h1>DataSourceUrlResolver.java</h1><pre class="source lang-java linenums">/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.mail.resolver;
+
+import javax.activation.DataSource;
+import javax.activation.URLDataSource;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+
+/**
+ * Creates a <code>DataSource</code> based on an URL.
+ *
+ * @since 1.3
+ * @version $Id$
+ */
+public class DataSourceUrlResolver extends DataSourceBaseResolver
+{
+ /** the base url of the resource when resolving relative paths */
+ private final URL baseUrl;
+
+ /**
+ * Constructor.
+ *
+ * @param baseUrl the base URL used for resolving relative resource locations
+ */
+ public DataSourceUrlResolver(final URL baseUrl)
+ {
+<span class="nc" id="L43"> super();</span>
+<span class="nc" id="L44"> this.baseUrl = baseUrl;</span>
+<span class="nc" id="L45"> }</span>
+
+ /**
+ * Constructor.
+ *
+ * @param baseUrl the base URL used for resolving relative resource locations
+ * @param lenient shall we ignore resources not found or complain with an exception
+ */
+ public DataSourceUrlResolver(final URL baseUrl, final boolean lenient)
+ {
+<span class="fc" id="L55"> super(lenient);</span>
+<span class="fc" id="L56"> this.baseUrl = baseUrl;</span>
+<span class="fc" id="L57"> }</span>
+
+ /**
+ * Get the base URL used for resolving relative resource locations.
+ *
+ * @return the baseUrl
+ */
+ public URL getBaseUrl()
+ {
+<span class="fc" id="L66"> return baseUrl;</span>
+ }
+
+ /** {@inheritDoc} */
+ public DataSource resolve(final String resourceLocation) throws IOException
+ {
+<span class="fc" id="L72"> return resolve(resourceLocation, isLenient());</span>
+ }
+
+ /** {@inheritDoc} */
+ public DataSource resolve(final String resourceLocation, final boolean isLenient) throws IOException
+ {
+<span class="fc" id="L78"> DataSource result = null;</span>
+
+ try
+ {
+<span class="pc bpc" id="L82" title="1 of 2 branches missed."> if (!isCid(resourceLocation))</span>
+ {
+<span class="fc" id="L84"> final URL url = createUrl(resourceLocation);</span>
+<span class="fc" id="L85"> result = new URLDataSource(url);</span>
+<span class="fc" id="L86"> result.getInputStream();</span>
+ }
+
+<span class="fc" id="L89"> return result;</span>
+ }
+<span class="fc" id="L91"> catch (final IOException e)</span>
+ {
+<span class="fc bfc" id="L93" title="All 2 branches covered."> if (isLenient)</span>
+ {
+<span class="fc" id="L95"> return null;</span>
+ }
+<span class="fc" id="L97"> throw e;</span>
+ }
+ }
+
+ /**
+ * Create an URL based on a base URL and a resource location suitable for loading
+ * the resource.
+ *
+ * @param resourceLocation a resource location
+ * @return the corresponding URL
+ * @throws java.net.MalformedURLException creating the URL failed
+ */
+ protected URL createUrl(final String resourceLocation) throws MalformedURLException
+ {
+ // if we get an non-existing base url than the resource can
+ // be directly used to create an URL
+<span class="pc bpc" id="L113" title="1 of 2 branches missed."> if (baseUrl == null)</span>
+ {
+<span class="nc" id="L115"> return new URL(resourceLocation);</span>
+ }
+
+ // if we get an non-existing location what we shall do?
+<span class="pc bpc" id="L119" title="2 of 4 branches missed."> if (resourceLocation == null || resourceLocation.length() == 0)</span>
+ {
+<span class="nc" id="L121"> throw new IllegalArgumentException("No resource defined");</span>
+ }
+
+ // if we get a stand-alone resource than ignore the base url
+<span class="pc bpc" id="L125" title="1 of 4 branches missed."> if (isFileUrl(resourceLocation) || isHttpUrl(resourceLocation))</span>
+ {
+<span class="fc" id="L127"> return new URL(resourceLocation);</span>
+ }
+
+<span class="fc" id="L130"> return new URL(getBaseUrl(), resourceLocation.replaceAll("&amp;", "&"));</span>
+ }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.java.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.java.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/DataSourceUrlResolver.java.html
------------------------------------------------------------------------------
svn:mime-type = text/html
Added: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/index.html
==============================================================================
--- websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/index.html (added)
+++ websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/index.html Sat May 23 06:50:57 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>org.apache.commons.mail.resolver</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons Email</a> > <span class="el_package">org.apache.commons.mail.resolver</span></div><h1>org.apache.commons.mail.resolver</h1><table class="coverage"
cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead
><tfoot><tr><td>Total</td><td class="bar">74 of 454</td><td class="ctr2">84%</td><td class="bar">14 of 52</td><td class="ctr2">73%</td><td class="ctr1">18</td><td class="ctr2">56</td><td class="ctr1">19</td><td class="ctr2">109</td><td class="ctr1">5</td><td class="ctr2">30</td><td class="ctr1">0</td><td class="ctr2">5</td></tr></tfoot><tbody><tr><td id="a1"><a href="DataSourceClassPathResolver.html" class="el_class">DataSourceClassPathResolver</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="24" height="10" title="27" alt="27"/><img src="../.resources/greenbar.gif" width="95" height="10" title="104" alt="104"/></td><td class="ctr2" id="c3">79%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="42" height="10" title="5" alt="5"/><img src="../.resources/greenbar.gif" width="77" height="10" title="9" alt="9"/></td><td class="ctr2" id="e3">64%</td><td class="ctr1" id="f0">6</td><td class="ctr2" id="g0">14</td><td class="ctr1" id="h0">7</td>
<td class="ctr2" id="i0">30</td><td class="ctr1" id="j0">2</td><td class="ctr2" id="k0">7</td><td class="ctr1" id="l0">0</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a3"><a href="DataSourceFileResolver.html" class="el_class">DataSourceFileResolver</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="17" height="10" title="19" alt="19"/><img src="../.resources/greenbar.gif" width="61" height="10" title="67" alt="67"/></td><td class="ctr2" id="c4">78%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/><img src="../.resources/greenbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e1">80%</td><td class="ctr1" id="f2">4</td><td class="ctr2" id="g2">11</td><td class="ctr1" id="h1">6</td><td class="ctr2" id="i3">21</td><td class="ctr1" id="j1">2</td><td class="ctr2" id="k1">6</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a4"><a href="DataSource
UrlResolver.html" class="el_class">DataSourceUrlResolver</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="14" height="10" title="16" alt="16"/><img src="../.resources/greenbar.gif" width="67" height="10" title="74" alt="74"/></td><td class="ctr2" id="c2">82%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="42" height="10" title="5" alt="5"/><img src="../.resources/greenbar.gif" width="77" height="10" title="9" alt="9"/></td><td class="ctr2" id="e4">64%</td><td class="ctr1" id="f1">6</td><td class="ctr2" id="g1">13</td><td class="ctr1" id="h2">5</td><td class="ctr2" id="i1">25</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">6</td><td class="ctr1" id="l2">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a2"><a href="DataSourceCompositeResolver.html" class="el_class">DataSourceCompositeResolver</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="10" height="10" title="12" alt="12"/><img src="../.res
ources/greenbar.gif" width="91" height="10" title="100" alt="100"/></td><td class="ctr2" id="c1">89%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="8" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="77" height="10" title="9" alt="9"/></td><td class="ctr2" id="e0">90%</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">10</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i2">23</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k4">5</td><td class="ctr1" id="l3">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a0"><a href="DataSourceBaseResolver.html" class="el_class">DataSourceBaseResolver</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="32" height="10" title="35" alt="35"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d4"><img src="../.resources/redbar.gif" width="8" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="25" height="10" title="3"
alt="3"/></td><td class="ctr2" id="e2">75%</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g4">8</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">10</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k3">6</td><td class="ctr1" id="l4">0</td><td class="ctr2" id="m4">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/index.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/index.html
------------------------------------------------------------------------------
svn:keywords = Id Revision HeadURL
Propchange: websites/production/commons/content/proper/commons-email/jacoco/org.apache.commons.mail.resolver/index.html
------------------------------------------------------------------------------
svn:mime-type = text/html