[DOXIA-576] Upgrade httpcomponents httpclient 4.5.8, httpcore 4.4.11

diff --git a/doxia-core/pom.xml b/doxia-core/pom.xml
index 867c20c..6f675a6 100644
--- a/doxia-core/pom.xml
+++ b/doxia-core/pom.xml
@@ -62,12 +62,12 @@
     <dependency>
       <groupId>org.apache.httpcomponents</groupId>
       <artifactId>httpclient</artifactId>
-      <version>4.0.2</version>
+      <version>4.5.8</version>
     </dependency>
     <dependency>
       <groupId>org.apache.httpcomponents</groupId>
       <artifactId>httpcore</artifactId>
-      <version>4.0.1</version>
+      <version>4.4.11</version>
     </dependency>
 
     <!-- test -->
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java b/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
index dbeed05..1ac62fb 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
@@ -36,16 +36,13 @@
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import org.apache.http.HttpEntity;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.client.ClientProtocolException;
-import org.apache.http.client.HttpRequestRetryHandler;
+import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.http.client.methods.HttpGet;
-import org.apache.http.impl.client.DefaultHttpClient;
 import org.apache.http.impl.client.DefaultHttpRequestRetryHandler;
+import org.apache.http.impl.client.HttpClientBuilder;
 import org.apache.http.util.EntityUtils;
-
 import org.apache.maven.doxia.macro.MacroExecutionException;
 import org.apache.maven.doxia.markup.XmlMarkup;
 import org.apache.maven.doxia.sink.Sink;
@@ -811,19 +808,17 @@
             }
 
             // it is an HTTP url, using HttpClient...
-            DefaultHttpClient client = new DefaultHttpClient();
-            HttpGet method = new HttpGet( url.toString() );
-            // Set a user-agent that doesn't contain the word "java", otherwise it will be blocked by the W3C
-            // The default user-agent is "Apache-HttpClient/4.0.2 (java 1.5)"
-            method.setHeader( "user-agent", "Apache-Doxia/" + doxiaVersion() );
+            HttpClientBuilder httpClientBuilder = HttpClientBuilder.create()
+                    .useSystemProperties()
+                    .setRetryHandler( new DefaultHttpRequestRetryHandler( 3, false ) )
+                    // Set a user-agent that doesn't contain the word "java", otherwise it will be blocked by the W3C
+                    // The default user-agent is "Apache-HttpClient/4.5.8 (java 7)"
+                    .setUserAgent( "Apache-Doxia/" + doxiaVersion() );
 
-            HttpRequestRetryHandler retryHandler = new DefaultHttpRequestRetryHandler( 3, false );
-            client.setHttpRequestRetryHandler( retryHandler );
-
-            HttpEntity entity = null;
+            CloseableHttpResponse response = null;
             try
             {
-                HttpResponse response = client.execute( method );
+                response = httpClientBuilder.build( ).execute( new HttpGet( url.toString( ) ) );
                 int statusCode = response.getStatusLine().getStatusCode();
                 if ( statusCode != HttpStatus.SC_OK )
                 {
@@ -832,8 +827,7 @@
                         + response.getStatusLine().getReasonPhrase() + "'." );
                 }
 
-                entity = response.getEntity();
-                return EntityUtils.toByteArray( entity );
+                return EntityUtils.toByteArray( response.getEntity() );
             }
             catch ( ClientProtocolException e )
             {
@@ -845,11 +839,11 @@
             }
             finally
             {
-                if ( entity != null )
+                if ( response != null )
                 {
                     try
                     {
-                        entity.consumeContent();
+                        response.close();
                     }
                     catch ( IOException e )
                     {