f9cebb478653757f59e93d34184fd4d8a59867ea
[vamsas.git] / src / uk / ac / vamsas / objects / utils / ProvenanceStuff.java
1 package uk.ac.vamsas.objects.utils;
2
3 import java.util.Date;
4
5 import org.apache.commons.logging.Log;
6 import org.apache.commons.logging.LogFactory;
7
8 import uk.ac.vamsas.objects.core.Entry;
9 import uk.ac.vamsas.objects.core.Provenance;
10
11 public class ProvenanceStuff {
12
13   /**
14    * stuff for making and doing things with provenance objects.
15    */
16   static Log log = LogFactory.getLog(ProvenanceStuff.class);
17
18   /**
19    * @param app TODO
20    * @param action
21    *          text for action entry
22    * @return new Provenance entry for ArchiveWriter created docs.
23    * TODO: Verify and move to SimpleClient class for provenance handling
24    */
25   public static Entry newProvenanceEntry(String app, String user, String action) { 
26     log.debug("Adding ProvenanceEntry("+user+","+action+")");
27     Entry e = new Entry();
28     e.setApp(app);
29     e.setAction(action);
30     e.setUser(user);
31     e.setDate(new org.exolab.castor.types.Date(new Date()));
32     return e;
33   }
34   public static Provenance newProvenance(Entry entry) {
35     Provenance list = new Provenance();
36     list.addEntry(entry);
37     return list;
38   }
39   public static Provenance newProvenance(String user, String action) {
40     return newProvenance(ProvenanceStuff.newProvenanceEntry("vamsasApp:ExampleVamsasClient/alpha", user, action));
41   }
42   public static Provenance newProvenance(String app, String user, String action) {
43     return newProvenance(ProvenanceStuff.newProvenanceEntry(app, user, action));
44   }
45
46 }