webcast net-oslc-cm

25
NetOSLCCM module developped for Simple Defects Stéphanie OUILLON Student at Télécom SudParis, France

Upload: stephanie-ouillon

Post on 14-Jun-2015

296 views

Category:

Technology


2 download

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/51541598

TRANSCRIPT

Page 1: Webcast Net-OSLC-CM

Net-­‐OSLC-­‐CM  module      

developped  for  Simple  Defects  

Stéphanie  OUILLON    Student  at  Télécom  SudParis,  France  

Page 2: Webcast Net-OSLC-CM

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  

Page 3: Webcast Net-OSLC-CM

3/24  Net-­‐OSLC-­‐CM  module  for  Simple  Defects          -­‐          Stéphanie  Ouillon    5

filesystem  

Web  browser  

code  

bugs  

Server/storage  IDE  

With  tradi7onal  bugtrackers  

Page 4: Webcast Net-OSLC-CM

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)    

Page 5: Webcast Net-OSLC-CM

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  

Page 6: Webcast Net-OSLC-CM

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)  

Page 7: Webcast Net-OSLC-CM

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  

Page 8: Webcast Net-OSLC-CM

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)  

Page 9: Webcast Net-OSLC-CM

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  !  

Page 10: Webcast Net-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)  

 

Page 11: Webcast Net-OSLC-CM

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;    

Page 12: Webcast Net-OSLC-CM

What  I  get  

11/24  Net-­‐OSLC-­‐CM  module  for  Simple  Defects          -­‐          Stéphanie  Ouillon    

Page 13: Webcast Net-OSLC-CM

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    

Page 14: Webcast Net-OSLC-CM

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;  

Page 15: Webcast Net-OSLC-CM

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    

Page 16: Webcast Net-OSLC-CM

OSLC::CM::Catalog  

15/24  Net-­‐OSLC-­‐CM  module  for  Simple  Defects          -­‐          Stéphanie  Ouillon    

Page 17: Webcast Net-OSLC-CM

OSLC::CM::ServiceProvider  

16/24  Net-­‐OSLC-­‐CM  module  for  Simple  Defects          -­‐          Stéphanie  Ouillon    

Page 18: Webcast Net-OSLC-CM

Net::OSLC::CM::ChangeRequest  

17/24  Net-­‐OSLC-­‐CM  module  for  Simple  Defects          -­‐          Stéphanie  Ouillon    

Hard  coded  aWributes  (not  very  flexible)  

Page 19: Webcast Net-OSLC-CM

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  

Page 20: Webcast Net-OSLC-CM

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  

 

Page 21: Webcast Net-OSLC-CM

Demo  

20/24  Net-­‐OSLC-­‐CM  module  for  Simple  Defects          -­‐          Stéphanie  Ouillon    

Page 22: Webcast Net-OSLC-CM

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)  

Page 23: Webcast Net-OSLC-CM

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    

Page 24: Webcast Net-OSLC-CM

23/24  Net-­‐OSLC-­‐CM  module  for  Simple  Defects          -­‐          Stéphanie  Ouillon    

Thank  you  for  your  aWenIon  !  

Page 25: Webcast Net-OSLC-CM

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