Split httpserver into httpserver-api, httpserver-html5-gui and
httpserver modules. The new httpserver-api module is a subset of original
httpserver and implements same OSv REST API without any modularity or other 
functionality changes.
Another new httpserver-html5-gui module contains static content of swagger-ui 
and
osv-gui HTML5 apps and depends on httpserver-api. Remaining httpserver module 
provides 
backwards-compatibility and combines httpserver-api and httpserver-html5-gui 
functionality.

Updated makefiles in httpserver-jolokia-plugin, httpserver-jvm-plugin and 
cloud-init to
point to new locations of header files.

Fixed #822

Signed-off-by: Waldemar Kozaczuk <[email protected]>

---
 .gitmodules                                        |  4 +--
 modules/cloud-init/Makefile                        |  8 +++---
 modules/{httpserver => httpserver-api}/.gitignore  |  0
 modules/{httpserver => httpserver-api}/Makefile    | 24 ++++--------------
 .../api-doc/listings/api.json                      |  0
 .../api-doc/listings/app.json                      |  0
 .../api-doc/listings/env.json                      |  0
 .../api-doc/listings/file.json                     |  0
 .../api-doc/listings/fs.json                       |  0
 .../api-doc/listings/hardware.json                 |  0
 .../api-doc/listings/network.json                  |  0
 .../api-doc/listings/os.json                       |  0
 .../api-doc/listings/trace.json                    |  0
 modules/{httpserver => httpserver-api}/api/api.cc  |  0
 modules/{httpserver => httpserver-api}/api/api.hh  |  0
 modules/{httpserver => httpserver-api}/api/app.cc  |  0
 modules/{httpserver => httpserver-api}/api/app.hh  |  0
 modules/{httpserver => httpserver-api}/api/env.cc  |  0
 modules/{httpserver => httpserver-api}/api/env.hh  |  0
 modules/{httpserver => httpserver-api}/api/file.cc |  0
 modules/{httpserver => httpserver-api}/api/file.hh |  0
 .../api/files_mapping.cc                           |  0
 .../api/files_mapping.hh                           |  0
 modules/{httpserver => httpserver-api}/api/fs.cc   |  0
 modules/{httpserver => httpserver-api}/api/fs.hh   |  0
 .../{httpserver => httpserver-api}/api/hardware.cc |  0
 .../{httpserver => httpserver-api}/api/hardware.hh |  0
 .../{httpserver => httpserver-api}/api/network.cc  |  0
 .../{httpserver => httpserver-api}/api/network.hh  |  0
 modules/{httpserver => httpserver-api}/api/os.cc   |  0
 modules/{httpserver => httpserver-api}/api/os.hh   |  0
 .../{httpserver => httpserver-api}/api/trace.cc    |  0
 .../{httpserver => httpserver-api}/api/trace.hh    |  0
 modules/{httpserver => httpserver-api}/common.cc   |  0
 modules/{httpserver => httpserver-api}/common.hh   |  0
 .../{httpserver => httpserver-api}/connection.cc   |  0
 .../{httpserver => httpserver-api}/connection.hh   |  0
 .../connection_manager.cc                          |  0
 .../connection_manager.hh                          |  0
 .../{httpserver => httpserver-api}/exception.hh    |  0
 .../global_server.cc                               |  0
 .../global_server.hh                               |  0
 modules/{httpserver => httpserver-api}/handlers.cc |  0
 modules/{httpserver => httpserver-api}/handlers.hh |  0
 modules/{httpserver => httpserver-api}/header.hh   |  0
 .../json/api_docs.cc                               |  0
 .../json/api_docs.hh                               |  0
 .../json/formatter.cc                              |  0
 .../json/formatter.hh                              |  0
 .../json/json_elements.cc                          |  0
 .../json/json_elements.hh                          |  0
 .../json/json_path.cc                              |  0
 .../json/json_path.hh                              |  0
 .../{httpserver => httpserver-api}/json2code.py    |  0
 modules/{httpserver => httpserver-api}/main.cc     |  0
 modules/{httpserver => httpserver-api}/matcher.cc  |  0
 modules/{httpserver => httpserver-api}/matcher.hh  |  0
 .../{httpserver => httpserver-api}/matchrules.hh   |  0
 .../{httpserver => httpserver-api}/mime_types.cc   |  0
 .../{httpserver => httpserver-api}/mime_types.hh   |  0
 modules/{httpserver => httpserver-api}/module.py   |  4 +--
 .../{httpserver => httpserver-api}/openssl-init.cc |  0
 .../{httpserver => httpserver-api}/openssl-init.hh |  0
 .../{httpserver => httpserver-api}/path_holder.cc  |  0
 .../{httpserver => httpserver-api}/path_holder.hh  |  0
 .../{httpserver => httpserver-api}/plain_server.cc |  0
 .../{httpserver => httpserver-api}/plain_server.hh |  0
 modules/{httpserver => httpserver-api}/reply.cc    |  0
 modules/{httpserver => httpserver-api}/reply.hh    |  0
 modules/{httpserver => httpserver-api}/request.hh  |  0
 .../request_handler.cc                             |  0
 .../request_handler.hh                             |  0
 .../request_parser.cc                              |  0
 .../request_parser.hh                              |  0
 modules/{httpserver => httpserver-api}/routes.cc   |  0
 modules/{httpserver => httpserver-api}/routes.hh   |  0
 modules/{httpserver => httpserver-api}/server.cc   |  0
 modules/{httpserver => httpserver-api}/server.hh   |  0
 .../{httpserver => httpserver-api}/ssl_server.cc   |  0
 .../{httpserver => httpserver-api}/ssl_server.hh   |  0
 .../{httpserver => httpserver-api}/stub/debug.cc   |  0
 .../stub/java_api.cc                               |  0
 .../stub/shutdown.cc                               |  0
 .../stub/trace_api.cc                              |  0
 .../{httpserver => httpserver-api}/stub/version.cc |  0
 .../tests/api/testenv.py                           |  0
 .../tests/api/testfile.py                          |  0
 .../tests/api/testfs.py                            |  0
 .../tests/api/testjolokia.py                       |  0
 .../tests/api/testjvm.py                           |  0
 .../tests/api/testnetwork.py                       |  0
 .../tests/api/testos.py                            |  0
 .../tests/api/testtrace.py                         |  0
 .../tests/basetest.py                              |  0
 .../tests/ssl/test_connection.py                   |  0
 .../tests/testhttpserver.py                        |  0
 .../{httpserver => httpserver-api}/transformers.cc |  0
 .../{httpserver => httpserver-api}/transformers.hh |  0
 .../{httpserver => httpserver-api}/transport.hh    |  0
 modules/httpserver-html5-gui/Makefile              | 22 ++++++++++++++++
 .../{httpserver => httpserver-html5-gui}/module.py | 17 +++----------
 .../{httpserver => httpserver-html5-gui}/osv-gui   |  0
 .../swagger-ui                                     |  0
 modules/httpserver-jolokia-plugin/Makefile         |  4 +--
 modules/httpserver-jvm-plugin/Makefile             |  4 +--
 modules/httpserver/module.py                       | 29 +++-------------------
 106 files changed, 45 insertions(+), 71 deletions(-)
 rename modules/{httpserver => httpserver-api}/.gitignore (100%)
 rename modules/{httpserver => httpserver-api}/Makefile (83%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/api.json (100%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/app.json (100%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/env.json (100%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/file.json (100%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/fs.json (100%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/hardware.json 
(100%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/network.json 
(100%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/os.json (100%)
 rename modules/{httpserver => httpserver-api}/api-doc/listings/trace.json 
(100%)
 rename modules/{httpserver => httpserver-api}/api/api.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/api.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/app.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/app.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/env.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/env.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/file.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/file.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/files_mapping.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/files_mapping.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/fs.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/fs.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/hardware.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/hardware.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/network.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/network.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/os.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/os.hh (100%)
 rename modules/{httpserver => httpserver-api}/api/trace.cc (100%)
 rename modules/{httpserver => httpserver-api}/api/trace.hh (100%)
 rename modules/{httpserver => httpserver-api}/common.cc (100%)
 rename modules/{httpserver => httpserver-api}/common.hh (100%)
 rename modules/{httpserver => httpserver-api}/connection.cc (100%)
 rename modules/{httpserver => httpserver-api}/connection.hh (100%)
 rename modules/{httpserver => httpserver-api}/connection_manager.cc (100%)
 rename modules/{httpserver => httpserver-api}/connection_manager.hh (100%)
 rename modules/{httpserver => httpserver-api}/exception.hh (100%)
 rename modules/{httpserver => httpserver-api}/global_server.cc (100%)
 rename modules/{httpserver => httpserver-api}/global_server.hh (100%)
 rename modules/{httpserver => httpserver-api}/handlers.cc (100%)
 rename modules/{httpserver => httpserver-api}/handlers.hh (100%)
 rename modules/{httpserver => httpserver-api}/header.hh (100%)
 rename modules/{httpserver => httpserver-api}/json/api_docs.cc (100%)
 rename modules/{httpserver => httpserver-api}/json/api_docs.hh (100%)
 rename modules/{httpserver => httpserver-api}/json/formatter.cc (100%)
 rename modules/{httpserver => httpserver-api}/json/formatter.hh (100%)
 rename modules/{httpserver => httpserver-api}/json/json_elements.cc (100%)
 rename modules/{httpserver => httpserver-api}/json/json_elements.hh (100%)
 rename modules/{httpserver => httpserver-api}/json/json_path.cc (100%)
 rename modules/{httpserver => httpserver-api}/json/json_path.hh (100%)
 rename modules/{httpserver => httpserver-api}/json2code.py (100%)
 rename modules/{httpserver => httpserver-api}/main.cc (100%)
 rename modules/{httpserver => httpserver-api}/matcher.cc (100%)
 rename modules/{httpserver => httpserver-api}/matcher.hh (100%)
 rename modules/{httpserver => httpserver-api}/matchrules.hh (100%)
 rename modules/{httpserver => httpserver-api}/mime_types.cc (100%)
 rename modules/{httpserver => httpserver-api}/mime_types.hh (100%)
 copy modules/{httpserver => httpserver-api}/module.py (80%)
 rename modules/{httpserver => httpserver-api}/openssl-init.cc (100%)
 rename modules/{httpserver => httpserver-api}/openssl-init.hh (100%)
 rename modules/{httpserver => httpserver-api}/path_holder.cc (100%)
 rename modules/{httpserver => httpserver-api}/path_holder.hh (100%)
 rename modules/{httpserver => httpserver-api}/plain_server.cc (100%)
 rename modules/{httpserver => httpserver-api}/plain_server.hh (100%)
 rename modules/{httpserver => httpserver-api}/reply.cc (100%)
 rename modules/{httpserver => httpserver-api}/reply.hh (100%)
 rename modules/{httpserver => httpserver-api}/request.hh (100%)
 rename modules/{httpserver => httpserver-api}/request_handler.cc (100%)
 rename modules/{httpserver => httpserver-api}/request_handler.hh (100%)
 rename modules/{httpserver => httpserver-api}/request_parser.cc (100%)
 rename modules/{httpserver => httpserver-api}/request_parser.hh (100%)
 rename modules/{httpserver => httpserver-api}/routes.cc (100%)
 rename modules/{httpserver => httpserver-api}/routes.hh (100%)
 rename modules/{httpserver => httpserver-api}/server.cc (100%)
 rename modules/{httpserver => httpserver-api}/server.hh (100%)
 rename modules/{httpserver => httpserver-api}/ssl_server.cc (100%)
 rename modules/{httpserver => httpserver-api}/ssl_server.hh (100%)
 rename modules/{httpserver => httpserver-api}/stub/debug.cc (100%)
 rename modules/{httpserver => httpserver-api}/stub/java_api.cc (100%)
 rename modules/{httpserver => httpserver-api}/stub/shutdown.cc (100%)
 rename modules/{httpserver => httpserver-api}/stub/trace_api.cc (100%)
 rename modules/{httpserver => httpserver-api}/stub/version.cc (100%)
 rename modules/{httpserver => httpserver-api}/tests/api/testenv.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/api/testfile.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/api/testfs.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/api/testjolokia.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/api/testjvm.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/api/testnetwork.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/api/testos.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/api/testtrace.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/basetest.py (100%)
 rename modules/{httpserver => httpserver-api}/tests/ssl/test_connection.py 
(100%)
 rename modules/{httpserver => httpserver-api}/tests/testhttpserver.py (100%)
 rename modules/{httpserver => httpserver-api}/transformers.cc (100%)
 rename modules/{httpserver => httpserver-api}/transformers.hh (100%)
 rename modules/{httpserver => httpserver-api}/transport.hh (100%)
 create mode 100644 modules/httpserver-html5-gui/Makefile
 copy modules/{httpserver => httpserver-html5-gui}/module.py (50%)
 rename modules/{httpserver => httpserver-html5-gui}/osv-gui (100%)
 rename modules/{httpserver => httpserver-html5-gui}/swagger-ui (100%)

diff --git a/.gitmodules b/.gitmodules
index 786db88..8f175b8 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -36,13 +36,13 @@
        path = external/aarch64/openjdk.bin
        url = ../../cloudius-systems/aarch64-openjdk.bin.git
 [submodule "modules/httpserver/swagger-ui"]
-       path = modules/httpserver/swagger-ui
+       path = modules/httpserver-html5-gui/swagger-ui
        url = ../../cloudius-systems/swagger-ui.git
 [submodule "musl"]
        path = musl
        url = ../../cloudius-systems/musl.git
 [submodule "modules/httpserver/osv-gui"]
-       path = modules/httpserver/osv-gui
+       path = modules/httpserver-html5-gui/osv-gui
        url = ../../cloudius-systems/osv-gui.git
 [submodule "external/fs/libnfs"]
        path = external/fs/libnfs
diff --git a/modules/cloud-init/Makefile b/modules/cloud-init/Makefile
index 8b2b03b..62dc9b4 100644
--- a/modules/cloud-init/Makefile
+++ b/modules/cloud-init/Makefile
@@ -8,8 +8,8 @@ arch = x64
 
 boost-libs := -lboost_system -lboost_filesystem
 
-HTTPSERVER_DIR = ../../modules/httpserver
-INCLUDES += -I$(HTTPSERVER_DIR)
+HTTPSERVER_API_DIR = ../../modules/httpserver-api
+INCLUDES += -I$(HTTPSERVER_API_DIR)
 
 # the build target executable:
 TARGET = cloud-init
@@ -17,8 +17,8 @@ CPP_FILES := client.cc cloud-init.cc data-source.cc main.cc 
template.cc cassandr
 OBJ_FILES := $(addprefix obj/,$(CPP_FILES:.cc=.o))
 DEPS := $(OBJ_FILES:.o=.d)
 
-STUB_HTTPSERVER_LIBS = $(HTTPSERVER_DIR)/httpserver-stub.so
-LIBS = -lpthread $(boost-libs) $(DEPEDNDS_LIBS) -lyaml-cpp 
-L$(HTTPSERVER_DIR)/ -lhttpserver
+STUB_HTTPSERVER_LIBS = $(HTTPSERVER_API_DIR)/httpserver-stub.so
+LIBS = -lpthread $(boost-libs) $(DEPEDNDS_LIBS) -lyaml-cpp 
-L$(HTTPSERVER_API_DIR)/ -lhttpserver
 
 quiet = $(if $V, $1, @echo " $2"; $1)
 very-quiet = $(if $V, $1, @$1)
diff --git a/modules/httpserver/.gitignore b/modules/httpserver-api/.gitignore
similarity index 100%
rename from modules/httpserver/.gitignore
rename to modules/httpserver-api/.gitignore
diff --git a/modules/httpserver/Makefile b/modules/httpserver-api/Makefile
similarity index 83%
rename from modules/httpserver/Makefile
rename to modules/httpserver-api/Makefile
index 8acdd3e..8e3b664 100644
--- a/modules/httpserver/Makefile
+++ b/modules/httpserver-api/Makefile
@@ -48,7 +48,7 @@ very-quiet = $(if $V, $1, @$1)
 
 DEPS := $(OBJ_FILES:.o=.d)
 
-module: all gui swagger-ui-lib
+module: all
 
 all: init lib$(TARGET).so
 
@@ -92,32 +92,18 @@ check: check-http check-ssl
 check-http:
        # Test plain HTTP
        cd $(src) && \
-       make image=httpserver,jetty && \
-       PYTHONPATH=$(src)/scripts modules/httpserver/tests/testhttpserver.py
+       make image=httpserver-api,jetty && \
+       PYTHONPATH=$(src)/scripts modules/httpserver-api/tests/testhttpserver.py
 
 check-ssl:
        # Test SSL
        cd $(src) && \
-       make image=httpserver.fg_ssl,certs,jetty && \
-       PYTHONPATH=$(src)/scripts modules/httpserver/tests/testhttpserver.py \
+       make image=httpserver-api.fg_ssl,certs,jetty && \
+       PYTHONPATH=$(src)/scripts 
modules/httpserver-api/tests/testhttpserver.py \
                --cert modules/certs/build/client.pem \
                --key modules/certs/build/client.key \
                --cacert modules/certs/build/cacert.pem
 
 .PHONY: check check-http check-ssl
 
-
-swagger-ui-lib: swagger-ui/.git
-.PHONY: swagger-ui-lib
-
-swagger-ui/.git:
-       cd $(src) && git submodule update --init -f 
modules/httpserver/swagger-ui
-
-gui: osv-gui/.git
-       $(call quiet,make -C osv-gui)
-.PHONY: gui
-
-osv-gui/.git:
-       cd $(src) && git submodule update --init -f modules/httpserver/osv-gui
-
 .SECONDARY:
diff --git a/modules/httpserver/api-doc/listings/api.json 
b/modules/httpserver-api/api-doc/listings/api.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/api.json
rename to modules/httpserver-api/api-doc/listings/api.json
diff --git a/modules/httpserver/api-doc/listings/app.json 
b/modules/httpserver-api/api-doc/listings/app.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/app.json
rename to modules/httpserver-api/api-doc/listings/app.json
diff --git a/modules/httpserver/api-doc/listings/env.json 
b/modules/httpserver-api/api-doc/listings/env.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/env.json
rename to modules/httpserver-api/api-doc/listings/env.json
diff --git a/modules/httpserver/api-doc/listings/file.json 
b/modules/httpserver-api/api-doc/listings/file.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/file.json
rename to modules/httpserver-api/api-doc/listings/file.json
diff --git a/modules/httpserver/api-doc/listings/fs.json 
b/modules/httpserver-api/api-doc/listings/fs.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/fs.json
rename to modules/httpserver-api/api-doc/listings/fs.json
diff --git a/modules/httpserver/api-doc/listings/hardware.json 
b/modules/httpserver-api/api-doc/listings/hardware.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/hardware.json
rename to modules/httpserver-api/api-doc/listings/hardware.json
diff --git a/modules/httpserver/api-doc/listings/network.json 
b/modules/httpserver-api/api-doc/listings/network.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/network.json
rename to modules/httpserver-api/api-doc/listings/network.json
diff --git a/modules/httpserver/api-doc/listings/os.json 
b/modules/httpserver-api/api-doc/listings/os.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/os.json
rename to modules/httpserver-api/api-doc/listings/os.json
diff --git a/modules/httpserver/api-doc/listings/trace.json 
b/modules/httpserver-api/api-doc/listings/trace.json
similarity index 100%
rename from modules/httpserver/api-doc/listings/trace.json
rename to modules/httpserver-api/api-doc/listings/trace.json
diff --git a/modules/httpserver/api/api.cc b/modules/httpserver-api/api/api.cc
similarity index 100%
rename from modules/httpserver/api/api.cc
rename to modules/httpserver-api/api/api.cc
diff --git a/modules/httpserver/api/api.hh b/modules/httpserver-api/api/api.hh
similarity index 100%
rename from modules/httpserver/api/api.hh
rename to modules/httpserver-api/api/api.hh
diff --git a/modules/httpserver/api/app.cc b/modules/httpserver-api/api/app.cc
similarity index 100%
rename from modules/httpserver/api/app.cc
rename to modules/httpserver-api/api/app.cc
diff --git a/modules/httpserver/api/app.hh b/modules/httpserver-api/api/app.hh
similarity index 100%
rename from modules/httpserver/api/app.hh
rename to modules/httpserver-api/api/app.hh
diff --git a/modules/httpserver/api/env.cc b/modules/httpserver-api/api/env.cc
similarity index 100%
rename from modules/httpserver/api/env.cc
rename to modules/httpserver-api/api/env.cc
diff --git a/modules/httpserver/api/env.hh b/modules/httpserver-api/api/env.hh
similarity index 100%
rename from modules/httpserver/api/env.hh
rename to modules/httpserver-api/api/env.hh
diff --git a/modules/httpserver/api/file.cc b/modules/httpserver-api/api/file.cc
similarity index 100%
rename from modules/httpserver/api/file.cc
rename to modules/httpserver-api/api/file.cc
diff --git a/modules/httpserver/api/file.hh b/modules/httpserver-api/api/file.hh
similarity index 100%
rename from modules/httpserver/api/file.hh
rename to modules/httpserver-api/api/file.hh
diff --git a/modules/httpserver/api/files_mapping.cc 
b/modules/httpserver-api/api/files_mapping.cc
similarity index 100%
rename from modules/httpserver/api/files_mapping.cc
rename to modules/httpserver-api/api/files_mapping.cc
diff --git a/modules/httpserver/api/files_mapping.hh 
b/modules/httpserver-api/api/files_mapping.hh
similarity index 100%
rename from modules/httpserver/api/files_mapping.hh
rename to modules/httpserver-api/api/files_mapping.hh
diff --git a/modules/httpserver/api/fs.cc b/modules/httpserver-api/api/fs.cc
similarity index 100%
rename from modules/httpserver/api/fs.cc
rename to modules/httpserver-api/api/fs.cc
diff --git a/modules/httpserver/api/fs.hh b/modules/httpserver-api/api/fs.hh
similarity index 100%
rename from modules/httpserver/api/fs.hh
rename to modules/httpserver-api/api/fs.hh
diff --git a/modules/httpserver/api/hardware.cc 
b/modules/httpserver-api/api/hardware.cc
similarity index 100%
rename from modules/httpserver/api/hardware.cc
rename to modules/httpserver-api/api/hardware.cc
diff --git a/modules/httpserver/api/hardware.hh 
b/modules/httpserver-api/api/hardware.hh
similarity index 100%
rename from modules/httpserver/api/hardware.hh
rename to modules/httpserver-api/api/hardware.hh
diff --git a/modules/httpserver/api/network.cc 
b/modules/httpserver-api/api/network.cc
similarity index 100%
rename from modules/httpserver/api/network.cc
rename to modules/httpserver-api/api/network.cc
diff --git a/modules/httpserver/api/network.hh 
b/modules/httpserver-api/api/network.hh
similarity index 100%
rename from modules/httpserver/api/network.hh
rename to modules/httpserver-api/api/network.hh
diff --git a/modules/httpserver/api/os.cc b/modules/httpserver-api/api/os.cc
similarity index 100%
rename from modules/httpserver/api/os.cc
rename to modules/httpserver-api/api/os.cc
diff --git a/modules/httpserver/api/os.hh b/modules/httpserver-api/api/os.hh
similarity index 100%
rename from modules/httpserver/api/os.hh
rename to modules/httpserver-api/api/os.hh
diff --git a/modules/httpserver/api/trace.cc 
b/modules/httpserver-api/api/trace.cc
similarity index 100%
rename from modules/httpserver/api/trace.cc
rename to modules/httpserver-api/api/trace.cc
diff --git a/modules/httpserver/api/trace.hh 
b/modules/httpserver-api/api/trace.hh
similarity index 100%
rename from modules/httpserver/api/trace.hh
rename to modules/httpserver-api/api/trace.hh
diff --git a/modules/httpserver/common.cc b/modules/httpserver-api/common.cc
similarity index 100%
rename from modules/httpserver/common.cc
rename to modules/httpserver-api/common.cc
diff --git a/modules/httpserver/common.hh b/modules/httpserver-api/common.hh
similarity index 100%
rename from modules/httpserver/common.hh
rename to modules/httpserver-api/common.hh
diff --git a/modules/httpserver/connection.cc 
b/modules/httpserver-api/connection.cc
similarity index 100%
rename from modules/httpserver/connection.cc
rename to modules/httpserver-api/connection.cc
diff --git a/modules/httpserver/connection.hh 
b/modules/httpserver-api/connection.hh
similarity index 100%
rename from modules/httpserver/connection.hh
rename to modules/httpserver-api/connection.hh
diff --git a/modules/httpserver/connection_manager.cc 
b/modules/httpserver-api/connection_manager.cc
similarity index 100%
rename from modules/httpserver/connection_manager.cc
rename to modules/httpserver-api/connection_manager.cc
diff --git a/modules/httpserver/connection_manager.hh 
b/modules/httpserver-api/connection_manager.hh
similarity index 100%
rename from modules/httpserver/connection_manager.hh
rename to modules/httpserver-api/connection_manager.hh
diff --git a/modules/httpserver/exception.hh 
b/modules/httpserver-api/exception.hh
similarity index 100%
rename from modules/httpserver/exception.hh
rename to modules/httpserver-api/exception.hh
diff --git a/modules/httpserver/global_server.cc 
b/modules/httpserver-api/global_server.cc
similarity index 100%
rename from modules/httpserver/global_server.cc
rename to modules/httpserver-api/global_server.cc
diff --git a/modules/httpserver/global_server.hh 
b/modules/httpserver-api/global_server.hh
similarity index 100%
rename from modules/httpserver/global_server.hh
rename to modules/httpserver-api/global_server.hh
diff --git a/modules/httpserver/handlers.cc b/modules/httpserver-api/handlers.cc
similarity index 100%
rename from modules/httpserver/handlers.cc
rename to modules/httpserver-api/handlers.cc
diff --git a/modules/httpserver/handlers.hh b/modules/httpserver-api/handlers.hh
similarity index 100%
rename from modules/httpserver/handlers.hh
rename to modules/httpserver-api/handlers.hh
diff --git a/modules/httpserver/header.hh b/modules/httpserver-api/header.hh
similarity index 100%
rename from modules/httpserver/header.hh
rename to modules/httpserver-api/header.hh
diff --git a/modules/httpserver/json/api_docs.cc 
b/modules/httpserver-api/json/api_docs.cc
similarity index 100%
rename from modules/httpserver/json/api_docs.cc
rename to modules/httpserver-api/json/api_docs.cc
diff --git a/modules/httpserver/json/api_docs.hh 
b/modules/httpserver-api/json/api_docs.hh
similarity index 100%
rename from modules/httpserver/json/api_docs.hh
rename to modules/httpserver-api/json/api_docs.hh
diff --git a/modules/httpserver/json/formatter.cc 
b/modules/httpserver-api/json/formatter.cc
similarity index 100%
rename from modules/httpserver/json/formatter.cc
rename to modules/httpserver-api/json/formatter.cc
diff --git a/modules/httpserver/json/formatter.hh 
b/modules/httpserver-api/json/formatter.hh
similarity index 100%
rename from modules/httpserver/json/formatter.hh
rename to modules/httpserver-api/json/formatter.hh
diff --git a/modules/httpserver/json/json_elements.cc 
b/modules/httpserver-api/json/json_elements.cc
similarity index 100%
rename from modules/httpserver/json/json_elements.cc
rename to modules/httpserver-api/json/json_elements.cc
diff --git a/modules/httpserver/json/json_elements.hh 
b/modules/httpserver-api/json/json_elements.hh
similarity index 100%
rename from modules/httpserver/json/json_elements.hh
rename to modules/httpserver-api/json/json_elements.hh
diff --git a/modules/httpserver/json/json_path.cc 
b/modules/httpserver-api/json/json_path.cc
similarity index 100%
rename from modules/httpserver/json/json_path.cc
rename to modules/httpserver-api/json/json_path.cc
diff --git a/modules/httpserver/json/json_path.hh 
b/modules/httpserver-api/json/json_path.hh
similarity index 100%
rename from modules/httpserver/json/json_path.hh
rename to modules/httpserver-api/json/json_path.hh
diff --git a/modules/httpserver/json2code.py 
b/modules/httpserver-api/json2code.py
similarity index 100%
rename from modules/httpserver/json2code.py
rename to modules/httpserver-api/json2code.py
diff --git a/modules/httpserver/main.cc b/modules/httpserver-api/main.cc
similarity index 100%
rename from modules/httpserver/main.cc
rename to modules/httpserver-api/main.cc
diff --git a/modules/httpserver/matcher.cc b/modules/httpserver-api/matcher.cc
similarity index 100%
rename from modules/httpserver/matcher.cc
rename to modules/httpserver-api/matcher.cc
diff --git a/modules/httpserver/matcher.hh b/modules/httpserver-api/matcher.hh
similarity index 100%
rename from modules/httpserver/matcher.hh
rename to modules/httpserver-api/matcher.hh
diff --git a/modules/httpserver/matchrules.hh 
b/modules/httpserver-api/matchrules.hh
similarity index 100%
rename from modules/httpserver/matchrules.hh
rename to modules/httpserver-api/matchrules.hh
diff --git a/modules/httpserver/mime_types.cc 
b/modules/httpserver-api/mime_types.cc
similarity index 100%
rename from modules/httpserver/mime_types.cc
rename to modules/httpserver-api/mime_types.cc
diff --git a/modules/httpserver/mime_types.hh 
b/modules/httpserver-api/mime_types.hh
similarity index 100%
rename from modules/httpserver/mime_types.hh
rename to modules/httpserver-api/mime_types.hh
diff --git a/modules/httpserver/module.py b/modules/httpserver-api/module.py
similarity index 80%
copy from modules/httpserver/module.py
copy to modules/httpserver-api/module.py
index 7a83a04..0bf3f31 100644
--- a/modules/httpserver/module.py
+++ b/modules/httpserver-api/module.py
@@ -3,15 +3,13 @@ from osv.modules.api import *
 from osv.modules.filemap import FileMap
 from osv.modules import api
 
-_module = '${OSV_BASE}/modules/httpserver'
+_module = '${OSV_BASE}/modules/httpserver-api'
 
 _exe = '/libhttpserver.so'
 
 usr_files = FileMap()
 usr_files.add(os.path.join(_module, 'libhttpserver.so')).to(_exe)
 usr_files.add(os.path.join(_module, 'api-doc')).to('/usr/mgmt/api')
-usr_files.add(os.path.join(_module, 'swagger-ui', 
'dist')).to('/usr/mgmt/swagger-ui/dist')
-usr_files.add(os.path.join(_module, 'osv-gui/public')).to('/usr/mgmt/gui')
 
 api.require('openssl')
 api.require('libtools')
diff --git a/modules/httpserver/openssl-init.cc 
b/modules/httpserver-api/openssl-init.cc
similarity index 100%
rename from modules/httpserver/openssl-init.cc
rename to modules/httpserver-api/openssl-init.cc
diff --git a/modules/httpserver/openssl-init.hh 
b/modules/httpserver-api/openssl-init.hh
similarity index 100%
rename from modules/httpserver/openssl-init.hh
rename to modules/httpserver-api/openssl-init.hh
diff --git a/modules/httpserver/path_holder.cc 
b/modules/httpserver-api/path_holder.cc
similarity index 100%
rename from modules/httpserver/path_holder.cc
rename to modules/httpserver-api/path_holder.cc
diff --git a/modules/httpserver/path_holder.hh 
b/modules/httpserver-api/path_holder.hh
similarity index 100%
rename from modules/httpserver/path_holder.hh
rename to modules/httpserver-api/path_holder.hh
diff --git a/modules/httpserver/plain_server.cc 
b/modules/httpserver-api/plain_server.cc
similarity index 100%
rename from modules/httpserver/plain_server.cc
rename to modules/httpserver-api/plain_server.cc
diff --git a/modules/httpserver/plain_server.hh 
b/modules/httpserver-api/plain_server.hh
similarity index 100%
rename from modules/httpserver/plain_server.hh
rename to modules/httpserver-api/plain_server.hh
diff --git a/modules/httpserver/reply.cc b/modules/httpserver-api/reply.cc
similarity index 100%
rename from modules/httpserver/reply.cc
rename to modules/httpserver-api/reply.cc
diff --git a/modules/httpserver/reply.hh b/modules/httpserver-api/reply.hh
similarity index 100%
rename from modules/httpserver/reply.hh
rename to modules/httpserver-api/reply.hh
diff --git a/modules/httpserver/request.hh b/modules/httpserver-api/request.hh
similarity index 100%
rename from modules/httpserver/request.hh
rename to modules/httpserver-api/request.hh
diff --git a/modules/httpserver/request_handler.cc 
b/modules/httpserver-api/request_handler.cc
similarity index 100%
rename from modules/httpserver/request_handler.cc
rename to modules/httpserver-api/request_handler.cc
diff --git a/modules/httpserver/request_handler.hh 
b/modules/httpserver-api/request_handler.hh
similarity index 100%
rename from modules/httpserver/request_handler.hh
rename to modules/httpserver-api/request_handler.hh
diff --git a/modules/httpserver/request_parser.cc 
b/modules/httpserver-api/request_parser.cc
similarity index 100%
rename from modules/httpserver/request_parser.cc
rename to modules/httpserver-api/request_parser.cc
diff --git a/modules/httpserver/request_parser.hh 
b/modules/httpserver-api/request_parser.hh
similarity index 100%
rename from modules/httpserver/request_parser.hh
rename to modules/httpserver-api/request_parser.hh
diff --git a/modules/httpserver/routes.cc b/modules/httpserver-api/routes.cc
similarity index 100%
rename from modules/httpserver/routes.cc
rename to modules/httpserver-api/routes.cc
diff --git a/modules/httpserver/routes.hh b/modules/httpserver-api/routes.hh
similarity index 100%
rename from modules/httpserver/routes.hh
rename to modules/httpserver-api/routes.hh
diff --git a/modules/httpserver/server.cc b/modules/httpserver-api/server.cc
similarity index 100%
rename from modules/httpserver/server.cc
rename to modules/httpserver-api/server.cc
diff --git a/modules/httpserver/server.hh b/modules/httpserver-api/server.hh
similarity index 100%
rename from modules/httpserver/server.hh
rename to modules/httpserver-api/server.hh
diff --git a/modules/httpserver/ssl_server.cc 
b/modules/httpserver-api/ssl_server.cc
similarity index 100%
rename from modules/httpserver/ssl_server.cc
rename to modules/httpserver-api/ssl_server.cc
diff --git a/modules/httpserver/ssl_server.hh 
b/modules/httpserver-api/ssl_server.hh
similarity index 100%
rename from modules/httpserver/ssl_server.hh
rename to modules/httpserver-api/ssl_server.hh
diff --git a/modules/httpserver/stub/debug.cc 
b/modules/httpserver-api/stub/debug.cc
similarity index 100%
rename from modules/httpserver/stub/debug.cc
rename to modules/httpserver-api/stub/debug.cc
diff --git a/modules/httpserver/stub/java_api.cc 
b/modules/httpserver-api/stub/java_api.cc
similarity index 100%
rename from modules/httpserver/stub/java_api.cc
rename to modules/httpserver-api/stub/java_api.cc
diff --git a/modules/httpserver/stub/shutdown.cc 
b/modules/httpserver-api/stub/shutdown.cc
similarity index 100%
rename from modules/httpserver/stub/shutdown.cc
rename to modules/httpserver-api/stub/shutdown.cc
diff --git a/modules/httpserver/stub/trace_api.cc 
b/modules/httpserver-api/stub/trace_api.cc
similarity index 100%
rename from modules/httpserver/stub/trace_api.cc
rename to modules/httpserver-api/stub/trace_api.cc
diff --git a/modules/httpserver/stub/version.cc 
b/modules/httpserver-api/stub/version.cc
similarity index 100%
rename from modules/httpserver/stub/version.cc
rename to modules/httpserver-api/stub/version.cc
diff --git a/modules/httpserver/tests/api/testenv.py 
b/modules/httpserver-api/tests/api/testenv.py
similarity index 100%
rename from modules/httpserver/tests/api/testenv.py
rename to modules/httpserver-api/tests/api/testenv.py
diff --git a/modules/httpserver/tests/api/testfile.py 
b/modules/httpserver-api/tests/api/testfile.py
similarity index 100%
rename from modules/httpserver/tests/api/testfile.py
rename to modules/httpserver-api/tests/api/testfile.py
diff --git a/modules/httpserver/tests/api/testfs.py 
b/modules/httpserver-api/tests/api/testfs.py
similarity index 100%
rename from modules/httpserver/tests/api/testfs.py
rename to modules/httpserver-api/tests/api/testfs.py
diff --git a/modules/httpserver/tests/api/testjolokia.py 
b/modules/httpserver-api/tests/api/testjolokia.py
similarity index 100%
rename from modules/httpserver/tests/api/testjolokia.py
rename to modules/httpserver-api/tests/api/testjolokia.py
diff --git a/modules/httpserver/tests/api/testjvm.py 
b/modules/httpserver-api/tests/api/testjvm.py
similarity index 100%
rename from modules/httpserver/tests/api/testjvm.py
rename to modules/httpserver-api/tests/api/testjvm.py
diff --git a/modules/httpserver/tests/api/testnetwork.py 
b/modules/httpserver-api/tests/api/testnetwork.py
similarity index 100%
rename from modules/httpserver/tests/api/testnetwork.py
rename to modules/httpserver-api/tests/api/testnetwork.py
diff --git a/modules/httpserver/tests/api/testos.py 
b/modules/httpserver-api/tests/api/testos.py
similarity index 100%
rename from modules/httpserver/tests/api/testos.py
rename to modules/httpserver-api/tests/api/testos.py
diff --git a/modules/httpserver/tests/api/testtrace.py 
b/modules/httpserver-api/tests/api/testtrace.py
similarity index 100%
rename from modules/httpserver/tests/api/testtrace.py
rename to modules/httpserver-api/tests/api/testtrace.py
diff --git a/modules/httpserver/tests/basetest.py 
b/modules/httpserver-api/tests/basetest.py
similarity index 100%
rename from modules/httpserver/tests/basetest.py
rename to modules/httpserver-api/tests/basetest.py
diff --git a/modules/httpserver/tests/ssl/test_connection.py 
b/modules/httpserver-api/tests/ssl/test_connection.py
similarity index 100%
rename from modules/httpserver/tests/ssl/test_connection.py
rename to modules/httpserver-api/tests/ssl/test_connection.py
diff --git a/modules/httpserver/tests/testhttpserver.py 
b/modules/httpserver-api/tests/testhttpserver.py
similarity index 100%
rename from modules/httpserver/tests/testhttpserver.py
rename to modules/httpserver-api/tests/testhttpserver.py
diff --git a/modules/httpserver/transformers.cc 
b/modules/httpserver-api/transformers.cc
similarity index 100%
rename from modules/httpserver/transformers.cc
rename to modules/httpserver-api/transformers.cc
diff --git a/modules/httpserver/transformers.hh 
b/modules/httpserver-api/transformers.hh
similarity index 100%
rename from modules/httpserver/transformers.hh
rename to modules/httpserver-api/transformers.hh
diff --git a/modules/httpserver/transport.hh 
b/modules/httpserver-api/transport.hh
similarity index 100%
rename from modules/httpserver/transport.hh
rename to modules/httpserver-api/transport.hh
diff --git a/modules/httpserver-html5-gui/Makefile 
b/modules/httpserver-html5-gui/Makefile
new file mode 100644
index 0000000..4321a5a
--- /dev/null
+++ b/modules/httpserver-html5-gui/Makefile
@@ -0,0 +1,22 @@
+src = $(shell readlink -f ../..)
+
+quiet = $(if $V, $1, @echo " $2"; $1)
+very-quiet = $(if $V, $1, @$1)
+
+all: module
+module: gui swagger-ui-lib
+
+swagger-ui-lib: swagger-ui/.git
+.PHONY: swagger-ui-lib
+
+swagger-ui/.git:
+       cd $(src) && git submodule update --init -f 
modules/httpserver-html5-gui/swagger-ui
+
+gui: osv-gui/.git
+       $(call quiet,make -C osv-gui)
+.PHONY: gui
+
+osv-gui/.git:
+       cd $(src) && git submodule update --init -f 
modules/httpserver-html5-gui/osv-gui
+
+.SECONDARY:
diff --git a/modules/httpserver/module.py 
b/modules/httpserver-html5-gui/module.py
similarity index 50%
copy from modules/httpserver/module.py
copy to modules/httpserver-html5-gui/module.py
index 7a83a04..bfe8dab 100644
--- a/modules/httpserver/module.py
+++ b/modules/httpserver-html5-gui/module.py
@@ -3,31 +3,22 @@ from osv.modules.api import *
 from osv.modules.filemap import FileMap
 from osv.modules import api
 
-_module = '${OSV_BASE}/modules/httpserver'
-
-_exe = '/libhttpserver.so'
+_module = '${OSV_BASE}/modules/httpserver-html5-gui'
 
 usr_files = FileMap()
-usr_files.add(os.path.join(_module, 'libhttpserver.so')).to(_exe)
-usr_files.add(os.path.join(_module, 'api-doc')).to('/usr/mgmt/api')
 usr_files.add(os.path.join(_module, 'swagger-ui', 
'dist')).to('/usr/mgmt/swagger-ui/dist')
 usr_files.add(os.path.join(_module, 'osv-gui/public')).to('/usr/mgmt/gui')
 
-api.require('openssl')
-api.require('libtools')
-api.require('libyaml')
-
-# only require next 3 modules if java (jre) is included in the list of modules
-api.require_if_other_module_present('josvsym','java')
-api.require_if_other_module_present('httpserver-jolokia-plugin','java')
-api.require_if_other_module_present('httpserver-jvm-plugin','java')
+api.require('httpserver-api')
 
 # httpserver will run regardless of an explicit command line
 # passed with "run.py -e".
+_exe = '/libhttpserver.so'
 daemon = api.run_on_init(_exe + ' &!')
 
 fg = api.run(_exe)
 
 fg_ssl = api.run(_exe + ' --ssl')
+fg_cors = api.run(_exe + ' --access-allow=true')
 
 default = daemon
diff --git a/modules/httpserver/osv-gui b/modules/httpserver-html5-gui/osv-gui
similarity index 100%
rename from modules/httpserver/osv-gui
rename to modules/httpserver-html5-gui/osv-gui
diff --git a/modules/httpserver/swagger-ui 
b/modules/httpserver-html5-gui/swagger-ui
similarity index 100%
rename from modules/httpserver/swagger-ui
rename to modules/httpserver-html5-gui/swagger-ui
diff --git a/modules/httpserver-jolokia-plugin/Makefile 
b/modules/httpserver-jolokia-plugin/Makefile
index f89b02c..6c9f6e5 100644
--- a/modules/httpserver-jolokia-plugin/Makefile
+++ b/modules/httpserver-jolokia-plugin/Makefile
@@ -2,7 +2,7 @@
 INCLUDES = -isystem $(miscbase)/usr/include -I$(src)/build/$(mode)/gen/include
 INCLUDES += -I../../include -I. -I../../java -I../../arch/$(ARCH) -I../..
 INCLUDES += -I$(jdkbase)/include -I$(jdkbase)/include/linux
-INCLUDES += -I../httpserver
+INCLUDES += -I../httpserver-api
 
 # compiler flags:
 #  -g    adds debugging information to the executable file
@@ -11,7 +11,7 @@ autodepend = -MD -MT $@ -MP
 CXXFLAGS  = -g -Wall -std=c++11 -fPIC $(INCLUDES) -O2 $(autodepend)
 src = $(shell readlink -f ../..)
 
-CODE_GEN_FROM_JSON := ../httpserver/json2code.py
+CODE_GEN_FROM_JSON := ../httpserver-api/json2code.py
 RM := /bin/rm
 
 ifndef ARCH
diff --git a/modules/httpserver-jvm-plugin/Makefile 
b/modules/httpserver-jvm-plugin/Makefile
index 4a20122..b684fc7 100644
--- a/modules/httpserver-jvm-plugin/Makefile
+++ b/modules/httpserver-jvm-plugin/Makefile
@@ -2,7 +2,7 @@
 INCLUDES = -isystem $(miscbase)/usr/include -I$(src)/build/$(mode)/gen/include
 INCLUDES += -I../../include -I. -I../../java -I../../arch/$(ARCH) -I../..
 INCLUDES += -I$(jdkbase)/include -I$(jdkbase)/include/linux
-INCLUDES += -I../httpserver
+INCLUDES += -I../httpserver-api
 
 # compiler flags:
 #  -g    adds debugging information to the executable file
@@ -11,7 +11,7 @@ autodepend = -MD -MT $@ -MP
 CXXFLAGS  = -g -Wall -std=c++11 -fPIC $(INCLUDES) -O2 $(autodepend)
 src = $(shell readlink -f ../..)
 
-CODE_GEN_FROM_JSON := ../httpserver/json2code.py
+CODE_GEN_FROM_JSON := ../httpserver-api/json2code.py
 RM := /bin/rm
 
 ifndef ARCH
diff --git a/modules/httpserver/module.py b/modules/httpserver/module.py
index 7a83a04..d782db3 100644
--- a/modules/httpserver/module.py
+++ b/modules/httpserver/module.py
@@ -1,33 +1,10 @@
-import os
-from osv.modules.api import *
-from osv.modules.filemap import FileMap
 from osv.modules import api
 
-_module = '${OSV_BASE}/modules/httpserver'
+api.require('httpserver-html5-gui')
 
-_exe = '/libhttpserver.so'
-
-usr_files = FileMap()
-usr_files.add(os.path.join(_module, 'libhttpserver.so')).to(_exe)
-usr_files.add(os.path.join(_module, 'api-doc')).to('/usr/mgmt/api')
-usr_files.add(os.path.join(_module, 'swagger-ui', 
'dist')).to('/usr/mgmt/swagger-ui/dist')
-usr_files.add(os.path.join(_module, 'osv-gui/public')).to('/usr/mgmt/gui')
-
-api.require('openssl')
-api.require('libtools')
-api.require('libyaml')
-
-# only require next 3 modules if java (jre) is included in the list of modules
-api.require_if_other_module_present('josvsym','java')
-api.require_if_other_module_present('httpserver-jolokia-plugin','java')
-api.require_if_other_module_present('httpserver-jvm-plugin','java')
+fg = api.run('/libhttpserver.so')
 
 # httpserver will run regardless of an explicit command line
 # passed with "run.py -e".
-daemon = api.run_on_init(_exe + ' &!')
-
-fg = api.run(_exe)
-
-fg_ssl = api.run(_exe + ' --ssl')
-
+daemon = api.run_on_init('/libhttpserver.so &!')
 default = daemon
-- 
2.7.4

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to