[OPEN-ILS-GENERAL] Google Summer of Code 2011 Information

Dan Scott dan at coffeecode.net
Sun Mar 20 01:42:54 EDT 2011


Hi Angelo:

On Sat, Mar 19, 2011 at 12:09:06PM +0100, a.cammaroto90 at tiscali.it wrote:
> Dear sirs,

(and madams!)

> my name is Angelo Cammaroto and i'm an IT information technology
> student.  I'm really interested in working for your organization
> during GSoC 2011. Visiting the page of your ideas I noticed the
> project  "Create a Ruby and / or client forPHP OpenSRF and Evergreen"
> where you also talk about compatibility with drupal and wordpress. I
> would like to better understand what do you mean and especially what
> you need.

This subject is probably better suited for the Evergreen Development
mailing list (open-ils-dev at list.georgialibraries.org) but in a nutshell,
OpenSRF (the "Open Service Request Framework") defines a protocol for
invoking methods on defined services over the network - see
http://journal.code4lib.org/articles/3284 for an introduction to
OpenSRF. While the earliest versions used XML serialization for the
network messages, the current client portion of OpenSRF primarily uses
JSON to communicate via XMPP or HTTP - a form of JSON-RPC, if you will.

While teaching PHP or Ruby how to talk via OpenSRF over XMPP or HTTP is
a good start, things get a little more interesting with Evergreen, which
uses OpenSRF as a base layer for working with objects defined in a
"fieldmapper" IDL.  Client language bindings for Evergreen need to
know how to parse the IDL to serialize and deserialize objects and
auto-vivify methods, etc, based on the class definitions.

For all of this, ultimately the goal would be to be able to add
Evergreen integration to other applications like Wordpress that would
talk to Evergreen via OpenSRF rather than trying to directly access
Evergreen's database (messy from a security perspective, difficult
because it means reimplementing some Evergreen business logic at the
interface layer rather than using the core Evergreen business logic, and
brittle as the database schema changes over releases) or screen-scraping
(brittle and annoying).

Does that help provide some further context for the project idea?


More information about the Open-ils-general mailing list