--- OSA_system2/OSAS_metadata.py 2005/11/29 10:39:50 1.14 +++ OSA_system2/OSAS_metadata.py 2010/09/01 13:26:16 1.18 @@ -10,7 +10,14 @@ import sys import xml.dom.minidom import xml.dom.pulldom import OSAS_helpers -import zLOG +import logging + +#ersetzt logging +def logger(txt,method,txt2): + """logging""" + logging.info(txt+ txt2) + + import string try: from xml.xpath import Evaluate @@ -134,7 +141,7 @@ def manage_addMetadataMapping(self,idOfO class OSAS_Metadata(Folder): - """Foldertype enthält methoden zur Halbautomatischen Erstellung von Metadatenfiles""" + """Foldertype enthaelt methoden zur Halbautomatischen Erstellung von Metadatenfiles""" security=ClassSecurityInfo() def __init__(self,id,shortDescription,description,fields): @@ -165,20 +172,29 @@ class OSAS_Metadata(Folder): else: self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml') return ret - - def showOverviewXML(self,RESPONSE): + + + def showOverviewXML(self,RESPONSE=None,wrapped=False): """gives an overview over the Metadata stored in this folder""" - ret=""""""%self.getId() + ret="" + if wrapped: + ret+="""""" + ret+=""""""%self.getId() ret+=self.showGenericXML() - for entry in self.ZopeFind(self,obj_metatypes=['OSAS_MetadataMapping']): + for entry in self.ZopeFind(self,obj_metatypes=['OSAS_MetadataMapping__neu']): ret+=entry[1].showSetXML() + for entry in self.ZopeFind(self,obj_metatypes=['OSAS_Metadata__neu']): + ret+=entry[1].showOverviewXML() + ret+="" + if wrapped: + ret+="""""" if not RESPONSE: return ret else: - self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml') + RESPONSE.setHeader('Content-Type','text/xml') return ret def generateMappingList(self): @@ -189,7 +205,9 @@ class OSAS_Metadata(Folder): #print dict obj=getattr(self,dict) if hasattr(obj,'meta_type'): - if obj.meta_type=="OSAS_MetadataMapping__neu": + logging.debug("generateMappungList read type:"+repr(obj.meta_type)) + if ((obj.meta_type=="OSAS_MetadataMapping__neu") or (obj.meta_type=="MetadataMapping")): #metadatamapping is the newer type + logging.debug("generateMappungListadded:"+repr(obj.getId())) mapping[obj.getId()]=obj.generateMappingHash() return mapping @@ -198,8 +216,9 @@ class OSAS_Metadata(Folder): """erzeuge spezifisches Mapping""" hash=self.generateMappingList() - + logging.debug("generateMappingForType:"+type) for key in hash.keys(): + logging.debug("generateMappingForType comparing:"+key.lower()+type.lower()) if (key.lower() == type.lower()): if clean=="yes": temp={} @@ -244,7 +263,7 @@ class OSAS_Metadata(Folder): def getStoredTypes(self): - """Gebe gespeicherte typen zurück""" + """Gebe gespeicherte typen zurueck""" types=[] @@ -300,14 +319,14 @@ class OSAS_Metadata(Folder): except: return "" def getDisplayFieldsAsStrOLD(self,indexMeta): - """Gebe display fields als string zurück + """Gebe display fields als string zurueck @param path: Pfad zum Object """ ret=[] try: dom=xml.dom.minidom.parseString(indexMeta) except: - zLOG.LOG("OSAS_metadata (getDisplayFieldsAsStr)",zLOG.INFO,"Cannot parse: %s"%indexMeta) + logger("OSAS_metadata (getDisplayFieldsAsStr)",logging.INFO,"Cannot parse: %s"%indexMeta) try: bib = dom.getElementsByTagName("meta")[0].getElementsByTagName("bib")[0] except: @@ -604,7 +623,7 @@ class OSAS_Metadata(Folder): if list=="": return None - listsplit=list.split("\n") + listsplit=[i.rstrip() for i in list.split("\n")] return listsplit def showHelp(self,refType,genericTag): @@ -635,4 +654,4 @@ def manage_addMetadata(self,id,shortDesc RESPONSE.redirect('manage_main') -InitializeClass(OSAS_Metadata) +