Project

General

Profile

Plug-in system notes » History » Version 1

Tom Clegg, 02/03/2012 03:14 PM

1 1 Tom Clegg
h1. Plug-in system notes
2
3
Example: GET-Evidence
4
5
# Researcher uploads sequence data and tags with {huID} and {sampleID}.  GET-Evidence generates variant report.
6
# GET-Evidence notifies Tapestry that a new report for {huID} relating to {sampleID} is available at {private-location}.
7
# Tapestry fetches report, and notifies participant that report is available.
8
# Report remains private for 30 days in case participant chooses to withdraw rather than publish.
9
# Report appears on participant's public profile page.
10
# Tapestry notifies GET-Evidence that report is now public.
11
12
Example: Telomere length widget
13
14
# Researcher uploads spreadsheet of {sampleID, length} to TelomereApp -- possibly via Google Docs + oAuth
15
# TelomereApp produces a graph (png or html+js) for each sampleID and notifies Tapestry: N x "report for {sampleID} is available at {url-with-secret-token}".
16
# Tapestry fetches graph object, notifies participant, displays object on participant's private profile page, etc.
17
# Possibly after a 30 day delay, Tapestry notifies TelomereApp that report at {private-location} is now public.
18
19
Implementation 
20
21
* Display
22
23
 * Tapestry has to produce a presentable profile page, incorporating various sizes/shapes/forms of data coming from plugins.
24
 * Use OBJECT tag
25
 
26
* API
27
28
 * Could use Indivo to store these data objects (or locators, for big or dynamic objects) -- then applets and tapestry would implement Indivo API instead of inventing a new API