From: Michael Granger Date: 2010-09-21T06:41:52+09:00 Subject: [ANN] treequel 1.1.0 Treequel is an LDAP toolkit for Ruby. It is intended to allow quick, easy access to LDAP directories in a manner consistent with LDAP's hierarchical, free-form nature. It's inspired by and modeled after Sequel (http://sequel.rubyforge.org/), a kick-ass database library. == Examples Here are a few short examples to whet your appetite: # Connect to the directory at the specified URL dir = Treequel.directory( 'ldap://ldap.company.com/dc=company,dc=com' ) # Get a list of email addresses of every 'person' in the directory that # has one dir.filter( :objectClass => :person ).filter( :mail ).map( :mail ).flatten # Get a list of all IP addresses for all hosts in any ou=hosts group # in the whole directory: dir.filter( :ou => :hosts ).collection.filter( :ipHostNumber ). map( :ipHostNumber ).flatten # Get all people in the directory under ou=people in the form of a hash of # names keyed by email addresses dir.ou( :people ).filter( :mail ).to_hash( :mail, :cn ) More elaborate examples of real-world usage can be found in the examples/ directory in the distribution. You can also browse them in a web browser via the project page: http://deveiate.org/projects/Treequel/browser/examples == Project Page http://deveiate.org/projects/Treequel == Installation Via gems: $ sudo gem install treequel or from source: $ wget http://deveiate.org/code/treequel-1.1.0.tar.gz $ tar -xzvf treequel-1.1.0.tar.gz $ cd treequel-1.1.0 $ sudo rake install == Changes This release adds an object-hierarchical mapper mechanism in the form of a new class (Treequel::Model) and a mixin for adding your own extensions (Treequel::Model::ObjectClass). See http://deveiate.org/treequel/model.html for details. There are also numerous bugfixes and enhancements to both the Treequel library and the 'treequel' shell in this release. For a full breakdown, see the ChangeLog.