Francesco created AMQ-4070:
------------------------------
Summary: catstomp.rb does not work anymore
Key: AMQ-4070
URL: https://issues.apache.org/jira/browse/AMQ-4070
Project: ActiveMQ
Issue Type: Bug
Components: Samples
Affects Versions: 5.6.0
Reporter: Francesco
Priority: Trivial
with the most recente stomp gem, the send method has been replaced with
publish, so the bundled catstomp does not longer work.
Follows a proposal of a working catstomp.rb with one improvement: now it stops
gracefully con CTRL+C
cheers,
Francesco
#!/usr/bin/env ruby
# ------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ------------------------------------------------------------------------
require 'rubygems'
require 'stomp'
continue = true
trap("INT") {
puts "CTRL+C"
puts "shutting down ..."
@conn.disconnect
sleep 1
STDIN.close
}
@port = 61613
@host = "localhost"
@user = ENV["STOMP_USER"];
@password = ENV["STOMP_PASSWORD"]
@host = ENV["STOMP_HOST"] if ENV["STOMP_HOST"] != NIL
@port = ENV["STOMP_PORT"] if ENV["STOMP_PORT"] != NIL
@destination = "/topic/stompcat"
@destination = $*[0] if $*[0] != NIL
$stderr.print "Connecting to stomp://#{@host}:#{@port} as #{@user}\n"
@conn = Stomp::Connection.open @user, @password, @host, @port, true
$stderr.print "Sending input to #{@destination}\n"
@headers = {'persistent'=>'false'}
@headers['reply-to'] = $*[1] if $*[1] != NIL
begin
STDIN.each_line { |line|
@conn.publish @destination, line, @headers
}
rescue IOError
end
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira