opental-checkins
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[OpenTAL-checkins] CVSROOT: /cvsroot/opental


From: Sidnei da Silva
Subject: [OpenTAL-checkins] CVSROOT: /cvsroot/opental
Date: Sun, 14 Sep 2003 21:05:34 -0400

Module name:    opental
Branch:         no_more_readconflict
Changes by:     Sidnei da Silva <address@hidden>        03/09/14 21:05:34
Reply-to: address@hidden

CVSROOT:        /cvsroot/opental
Module name:    opental
Branch:         no_more_readconflict
Changes by:     Sidnei da Silva <address@hidden>        03/09/14 21:05:34

Modified files:
        PlacelessTranslationService: GettextMessageCatalog.py 
                                     PlacelessTranslationService.py 

Log message:
        Try to avoid persistence as much as possible

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/opental/opental/PlacelessTranslationService/GettextMessageCatalog.py.diff?only_with_tag=no_more_readconflict&tr1=1.14.2.1&tr2=1.14.2.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/opental/opental/PlacelessTranslationService/PlacelessTranslationService.py.diff?only_with_tag=no_more_readconflict&tr1=1.26.2.1&tr2=1.26.2.2&r1=text&r2=text

Patches:
Index: opental/PlacelessTranslationService/GettextMessageCatalog.py
diff -u opental/PlacelessTranslationService/GettextMessageCatalog.py:1.14.2.1 
opental/PlacelessTranslationService/GettextMessageCatalog.py:1.14.2.2
--- opental/PlacelessTranslationService/GettextMessageCatalog.py:1.14.2.1       
Sun Sep 14 20:07:41 2003
+++ opental/PlacelessTranslationService/GettextMessageCatalog.py        Sun Sep 
14 21:05:34 2003
@@ -17,7 +17,7 @@
 #    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307, USA
 """A simple implementation of a Message Catalog.
 
-$Id: GettextMessageCatalog.py,v 1.14.2.1 2003/09/15 00:07:41 dreamcatcher Exp $
+$Id: GettextMessageCatalog.py,v 1.14.2.2 2003/09/15 01:05:34 dreamcatcher Exp $
 """
 
 from gettext import GNUTranslations
@@ -64,6 +64,16 @@
 translationRegistry = Registry()
 registerTranslation = translationRegistry.register
 
+def getMessage(catalog, id, orig_text=None):
+    """
+    """
+    msg = catalog.gettext(id)
+    if msg is id:
+        raise KeyError
+    if type(msg) is StringType:
+        msg = unicode(msg, catalog._charset)
+    return msg
+
 class GettextMessageCatalog(Persistent, Implicit, Traversable, Tabs):
     """
     Message catalog that wraps a .mo file in the filesystem
@@ -138,13 +148,12 @@
         """
         """
         self._prepareTranslations()
-        msg = self._v_tro.gettext(id)
-        if msg is id:
+        try:
+            msg = getMessage(self._v_tro)
+        except KeyError:
             if not testing:
                 self._log_missing(id, orig_text)
-            raise KeyError
-        if type(msg) is StringType:
-            msg = unicode(msg, self._v_tro._charset)
+            raise
         return msg
 
     queryMessage__roles__=None # Public
@@ -233,3 +242,5 @@
             ]
     #
     ############################################################
+
+
Index: opental/PlacelessTranslationService/PlacelessTranslationService.py
diff -u 
opental/PlacelessTranslationService/PlacelessTranslationService.py:1.26.2.1 
opental/PlacelessTranslationService/PlacelessTranslationService.py:1.26.2.2
--- opental/PlacelessTranslationService/PlacelessTranslationService.py:1.26.2.1 
Sun Sep 14 20:07:41 2003
+++ opental/PlacelessTranslationService/PlacelessTranslationService.py  Sun Sep 
14 21:05:34 2003
@@ -17,7 +17,7 @@
 #    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307, USA
 """Placeless Translation Service for providing I18n to file-based code.
 
-$Id: PlacelessTranslationService.py,v 1.26.2.1 2003/09/15 00:07:41 
dreamcatcher Exp $
+$Id: PlacelessTranslationService.py,v 1.26.2.2 2003/09/15 01:05:34 
dreamcatcher Exp $
 """
 
 import sys, re, zLOG, Globals, fnmatch
@@ -216,6 +216,7 @@
                   target_language=None, default=None):
         """
         """
+        from GettextMessageCatalog import translationRegistry, getMessage
 
         if not msgid:
             # refuse to translate an empty msgid
@@ -240,9 +241,9 @@
                     break
 
         for name in catalog_names:
-            catalog = self._getOb(name)
+            catalog = translationRegistry[name]
             try:
-                text = catalog.getMessage(msgid, default)
+                text = getMessage(catalog, msgid, default)
             except KeyError:
                 # it's not in this catalog, try the next one
                 continue




reply via email to

[Prev in Thread] Current Thread [Next in Thread]