<style>
/* Changing the layout to use less space for mobiles */
@media screen and (max-device-width: 480px), screen and (-webkit-min-device-pixel-ratio: 2) {
    #email-body { min-width: 30em !important; }
    #email-page { padding: 8px !important; }
    #email-banner { padding: 8px 8px 0 8px !important; }
    #email-avatar { margin: 1px 8px 8px 0 !important; padding: 0 !important; }
    #email-fields { padding: 0 8px 8px 8px !important; }
    #email-gutter { width: 0 !important; }
}
</style>
<div id="email-body">
<table id="email-wrap" align="center" border="0" cellpadding="0" cellspacing="0" style="background-color:#f0f0f0;color:#000000;width:100%;">
    <tr valign="top">
        <td id="email-page" style="padding:16px !important;">
            <table align="center" border="0" cellpadding="0" cellspacing="0" style="background-color:#ffffff;border:1px solid #bbbbbb;color:#000000;width:100%;">
                <tr valign="top">
                    <td bgcolor="#ffffff" style="background-color:#ffffff;color:#000000;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:12px;line-height:1;"><img src="https://shibboleth.net/images/shib_240x83.png" alt="" style="vertical-align:top;" /></td>
                </tr><tr valign="top">
    <td id="email-banner" style="padding:32px 32px 0 32px;">

                
        
        
            <table align="left" border="0" cellpadding="0" cellspacing="0" width="100%" style="width:100%;">
    <tr valign="top">
        <td style="color:#505050;font-family:Arial,FreeSans,Helvetica,sans-serif;padding:0;">
                                        <img id="email-avatar" src="https://issues.shibboleth.net/jira/secure/useravatar?avatarId=10202" alt="" height="48" width="48" border="0" align="left" style="padding:0;margin: 0 16px 16px 0;" />
                        <div id="email-action" style="padding: 0 0 8px 0;font-size:12px;line-height:18px;">
                                    <a class="user-hover" rel="putmanb@shibboleth.net" id="email_putmanb@shibboleth.net" href="https://issues.shibboleth.net/jira/secure/ViewProfile.jspa?name=putmanb%40shibboleth.net" style="color:#326ca6;">Brent Putman</a>
     commented on <img src="https://issues.shibboleth.net/jira/images/icons/issuetypes/task.png" height="16" width="16" border="0" align="absmiddle" alt="Task"> <a style='color:#326ca6;text-decoration:none;' href='https://issues.shibboleth.net/jira/browse/JSPT-33'>JSPT-33</a>
            </div>
                        <div id="email-summary" style="font-size:16px;line-height:20px;padding:2px 0 16px 0;">
                <a style='color:#326ca6;text-decoration:none;' href='https://issues.shibboleth.net/jira/browse/JSPT-33'><strong>Address any design and refactoring issues resulting from update to HttpClient 4.3.</strong></a>
            </div>
                    </td>
    </tr>
</table>
    </td>
</tr>
<tr valign="top">
    <td id="email-fields" style="padding:0 32px 32px 32px;">
        <table border="0" cellpadding="0" cellspacing="0" style="padding:0;text-align:left;width:100%;" width="100%">
            <tr valign="top">
                <td id="email-gutter" style="width:64px;white-space:nowrap;"></td>
                <td>
                    <table border="0" cellpadding="0" cellspacing="0" width="100%">
                        <tr valign="top">
    <td colspan="2" style="color:#000000;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:12px;padding:0 0 16px 0;width:100%;">
        <div class="comment-block" style="background-color:#edf5ff;border:1px solid #dddddd;color:#000000;padding:12px;"><p>I spent quite a bit of time trying to sort out their new builders and how they'd work with ours.  Basically, it's a real pain in the ass trying to preserve our builders, which have some different defaults and encapsulate some behavior that's more than jus setting properties. A lot of what used to be HttpParams properties on their DefaultHttpClient are now supposed to be set by various config instances (RequestConfig, SocketConfig, ConnectionConfig) that you supply to their builder.  However: 1) you can't new() them, they have builders themselves and 2) once you set them on their builder, you can't get them, there are no getters or other accessors.  This also leads to their builders not being very Spring-friendly out of the box</p>

<p>Several options: 1) get rid of our builders entirely 2) keep our builders, but only for the behavior that is hard to easily represent via their builders 3) go whole hog and completely replicate all their -Config properties on our builder(s) and dictate that you can't set anything on their builders, b/c we'd just wind up overwriting them in ours.</p>

