webcast net-oslc-cm
DESCRIPTION
Slides of the OSLC Webcast of the 16th of October, 2012 presenting the OSLC-CM Perl modules in Eclipse Lyo. Video of the webcast: http://vimeo.com/51541598TRANSCRIPT
Net-‐OSLC-‐CM module
developped for Simple Defects
Stéphanie OUILLON Student at Télécom SudParis, France
Contents
2/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
1. Simple Defects : a quick introducIon 2. How to use the OSLC-‐CM adaptor 3. Overview of the Net-‐OSLC-‐CM module 4. Demo
3/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon 5
filesystem
Web browser
code
bugs
Server/storage IDE
With tradi7onal bugtrackers
5/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon 6
filesystem
Terminal + SD
code
bugs
Server/storage
Terminal + Vim
filesystem
With Simple Defects (SD)
Simple Defects: a bugtracker
4/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
q In command line
q Using the Prophet database h3ps://gitorious.org/prophet/prophet
q WriWen in Perl, free and Open Source
h3p://syncwith.us
7/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
SD is a peer-‐to-‐peer bugtracker that can be used offline (think about Git)
The Prophet database
6/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
q Semi-‐relaIonnal q Peer-‐to-‐peer replicated q Disconnected q Versioned q Self-‐healing conflict resoluIon
7/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
SD is a peer-‐to-‐peer bugtracker that can be used offline (think about Git)
How to sync with other bugtrackers ?
8/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
q SD needs adaptors for every bugtracker.
q so many adaptors to write… L Ø Let’s use OSLC-‐CM !
Net-‐OSLC-‐CM module v1
9/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
q Standard Perl Module (Perl 5)
q Object-‐oriented with Moose
q Helps implement OSLC-‐CM clients (parIally)
Quick How To
10/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
use Net::OSLC::CM; my $oslccm = Net::OSLC::CM−>new( url => $self−>remote_url, username => $username, password => $password )); # Gemng an array of changeRequests
my @results = $oslccm−>get_oslc_resources;
What I get
11/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
Modules
12/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
§ Net::OSLC::CM § Net::OSLC::CM::ConnecIon § Net::OSLC::CM::Parser § Net::OSLC::CM::Catalog § Net::OSLC::CM::ServiceProvider § Net::OSLC::CM::ChangeRequest § Net::OSLC::CM::UIl
The main interface: Net::OSLC::CM
13/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
$oslccm−>get_oslc_resources; $oslccm−>create_catalog; $oslccm−>get_provider_catalog_resource; $oslccm−>get_service_providers; $oslccm−>get_changeRequests($oslccm−>providers); $oslccm−>load_changeRequests(); my @results = $oslccm−>changeRequests;
OSLC-‐CM Objects
14/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
§ Net::OSLC::CM::Catalog
§ Net::OSLC::CM::ServiceProvider
§ Net::OSLC::CM::ChangeRequest
OSLC::CM::Catalog
15/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
OSLC::CM::ServiceProvider
16/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
Net::OSLC::CM::ChangeRequest
17/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
Hard coded aWributes (not very flexible)
GeUng RDF data
18/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
q RDF::Trine
• Browsing Catalog, ServiceProviders • Net::OSLC::CM::Parser.pm performs
SPARQL queries
q RDF::Helper • Gemng ChangeRequests aWributes
Other Modules
19/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
q Net::OSLC::CM::Connec7on • ConnecIon using HTTP basic auth • OAuth ?
q Net::OSLC::CM::U7l
Demo
20/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
Limita7ons
21/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
q Only ‘’Clone’’ and ‘’Pull’’, not ‘’Push’’
q Hard coded aWributes in ChangeRequest.pm
q Slow requests (RDF & HTTP)
Addi7onal Links
22/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
q Doc: hWp://arroway.github.com/Net-‐OSLC-‐CM
q SD: syncwith.us
23/24 Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
Thank you for your aWenIon !
Adaptors
Net-‐OSLC-‐CM module for Simple Defects -‐ Stéphanie Ouillon
Three classes to implement in Replica/: § oslccm.pm § oslccm/PullEncoder.pm § oslccm/PushEncoder.pm