Mercurial > hg > purlService
diff managePurls/manageIndexMetaPURLs.py @ 36:be8640c08d99
Updatedri in harbestToPUrl ge?ndert.
jetzt werden gegebenenfalls dris aus den index.meta gelesen und in die db geschrieben, falls sie noch nicht existieren.
ausserdem wird in den daten isdri=TRUE gesetzt, wenn es ich bei der PURL um eine handelt die auf ein DRI in den index.meta verweist.
author | dwinter |
---|---|
date | Mon, 03 Mar 2014 17:32:06 +0100 |
parents | bcd8076ff7ec |
children | 6a0873a913c5 |
line wrap: on
line diff
--- a/managePurls/manageIndexMetaPURLs.py Wed Oct 23 12:28:22 2013 +0200 +++ b/managePurls/manageIndexMetaPURLs.py Mon Mar 03 17:32:06 2014 +0100 @@ -174,7 +174,7 @@ #erzeuge eine neue purl while self.exists(purl): - purl = self.gneratePurl() + purl = self.generatePurl() seq= self.purlDB.insert('purls',path=path,purl=purl,is_index_meta=isIndexMeta, image_path=imagePath, @@ -186,34 +186,53 @@ #register a new path - def updatePurl(self,purl,isIndexMeta,path="",imagePath="",server_url="",user=""): + def updatePurl(self,purl,isIndexMeta,path="",imagePath="",server_url="",user="",isDri=False): update= self.purlDB.update('purls',where="purl = '%s'"%web.sqlparam(purl),path=path,is_index_meta=isIndexMeta, image_path=imagePath, + server_url=server_url,validity=1,last_change_by=user,last_change_at=web.SQLLiteral("NOW()"),isdri=isDri) + + + return update + + + def updatePurlForPath(self,purl,isIndexMeta,path="",imagePath="",server_url="",user=""): + """schreibt zu einem Pfad die entsprechende purl""" + + + update= self.purlDB.update('purls',where="path = '%s'"%web.sqlparam(path),purl=purl,is_index_meta=isIndexMeta, image_path=imagePath, server_url=server_url,validity=1,last_change_by=user,last_change_at=web.SQLLiteral("NOW()")) return update - def register(self,path=None,isIndexMeta=False,imagePath="",server_url="",user="",update=False): + def register(self,path=None,isIndexMeta=False,imagePath="",server_url="",user="",driIndexMeta=None,update=False): #teste ob es zu dem Pfad schon eine Purl gibt - if path: # wenn ein pfad definiert ist teste ob es schon eine purl dazu gibt. - purl = self.getPurl(path) + if path: # wenn ein pfad definiert ist teste ob es schon eine purl in der Datenbank gibt. + purl = self.getPurl(path) + else: purl =None + + if update: # wenn update compare this with the purl which is stored in the index.meta file. + if (driIndexMeta is not None) & (purl!=driIndexMeta): + #wenn nicht gleich, dann trage die driIndexMeta in die purl db! + purl=driIndexMeta + + if purl!=None: if update: - up= self.updatePurl(purl, isIndexMeta, path, imagePath, server_url, user) - if up>0: - return UPDATED,purl - else: - return ERROR,None - + up= self.updatePurl(driIndexMeta, isIndexMeta, path, imagePath, server_url, user,isDri=True) + if up>0: + return UPDATED,purl + else: + return ERROR,None + return ALREADY_EXISTS,purl - + #wenn nicht dann neue erzeugen else: