diff options
author | Hubert Plociniczak <hubert@lshift.net> | 2008-09-10 12:39:27 +0100 |
---|---|---|
committer | Hubert Plociniczak <hubert@lshift.net> | 2008-09-10 12:39:27 +0100 |
commit | d28c9af7427bcc010e91a1db3faa94f14419dff8 (patch) | |
tree | 4f548dae29a5b1f1d29ac6f4c529119dd2027b80 | |
parent | f389cf21e9a5bc101f905f1f5623c7205aa906e0 (diff) | |
parent | d30131e24ccf40536562fc959e140a2fd99f6b53 (diff) | |
download | rabbitmq-server-bug19193.tar.gz |
merge default into bug19193bug19193
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | codegen.py | 34 | ||||
-rw-r--r-- | packaging/RPMS/Fedora/rabbitmq-server.spec | 1 | ||||
-rw-r--r-- | packaging/debs/Debian/Makefile | 2 | ||||
-rw-r--r-- | packaging/debs/Debian/debian/copyright | 6 | ||||
-rwxr-xr-x | scripts/rabbitmq-multi | 2 | ||||
-rw-r--r-- | scripts/rabbitmq-multi.bat | 4 | ||||
-rwxr-xr-x | scripts/rabbitmq-server | 2 | ||||
-rw-r--r-- | scripts/rabbitmq-server.bat | 2 | ||||
-rwxr-xr-x | scripts/rabbitmqctl | 2 | ||||
-rw-r--r-- | scripts/rabbitmqctl.bat | 2 | ||||
-rw-r--r-- | src/rabbit_channel.erl | 2 |
12 files changed, 41 insertions, 20 deletions
@@ -115,7 +115,7 @@ srcdist: distclean $(MAKE) VERSION=$(VERSION) GENERIC_STAGE_DIR=dist/$(TARBALL_NAME) generic_stage mkdir -p dist/$(TARBALL_NAME)/codegen - cp -r $(AMQP_CODEGEN_DIR)/* dist/$(TARBALL_NAME)/codegen/. + cp -r $(AMQP_CODEGEN_DIR)/* dist/$(TARBALL_NAME)/codegen/ cp codegen.py Makefile dist/$(TARBALL_NAME) cp -r scripts dist/$(TARBALL_NAME) @@ -45,6 +45,22 @@ erlangTypeMap = { 'timestamp': 'timestamp', } +# Coming up with a proper encoding of AMQP tables in JSON is too much +# hassle at this stage. Given that the only default value we are +# interested in is for the empty table, we only support that. +def convertTable(d): + if len(d) == 0: + return "[]" + else: raise 'Non-empty table defaults not supported', d + +erlangDefaultValueTypeConvMap = { + bool : lambda x: str(x).lower(), + str : lambda x: "<<\"" + x + "\">>", + int : lambda x: str(x), + float : lambda x: str(x), + dict: convertTable +} + def erlangize(s): s = s.replace('-', '_') s = s.replace(' ', '_') @@ -271,6 +287,15 @@ def genHrl(spec): def fieldNameList(fields): return ', '.join([erlangize(f.name) for f in fields]) + + def fieldNameListDefaults(fields): + def fillField(field): + result = erlangize(f.name) + if field.defaultvalue != None: + conv_fn = erlangDefaultValueTypeConvMap[type(field.defaultvalue)] + result += ' = ' + conv_fn(field.defaultvalue) + return result + return ', '.join([fillField(f) for f in fields]) methods = spec.allMethods() @@ -283,23 +308,18 @@ def genHrl(spec): print "%% Method field records." for m in methods: - print "-record(%s, {%s})." % (m.erlangName(), fieldNameList(m.arguments)) + print "-record(%s, {%s})." % (m.erlangName(), fieldNameListDefaults(m.arguments)) print "%% Class property records." for c in spec.allClasses(): print "-record('P_%s', {%s})." % (erlangize(c.name), fieldNameList(c.fields)) -#--------------------------------------------------------------------------- - def generateErl(specPath): genErl(AmqpSpec(specPath)) def generateHrl(specPath): genHrl(AmqpSpec(specPath)) - + if __name__ == "__main__": do_main(generateHrl, generateErl) - - - diff --git a/packaging/RPMS/Fedora/rabbitmq-server.spec b/packaging/RPMS/Fedora/rabbitmq-server.spec index 765ccf9b..08694c09 100644 --- a/packaging/RPMS/Fedora/rabbitmq-server.spec +++ b/packaging/RPMS/Fedora/rabbitmq-server.spec @@ -79,6 +79,7 @@ chown -R rabbitmq:rabbitmq /var/lib/rabbitmq chown -R rabbitmq:rabbitmq /var/log/rabbitmq /sbin/chkconfig --add %{name} +/sbin/service rabbitmq-server start %preun if [ $1 = 0 ]; then diff --git a/packaging/debs/Debian/Makefile b/packaging/debs/Debian/Makefile index aeb958a7..dd74c31e 100644 --- a/packaging/debs/Debian/Makefile +++ b/packaging/debs/Debian/Makefile @@ -18,7 +18,7 @@ package: clean make -C ../.. check_tools tar -zxvf $(TARBALL_DIR)/$(TARBALL) cp -r debian $(UNPACKED_DIR) - chmod -R a+x $(UNPACKED_DIR)/debian + chmod a+x $(UNPACKED_DIR)/debian/rules UNOFFICIAL_RELEASE=$(UNOFFICIAL_RELEASE) VERSION=$(VERSION) ./check-changelog.sh rabbitmq-server $(UNPACKED_DIR) cd $(UNPACKED_DIR); GNUPGHOME=$(GNUPG_PATH)/.gnupg dpkg-buildpackage -rfakeroot $(SIGNING) rm -rf $(UNPACKED_DIR) diff --git a/packaging/debs/Debian/debian/copyright b/packaging/debs/Debian/debian/copyright index e16996e5..9f9f8672 100644 --- a/packaging/debs/Debian/debian/copyright +++ b/packaging/debs/Debian/debian/copyright @@ -5,7 +5,7 @@ It was downloaded from http://www.rabbitmq.com/ Upstream Author: The RabbitMQ team <info@rabbitmq.com> -Copyright: 2006-2008 LShift Ltd. +Copyright: 2006-2008 Rabbit Technologies Ltd. License: The RabbitMQ server is licensed under the MPL. @@ -485,7 +485,7 @@ EXHIBIT A -Mozilla Public License. If you have any questions regarding licensing, please contact us at info@rabbitmq.com. -The Debian packaging is (C) 2007, Tony Garnock-Jones <tonyg@rabbitmq.com> and -is licensed under the GPL, see `/usr/share/common-licenses/GPL'. +The Debian packaging is (C) 2007-2008, Rabbit Technologies Ltd. <info@rabbitmq.com> +and is licensed under the MPL 1.1, see above. diff --git a/scripts/rabbitmq-multi b/scripts/rabbitmq-multi index 4709ca0b..5e4f4b38 100755 --- a/scripts/rabbitmq-multi +++ b/scripts/rabbitmq-multi @@ -36,7 +36,7 @@ SCRIPT_HOME=$(dirname $0) export NODENAME NODE_IP_ADDRESS NODE_PORT SCRIPT_HOME PIDS_FILE exec erl \ - -pa ../ebin \ + -pa "`dirname $0`/../ebin" \ -noinput \ -hidden \ ${ERL_ARGS} \ diff --git a/scripts/rabbitmq-multi.bat b/scripts/rabbitmq-multi.bat index 34e34ef9..819c99af 100644 --- a/scripts/rabbitmq-multi.bat +++ b/scripts/rabbitmq-multi.bat @@ -41,7 +41,7 @@ if "%NODE_PORT%"=="" ( )
set PIDS_FILE=%RABBITMQ_BASE%\rabbitmq.pids
-set SCRIPT_HOME=.
+set SCRIPT_HOME=%~dp0%
if "%ERLANG_HOME%"=="" (
set ERLANG_HOME=%~dp0%..\..\..
@@ -59,5 +59,5 @@ if not exist "%ERLANG_HOME%\bin\erl.exe" ( exit /B
)
-"%ERLANG_HOME%\bin\erl.exe" -pa ../ebin -noinput -hidden -sname rabbitmq_multi -s rabbit_multi %START_ARGS% -extra %*
+"%ERLANG_HOME%\bin\erl.exe" -pa "%~dp0..\ebin" -noinput -hidden -sname rabbitmq_multi -s rabbit_multi %START_ARGS% -extra %*
diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server index d78be18e..80289d8e 100755 --- a/scripts/rabbitmq-server +++ b/scripts/rabbitmq-server @@ -51,7 +51,7 @@ else fi erl \ - -pa $(dirname $0)/../ebin \ + -pa "`dirname $0`/../ebin" \ ${START_RABBIT} \ -sname ${NODENAME} \ -boot start_sasl \ diff --git a/scripts/rabbitmq-server.bat b/scripts/rabbitmq-server.bat index a32fe0fc..42c09fac 100644 --- a/scripts/rabbitmq-server.bat +++ b/scripts/rabbitmq-server.bat @@ -92,7 +92,7 @@ set CLUSTER_CONFIG=-rabbit cluster_config \""%CLUSTER_CONFIG_FILE:\=/%"\" set MNESIA_DIR=%MNESIA_BASE%/%NODENAME%-mnesia
"%ERLANG_HOME%\bin\erl.exe" ^
--pa ..\ebin ^
+-pa "%~dp0..\ebin" ^
-noinput ^
-boot start_sasl ^
-sname %NODENAME% ^
diff --git a/scripts/rabbitmqctl b/scripts/rabbitmqctl index eb359dad..419dcf63 100755 --- a/scripts/rabbitmqctl +++ b/scripts/rabbitmqctl @@ -31,7 +31,7 @@ ERL_ARGS= MNESIA_DIR=${MNESIA_BASE}/${NODENAME} exec erl \ - -pa ../ebin \ + -pa "`dirname $0`/../ebin" \ -noinput \ -hidden \ ${ERL_ARGS} \ diff --git a/scripts/rabbitmqctl.bat b/scripts/rabbitmqctl.bat index b34adebe..1ee7e825 100644 --- a/scripts/rabbitmqctl.bat +++ b/scripts/rabbitmqctl.bat @@ -40,4 +40,4 @@ if not exist "%ERLANG_HOME%\bin\erl.exe" ( exit /B
)
-"%ERLANG_HOME%\bin\erl.exe" -pa ..\ebin -noinput -hidden -sname rabbitmqctl -s rabbit_control -extra %*
+"%ERLANG_HOME%\bin\erl.exe" -pa "%~dp0..\ebin" -noinput -hidden -sname rabbitmqctl -s rabbit_control -extra %*
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl index caa63b58..5cc07aed 100644 --- a/src/rabbit_channel.erl +++ b/src/rabbit_channel.erl @@ -531,7 +531,7 @@ handle_method(#'queue.declare'{queue = QueueNameBin, <<>> -> rabbit_misc:binstring_guid("amq.gen"); Other -> check_name('queue', Other) end, - QueueName = rabbit_misc:r(VHostPath, queue, ActualNameBin), + QueueName = rabbit_misc:r(VHostPath, queue, ActualNameBin), Finish(rabbit_amqqueue:declare(QueueName, Durable, AutoDelete, Args)); Other -> Other |