Skip to content
This repository has been archived by the owner on Apr 14, 2019. It is now read-only.
/ rbzmq Public archive

An opinionated ruby library wrapping ffi-rzmq for more rubish flair.

License

Notifications You must be signed in to change notification settings

jgraichen/rbzmq

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RbZMQ

Gem Version Build Status Coverage Status Code Climate Dependency Status RubyDoc Documentation

An opinionated ruby library wrapping ffi-rzmq for more rubish flair.

Library is still pre-release 0.x. Everything may change anytime.

Installation

Add this line to your application's Gemfile:

gem 'rbzmq', '~> 0.1'

And then execute:

$ bundle

Or install it yourself as:

$ gem install rbzmq

Usage

You can use RbZMQ's sockets just like in the zguide but without the need to handle a context. A global context will be used automagically.

require 'rbzmq'

writer = RbZMQ::Socket.new ZMQ::PUSH
writer.connect 'tcp://127.0.0.1:4237'

writer.send 'My Message!'
writer.send 'My Second Message!'

reader = RbZMQ::Socket.new ZMQ::PULL
reader.bind 'tcp://127.0.0.1:4237'

p reader.recv.to_s
p reader.recv.to_s

writer.close
reader.close

See examples/ for a growing number of translated examples from the zguide.

TODO

  • RbZMQ::Reactor
  • Pimp RbZMQ::Message
  • Socket option accessors
  • Class documentation w/ examples
  • Translate zguide examples (and try to use them for auto testing)
  • Integration options into EventMachine (plus Fibers) / Celluloid (if possible)

Contributing

  1. Fork it (http://github.com/jgraichen/rbzmq/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

License

Copyright (C) 2014 Jan Graichen

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.

About

An opinionated ruby library wrapping ffi-rzmq for more rubish flair.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages