Sha256: 940770d05ad4e4d613468dcf17f5addbc7d57286a7e3dc6c9293a455312fc8b6

Contents?: true

Size: 811 Bytes

Versions: 6

Compression:

Stored size: 811 Bytes

Contents

# -*- ruby -*-
#encoding: utf-8

require 'msgpack'
require 'loggability'
require 'cztop'
require 'arborist' unless defined?( Arborist )


module Arborist::EventAPI
	extend Loggability


	# Loggability API -- log to arborist's logger
	log_to :arborist


	### Encode an event with the specified +identifier+ and +payload+ as a
	### CZTop::Message and return it.
	def self::encode( identifier, payload )
		encoded_payload = MessagePack.pack( payload )
		return CZTop::Message.new([ identifier, encoded_payload ])
	end


	### Decode and return the identifier and payload from the specified +msg+ (a CZTop::Message).
	def self::decode( msg )
		identifier, encoded_payload = msg.to_a
		payload = MessagePack.unpack( encoded_payload )
		return identifier, payload
	end


end # class Arborist::Manager::EventPublisher

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
arborist-0.6.0 lib/arborist/event_api.rb
arborist-0.5.0 lib/arborist/event_api.rb
arborist-0.4.0 lib/arborist/event_api.rb
arborist-0.3.0 lib/arborist/event_api.rb
arborist-0.2.0 lib/arborist/event_api.rb
arborist-0.2.0.pre20170519125456 lib/arborist/event_api.rb