-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdemo.py
More file actions
48 lines (42 loc) · 1.38 KB
/
demo.py
File metadata and controls
48 lines (42 loc) · 1.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/env python
import os
import time
if not os.environ.has_key("EXPERIMENT"):
os.environ["EXPERIMENT"] = "samdev"
import ifdh
i = ifdh.ifdh()
# test locate/describe
print i.locateFile("MV_00003142_0014_numil_v09_1105080215_RawDigits_v1_linjc.root")
print i.describeDefinition("mwm_test_2")
# now start a project, and consume its files, alternately skipping or consuming
# them...
projname=time.strftime("mwm_%Y%m%d%H_%%d")%os.getpid()
dataset="gen_cfg"
dataset="testds_novagpvm02.fnal.gov_1476740789_4675"
cpurl=i.startProject(projname,"samdev", dataset, "mengel", "samdev")
time.sleep(2)
cpurl=i.findProject(projname,"samdev")
consumer_id=i.establishProcess( cpurl, "demo","1", "bel-kwinith.fnal.gov","mengel" )
print "got cpurl, consumer_id: ", cpurl, consumer_id
flag=True
furi=i.getNextFile(cpurl,consumer_id)
print "received furi: ", furi
while furi:
fname=i.fetchInput(furi)
if flag:
i.updateFileStatus(cpurl, consumer_id, fname, 'transferred')
time.sleep(1)
i.updateFileStatus(cpurl, consumer_id, fname, 'consumed')
flag=False
else:
i.updateFileStatus(cpurl, consumer_id, fname, 'skipped')
flag=True
try:
os.unlink(fname)
except:
pass
furi=i.getNextFile(cpurl,consumer_id)
print "received furi: ", furi
i.setStatus( cpurl, consumer_id, "bad")
i.endProject( cpurl )
i.cleanup()