Module: Beachcomber

Defined in:
lib/beachcomber.rb,
lib/beachcomber/client.rb,
lib/beachcomber/errors.rb,
lib/beachcomber/result.rb,
lib/beachcomber/discovery.rb

Overview

Beachcomber is a Ruby client for the beachcomber daemon.

The daemon caches shell-environment data (git state, hostname, battery, …) and serves it over a Unix domain socket using newline-delimited JSON.

Quick start:

require 'beachcomber'

client = Beachcomber::Client.new
result = client.get('git.branch', path: '/path/to/repo')
puts result.data if result.hit?

Persistent session (one connection, multiple queries):

client.session do |s|
  s.set_context('/path/to/repo')
  r1 = s.get('git.branch')
  r2 = s.get('git.dirty')
end

Defined Under Namespace

Modules: Discovery Classes: Client, DaemonNotRunning, Error, ProtocolError, Result, ServerError, Session

Constant Summary collapse

VERSION =
'0.1.0'
DEFAULT_TIMEOUT =

seconds (100 ms)

0.1