eolivelli commented on a change in pull request #278: BOOKKEEPER-1100: Add 
module for Bookkeeper Http Endpoint
URL: https://github.com/apache/bookkeeper/pull/278#discussion_r130332256
 
 

 ##########
 File path: 
bookkeeper-server/src/main/java/org/apache/bookkeeper/conf/ServerConfiguration.java
 ##########
 @@ -2023,7 +2027,49 @@ public ServerConfiguration 
setNettyMaxFrameSizeBytes(int maxSize) {
     }
 
     /**
-     * Gets the minimum safe Usable size to be available in index directory 
for Bookie to create Index File while replaying 
+     * Sets that whether the http server can start along with auto-recovery 
service
+     *
+     * @param enabled
+     *            - true if need to start http server with auto-recovery
+     * @return ServerConfiguration
+     */
+    public ServerConfiguration setHttpServerEnabled(boolean enabled) {
+        setProperty(HTTP_SERVER_ENABLED, enabled);
+        return this;
+    }
+
+    /**
+     * Get whether the http server start with auto-recovery service or not
+     *
+     * @return true - if http server should start with auto-recovery service
+     */
+    public boolean isHttpServerEnabled() {
+        return getBoolean(HTTP_SERVER_ENABLED, false);
+    }
+
+    /**
+     * Set Http server port listening on
+     *
+     * @param port
+     *          Port to listen on
+     * @return server configuration
+     */
+    public ServerConfiguration setHttpServerPort(int port) {
 
 Review comment:
   @yzang @sijie 
   I wonder if we need to make the "port" configurable, it is be a "specific" 
value for each implementation
   
   If you want to let the bookie "compose" the base URL of the service you will 
need protocol + hostname + port, and not just the port. We can add a method to 
the HttpServer interface to make the Bookie query the httpserver for the actual 
endpoint URL
   
   Ideas:
   1) make at least port/address/protocol (http/https) configurable
   2) leave the 'port' parameter to each specific httpserver implementation 
(drop it from ServerConfiguration)
   
   An example:  in my case I will run my bookie inside a JVM which alredy 
bundles its own Tomcat based server and I will implement an HttpServlet. The 
"configuration" of the actual http endpoint will not be known to the Bookie at 
all.
   
   In this case the httpserver port attribute will be ignored and I know that 
my case will  work, but now that we are introducing this new feature a would 
like to have only the minimal set of configuration options.
   
   Thoughts ?
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to