Refactor JavaScript binding from a single ludicrously huge binding.js into a 
set of sub-modules that should hopefully make maintenance much simpler

git-svn-id: 
https://svn.apache.org/repos/asf/qpid/proton/branches/fadams-javascript-binding@1624873
 13f79535-47bb-0310-9956-ffa450edef68


Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/abd646b2
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/abd646b2
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/abd646b2

Branch: refs/heads/master
Commit: abd646b284ab3debbea3100096ada38c07984a90
Parents: f1fc250
Author: fadams <fadams@unknown>
Authored: Sun Sep 14 16:57:09 2014 +0000
Committer: fadams <fadams@unknown>
Committed: Sun Sep 14 16:57:09 2014 +0000

----------------------------------------------------------------------
 proton-c/bindings/javascript/CMakeLists.txt     |   20 +-
 proton-c/bindings/javascript/binding.js         | 4129 ------------------
 proton-c/bindings/javascript/data-array.js      |  100 +
 proton-c/bindings/javascript/data-binary.js     |  181 +
 proton-c/bindings/javascript/data-described.js  |   74 +
 proton-c/bindings/javascript/data-long.js       |  191 +
 proton-c/bindings/javascript/data-symbol.js     |   59 +
 .../bindings/javascript/data-typed-number.js    |  108 +
 proton-c/bindings/javascript/data-uuid.js       |  107 +
 proton-c/bindings/javascript/data.js            | 1577 +++++++
 proton-c/bindings/javascript/error.js           |  145 +
 proton-c/bindings/javascript/message.js         |  848 ++++
 proton-c/bindings/javascript/messenger.js       |  799 ++++
 proton-c/bindings/javascript/module.js          |  150 +
 proton-c/bindings/javascript/subscription.js    |   67 +
 15 files changed, 4421 insertions(+), 4134 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/abd646b2/proton-c/bindings/javascript/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/proton-c/bindings/javascript/CMakeLists.txt 
b/proton-c/bindings/javascript/CMakeLists.txt
index a92509a..695fbd1 100644
--- a/proton-c/bindings/javascript/CMakeLists.txt
+++ b/proton-c/bindings/javascript/CMakeLists.txt
@@ -96,9 +96,7 @@ add_custom_command(
   DEPENDS ${PN_PATH}/src/protocol.h.py
   )
 
