diff options
| author | Daniil Fedotov <dfedotov@pivotal.io> | 2016-08-10 17:06:09 +0100 |
|---|---|---|
| committer | Daniil Fedotov <dfedotov@pivotal.io> | 2016-08-10 17:06:09 +0100 |
| commit | 724656bf242f289270bfe585de920a6f2fbe6965 (patch) | |
| tree | 818e92c828987434dfc108058bcabe45d11a8f37 | |
| parent | efafdd01cf4832cada5dfe81f6ec6cdd7a5d28c5 (diff) | |
| download | rabbitmq-server-git-724656bf242f289270bfe585de920a6f2fbe6965.tar.gz | |
Add tcp linger option to schema
| -rw-r--r-- | priv/schema/rabbitmq.schema | 16 | ||||
| -rw-r--r-- | test/config_schema_SUITE_data/schema/rabbitmq.schema | 16 | ||||
| -rw-r--r-- | test/config_schema_SUITE_data/schema/rabbitmq_mqtt.schema | 13 | ||||
| -rw-r--r-- | test/config_schema_SUITE_data/snippets.config | 20 |
4 files changed, 62 insertions, 3 deletions
diff --git a/priv/schema/rabbitmq.schema b/priv/schema/rabbitmq.schema index 19040da409..9ada60688c 100644 --- a/priv/schema/rabbitmq.schema +++ b/priv/schema/rabbitmq.schema @@ -522,7 +522,7 @@ end}. {translation, "rabbit.tcp_listen_options", fun(Conf) -> - case cuttlefish:conf_get("tcp_listen_options", undefined) of + case cuttlefish:conf_get("tcp_listen_options", Conf, undefined) of none -> []; _ -> cuttlefish:invalid("Invalid tcp_listen_options") end @@ -587,6 +587,20 @@ end}. {mapping, "tcp_listen_options.tos", "rabbit.tcp_listen_options.tos", [{datatype, integer}]}. +{mapping, "tcp_listen_options.linger.on", "rabbit.tcp_listen_options.linger", + [{datatype, {enum, [true, false]}}]}. + +{mapping, "tcp_listen_options.linger.timeout", "rabbit.tcp_listen_options.linger", + [{datatype, integer}]}. + +{translation, "rabbit.tcp_listen_options.linger", +fun(Conf) -> + LingerOn = cuttlefish:conf_get("tcp_listen_options.linger.on", Conf, false), + LingerTimeout = cuttlefish:conf_get("tcp_listen_options.linger.timeout", Conf, 0), + {LingerOn, LingerTimeout} +end}. + + %% ========================================================================== %% diff --git a/test/config_schema_SUITE_data/schema/rabbitmq.schema b/test/config_schema_SUITE_data/schema/rabbitmq.schema index 19040da409..9ada60688c 100644 --- a/test/config_schema_SUITE_data/schema/rabbitmq.schema +++ b/test/config_schema_SUITE_data/schema/rabbitmq.schema @@ -522,7 +522,7 @@ end}. {translation, "rabbit.tcp_listen_options", fun(Conf) -> - case cuttlefish:conf_get("tcp_listen_options", undefined) of + case cuttlefish:conf_get("tcp_listen_options", Conf, undefined) of none -> []; _ -> cuttlefish:invalid("Invalid tcp_listen_options") end @@ -587,6 +587,20 @@ end}. {mapping, "tcp_listen_options.tos", "rabbit.tcp_listen_options.tos", [{datatype, integer}]}. +{mapping, "tcp_listen_options.linger.on", "rabbit.tcp_listen_options.linger", + [{datatype, {enum, [true, false]}}]}. + +{mapping, "tcp_listen_options.linger.timeout", "rabbit.tcp_listen_options.linger", + [{datatype, integer}]}. + +{translation, "rabbit.tcp_listen_options.linger", +fun(Conf) -> + LingerOn = cuttlefish:conf_get("tcp_listen_options.linger.on", Conf, false), + LingerTimeout = cuttlefish:conf_get("tcp_listen_options.linger.timeout", Conf, 0), + {LingerOn, LingerTimeout} +end}. + + %% ========================================================================== %% diff --git a/test/config_schema_SUITE_data/schema/rabbitmq_mqtt.schema b/test/config_schema_SUITE_data/schema/rabbitmq_mqtt.schema index 1daab5423d..ffda10beaa 100644 --- a/test/config_schema_SUITE_data/schema/rabbitmq_mqtt.schema +++ b/test/config_schema_SUITE_data/schema/rabbitmq_mqtt.schema @@ -233,3 +233,16 @@ end}. {mapping, "mqtt.tcp_listen_options.tos", "rabbitmq_mqtt.tcp_listen_options.tos", [{datatype, integer}]}. + +{mapping, "mqtt.tcp_listen_options.linger.on", "rabbitmq_mqtt.tcp_listen_options.linger", + [{datatype, {enum, [true, false]}}]}. + +{mapping, "mqtt.tcp_listen_options.linger.timeout", "rabbitmq_mqtt.tcp_listen_options.linger", + [{datatype, integer}]}. + +{translation, "rabbitmq_mqtt.tcp_listen_options.linger", +fun(Conf) -> + LingerOn = cuttlefish:conf_get("mqtt.tcp_listen_options.linger.on", Conf, false), + LingerTimeout = cuttlefish:conf_get("mqtt.tcp_listen_options.linger.timeout", Conf, 0), + {LingerOn, LingerTimeout} +end}. diff --git a/test/config_schema_SUITE_data/snippets.config b/test/config_schema_SUITE_data/snippets.config index 22c9f2b7cd..abfc28441e 100644 --- a/test/config_schema_SUITE_data/snippets.config +++ b/test/config_schema_SUITE_data/snippets.config @@ -710,5 +710,23 @@ rabbitmq_auth_backend_http.resource_path = http://some-server/auth/resource", [{user_path, "http://some-server/auth/user"}, {vhost_path, "http://some-server/auth/vhost"}, {resource_path, "http://some-server/auth/resource"}]}], -[rabbitmq_auth_backend_http]} +[rabbitmq_auth_backend_http]}, +{70, +"tcp_listen_options.linger.on = true +tcp_listen_options.linger.timeout = 100", +[{rabbit, [{tcp_listen_options, [{linger, {true, 100}}]}]}], +[]}, +{72, +"tcp_listen_options.linger.on = false +tcp_listen_options.linger.timeout = 100", +[{rabbit, [{tcp_listen_options, [{linger, {false, 100}}]}]}], +[]}, +{73, +"tcp_listen_options.linger.on = true", +[{rabbit, [{tcp_listen_options, [{linger, {true, 0}}]}]}], +[]}, +{74, +"tcp_listen_options.linger.timeout = 100", +[{rabbit, [{tcp_listen_options, [{linger, {false, 100}}]}]}], +[]} ]. |