<p>Don't really like option 3.  Option 1 and 2 are nice, but the Spring syntax for wiring these is nasty.  Maybe it's not an issue if we don't wire via beans files but rather with config parsers as in v2.</p>

<p>Example Spring config illustrating option 2 (option 1 is mostly the same except no Shib builder).</p>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">&lt;bean id=<span class="code-quote">"HttpClientRequestConfigBuilder"</span> class=<span class="code-quote">"org.apache.http.client.config.RequestConfig"</span> factory-method=<span class="code-quote">"custom"</span> &gt;
    &lt;property name=<span class="code-quote">"connectTimeout"</span> value=<span class="code-quote">"5000"</span> /&gt;
&lt;/bean&gt;
 
&lt;bean id=<span class="code-quote">"HttpClientSocketConfigBuilder"</span> class=<span class="code-quote">"org.apache.http.config.SocketConfig"</span> factory-method=<span class="code-quote">"custom"</span>&gt;
    &lt;property name=<span class="code-quote">"soTimeout"</span> value=<span class="code-quote">"5000"</span> /&gt;
&lt;/bean&gt;

&lt;bean id=<span class="code-quote">"HttpClientConnectionConfigBuilder"</span> class=<span class="code-quote">"org.apache.http.config.ConnectionConfig"</span> factory-method=<span class="code-quote">"custom"</span>&gt;
    &lt;property name=<span class="code-quote">"bufferSize"</span> value=<span class="code-quote">"8192"</span> /&gt;
&lt;/bean&gt;

&lt;bean id=<span class="code-quote">"ApacheHttpClientBuilder"</span> class=<span class="code-quote">"org.apache.http.impl.client.HttpClientBuilder"</span> factory-method=<span class="code-quote">"create"</span>&gt;
    &lt;property name=<span class="code-quote">"defaultRequestConfig"</span>&gt;
        &lt;bean factory-bean=<span class="code-quote">"HttpClientRequestConfigBuilder"</span> factory-method=<span class="code-quote">"build"</span> /&gt;
    &lt;/property&gt;
    &lt;property name=<span class="code-quote">"defaultConnectionConfig"</span>&gt;
        &lt;bean factory-bean=<span class="code-quote">"HttpClientConnectionConfigBuilder"</span> factory-method=<span class="code-quote">"build"</span> /&gt;
    &lt;/property&gt;
    &lt;property name=<span class="code-quote">"defaultSocketConfig"</span>&gt;
        &lt;bean factory-bean=<span class="code-quote">"HttpClientSocketConfigBuilder"</span> factory-method=<span class="code-quote">"build"</span> /&gt;
    &lt;/property&gt;
&lt;/bean&gt;
    
&lt;bean id=<span class="code-quote">"ShibHttpClientBuilder"</span> class=<span class="code-quote">"net.shibboleth.utilities.java.support.httpclient.HttpClientBuilder"</span>&gt;
    &lt;constructor-arg ref=<span class="code-quote">"ApacheHttpClientBuilder"</span> /&gt;
    &lt;property name=<span class="code-quote">"connectionDisregardSslCertificate"</span> value=<span class="code-quote">"<span class="code-keyword">true</span>"</span> /&gt;
&lt;/bean&gt;

&lt;bean id=<span class="code-quote">"HttpClient"</span> factory-bean=<span class="code-quote">"ShibHttpClientBuilder"</span> factory-method=<span class="code-quote">"buildClient"</span>/&gt;
</pre>
</div></div></div>
        <div style="color:#505050;padding:4px 0 0 0;">                </div>
    </td>
</tr>
                    </table>
                </td>
            </tr>
        </table>
    </td>
</tr>













            </table>
        </td><!-- End #email-page -->
    </tr>
    <tr valign="top">
        <td style="color:#505050;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:10px;line-height:14px;padding: 0 16px 16px 16px;text-align:center;">
            This message is automatically generated by JIRA.<br />
            If you think it was sent incorrectly, please contact your JIRA administrators<br />
            For more information on JIRA, see: <a style='color:#326ca6;' href='http://www.atlassian.com/software/jira'>http://www.atlassian.com/software/jira</a>
        </td>
    </tr>
</table><!-- End #email-wrap -->
</div><!-- End #email-body -->