[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/appserver/src/classrep Module.py test.py
From: |
Johannes Vetter |
Subject: |
gnue/appserver/src/classrep Module.py test.py |
Date: |
Mon, 24 Feb 2003 11:44:35 -0500 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Changes by: Johannes Vetter <address@hidden> 03/02/24 11:44:34
Modified files:
appserver/src/classrep: Module.py test.py
Log message:
Keep track of sessions
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/Module.py.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/test.py.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
Patches:
Index: gnue/appserver/src/classrep/Module.py
diff -c gnue/appserver/src/classrep/Module.py:1.1
gnue/appserver/src/classrep/Module.py:1.2
*** gnue/appserver/src/classrep/Module.py:1.1 Sun Feb 16 18:10:12 2003
--- gnue/appserver/src/classrep/Module.py Mon Feb 24 11:44:34 2003
***************
*** 19,30 ****
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: Module.py,v 1.1 2003/02/16 23:10:12 reinhard Exp $
#
=============================================================================
# A List Of Business Object Modules
#
=============================================================================
class ModuleDict:
#
---------------------------------------------------------------------------
# This class behaves like a dictionary of all available modules with the
# keys being the module names and the values being Module objects.
--- 19,33 ----
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: Module.py,v 1.2 2003/02/24 16:44:34 jvetter Exp $
!
! from Class import ClassDict
#
=============================================================================
# A List Of Business Object Modules
#
=============================================================================
class ModuleDict:
+
#
---------------------------------------------------------------------------
# This class behaves like a dictionary of all available modules with the
# keys being the module names and the values being Module objects.
***************
*** 38,43 ****
--- 41,52 ----
# otherwise
#
---------------------------------------------------------------------------
def get (self, name, default = None):
+ # is the requested module in the cache ?
+ for module in self._list:
+ if module.gnue_name == name:
+ return Module (self._session, module)
+
+ # since it isn't cached we've to ask for it
list = self._session.find ("gnue_module",
[["eq", ""], ["field", "gnue_name"],
["const", name]],
***************
*** 45,78 ****
if len (list) <> 1:
return default
else:
! return Module (list [0])
#
---------------------------------------------------------------------------
# Get the keys
#
---------------------------------------------------------------------------
def keys (self):
! result = []
! for mod in self._list:
! result.append (mod.gnue_name)
! return result
#
---------------------------------------------------------------------------
# Get the values
#
---------------------------------------------------------------------------
def values (self):
! result = []
! for mod in self._list:
! result.append (Module (mod))
! return result
#
---------------------------------------------------------------------------
# Get the (key, value) pairs
#
---------------------------------------------------------------------------
def items (self):
! result = []
! for mod in self._list:
! result.append ((mod.gnue_name, Module (mod)))
! return result
#
---------------------------------------------------------------------------
# Return whether the given key exists
--- 54,81 ----
if len (list) <> 1:
return default
else:
! # extend the cache and return the requested instance
! self._list.append (list [0])
! return Module (self._session, list [0])
!
#
---------------------------------------------------------------------------
# Get the keys
#
---------------------------------------------------------------------------
def keys (self):
! return [module.gnue_name for module in self._list]
#
---------------------------------------------------------------------------
# Get the values
#
---------------------------------------------------------------------------
def values (self):
! return [Module (self._session, module) for module in self._list]
#
---------------------------------------------------------------------------
# Get the (key, value) pairs
#
---------------------------------------------------------------------------
def items (self):
! return [(mod.gnue_name, Module (self._session, mod)) for mod in
self._list]
#
---------------------------------------------------------------------------
# Return whether the given key exists
***************
*** 96,111 ****
else:
raise KeyError, name
#
=============================================================================
# A Business Object Module
#
=============================================================================
class Module:
! def __init__ (self, object):
# _object is the underlying business object
! self._object = object
#
---------------------------------------------------------------------------
# Return an attribute's value
#
---------------------------------------------------------------------------
def __getattr__ (self, attr):
return getattr (self._object, "gnue_" + attr)
--- 99,124 ----
else:
raise KeyError, name
+
#
=============================================================================
# A Business Object Module
#
=============================================================================
class Module:
!
! def __init__ (self, session, object):
! # _session is a valid LI session
# _object is the underlying business object
! self._session = session
! self._object = object
#
---------------------------------------------------------------------------
# Return an attribute's value
#
---------------------------------------------------------------------------
def __getattr__ (self, attr):
return getattr (self._object, "gnue_" + attr)
+
+ #
---------------------------------------------------------------------------
+ # Return a dictionary with all classes associated with this instance
+ #
---------------------------------------------------------------------------
+ def classes (self):
+ return ClassDict (self._session, self)
Index: gnue/appserver/src/classrep/test.py
diff -c gnue/appserver/src/classrep/test.py:1.1
gnue/appserver/src/classrep/test.py:1.2
*** gnue/appserver/src/classrep/test.py:1.1 Sun Feb 16 18:10:12 2003
--- gnue/appserver/src/classrep/test.py Mon Feb 24 11:44:34 2003
***************
*** 9,14 ****
--- 9,22 ----
m = mod ["address"]
print m.name + ": " + m.comment
+ print "\nClasses of the gnue-module:"
+ m = mod ["gnue"]
+ cDict = m.classes ()
+
+ for key in m.classes ().keys ():
+ aClass = cDict [key]
+ print "has class", aClass.name, "aka", aClass.fqName
+
print
print "Number of modules: %d" % len (mod)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnue/appserver/src/classrep Module.py test.py,
Johannes Vetter <=