You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2018/08/21 15:01:40 UTC

[29/32] httpcomponents-core git commit: Javadocs for core non-HTTP specific APIs

Javadocs for core non-HTTP specific APIs


Project: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/commit/d7d4f0b9
Tree: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/tree/d7d4f0b9
Diff: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/diff/d7d4f0b9

Branch: refs/heads/api_javadocs
Commit: d7d4f0b9d1b0c19512850435a1d828d0ba099503
Parents: 8644c53
Author: Oleg Kalnichevski <ol...@apache.org>
Authored: Sat Aug 4 21:26:26 2018 +0200
Committer: Oleg Kalnichevski <ol...@apache.org>
Committed: Wed Aug 15 19:49:32 2018 +0200

----------------------------------------------------------------------
 .../apache/hc/core5/concurrent/Cancellable.java |  6 ++++
 .../core5/concurrent/CancellableDependency.java | 11 +++++--
 .../hc/core5/concurrent/ComplexCancellable.java |  5 ++--
 .../hc/core5/concurrent/ComplexFuture.java      |  6 ++--
 .../core5/concurrent/DefaultThreadFactory.java  |  2 ++
 .../hc/core5/concurrent/package-info.java       |  2 +-
 .../apache/hc/core5/function/package-info.java  | 31 ++++++++++++++++++++
 .../org/apache/hc/core5/http/EntityDetails.java |  1 +
 .../java/org/apache/hc/core5/http/HttpHost.java |  6 ++--
 .../org/apache/hc/core5/http/URIScheme.java     |  5 ++++
 .../org/apache/hc/core5/io/ModalCloseable.java  |  4 +--
 .../org/apache/hc/core5/io/package-info.java    | 31 ++++++++++++++++++++
 .../main/java/org/apache/hc/core5/net/Host.java |  6 ++++
 .../org/apache/hc/core5/net/URIAuthority.java   |  2 +-
 .../org/apache/hc/core5/net/package-info.java   | 31 ++++++++++++++++++++
 .../org/apache/hc/core5/pool/package-info.java  | 31 ++++++++++++++++++++
 .../hc/core5/reactor/AbstractIOReactorBase.java |  7 ++---
 .../reactor/DefaultConnectingIOReactor.java     |  2 +-
 .../reactor/DefaultListeningIOReactor.java      |  2 +-
 .../org/apache/hc/core5/reactor/IOReactor.java  | 10 +++++++
 .../hc/core5/reactor/IOReactorService.java      |  8 +++++
 .../apache/hc/core5/reactor/package-info.java   |  6 +---
 .../reactor/ssl/TransportSecurityLayer.java     | 16 ++++++++++
 .../hc/core5/reactor/ssl/package-info.java      |  2 +-
 24 files changed, 207 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/concurrent/Cancellable.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/Cancellable.java b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/Cancellable.java
