summaryrefslogtreecommitdiff
path: root/schema/rabbitmq.stomp.schema
blob: 5b40a9661acd492000dfc10898d8ae3db7dc5dc5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
%  %% ----------------------------------------------------------------------------
%  %% RabbitMQ Stomp Adapter
%  %%
%  %% See http://www.rabbitmq.com/stomp.html for details
%  %% ----------------------------------------------------------------------------

%  {rabbitmq_stomp,
%   [%% Network Configuration - the format is generally the same as for the broker

%    %% Listen only on localhost (ipv4 & ipv6) on a specific port.
%    %% {tcp_listeners, [{"127.0.0.1", 61613},
%    %%                  {"::1",       61613}]},

{mapping, "stomp.listener.tcp.$name", "rabbitmq_stomp.tcp_listeners",[
    {default, 61613},
    {datatype, [integer, ip]},
    {include_default, "all"}
]}.

{translation, "rabbitmq_stomp.tcp_listeners",
fun(Conf) ->
    Settings = cuttlefish_variable:filter_by_prefix("stomp.listener.tcp", Conf),
    [ V || {_, V} <- Settings ]
end}.

{mapping, "stomp.listener.ssl.$name", "rabbitmq_stomp.ssl_listeners",[
    {default, 61614},
    {datatype, [integer, ip]},
    {include_default, "all"}
]}.

{translation, "rabbitmq_stomp.ssl_listeners",
fun(Conf) ->
    Settings = cuttlefish_variable:filter_by_prefix("stomp.listener.ssl", Conf),
    [ V || {_, V} <- Settings ]
end}.

%    %% Number of Erlang processes that will accept connections for the TCP
%    %% and SSL listeners.
%    %%
%    %% {num_tcp_acceptors, 10},
%    %% {num_ssl_acceptors, 1},

{mapping, "stomp.num_acceptors.ssl", "rabbitmq_stomp.num_ssl_acceptors", [
    {default, 1},
    {datatype, integer}
]}.

{mapping, "stomp.num_acceptors.tcp", "rabbitmq_stomp.num_tcp_acceptors", [
    {default, 10},
    {datatype, integer}
]}.

%    %% Additional SSL options

%    %% Extract a name from the client's certificate when using SSL.
%    %%
%    %% {ssl_cert_login, true},

{mapping, "stomp.ssl_cert_login", "rabbitmq_stomp.ssl_cert_login", 
    [{datatype, {enum, [true, false]}}]}.

%    %% Set a default user name and password. This is used as the default login
%    %% whenever a CONNECT frame omits the login and passcode headers.
%    %%
%    %% Please note that setting this will allow clients to connect without
%    %% authenticating!
%    %%
%    %% {default_user, [{login,    "guest"},
%    %%                 {passcode, "guest"}]},

{mapping, "stomp.default_user", "rabbitmq_stomp.default_user.login", [
    {datatype, string}
]}.

{mapping, "stomp.default_pass", "rabbitmq_stomp.default_user.passcode", [
    {datatype, string}
]}.

%    %% If a default user is configured, or you have configured use SSL client
%    %% certificate based authentication, you can choose to allow clients to
%    %% omit the CONNECT frame entirely. If set to true, the client is
%    %% automatically connected as the default user or user supplied in the
%    %% SSL certificate whenever the first frame sent on a session is not a
%    %% CONNECT frame.
%    %%
%    %% {implicit_connect, true}
%   ]},
{mapping, "stomp.implicit_connect", "rabbitmq_stomp.implicit_connect", 
    [{datatype, {enum, [true, false]}}]}.