#!/bin/env python
# Marco mambelli
# test: ./DatasetByFileGUID 04A50ABB-D82F-DC11-89AE-00E08127C853
# streamtest.004979.inclJet.merge.AOD.v12000699 (6848bb7d-5922-4850-b6e7-9312eee3697d)
import sys
try:
 from dq2.common.Config import Config
 from dq2.clientapi.DQ2 import DQ2
except:
 print "DQ2 client is not setup corrctly"
 sys.exit(1)
if len(sys.argv)<2:
 print "usage: DatasetByFileGUID guid [ additional guid ]*"
 sys.exit(0)
dq=DQ2('http://atlddmcat.cern.ch:80/','https://atlddmcat.cern.ch:443/','http://atlddmcat.cern.ch:80/','https://atlddmcat.cern.ch:443/','http://atlddmcat.cern.ch:80/','https://atlddmcat.cern.ch:443/','http://atlddmcat.cern.ch:80/','https://atlddmcat.cern.ch:443/')
if len(sys.argv)>2:
 multiple=True
else:
 multiple=False
gprefix=""
for fguid in sys.argv[1:]:
 dslist = dq.contentClient.queryDatasetsWithFileByGUID(fguid) 
 if not dslist:
  # print "No datasets including this file"
  # sys.exit(2)
  continue
 if multiple:
  gprefix="%s: " % fguid
 for i in dslist:
  dataset = dq.repositoryClient.resolveVUID(i) 
  print "%s%s (%s)" % (gprefix, dataset['dsn'], i)