index 6419e53..02da705 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/Cancellable.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/Cancellable.java
@@ -34,6 +34,12 @@ package org.apache.hc.core5.concurrent;
  */
 public interface Cancellable {
 
+    /**
+     * Cancels the ongoing operation or process.
+     *
+     * @return {@code frue} if the operation or process has been cancelled as a result of
+     * this method call or {@code false} if it has already been cancelled or not started.
+     */
     boolean cancel();
 
 }

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/concurrent/CancellableDependency.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/CancellableDependency.java b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/CancellableDependency.java
index 941ea2f..6074558 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/CancellableDependency.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/CancellableDependency.java
@@ -27,17 +27,24 @@
 package org.apache.hc.core5.concurrent;
 
 /**
- * This interface represents an object dependent on a long running process.
+ * This interface represents {@link Cancellable} object dependent on another
+ * ongoing process or operation.
  *
  * @since 5.0
  */
 public interface CancellableDependency extends Cancellable {
 
     /**
-     * Sets {@link Cancellable} dependency for the ongoing operation.
+     * Sets {@link Cancellable} dependency on another ongoing process or
+     * operation represented by {@link Cancellable}.
      */
     void setDependency(Cancellable cancellable);
 
+    /**
+     * Determines whether the process or operation has been cancelled.
+     *
+     * @return cancelled flag.
+     */
     boolean isCancelled();
 
 }

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexCancellable.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexCancellable.java b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexCancellable.java
index d2930b9..d306d6a 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexCancellable.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexCancellable.java
@@ -32,8 +32,9 @@ import java.util.concurrent.atomic.AtomicReference;
 import org.apache.hc.core5.util.Args;
 
 /**
- * Cancellable that represents a sequence of other {@link Cancellable} processes.
- * Dependent process will get cancelled if the future itself is cancelled.
+ * {@link Cancellable} that has a dependency on another {@link Cancellable}
+ * process or operation. Dependent process or operation will get cancelled
+ * if this {@link Cancellable} itself is cancelled.
  *
  * @since 5.0
  */

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexFuture.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexFuture.java b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexFuture.java
index 771d02e..18fa786 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexFuture.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/ComplexFuture.java
@@ -32,9 +32,9 @@ import java.util.concurrent.atomic.AtomicReference;
 import org.apache.hc.core5.util.Args;
 
 /**
- * Future whose result depends on another {@link Cancellable} processes or
- * {@link Future}. Dependent process will get cancelled if the future
- * itself is cancelled.
+ * {@link Future} whose result depends on another {@link Cancellable} process
+ * or operation or another {@link Future}. Dependent process will get cancelled
+ * if the future itself is cancelled.
  *
  * @param <T> the future result type of an asynchronous operation.
  * @since 5.0

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/concurrent/DefaultThreadFactory.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/DefaultThreadFactory.java b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/DefaultThreadFactory.java
index ab589e9..4ad6a6e 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/DefaultThreadFactory.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/DefaultThreadFactory.java
@@ -30,6 +30,8 @@ import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.atomic.AtomicLong;
 
 /**
+ * Default {@link ThreadFactory} implementation.
+ *
  * @since 5.0
  */
 public class DefaultThreadFactory implements ThreadFactory {

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/concurrent/package-info.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/package-info.java b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/package-info.java
index 0f42d9b..7df1652 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/concurrent/package-info.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/concurrent/package-info.java
@@ -26,6 +26,6 @@
  */
 
 /**
- * Core concurrency APIs.
+ * Core concurrency component APIs.
  */
 package org.apache.hc.core5.concurrent;

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/function/package-info.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/function/package-info.java b/httpcore5/src/main/java/org/apache/hc/core5/function/package-info.java
new file mode 100644
index 0000000..4dcf8c6
--- /dev/null
+++ b/httpcore5/src/main/java/org/apache/hc/core5/function/package-info.java
@@ -0,0 +1,31 @@
+/*
+ * ====================================================================
+ * 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.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ */
+
+/**
+ * Commonly used functional interfaces.
+ */
+package org.apache.hc.core5.function;

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java b/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java
index 516a697..d46325c 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java
@@ -56,6 +56,7 @@ public interface EntityDetails {
      * <p>
      * The behavior of wrapping entities is implementation dependent,
      * but should respect the primary purpose.
+     * </p>
      */
     boolean isChunked();
 

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/http/HttpHost.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/http/HttpHost.java b/httpcore5/src/main/java/org/apache/hc/core5/http/HttpHost.java
index dff7eab..cf58c08 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/http/HttpHost.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/http/HttpHost.java
@@ -42,8 +42,10 @@ import org.apache.hc.core5.util.LangUtils;
 import org.apache.hc.core5.util.TextUtils;
 
 /**
- * Holds all of the variables needed to describe an HTTP connection to a host.
- * This includes remote host name, port and scheme.
+ * Component that holds all details needed to describe an HTTP connection
+ * to a host. This includes remote host name, port and protocol scheme.
+ *
+ * @see org.apache.hc.core5.net.Host
  *
  * @since 4.0
  */

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/http/URIScheme.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/http/URIScheme.java b/httpcore5/src/main/java/org/apache/hc/core5/http/URIScheme.java
index 261bd1e..1a0a1b9 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/http/URIScheme.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/http/URIScheme.java
@@ -29,6 +29,11 @@ package org.apache.hc.core5.http;
 
 import org.apache.hc.core5.util.Args;
 
+/**
+ * Supported URI schemes
+ *
+ * @since 5.0
+ */
 public enum URIScheme {
 
     HTTP("http"), HTTPS("https");

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/io/ModalCloseable.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/io/ModalCloseable.java b/httpcore5/src/main/java/org/apache/hc/core5/io/ModalCloseable.java
index 8ae98e8..e0a73df 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/io/ModalCloseable.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/io/ModalCloseable.java
@@ -37,8 +37,8 @@ import java.io.Closeable;
 public interface ModalCloseable extends Closeable {
 
     /**
-     * Closes this endpoint and releases any system resources associated
-     * with it. If the endpoint is already closed then invoking this
+     * Closes this process or endpoint and releases any system resources associated
+     * with it. If the endpoint or the process is already closed then invoking this
      * method has no effect.
      */
     void close(CloseMode closeMode);

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/io/package-info.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/io/package-info.java b/httpcore5/src/main/java/org/apache/hc/core5/io/package-info.java
new file mode 100644
index 0000000..d7b0c71
--- /dev/null
+++ b/httpcore5/src/main/java/org/apache/hc/core5/io/package-info.java
@@ -0,0 +1,31 @@
+/*
+ * ====================================================================
+ * 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.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ */
+
+/**
+ * Core I/O component APIs and utilities.
+ */
+package org.apache.hc.core5.io;

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/net/Host.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/net/Host.java b/httpcore5/src/main/java/org/apache/hc/core5/net/Host.java
index 53afecd..d8538e2 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/net/Host.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/net/Host.java
@@ -36,6 +36,12 @@ import org.apache.hc.core5.util.Args;
 import org.apache.hc.core5.util.LangUtils;
 import org.apache.hc.core5.util.TextUtils;
 
+/**
+ * Component that holds all details needed to describe a network connection
+ * to a host. This includes remote host name and port.
+ *
+ * @since 5.0
+ */
 @Contract(threading = ThreadingBehavior.IMMUTABLE)
 public final class Host implements NamedEndpoint, Serializable {
 

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/net/URIAuthority.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/net/URIAuthority.java b/httpcore5/src/main/java/org/apache/hc/core5/net/URIAuthority.java
index b1aaacf..01feb0f 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/net/URIAuthority.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/net/URIAuthority.java
@@ -38,7 +38,7 @@ import org.apache.hc.core5.util.LangUtils;
 import org.apache.hc.core5.util.TextUtils;
 
 /**
- * Represents authority component of request URI.
+ * Represents authority component of request {@link java.net.URI}.
  *
  * @since 5.0
  */

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/net/package-info.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/net/package-info.java b/httpcore5/src/main/java/org/apache/hc/core5/net/package-info.java
new file mode 100644
index 0000000..af5033b
--- /dev/null
+++ b/httpcore5/src/main/java/org/apache/hc/core5/net/package-info.java
@@ -0,0 +1,31 @@
+/*
+ * ====================================================================
+ * 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.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ */
+
+/**
+ * Core network component APIs and utilities.
+ */
+package org.apache.hc.core5.net;

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/pool/package-info.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/pool/package-info.java b/httpcore5/src/main/java/org/apache/hc/core5/pool/package-info.java
new file mode 100644
index 0000000..9d53f3d
--- /dev/null
+++ b/httpcore5/src/main/java/org/apache/hc/core5/pool/package-info.java
@@ -0,0 +1,31 @@
+/*
+ * ====================================================================
+ * 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.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ */
+
+/**
+ * Client side connection pool component APIs.
+ */
+package org.apache.hc.core5.pool;

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/reactor/AbstractIOReactorBase.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/AbstractIOReactorBase.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/AbstractIOReactorBase.java
index d782f07..ef498ca 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/AbstractIOReactorBase.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/AbstractIOReactorBase.java
@@ -35,7 +35,7 @@ import org.apache.hc.core5.net.NamedEndpoint;
 import org.apache.hc.core5.util.Args;
 import org.apache.hc.core5.util.TimeValue;
 
-abstract class AbstractIOReactorBase implements ConnectionInitiator {
+abstract class AbstractIOReactorBase implements ConnectionInitiator, IOReactorService {
 
     @Override
     public final Future<IOSession> connect(
@@ -57,9 +57,6 @@ abstract class AbstractIOReactorBase implements ConnectionInitiator {
         }
     }
 
-    public abstract void initiateShutdown();
-
-    public abstract IOReactorStatus getStatus();
-
     abstract IOWorkers.Selector getWorkerSelector();
+
 }

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultConnectingIOReactor.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultConnectingIOReactor.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultConnectingIOReactor.java
index aac864a..a421ecb 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultConnectingIOReactor.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultConnectingIOReactor.java
@@ -51,7 +51,7 @@ import org.apache.hc.core5.util.TimeValue;
  *
  * @since 4.0
  */
-public class DefaultConnectingIOReactor extends AbstractIOReactorBase implements IOReactorService {
+public class DefaultConnectingIOReactor extends AbstractIOReactorBase {
 
     private final Deque<ExceptionEvent> auditLog;
     private final int workerCount;

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultListeningIOReactor.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultListeningIOReactor.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultListeningIOReactor.java
index b268f71..64500c9 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultListeningIOReactor.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/DefaultListeningIOReactor.java
@@ -56,7 +56,7 @@ import org.apache.hc.core5.util.TimeValue;
  *
  * @since 4.0
  */
-public class DefaultListeningIOReactor extends AbstractIOReactorBase implements IOReactorService, ConnectionAcceptor {
+public class DefaultListeningIOReactor extends AbstractIOReactorBase implements ConnectionAcceptor {
 
     private final static ThreadFactory DISPATCH_THREAD_FACTORY = new DefaultThreadFactory("I/O server dispatch", true);
     private final static ThreadFactory LISTENER_THREAD_FACTORY = new DefaultThreadFactory("I/O listener", true);

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactor.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactor.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactor.java
index bd6cf14..f9e1b4b 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactor.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactor.java
@@ -27,6 +27,7 @@
 
 package org.apache.hc.core5.reactor;
 
+import org.apache.hc.core5.io.CloseMode;
 import org.apache.hc.core5.io.ModalCloseable;
 import org.apache.hc.core5.util.TimeValue;
 
@@ -50,6 +51,15 @@ import org.apache.hc.core5.util.TimeValue;
 public interface IOReactor extends ModalCloseable {
 
     /**
+     * Shuts down the I/O reactor either gracefully or immediately.
+     * During graceful shutdown individual I/O sessions should be
+     * informed about imminent termination and be given a grace period
+     * to complete the ongoing I/O sessions. During immediate shutdown
+     * all ongoing I/O sessions get aborted immediately.
+     */
+    void close(CloseMode closeMode);
+
+    /**
      * Returns the current status of the reactor.
      *
      * @return reactor status.

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactorService.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactorService.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactorService.java
index 5ae125e..9c1f1e1 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactorService.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/IOReactorService.java
@@ -36,8 +36,16 @@ import java.util.List;
  */
 public interface IOReactorService extends IOReactor {
 
+    /**
+     * Starts I/O reactor.
+     */
     void start();
 
+    /**
+     * Returns the list of internal exceptions occurred during
+     * I/O reactor shutdown process.
+     * @return list of internal exceptions.
+     */
     List<ExceptionEvent> getExceptionLog();
 
 }

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/reactor/package-info.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/package-info.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/package-info.java
index d49a888..0d62035 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/package-info.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/package-info.java
@@ -26,12 +26,8 @@
  */
 
 /**
- * Event driven network communication APIs loosely based on
+ * Event driven network communication APIs and components loosely based on
  <a href="http://gee.cs.oswego.edu/dl/">Doug Lea</a>'s
  <a href="http://gee.cs.oswego.edu/dl/cpjslides/nio.pdf">reactor pattern</a>.
- <p>
- This API is not specific to HTTP communication. However, it is minimal
- in the sense that it defines only what is required within the scope
- of HTTP protocol.
  */
 package org.apache.hc.core5.reactor;

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/TransportSecurityLayer.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/TransportSecurityLayer.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/TransportSecurityLayer.java
index fab01fa..bc9f0a0 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/TransportSecurityLayer.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/TransportSecurityLayer.java
@@ -38,6 +38,17 @@ import org.apache.hc.core5.net.NamedEndpoint;
  */
 public interface TransportSecurityLayer {
 
+    /**
+     * Starts TLS session over an existing network connection with the given SSL context.
+     * {@link NamedEndpoint} details are applicable for client side connections and
+     * are used for host name verification, when supported by the SSL engine.
+     *
+     * @param sslContext SSL context to be used for this session.
+     * @param endpoint optional endpoint details for outgoing client side connections.
+     * @param sslBufferMode SSL buffer management mode.
+     * @param initializer SSL session initialization callback.
+     * @param verifier SSL session verification callback.
+     */
     void startTls(
             SSLContext sslContext,
             NamedEndpoint endpoint,
@@ -45,6 +56,11 @@ public interface TransportSecurityLayer {
             SSLSessionInitializer initializer,
             SSLSessionVerifier verifier) throws UnsupportedOperationException;
 
+    /**
+     * Returns details of a fully established TLS session.
+     *
+     * @return TLS session details.
+     */
     TlsDetails getTlsDetails();
 
 }

http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/d7d4f0b9/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/package-info.java
----------------------------------------------------------------------
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/package-info.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/package-info.java
index d5181ab..c223c2a 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/package-info.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/package-info.java
@@ -26,6 +26,6 @@
  */
 
 /**
- * TLS/SSL support for asynchronous, event driven communication.
+ * TLS/SSL support for I/O reactors.
  */
 package org.apache.hc.core5.reactor.ssl;