[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/appserver/src/classrep Class.py Module.py ...
From: |
Johannes Vetter |
Subject: |
gnue/appserver/src/classrep Class.py Module.py ... |
Date: |
Tue, 27 May 2003 10:30:57 -0400 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Changes by: Johannes Vetter <address@hidden> 03/05/27 10:30:57
Modified files:
appserver/src/classrep: Class.py Module.py Property.py
__init__.py ctest.py dtest.py test.py
Added files:
appserver/src/classrep: Base.py Definition.py repository.ini
Log message:
Added repository definition files, improved classes
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/Base.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/Definition.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/repository.ini?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/Class.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/Module.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/Property.py.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/__init__.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/ctest.py.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/classrep/dtest.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.2&tr2=1.3&r1=text&r2=text
Patches:
Index: gnue/appserver/src/classrep/Class.py
diff -c gnue/appserver/src/classrep/Class.py:1.2
gnue/appserver/src/classrep/Class.py:1.3
*** gnue/appserver/src/classrep/Class.py:1.2 Sat Mar 8 12:41:52 2003
--- gnue/appserver/src/classrep/Class.py Tue May 27 10:30:57 2003
***************
*** 19,45 ****
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: Class.py,v 1.2 2003/03/08 17:41:52 jvetter Exp $
from Namespace import *
from Property import *
#
=============================================================================
# Dictionary with classes
#
=============================================================================
! class ClassDict:
#
---------------------------------------------------------------------------
# Create a dictionary with all classes [from a specified module]
#
---------------------------------------------------------------------------
! def __init__ (self, session, moduleDict, module = None):
! self.modules = moduleDict
! self._session = session
! self._module = module
! self._cache = {}
if module:
! self._updateCache (self._requestData (module.id))
#
---------------------------------------------------------------------------
# Update the cache with all business objects in list
--- 19,57 ----
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: Class.py,v 1.3 2003/05/27 14:30:57 jvetter Exp $
+ from Base import *
from Namespace import *
from Property import *
#
=============================================================================
# Dictionary with classes
#
=============================================================================
! class ClassDict (BaseDictionary):
#
---------------------------------------------------------------------------
# Create a dictionary with all classes [from a specified module]
#
---------------------------------------------------------------------------
! def __init__ (self, session, moduleDict, module = None, definition = None):
! BaseDictionary.__init__ (self, session)
+ self.modules = moduleDict
+ self._module = module
+ self.definition = definition
+
+ if not definition:
+ self.definition = self.modules.definition
+
+ # if we have an initial definition, use all it's classes
+ if self.definition:
+ list = [klass [1] for klass in self.definition.classes ()]
+ self._updateCache (list)
+
+ # if a module is specified, fetch all it's classes
+ # FIXME: use a definition somehow ...
if module:
! self._updateCache (self._requestData (module.gnue_id))
#
---------------------------------------------------------------------------
# Update the cache with all business objects in list
***************
*** 59,67 ****
if className:
cond += [["eq", ""], ["field", "gnue_name"], ["const", className]]
! return self._session.find ("gnue_class", cond,
! ["gnue_module", "gnue_name"],
! ["gnue_module", "gnue_name"])
#
---------------------------------------------------------------------------
# Return an item from the cache using the ModuleDict for module verification
--- 71,79 ----
if className:
cond += [["eq", ""], ["field", "gnue_name"], ["const", className]]
! return self.session.find ("gnue_class", cond,
! ["gnue_module", "gnue_name"],
! ["gnue_module", "gnue_name"])
#
---------------------------------------------------------------------------
# Return an item from the cache using the ModuleDict for module verification
***************
*** 75,83 ****
#
---------------------------------------------------------------------------
def _module_from_cache (self, item):
for module in self.modules.values ():
! if module.id == item.gnue_module:
return module
! raise EBadReference (item.name, "gnue_module")
#
---------------------------------------------------------------------------
# Return a class object if it exists
--- 87,95 ----
#
---------------------------------------------------------------------------
def _module_from_cache (self, item):
for module in self.modules.values ():
! if module.gnue_id == item.gnue_module:
return module
! raise EBadReference (item.gnue_name, "gnue_module")
#
---------------------------------------------------------------------------
# Return a class object if it exists
***************
*** 91,98 ****
return self._cache [name]
# since we had no match cached, ask for it
! print "DEBUG: Class: REFETCH %s, %s" % (module.id, className)
! res = self._requestData (module.id, className)
if len (res) == 1:
self._updateCache (res)
--- 103,110 ----
return self._cache [name]
# since we had no match cached, ask for it
! print "DEBUG: Class: REFETCH %s, %s" % (module.gnue_id, className)
! res = self._requestData (module.gnue_id, className)
if len (res) == 1:
self._updateCache (res)
***************
*** 100,141 ****
raise EClassNotFound (name)
- #
---------------------------------------------------------------------------
- # Get the keys
- #
---------------------------------------------------------------------------
- def keys (self):
- return self._cache.keys ()
-
- #
---------------------------------------------------------------------------
- # Get the values
- #
---------------------------------------------------------------------------
- def values (self):
- return self._cache.values ()
-
- #
---------------------------------------------------------------------------
- # Get the (key, value) pairs
- #
---------------------------------------------------------------------------
- def items (self):
- return self._cache.items ()
-
- #
---------------------------------------------------------------------------
- # Return wether the given key (class) exists
- #
---------------------------------------------------------------------------
- def has_key (self, name):
- return self._cache.has_key (name)
-
- #
---------------------------------------------------------------------------
- # Get the number of classes Use len (aClassDict) to get this value
- #
---------------------------------------------------------------------------
- def __len__ (self):
- return len (self._cache)
-
- #
---------------------------------------------------------------------------
- # Get a specific item by name
- #
---------------------------------------------------------------------------
- def __getitem__ (self, name):
- return self.get (name)
-
#
=============================================================================
--- 112,117 ----
***************
*** 150,164 ****
self._object = object
self.classes = classDict
self.module = module
! self.properties = PropertyDict (classDict._session, classDict.modules,
self)
- self.fullName = createName (self.module.name, self.name)
#
---------------------------------------------------------------------------
# Attribute access is redirected into the gnue-namespace
#
---------------------------------------------------------------------------
def __getattr__ (self, attr):
! return getattr (self._object, createName ("gnue", attr))
#
---------------------------------------------------------------------------
# Return a property by name
--- 126,142 ----
self._object = object
self.classes = classDict
self.module = module
! self.definition = classDict.definition
! self.fullName = createName (module.gnue_name, object.gnue_name)
!
! self.properties = PropertyDict (classDict.session, classDict.modules,
self)
#
---------------------------------------------------------------------------
# Attribute access is redirected into the gnue-namespace
#
---------------------------------------------------------------------------
def __getattr__ (self, attr):
! return getattr (self._object, attr)
#
---------------------------------------------------------------------------
# Return a property by name
Index: gnue/appserver/src/classrep/Module.py
diff -c gnue/appserver/src/classrep/Module.py:1.3
gnue/appserver/src/classrep/Module.py:1.4
*** gnue/appserver/src/classrep/Module.py:1.3 Sat Mar 8 12:41:52 2003
--- gnue/appserver/src/classrep/Module.py Tue May 27 10:30:57 2003
***************
*** 19,44 ****
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: Module.py,v 1.3 2003/03/08 17:41:52 jvetter Exp $
from Namespace import *
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.
#
---------------------------------------------------------------------------
! def __init__ (self, session):
! self._session = session
! self._cache = {}
! self._updateCache (self._requestData ())
#
---------------------------------------------------------------------------
# Integrate a list of business objects into the cache
--- 19,48 ----
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: Module.py,v 1.4 2003/05/27 14:30:57 jvetter Exp $
+ from Base import *
from Namespace import *
from Class import ClassDict
#
=============================================================================
# A List Of Business Object Modules
#
=============================================================================
! class ModuleDict (BaseDictionary):
#
---------------------------------------------------------------------------
# This class behaves like a dictionary of all available modules with the
# keys being the module names and the values being Module objects.
#
---------------------------------------------------------------------------
! def __init__ (self, session, definition = None):
! BaseDictionary.__init__ (self, session)
! self.definition = definition
! if definition:
! self._updateCache ([module [1] for module in definition.modules ()])
! else:
! self._updateCache (self._requestData ())
#
---------------------------------------------------------------------------
# Integrate a list of business objects into the cache
***************
*** 57,64 ****
cond = []
if name:
cond = [["eq", ""], ["field", "gnue_name"], ["const", name]]
! return self._session.find ("gnue_module", cond, ["gnue_name"],
! ["gnue_name", "gnue_id"])
#
---------------------------------------------------------------------------
# Internal: create an instance from a cached object
--- 61,68 ----
cond = []
if name:
cond = [["eq", ""], ["field", "gnue_name"], ["const", name]]
! return self.session.find ("gnue_module", cond, ["gnue_name"],
! ["gnue_name", "gnue_id"])
#
---------------------------------------------------------------------------
# Internal: create an instance from a cached object
***************
*** 85,125 ****
raise EModuleNotFound (name)
- #
---------------------------------------------------------------------------
- # Get the keys
- #
---------------------------------------------------------------------------
- def keys (self):
- return self._cache.keys ()
-
- #
---------------------------------------------------------------------------
- # Get the values
- #
---------------------------------------------------------------------------
- def values (self):
- return self._cache.values ()
-
- #
---------------------------------------------------------------------------
- # Get the (key, value) pairs
- #
---------------------------------------------------------------------------
- def items (self):
- return self._cache.items ()
-
- #
---------------------------------------------------------------------------
- # Return wether the given key exists
- #
---------------------------------------------------------------------------
- def has_key (self, name):
- return self._cache.has_key (name)
-
- #
---------------------------------------------------------------------------
- # Get the count of modules. Call len (myModuleDict) to get this value.
- #
---------------------------------------------------------------------------
- def __len__ (self):
- return len (self._cache)
-
- #
---------------------------------------------------------------------------
- # Get a specific module by name
- #
---------------------------------------------------------------------------
- def __getitem__ (self, name):
- return self.get (name)
#
=============================================================================
--- 89,94 ----
***************
*** 131,149 ****
# _object is the underlying business object
self.modules = modDict
self._object = object
- self._classes = None
! self.fullName = self.name
#
---------------------------------------------------------------------------
# Return an attribute's value
#
---------------------------------------------------------------------------
def __getattr__ (self, attr):
if attr == 'classes':
! if not self._classes:
! self._classes = ClassDict (self.modules._session, self.modules, self)
! return self._classes
else:
! return getattr (self._object, createName ("gnue", attr))
--- 100,117 ----
# _object is the underlying business object
self.modules = modDict
self._object = object
! self.fullName = self.gnue_name
#
---------------------------------------------------------------------------
# Return an attribute's value
#
---------------------------------------------------------------------------
def __getattr__ (self, attr):
if attr == 'classes':
! self.__dict__ ['classes'] = ClassDict (self.modules.session,
! self.modules, self)
! return self.classes
else:
! return getattr (self._object, attr)
Index: gnue/appserver/src/classrep/Property.py
diff -c gnue/appserver/src/classrep/Property.py:1.1
gnue/appserver/src/classrep/Property.py:1.2
*** gnue/appserver/src/classrep/Property.py:1.1 Sat Mar 8 12:41:53 2003
--- gnue/appserver/src/classrep/Property.py Tue May 27 10:30:57 2003
***************
*** 19,42 ****
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: Property.py,v 1.1 2003/03/08 17:41:53 jvetter Exp $
from Namespace import *
#
=============================================================================
# Dictionary with all properties of a given class
#
=============================================================================
! class PropertyDict:
#
---------------------------------------------------------------------------
# Construct a Property-Dictionary for class klass
#
---------------------------------------------------------------------------
! def __init__ (self, session, moduleDict, klass):
! self._session = session
! self.modules = moduleDict
! self.klass = klass
! self._cache = {}
! self._updateCache (self._requestData (self.klass.id))
#
---------------------------------------------------------------------------
# Update cache with all business objects in list
--- 19,55 ----
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: Property.py,v 1.2 2003/05/27 14:30:57 jvetter Exp $
+ from Base import *
from Namespace import *
#
=============================================================================
# Dictionary with all properties of a given class
#
=============================================================================
! class PropertyDict (BaseDictionary):
#
---------------------------------------------------------------------------
# Construct a Property-Dictionary for class klass
#
---------------------------------------------------------------------------
! def __init__ (self, session, moduleDict, klass, definition = None):
! BaseDictionary.__init__ (self, session)
!
! self.modules = moduleDict
! self.klass = klass
! self.definition = definition
!
! if not self.definition:
! self.definition = klass.definition
!
! if not self.definition:
! self.definition = moduleDict.definition
!
! if self.definition:
! list = [prop [1] for prop in self.definition.properties
(klass.fullName)]
! self._updateCache (list)
!
! self._updateCache (self._requestData (self.klass.gnue_id))
#
---------------------------------------------------------------------------
# Update cache with all business objects in list
***************
*** 50,62 ****
# Read a list of properties from the datasource
#
---------------------------------------------------------------------------
def _requestData (self, classId, propertyName = None):
! print "DEBUG: Property: requesting %s, %s" % (classId, propertyName)
cond = [["eq", ""], ["field", "gnue_class"], ["const", classId]]
if propertyName:
cond += [["eq", ""], ["field", "gnue_name"], ["const", propertyName]]
! return self._session.find ("gnue_property", cond, ["gnue_name"],
["gnue_module", "gnue_class", "gnue_name",
"gnue_type", "gnue_comment"])
--- 63,82 ----
# Read a list of properties from the datasource
#
---------------------------------------------------------------------------
def _requestData (self, classId, propertyName = None):
! # Special case: if there is already a property with a matching class id
! # we assume all properties of the requesed class are already cached
! for prop in self.values ():
! if prop.gnue_class == classId:
! return []
!
! print "DEBUG: Property: requestData %s, %s" % (classId, propertyName)
cond = [["eq", ""], ["field", "gnue_class"], ["const", classId]]
+
if propertyName:
cond += [["eq", ""], ["field", "gnue_name"], ["const", propertyName]]
! return self.session.find ("gnue_property", cond, ["gnue_name"],
["gnue_module", "gnue_class", "gnue_name",
"gnue_type", "gnue_comment"])
***************
*** 71,79 ****
#
---------------------------------------------------------------------------
def _module_from_cache (self, item):
for module in self.modules.values ():
! if module.id == item.gnue_module:
return module
! raise EBadReference (item.name, "gnue_module")
#
---------------------------------------------------------------------------
--- 91,99 ----
#
---------------------------------------------------------------------------
def _module_from_cache (self, item):
for module in self.modules.values ():
! if module.gnue_id == item.gnue_module:
return module
! raise EBadReference (item.gnue_name, "gnue_module")
#
---------------------------------------------------------------------------
***************
*** 89,95 ****
# since we had no match in the cache ask for it
print "DEBUG: Property: REFETCH: %s, %s" % (self.klass.fullName, name)
! res = self._requestData (self.klass.id, name)
if len (res) == 1:
self._updateCache (res)
--- 109,115 ----
# since we had no match in the cache ask for it
print "DEBUG: Property: REFETCH: %s, %s" % (self.klass.fullName, name)
! res = self._requestData (self.klass.gnue_id, name)
if len (res) == 1:
self._updateCache (res)
***************
*** 97,138 ****
raise EPropertyNotFound (self.klass.fullName, name)
- #
---------------------------------------------------------------------------
- # Get the keys
- #
---------------------------------------------------------------------------
- def keys (self):
- return self._cache.keys ()
-
- #
---------------------------------------------------------------------------
- # Get the values
- #
---------------------------------------------------------------------------
- def values (self):
- return self._cache.values ()
-
- #
---------------------------------------------------------------------------
- # Get the (key, value) pairs
- #
---------------------------------------------------------------------------
- def items (self):
- return self._cache.items ()
-
- #
---------------------------------------------------------------------------
- # Return wether the given key exists or not
- #
---------------------------------------------------------------------------
- def has_key (self, name):
- return self._cache.has_key (name)
-
- #
---------------------------------------------------------------------------
- # Get the number of properties in the dictionary
- #
---------------------------------------------------------------------------
- def __len__ (self):
- return len (self._cache)
-
- #
---------------------------------------------------------------------------
- # Get a specific property by name
- #
---------------------------------------------------------------------------
- def __getitem__ (self, name):
- return self.get (name)
-
#
=============================================================================
# A Business Object Property
--- 117,122 ----
***************
*** 148,157 ****
self._object = object
# gnue_property.gnue_name is already a fully qualified identifier
! self.fullName = self.name
#
---------------------------------------------------------------------------
# all unknown attributes are routed to the gnue-namespace
#
---------------------------------------------------------------------------
def __getattr__ (self, attr):
! return getattr (self._object, createName ("gnue", attr))
--- 132,141 ----
self._object = object
# gnue_property.gnue_name is already a fully qualified identifier
! self.fullName = object.gnue_name
#
---------------------------------------------------------------------------
# all unknown attributes are routed to the gnue-namespace
#
---------------------------------------------------------------------------
def __getattr__ (self, attr):
! return getattr (self._object, attr)
Index: gnue/appserver/src/classrep/__init__.py
diff -c gnue/appserver/src/classrep/__init__.py:1.2
gnue/appserver/src/classrep/__init__.py:1.3
*** gnue/appserver/src/classrep/__init__.py:1.2 Sat Mar 8 12:41:53 2003
--- gnue/appserver/src/classrep/__init__.py Tue May 27 10:30:57 2003
***************
*** 19,42 ****
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: __init__.py,v 1.2 2003/03/08 17:41:53 jvetter Exp $
from Module import *
from Class import *
from Namespace import *
! Modules = None
! Classes = None
#
-----------------------------------------------------------------------------
# find a class in the class repository
#
-----------------------------------------------------------------------------
def findClass (className, session):
! global Modules, Classes
! if not Modules:
! Modules = ModuleDict (session)
! if not Classes:
! Classes = ClassDict (session, Modules)
! return Classes [className]
--- 19,53 ----
# write to the Free Software Foundation, Inc., 59 Temple Place
# - Suite 330, Boston, MA 02111-1307, USA.
#
! # $Id: __init__.py,v 1.3 2003/05/27 14:30:57 jvetter Exp $
from Module import *
from Class import *
from Namespace import *
+ from Definition import *
! _CRDefinition = None
! _CRModules = None
! _CRClasses = None
!
! #
-----------------------------------------------------------------------------
! # load a class repository definition from file
! #
-----------------------------------------------------------------------------
! def loadDefinition (fileName):
! global _CRDefinition
! _CRDefinition = RepositoryDefinition (fileName)
! return _CRDefinition
#
-----------------------------------------------------------------------------
# find a class in the class repository
#
-----------------------------------------------------------------------------
def findClass (className, session):
! global _CRModules, _CRClasses, _CRDefinition
!
! if not _CRModules:
! _CRModules = ModuleDict (session, _CRDefinition)
! if not _CRClasses:
! _CRClasses = ClassDict (session, _CRModules)
! return _CRClasses [className]
Index: gnue/appserver/src/classrep/ctest.py
diff -c gnue/appserver/src/classrep/ctest.py:1.1
gnue/appserver/src/classrep/ctest.py:1.2
*** gnue/appserver/src/classrep/ctest.py:1.1 Mon Feb 24 11:46:02 2003
--- gnue/appserver/src/classrep/ctest.py Tue May 27 10:30:57 2003
***************
*** 1,35 ****
from language import Session
! from classrep import Class
sess = Session.newSession ("hacker", "secret")
- cls = Class.ClassDict (sess)
! print
! print 'Class "person":'
! c = cls ["person"]
! print c.name + ": " + c.comment
! c = cls ["module"]
! print c.name + ": " + c.comment
! print
! print "Number of classes: %d" % len (cls)
! print
! print "All classes via keys ():"
! for k in cls.keys ():
! c = cls [k]
! print k + ": " + c.comment
! print
! print "All classes via values ():"
! for c in cls.values ():
! print c.name + ": " + c.comment, ";", c.module
! print
! print "All classes via items ():"
! for i in cls.items ():
! print i
print
! print 'Is there a class "person": %d' % cls.has_key ("person")
! print 'Is there a class "foo": %d' % cls.has_key ("foo")
--- 1,58 ----
from language import Session
! from classrep import *
sess = Session.newSession ("hacker", "secret")
! Modules = ModuleDict (sess)
! Classes = ClassDict (sess, Modules)
! print "\nRequesting module 'address' ..."
! addr = Modules ['address']
! print " %s: %s" % (addr.gnue_name, addr.gnue_comment)
! print " Full name: %s\n" % addr.fullName
! print "Number of classes in ClassDict: %d\n" % len (Classes)
! print "Requesting class 'address_person':"
! klass = Classes ['address_person']
!
! print " %s: %s" % (klass.gnue_name, klass.gnue_comment)
! print " Full name: %s\n" % klass.fullName
!
! print "Number of classes in ClassDict: %d\n" % len (Classes)
!
! print "Number of properties in '%s': %d" % (klass.gnue_name,
! len (klass.properties))
!
! for p in klass.properties.keys ():
! print p
!
! print "Has class 'address_dummy' : %d" % Classes.has_key ('address_dummy')
! print "Has class 'address_person': %d" % Classes.has_key ('address_person')
print
! print "Requesting class 'gnue_module' :"
! gmodule = Classes ['gnue_module']
! print " %s: %s\n" % (gmodule.gnue_name, gmodule.gnue_comment)
! print "Number of classes in ClassDict: %d\n" % len (Classes)
!
! print "gnue_module: findProp gnue_name"
! x = gmodule.findProp ("gnue_name")
! print "Property 'gnue_name':", x.gnue_name, "is", x.gnue_type, ":", \
! x.gnue_comment
! print " Full Name:", x.fullName
!
! print "\n------- listing contents\n"
!
! print "by keys ():"
! for key in Classes.keys ():
! print "Key:", key
!
! print "\nby values ():"
! for val in Classes.values ():
! print "Val:", val.gnue_name
!
! print "\nas tuple:"
! for tup in Classes.items ():
! print "Item:", tup
Index: gnue/appserver/src/classrep/dtest.py
diff -c gnue/appserver/src/classrep/dtest.py:1.1
gnue/appserver/src/classrep/dtest.py:1.2
*** gnue/appserver/src/classrep/dtest.py:1.1 Sat Mar 8 12:41:53 2003
--- gnue/appserver/src/classrep/dtest.py Tue May 27 10:30:57 2003
***************
*** 1,21 ****
from language import Session
import classrep
sess = Session.newSession ("hacker", "secret")
print "Requesting class 'address_person'\n"
# -------------
klass = classrep.findClass ("address_person", sess)
! print "Name = %s, Comment = %s, Fullname = %s\n" % (klass.name,
! klass.comment, klass.fullName)
print "Number of properties in class: %d" % len (klass.properties)
for p in klass.properties.keys ():
pObj = klass.properties [p]
! print "Property %s: %s (%s)" % (pObj.name, pObj.type, pObj.comment)
klass = classrep.findClass ("gnue_module", sess)
print "Number of properties in %s: %d" % (klass.fullName,
--- 1,30 ----
from language import Session
import classrep
+ from Definition import *
sess = Session.newSession ("hacker", "secret")
+ crdef = RepositoryDefinition ('classrep/classrepository.ini')
+ classrep.Definition = crdef
+
+ print "Requesting class 'gnue_property'\n"
+ klass = classrep.findClass ("gnue_property", sess)
+
+ print "\n"
print "Requesting class 'address_person'\n"
# -------------
klass = classrep.findClass ("address_person", sess)
! print "Name = %s, Comment = %s, Fullname = %s\n" % (klass.gnue_name,
! klass.gnue_comment, klass.fullName)
print "Number of properties in class: %d" % len (klass.properties)
for p in klass.properties.keys ():
pObj = klass.properties [p]
! print "Property %s: %s (%s)" % (pObj.gnue_name, pObj.gnue_type,
! pObj.gnue_comment)
klass = classrep.findClass ("gnue_module", sess)
print "Number of properties in %s: %d" % (klass.fullName,
***************
*** 29,49 ****
klass = classrep.findClass ("address_person", sess)
! print "Name = %s, Comment = %s, Fullname = %s\n" % (klass.name,
! klass.comment, klass.fullName)
print "Number of properties in class: %d" % len (klass.properties)
for p in klass.properties.keys ():
pObj = klass.properties [p]
! print "Property %s: %s (%s)" % (pObj.name, pObj.type, pObj.comment)
# ---- gnue_*
print "Fetching gnue_class :)"
gclass = classrep.findClass ("gnue_class", sess)
! print "Name = %s (full:%s) Comment = %s" % (gclass.name, gclass.fullName,
! gclass.comment)
print "Number of properties: %d" % len (gclass.properties)
--- 38,59 ----
klass = classrep.findClass ("address_person", sess)
! print "Name = %s, Comment = %s, Fullname = %s\n" % (klass.gnue_name,
! klass.gnue_comment, klass.fullName)
print "Number of properties in class: %d" % len (klass.properties)
for p in klass.properties.keys ():
pObj = klass.properties [p]
! print "Property %s: %s (%s)" % (pObj.gnue_name, pObj.gnue_type,
! pObj.gnue_comment)
# ---- gnue_*
print "Fetching gnue_class :)"
gclass = classrep.findClass ("gnue_class", sess)
! print "Name = %s (full:%s) Comment = %s" % (gclass.gnue_name, gclass.fullName,
! gclass.gnue_comment)
print "Number of properties: %d" % len (gclass.properties)
Index: gnue/appserver/src/classrep/test.py
diff -c gnue/appserver/src/classrep/test.py:1.2
gnue/appserver/src/classrep/test.py:1.3
*** gnue/appserver/src/classrep/test.py:1.2 Mon Feb 24 11:44:34 2003
--- gnue/appserver/src/classrep/test.py Tue May 27 10:30:57 2003
***************
*** 1,30 ****
from language import Session
! from classrep import Module
sess = Session.newSession ("hacker", "secret")
! mod = Module.ModuleDict (sess)
! print
! print 'Module "address":'
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)
-
- print
print "All modules via keys ():"
for k in mod.keys ():
m = mod [k]
! print k + ": " + m.comment
print
print "All modules via values ():"
--- 1,23 ----
from language import Session
! from classrep import *
sess = Session.newSession ("hacker", "secret")
! mod = ModuleDict (sess)
! print '\nModule "address":'
m = mod ["address"]
! print "%s: %s\n" % (m.name, m.comment)
! print "Classes in 'address':"
! for k in m.classes.keys ():
! print k
! print "Number of modules: %d\n" % len (mod)
print "All modules via keys ():"
for k in mod.keys ():
m = mod [k]
! print k, ":", m.comment
print
print "All modules via values ():"
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnue/appserver/src/classrep Class.py Module.py ...,
Johannes Vetter <=