1
2
3
4
5
6
7
8
9
10
11 package org.astrogrid.portal.workflow.intf;
12
13 import org.astrogrid.community.User;
14 import org.astrogrid.community.beans.v1.Account;
15 import org.astrogrid.store.Ivorn;
16 import org.astrogrid.workflow.beans.v1.Workflow;
17
18 /*** A component that can store and retreive workflow documents from VoSpace.
19 * (i.e. myspace)
20 * @author Noel Winstanley nw@jb.man.ac.uk 01-Mar-2004
21 *
22 */
23 public interface WorkflowStore {
24
25 /*** delete a workflow from the store
26 *
27 * @param acc account details of the owner of the workflow
28 * @param name name of the workflow
29 * @throws WorkflowInterfaceException
30 */
31
32
33 /*** Read a query from the store
34 *
35 * @param acc account details of the ownder of the query
36 * @param name name of the query
37 * @return a string representation of the query. will never return null
38 * @throws WorkflowInterfaceException if fails to read query
39 */
40
41
42
43 /*** return list of names of queries present in the store
44 *
45 * @param acc account details for the owner of the list of queries
46 * @return list of query names. never returns null
47 * @throws WorkflowInterfaceException
48 */
49
50
51
52 /*** read workflow from the store
53 *
54 * @param user account details for the owner of the workflow document
55 * @param locationToReadFrom ivorn location to read the workflow from.
56 * @return workflow document object. will never return null
57 * @throws WorkflowInterfaceException if document can't be loaded
58 */
59 Workflow readWorkflow(User user, Ivorn locationToReadFrom) throws WorkflowInterfaceException;
60
61
62
63 /*** read list of workflow names from myspace
64 *
65 * @param acc account details for the owner of the workflow documents listed
66 * @return list of workflow names. never returns null
67 * @throws WorkflowInterfaceException
68 */
69
70 /*** save workflow to myspace
71 *
72 * @param user account details for the owner of the workflow
73 * @param locationToSaveTo ivorn location to save the document
74 * @param workflow workflow document to save
75 * @throws WorkflowInterfaceException
76 */
77 void saveWorkflow(User user,Ivorn locationToSaveTo, Workflow workflow) throws WorkflowInterfaceException;
78
79
80
81
82
83
84
85 }
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114