View Javadoc

1   package org.openprovenance.elmo;
2   import java.util.Set;
3   import org.openprovenance.rdf.Account;
4   import org.openprovenance.rdf.Node;
5   
6   import javax.xml.datatype.XMLGregorianCalendar;
7   import javax.xml.namespace.QName;
8   import org.openrdf.elmo.ElmoManager;
9   
10  public class RdfOTime extends org.openprovenance.model.OTime implements HasFacade {
11  
12      ElmoManager manager;
13      String prefix;
14      QName qname;
15  
16      static int count=0;
17      
18      public RdfOTime(ElmoManager manager, QName qname) {
19          this.manager=manager;
20          this.qname=qname;
21          this.prefix=qname.getNamespaceURI();
22          setId(qname.getLocalPart());
23      }
24      
25  
26      public RdfOTime(ElmoManager manager, String prefix) {
27          this.manager=manager;
28          this.prefix=prefix;
29          setId("ti_" + (count++));
30      }
31  
32      //    org.openprovenance.rdf.OTime facade;
33  
34      public void setId(String value) {
35          qname = new QName(prefix, value);
36          manager.designate(qname, org.openprovenance.rdf.OTime.class);
37  
38          // would be nice to make this an anonymous node!
39          //facade=manager.create(org.openprovenance.rdf.OTime.class);
40      }
41  
42  
43  
44      public void setNoEarlierThan(XMLGregorianCalendar value) {
45          super.setNoEarlierThan(value);
46          org.openprovenance.rdf.OTime r=findMyFacade();
47          r.setNoEarlierThan(value);
48      }
49  
50  
51      public void setNoLaterThan(XMLGregorianCalendar value) {
52          super.setNoLaterThan(value);
53          org.openprovenance.rdf.OTime r=findMyFacade();
54          r.setNoLaterThan(value);
55      }
56  
57      public void setExactlyAt(XMLGregorianCalendar value) {
58          super.setExactlyAt(value);
59          org.openprovenance.rdf.OTime r=findMyFacade();
60          r.setExactlyAt(value);
61      }
62  
63      public QName getQName() {
64          return qname;
65      }
66  
67      public org.openprovenance.rdf.OTime findMyFacade() {
68          org.openprovenance.rdf.OTime r=(org.openprovenance.rdf.OTime)manager.find(getQName());
69          return r; //facade
70      }
71  
72      public void setFields(XMLGregorianCalendar begin, XMLGregorianCalendar end, XMLGregorianCalendar at) {
73          super.setNoEarlierThan(begin);
74          super.setNoLaterThan(end);
75          super.setExactlyAt(at);
76      }
77  
78  }
79  
80  
81