--- OSA_system2/OSAS_helpers.py 2005/02/11 20:06:57 1.6
+++ OSA_system2/OSAS_helpers.py 2007/01/31 14:30:29 1.11
@@ -2,9 +2,17 @@
import os.path
from types import *
import xml.dom.minidom
-import zLOG
+import logging
-OSASObjectTypes=['OSAS_metaDataFile','OSAS_dir','OSAS_file','OSAS_imageFolder','OSAS_dir_archive','OSAS_file_archive']
+#ersetzt logging
+def logger(txt,method,txt2):
+ """logging"""
+ logging.info(txt+ txt2)
+
+
+
+OSASObjectTypes=['OSAS_metaDataFile','OSAS_dir','Osas_file','OSAS_imageFolder','OSAS_dir_archive','OSAS_file_archive','OSAS_videoFolder','OSAS_videoFile','OSAS_videoFolder']
+OSASDirObjects=['OSAS_dir','OSAS_imageFolder',]
OSASExcludedFiles=['TheVolumeSettingsFolder','TheFindByContentFolder']
@@ -12,7 +20,7 @@ def getText(nodelist):
"""gibt text aus nodelist"""
rc = ""
for node in nodelist:
- if node.nodeType == node.TEXT_NODE:
+ if node.nodeType == node.TEXT_NODE:
rc = rc + node.data
return rc
@@ -76,34 +84,43 @@ def getBib(nodelist):
for node in nodelist:
- if node.nodeType == node.ELEMENT_NODE:
- """nothing"""
+ if node.nodeType == node.ELEMENT_NODE:
+ """nothing"""
- rc = rc+"
"+str(node.nodeName)+": | "+getText(node.childNodes)+" |
"
+ rc = rc+""+str(node.nodeName)+": | "+getText(node.childNodes)+" |
"
#print rc
return rc+""
-def getPropertyOfDirs(indexMeta,property):
+def getPropertyOfDirs(indexMeta,propertyName):
"""gibt Eigenschaften der directorys gemaess Index.metas file in path aus
@param indexMeta: index.meta file
- @param propery: Property die ausgegebenwerden soll
+ @param propertyName: Property die ausgegebenwerden soll
@return: Hash mit key name des Directories and Value von property, None if error.
"""
ret={}
try:
dom=xml.dom.minidom.parseString(indexMeta)
- for node in dom.getElementsByTagName("dir"):
+
+ rootProp=xml.xpath.Evaluate("/resource/%s"%propertyName,dom)
+ if len(rootProp)==1:
+ property= getText(rootProp[0].childNodes)
+ ret["."]=property
- property= getText(node.getElementsByTagName("content-type")[0].childNodes)
- dirName=getText(node.getElementsByTagName("name")[0].childNodes)
- ret[dirName]=property
+ for node in dom.getElementsByTagName("dir"):
+ try:
+ property= getText(node.getElementsByTagName(propertyName)[0].childNodes)
+ dirName=getText(node.getElementsByTagName("name")[0].childNodes)
+ ret[dirName]=property
+ except:
+ ret[dirName]=none
return ret
except:
return ret
+
def dirHasProperty(path,indexMeta,propertyName,propertyValue):
"""gibt 1 zurück falls path hat propertyName und properName=propertyValue
@param propertyName:Property von path in index.meta des parent folders von path
@@ -121,7 +138,17 @@ def isImageFolder(path,indexMeta):
if dirHasProperty(path,indexMeta,'content-type','images'):
return 1
+def isVideoFolder(path,indexMeta):
+ """check if folder contains images without metadata or with metadata"""
+ # metadaten ergeben imagefolder
+
+ if dirHasProperty(path,indexMeta,'media-type','video'):
+ return 1
+def isVideoStream(path,indexMeta):
+ if dirHasProperty(path,indexMeta,'container-format','quicktime'):
+ return 1
+
def isImageFolderGuess(path):
"""check if folder contains images without metadata or with metadata"""
#sonst rate ob folder images enthaelten durch test nach suffix
@@ -133,7 +160,7 @@ def isImageFolderGuess(path):
for a in dir:
suffix=os.path.splitext(a)[1].lower()
-
+
if suffix in imagesuffixes:
return 1
@@ -171,6 +198,6 @@ def toList(fields):
def localDate():
"""gives formatted local date"""
- return strftime("%d.%m.%Y",localtime())
+ return strftime("%d.%m.%Y",localtime())