Difference between revisions of "Projects/Plasma/Services"

Jump to: navigation, search
(Triggering Service Exposing)
(Plasma::Service)
Line 8: Line 8:
 
== Plasma::Service ==
 
== Plasma::Service ==
  
 +
When service exposure triggered, Plasma::Service will:
 +
 +
* Open a local listening socket using KLocalSocketServer
 +
* Generate a random token
 +
* Check if the Jolie MetaService is running and start it if it isn't
 +
* Contact the MetaService and send the operation descriptions, the token, the redirect definition and the socket path
 +
* It will wait for a given period of time for the MetaService to connect to the socket; the first message must contain the token
 +
* Once connected it will forward operation requests received using Sodep to createJob and then execute the job internally, forwarding the response back to the MetaService for routing back to the client
  
 
== Plasma::DataEngine ==
 
== Plasma::DataEngine ==

Revision as of 16:56, 17 September 2008

This page documents the ongoing design for exposing Plasma::Services via Jolie's MetaService.

Triggering Service Exposing

  • How will the user trigger exposing a service?
  • Migrating plasoids between instances of Plasma

Plasma::Service

When service exposure triggered, Plasma::Service will:

  • Open a local listening socket using KLocalSocketServer
  • Generate a random token
  • Check if the Jolie MetaService is running and start it if it isn't
  • Contact the MetaService and send the operation descriptions, the token, the redirect definition and the socket path
  • It will wait for a given period of time for the MetaService to connect to the socket; the first message must contain the token
  • Once connected it will forward operation requests received using Sodep to createJob and then execute the job internally, forwarding the response back to the MetaService for routing back to the client

Plasma::DataEngine

  • A Plasma::Service generic to the DataEngine API to expose any engine to MetaService?

Jolie MetaService


Content is available under Creative Commons License SA 4.0 unless otherwise noted.