version 1.53, 2005/04/28 22:03:44
|
version 1.55, 2005/04/29 09:45:57
|
Line 27 except:
|
Line 27 except:
|
manage_options=() |
manage_options=() |
|
|
|
|
|
tdir = "/mpiwg/temp/tmp/archivesImageServer/" |
|
#tdir="/tmp/archivesImageServer/" |
|
|
def splitPath(str): |
def splitPath(str): |
str2=str.replace("\\","/") |
str2=str.replace("\\","/") |
Line 52 def getTextFromNode(nodename):
|
Line 54 def getTextFromNode(nodename):
|
class generateSet: |
class generateSet: |
"""generateSetThread""" |
"""generateSetThread""" |
|
|
|
|
def __init__(self,filenames,filenamesIds,ImageViewerPath,ids,url,local=None,version="full"): |
def __init__(self,filenames,filenamesIds,ImageViewerPath,ids,url,local=None,version="full"): |
"""init generateSet""" |
"""init generateSet""" |
self.filenames=filenames |
self.filenames=filenames |
Line 63 class generateSet:
|
Line 66 class generateSet:
|
self.version=version |
self.version=version |
self.done=None |
self.done=None |
|
|
|
|
def __call__(self): |
def __call__(self): |
"""call generate Set""" |
"""call generate Set""" |
|
|
storeTempDir=tempfile.tempdir |
storeTempDir=tempfile.tempdir |
tempfile.tempdir="/tmp/archivesImageServer" |
tempfile.tempdir=tdir |
|
|
tmpPath=tempfile.mktemp() |
tmpPath=tempfile.mktemp() |
tmpZip=tempfile.mktemp()+".zip" |
tmpZip=tempfile.mktemp()+".zip" |
tmpFn=os.path.split(tmpZip)[1] |
tmpFn=os.path.split(tmpZip)[1] |
Line 508 class ImageCollection(Folder, Persistent
|
Line 513 class ImageCollection(Folder, Persistent
|
|
|
|
|
zipThreads={} |
zipThreads={} |
|
zipThreads2={} |
|
|
genericMetaDataType="leiden_meta" |
genericMetaDataType="leiden_meta" |
|
|
leiden_meta_fields=['image_id','date','country','place','people','description','photographer'] |
leiden_meta_fields=['image_id','date','country','place','people','description','photographer'] |
Line 535 class ImageCollection(Folder, Persistent
|
Line 542 class ImageCollection(Folder, Persistent
|
|
|
|
|
self.zipThreads[thread.getName()[0:]]=threadStart |
self.zipThreads[thread.getName()[0:]]=threadStart |
|
self.zipThreads2[thread.getName()[0:]]=thread |
self.REQUEST.SESSION['threadName']=thread.getName()[0:] |
self.REQUEST.SESSION['threadName']=thread.getName()[0:] |
wait_template=self.aq_parent.ZopeFind(self.aq_parent,obj_ids=['zip_wait_template']) |
wait_template=self.aq_parent.ZopeFind(self.aq_parent,obj_ids=['zip_wait_template']) |
if wait_template: |
if wait_template: |
return wait_template[0][1]() |
return wait_template[0][1]() |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','zip_Wait.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','zip_wait.zpt')).__of__(self) |
return pt() |
return pt() |
#xmltrans.run() |
#xmltrans.run() |
else: |
else: |
Line 551 class ImageCollection(Folder, Persistent
|
Line 559 class ImageCollection(Folder, Persistent
|
if wait_template: |
if wait_template: |
return wait_template[0][1]() |
return wait_template[0][1]() |
|
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','zip_Wait.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','zip_wait.zpt')).__of__(self) |
return pt() |
return pt() |
else: |
else: |
if self.zipThreads[threadName].isDone(): |
if self.zipThreads[threadName].isDone(): |
self.REQUEST.SESSION['result']=self.zipThreads[threadName].getResult() |
self.REQUEST.SESSION['result']=self.zipThreads[threadName].getResult() |
|
self.zipThreads2[threadName].join() |
|
del(self.zipThreads2[threadName]) |
|
del(self.zipThreads[threadName]) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','zip_result.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','zip_result.zpt')).__of__(self) |
return pt() |
return pt() |
|
|
else: |
else: |
self.REQUEST.SESSION['result']=self.zipThreads[threadName].getResult() |
self.REQUEST.SESSION['result']=self.zipThreads[threadName].getResult() |
self.REQUEST.SESSION['threadName']=threadName |
self.REQUEST.SESSION['threadName']=threadName |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','zip_Wait_result.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','zip_wait_result.zpt')).__of__(self) |
return pt() |
return pt() |
|
|
|
|
|
|
|
|
|
|
|
def checkThreads(self): |
|
"""teste running threads""" |
|
ret="""<html> |
|
<head> |
|
<meta http-equiv="REFRESH" content="5;url=%s/checkThreads" |
|
<body><h2>Threads of %s</h2>"""%(self.absolute_url(),self.getId()) |
|
|
|
for threadName in self.zipThreads.keys(): |
|
if self.zipThreads2[threadName].isAlive(): |
|
ret+="<p>%s --> alive</p>"%threadName |
|
else: |
|
ret+="<p>%s --> dead</p>"%threadName |
|
return ret+"</body></html>" |
|
|
def downloadSet(self,fn): |
def downloadSet(self,fn): |
"""download prepared set""" |
"""download prepared set""" |
filename="/tmp/archivesImageServer/"+fn |
filename=os.path.join(tdir,fn) |
|
|
|
|
self.REQUEST.RESPONSE.setHeader("Content-Disposition","""attachement; filename="%s" """%"image.zip") |
self.REQUEST.RESPONSE.setHeader("Content-Disposition","""attachement; filename="%s" """%"image.zip") |
self.REQUEST.RESPONSE.setHeader("Content-Type","application/octet-stream") |
self.REQUEST.RESPONSE.setHeader("Content-Type","application/octet-stream") |