API wrapper for GLS API v2
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
R
man
DESCRIPTION
NAMESPACE
README.md

README.md

genologicsr

A package for navigating RESTful transactions and genealogy of the Genologics Rapid Scripting API. This R package is inspired by the Python module genologics. Thank you for sharing SciLifeLab!

Like the python genologics module after which it is modeled, genologicsr provides reference classes to manage tansactions with LIMS and to work with the XML data representing database entities (files, sample, artifacts, processes, field, etc.).

Once of the nicer features of this is that the portion of the wrapper that handles the http transactions is isolated from working with the content (xml formed data). So, future switches to other http transfer tools (away from httr and/or curl R packages) can be handled behind and opaque interface. It's like changing your postal carrier without causing disrupting your mail service.

Wiki

See the wiki for details and examples.

R package requirements

XML

httr

Installation

As with genologics a configuration file can be saved in a user's home directory by any name, choosing a hidden file in the home directory makes a lot of sense.

Create a file, such as ~/.clarityrc with the contents below and edit appropriately for your platform.

# edit as needed [genologics] section is required anything else is optional
[genologics]
BASEURI=http://my-server.my.host.org:8080
USERNAME=user
PASSWORD=password
VERSION=v2
[glsfilestore]
USERNAME=anotheruser
PASSWORD=anotherpassword
[max_requests]
samples=300
artifacts=300
files=100
containers=2

It's easy to install using Hadley Wickham's devtools.

library(devtools)
install_github("BigelowLab/genologicsr")

# or into the the system-wide library
with_lib(.Library, install_github("BigelowLab/genologicsr"))

Working with different API versions

Even though much of API v2 interoperates with API v1 there are some significant resources missing in v1 that are present in v2. Some capabilities in geneologicsr adapt to the different versions without requiring any special effort on the part of the users.