-# TODO put back -Werror once offending warnings get eliminated.
-#set(COMPILE_WARNING_FLAGS "-Werror -Wall -pedantic-errors -Wno-comment 
-Wno-warn-absolute-paths")
-set(COMPILE_WARNING_FLAGS "-Wall -pedantic-errors -Wno-comment 
-Wno-warn-absolute-paths")
+set(COMPILE_WARNING_FLAGS "-Werror -Wall -pedantic-errors -Wno-comment 
-Wno-warn-absolute-paths")
 
 # Explicitly set PLATFORM_DEFINITIONS to Linux ones for emscripten as we don't
 # want to inadvertently use Windows versions if we happen to be cross-compiling
@@ -223,7 +221,7 @@ set_target_properties(
   # fiddly with node.js packages. This behaviour might be reinstated if the
   # packaging mechanism improves.
 
-  LINK_FLAGS "-s \"EXPORT_NAME='proton'\" -s 
\"WEBSOCKET_SUBPROTOCOL='AMQPWSB10'\" ${EMSCRIPTEN_LINK_OPTIMISATIONS} 
--memory-init-file 0 --pre-js ${CMAKE_CURRENT_SOURCE_DIR}/binding-open.js 
--pre-js ${CMAKE_CURRENT_SOURCE_DIR}/binding.js --post-js 
${CMAKE_CURRENT_SOURCE_DIR}/binding-close.js -s 
DEFAULT_LIBRARY_FUNCS_TO_INCLUDE=\"[]\" -s EXPORTED_FUNCTIONS=\"['_pn_bytes', 
'_pn_error_text', '_pn_code', '_pn_messenger', '_pn_messenger_name', 
'_pn_messenger_set_blocking', '_pn_messenger_free', '_pn_messenger_errno', 
'_pn_messenger_error', '_pn_messenger_get_outgoing_window', 
'_pn_messenger_set_outgoing_window', '_pn_messenger_get_incoming_window', 
'_pn_messenger_set_incoming_window', '_pn_messenger_start', 
'_pn_messenger_stop', '_pn_messenger_stopped', '_pn_messenger_subscribe', 
'_pn_messenger_put', '_pn_messenger_status', '_pn_messenger_buffered', 
'_pn_messenger_settle', '_pn_messenger_outgoing_tracker', '_pn_messenger_work', 
'_pn_messenger_recv', '_pn_messenger_receiving', '_pn_messen
 ger_get', '_pn_messenger_incoming_tracker', 
'_pn_messenger_incoming_subscription', '_pn_messenger_accept', 
'_pn_messenger_reject', '_pn_messenger_outgoing', '_pn_messenger_incoming',  
'_pn_messenger_route', '_pn_messenger_rewrite', '_pn_subscription_get_context', 
'_pn_subscription_set_context', '_pn_subscription_address', '_pn_message', 
'_pn_message_id', '_pn_message_correlation_id', '_pn_message_free', 
'_pn_message_errno', '_pn_message_error', '_pn_message_clear', 
'_pn_message_is_inferred', '_pn_message_set_inferred', 
'_pn_message_is_durable', '_pn_message_set_durable', 
'_pn_message_get_priority', '_pn_message_set_priority', '_pn_message_get_ttl', 
'_pn_message_set_ttl', '_pn_message_is_first_acquirer', 
'_pn_message_set_first_acquirer', '_pn_message_get_delivery_count', 
'_pn_message_set_delivery_count', '_pn_message_get_user_id', 
'_pn_message_set_user_id', '_pn_message_get_address', 
'_pn_message_set_address', '_pn_message_get_subject', 
'_pn_message_set_subject', '_pn_message_get_rep
 ly_to', '_pn_message_set_reply_to', '_pn_message_get_content_type', 
'_pn_message_set_content_type', '_pn_message_get_content_encoding', 
'_pn_message_set_content_encoding', '_pn_message_get_expiry_time', 
'_pn_message_set_expiry_time', '_pn_message_get_creation_time', 
'_pn_message_set_creation_time', '_pn_message_get_group_id', 
'_pn_message_set_group_id', '_pn_message_get_group_sequence', 
'_pn_message_set_group_sequence', '_pn_message_get_reply_to_group_id', 
'_pn_message_set_reply_to_group_id', '_pn_message_encode', 
'_pn_message_decode', '_pn_message_instructions', '_pn_message_annotations', 
'_pn_message_properties', '_pn_message_body', '_pn_data', '_pn_data_free', 
'_pn_data_error', '_pn_data_errno', '_pn_data_clear', '_pn_data_rewind', 
'_pn_data_next', '_pn_data_prev', '_pn_data_enter', '_pn_data_exit', 
'_pn_data_lookup', '_pn_data_narrow', '_pn_data_widen', '_pn_data_type', 
'_pn_data_encode', '_pn_data_decode', '_pn_data_put_list', '_pn_data_put_map', 
'_pn_data_put_array', '_pn_data
 _put_described', '_pn_data_put_null', '_pn_data_put_bool', 
'_pn_data_put_ubyte', '_pn_data_put_byte', '_pn_data_put_ushort', 
'_pn_data_put_short', '_pn_data_put_uint', '_pn_data_put_int', 
'_pn_data_put_char', '_pn_data_put_ulong', '_pn_data_put_long', 
'_pn_data_put_timestamp', '_pn_data_put_float', '_pn_data_put_double', 
'_pn_data_put_decimal32', '_pn_data_put_decimal64', '_pn_data_put_decimal128', 
'_pn_data_put_uuid', '_pn_data_put_binary', '_pn_data_put_string', 
'_pn_data_put_symbol', '_pn_data_get_list', '_pn_data_get_map', 
'_pn_data_get_array', '_pn_data_is_array_described', '_pn_data_get_array_type', 
'_pn_data_is_described', '_pn_data_is_null', '_pn_data_get_bool', 
'_pn_data_get_ubyte', '_pn_data_get_byte', '_pn_data_get_ushort', 
'_pn_data_get_short', '_pn_data_get_uint', '_pn_data_get_int', 
'_pn_data_get_char', '_pn_data_get_ulong', '_pn_data_get_long', 
'_pn_data_get_timestamp', '_pn_data_get_float', '_pn_data_get_double', 
'_pn_data_get_decimal32', '_pn_data_get_decimal64', '_
 pn_data_get_decimal128', '_pn_data_get_uuid', '_pn_data_get_binary', 
'_pn_data_get_string', '_pn_data_get_symbol', '_pn_data_copy', 
'_pn_data_format', '_pn_data_dump']\""
+  LINK_FLAGS "-s \"EXPORT_NAME='proton'\" -s 
\"WEBSOCKET_SUBPROTOCOL='AMQPWSB10'\" ${EMSCRIPTEN_LINK_OPTIMISATIONS} 
--memory-init-file 0 --pre-js ${CMAKE_CURRENT_SOURCE_DIR}/binding-open.js 
--pre-js ${CMAKE_CURRENT_SOURCE_DIR}/module.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/error.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/messenger.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/subscription.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/message.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/data.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/data-uuid.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/data-symbol.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/data-described.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/data-array.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/data-typed-number.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/data-long.js --pre-js 
${CMAKE_CURRENT_SOURCE_DIR}/data-binary.js --post-js 
${CMAKE_CURRENT_SOURCE_DIR}/binding-close.js -s 
DEFAULT_LIBRARY_FUNCS_TO_INCLUDE=\"[]\" -s EXPORTED_FUNCTIONS=\"['_pn_bytes', 
'_pn_error_tex
 t', '_pn_code', '_pn_messenger', '_pn_messenger_name', 
'_pn_messenger_set_blocking', '_pn_messenger_free', '_pn_messenger_errno', 
'_pn_messenger_error', '_pn_messenger_get_outgoing_window', 
'_pn_messenger_set_outgoing_window', '_pn_messenger_get_incoming_window', 
'_pn_messenger_set_incoming_window', '_pn_messenger_start', 
'_pn_messenger_stop', '_pn_messenger_stopped', '_pn_messenger_subscribe', 
'_pn_messenger_put', '_pn_messenger_status', '_pn_messenger_buffered', 
'_pn_messenger_settle', '_pn_messenger_outgoing_tracker', '_pn_messenger_work', 
'_pn_messenger_recv', '_pn_messenger_receiving', '_pn_messenger_get', 
'_pn_messenger_incoming_tracker', '_pn_messenger_incoming_subscription', 
'_pn_messenger_accept', '_pn_messenger_reject', '_pn_messenger_outgoing', 
'_pn_messenger_incoming',  '_pn_messenger_route', '_pn_messenger_rewrite', 
'_pn_subscription_get_context', '_pn_subscription_set_context', 
'_pn_subscription_address', '_pn_message', '_pn_message_id', 
'_pn_message_correlation_id', '
 _pn_message_free', '_pn_message_errno', '_pn_message_error', 
'_pn_message_clear', '_pn_message_is_inferred', '_pn_message_set_inferred', 
'_pn_message_is_durable', '_pn_message_set_durable', 
'_pn_message_get_priority', '_pn_message_set_priority', '_pn_message_get_ttl', 
'_pn_message_set_ttl', '_pn_message_is_first_acquirer', 
'_pn_message_set_first_acquirer', '_pn_message_get_delivery_count', 
'_pn_message_set_delivery_count', '_pn_message_get_user_id', 
'_pn_message_set_user_id', '_pn_message_get_address', 
'_pn_message_set_address', '_pn_message_get_subject', 
'_pn_message_set_subject', '_pn_message_get_reply_to', 
'_pn_message_set_reply_to', '_pn_message_get_content_type', 
'_pn_message_set_content_type', '_pn_message_get_content_encoding', 
'_pn_message_set_content_encoding', '_pn_message_get_expiry_time', 
'_pn_message_set_expiry_time', '_pn_message_get_creation_time', 
'_pn_message_set_creation_time', '_pn_message_get_group_id', 
'_pn_message_set_group_id', '_pn_message_get_group_sequence'
 , '_pn_message_set_group_sequence', '_pn_message_get_reply_to_group_id', 
'_pn_message_set_reply_to_group_id', '_pn_message_encode', 
'_pn_message_decode', '_pn_message_instructions', '_pn_message_annotations', 
'_pn_message_properties', '_pn_message_body', '_pn_data', '_pn_data_free', 
'_pn_data_error', '_pn_data_errno', '_pn_data_clear', '_pn_data_rewind', 
'_pn_data_next', '_pn_data_prev', '_pn_data_enter', '_pn_data_exit', 
'_pn_data_lookup', '_pn_data_narrow', '_pn_data_widen', '_pn_data_type', 
'_pn_data_encode', '_pn_data_decode', '_pn_data_put_list', '_pn_data_put_map', 
'_pn_data_put_array', '_pn_data_put_described', '_pn_data_put_null', 
'_pn_data_put_bool', '_pn_data_put_ubyte', '_pn_data_put_byte', 
'_pn_data_put_ushort', '_pn_data_put_short', '_pn_data_put_uint', 
'_pn_data_put_int', '_pn_data_put_char', '_pn_data_put_ulong', 
'_pn_data_put_long', '_pn_data_put_timestamp', '_pn_data_put_float', 
'_pn_data_put_double', '_pn_data_put_decimal32', '_pn_data_put_decimal64', 
'_pn_data_put
 _decimal128', '_pn_data_put_uuid', '_pn_data_put_binary', 
'_pn_data_put_string', '_pn_data_put_symbol', '_pn_data_get_list', 
'_pn_data_get_map', '_pn_data_get_array', '_pn_data_is_array_described', 
'_pn_data_get_array_type', '_pn_data_is_described', '_pn_data_is_null', 
'_pn_data_get_bool', '_pn_data_get_ubyte', '_pn_data_get_byte', 
'_pn_data_get_ushort', '_pn_data_get_short', '_pn_data_get_uint', 
'_pn_data_get_int', '_pn_data_get_char', '_pn_data_get_ulong', 
'_pn_data_get_long', '_pn_data_get_timestamp', '_pn_data_get_float', 
'_pn_data_get_double', '_pn_data_get_decimal32', '_pn_data_get_decimal64', 
'_pn_data_get_decimal128', '_pn_data_get_uuid', '_pn_data_get_binary', 
'_pn_data_get_string', '_pn_data_get_symbol', '_pn_data_copy', 
'_pn_data_format', '_pn_data_dump']\""
   )
 
 # This command packages up the compiled proton.js into a node.js package called
@@ -259,7 +257,19 @@ if (NODE_JSDOC_FOUND)
     message(STATUS "Documentation Enabled. Using ${JSDOC_EXE} to build 
JavaScript docs")
     add_custom_target(docs-js COMMAND ${JSDOC_EXE}
                       -d ${CMAKE_CURRENT_BINARY_DIR}/html
-                      ${CMAKE_CURRENT_SOURCE_DIR}/binding.js)
+                      ${CMAKE_CURRENT_SOURCE_DIR}/module.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/error.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/messenger.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/subscription.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/message.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/data.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/data-uuid.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/data-symbol.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/data-described.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/data-array.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/data-typed-number.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/data-long.js
+                      ${CMAKE_CURRENT_SOURCE_DIR}/data-binary.js)
     add_dependencies(docs docs-js)
 
 endif (NODE_JSDOC_FOUND)


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to