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