/[gnue]/gnue-appserver/src/classrep/Class.py
ViewVC logotype

Diff of /gnue-appserver/src/classrep/Class.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.9 by reinhard, Sun Oct 19 22:08:04 2003 UTC revision 1.10 by jvetter, Tue Oct 21 12:26:50 2003 UTC
# Line 39  class ClassDict (BaseDictionary): Line 39  class ClassDict (BaseDictionary):
39    
40      self.modules    = moduleDict      self.modules    = moduleDict
41      self._module    = module      self._module    = module
42    
43      self.definition = definition      self.definition = definition
44    
45      if not definition:      if not definition:
# Line 50  class ClassDict (BaseDictionary): Line 51  class ClassDict (BaseDictionary):
51        self._updateCache (list)        self._updateCache (list)
52    
53      # if a module is specified, fetch all it's classes      # if a module is specified, fetch all it's classes
     # FIXME: use a definition somehow ...  
54      if module is not None:      if module is not None:
55        self._updateCache (self._requestData (module.gnue_id))        if self.modules.classdict:
56            for item in self.modules.classdict.values ():
57              if item.module.fullName == module.fullName:
58                self._cache [item.fullName] = item
59          else:
60            self._updateCache (self._requestData (module.gnue_id))
61    
62        # otherwise preload the cache with all available classes !
63        else:
64          self._updateCache (self._requestData ())
65    
66    # ---------------------------------------------------------------------------    # ---------------------------------------------------------------------------
67    # Update the cache with all business objects in list    # Update the cache with all business objects in list
# Line 65  class ClassDict (BaseDictionary): Line 74  class ClassDict (BaseDictionary):
74    # ---------------------------------------------------------------------------    # ---------------------------------------------------------------------------
75    # Request a list of matching business objects    # Request a list of matching business objects
76    # ---------------------------------------------------------------------------    # ---------------------------------------------------------------------------
77    def _requestData (self, moduleId, className=None):    def _requestData (self, moduleId = None, className = None):
78      cond = [["eq", ""], ["field", "gnue_module"], ["const", moduleId]]      if not self.session:
79          return []
80    
81        cond = []
82        if moduleId:
83          cond = [["eq", ""], ["field", "gnue_module"], ["const", moduleId]]
84    
85      if className:      if className:
86        cond += [["eq", ""], ["field", "gnue_name"], ["const", className]]        cond += [["eq", ""], ["field", "gnue_name"], ["const", className]]
87    

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26