MiddleKit.Core.Klasses
index
/usr/local/share/webware/MiddleKit/Core/Klasses.py

 
Modules
       
re

 
Classes
       
MiddleKit.Core.ModelObject.ModelObject
Klasses(MiddleKit.Core.ModelObject.ModelObject, UserDict.UserDict)
UserDict.UserDict(MiscUtils.NamedValueAccess.NamedValueAccess)
Klasses(MiddleKit.Core.ModelObject.ModelObject, UserDict.UserDict)

 
class Klasses(MiddleKit.Core.ModelObject.ModelObject, UserDict.UserDict)
    Klasses object can read a list of class specifications in a spreadsheet (.csv).
 
Note that Klasses inherits UserDict, allowing you to access class specifications by name.
 
 
Method resolution order:
Klasses
MiddleKit.Core.ModelObject.ModelObject
UserDict.UserDict
MiscUtils.NamedValueAccess.NamedValueAccess

Methods defined here:
__getstate__(self)
For pickling purposes, the back reference to the model that owns self is removed.
__init__(self, model)
addKlass(self, klass)
Restrictions: Cannot add two classes with the same name.
assignClassIds(self, generator)
awakeFromRead(self, model)
Performs further initialization.
Expected to be invoked by the model.
classNames(self)
debugString(self)
dump(self)
Prints each class.
filename(self)
initTypeMap(self)
Initializes self._typeNamesToAttrClassNames which maps MiddleKit type names (like int and enum) to the name of the attribute class that would implement them.
Mapping to class names rather than actual classes is key, because in __init__, a different set of attribute classes can be passed in.
klassesInOrder(self)
Returns a list of all the Klasses in the order they were declared. Do not modify the list.
model(self)
pyClassNameForAttrDict(self, dict)
Given a raw attribute definition (in the form of a dictionary), this method
returns the name of the Python class that should be instantiated for it.
This method relies primarily on dict['Type'].
read(self, filename)
setting(self, name, default=<class MiscUtils.NoDefault at 0x832da1c>)
Returns the value of a particular configuration setting taken
from the model.

Methods inherited from MiddleKit.Core.ModelObject.ModelObject:
printAttrs(self, out=None)

Methods inherited from UserDict.UserDict:
__cmp__(self, dict)
__contains__(self, key)
__delitem__(self, key)
__getitem__(self, key)
__len__(self)
__repr__(self)
__setitem__(self, key, item)
clear(self)
copy(self)
get(self, key, failobj=None)
hasValueForKey = _UserDict_hasValueForKey(self, key)
has_key(self, key)
items(self)
iteritems(self)
iterkeys(self)
itervalues(self)
keys(self)
pop(self, key, *args)
popitem(self)
setdefault(self, key, failobj=None)
update(self, dict=None, **kwargs)
valueForKey = _UserDict_valueForKey(self, key, default=<class MiscUtils.NoDefault at 0x832da1c>)
values(self)

Class methods inherited from UserDict.UserDict:
fromkeys(cls, iterable, value=None) from __builtin__.classobj

Methods inherited from MiscUtils.NamedValueAccess.NamedValueAccess:
handleUnknownSetKey(self, key)
hasValueForName(self, keysString)
Check whether name is available.
resetKeyBindings(self)
Rest all key bindings, releasing alreaedy referenced values.
setValueForKey(self, key, value)
Set value for a given key.
 
Suppose key is 'foo'.
This method sets the value with the following precedence:
        1. Public attributes before private attributes
        2. Methods before non-methods
 
More specifically, this method then uses one of the following:
        @@ 2000-03-04 ce: fill in
 
... or invokes handleUnknownSetKey().
valueForKeySequence(self, listOfKeys, default=None)
Get the value for the given list of keys.
valueForName(self, keysString, default=None)
Get the value for the given keysString.
 
This is the more advanced version of valueForKey(), which can only
handle single names. This method can handle
        'foo', 'foo1.foo2', 'a.b.c.d', etc.
It will traverse dictionaries if needed.
valueForUnknownKey(self, key, default)
valuesForNames(self, keys, default=None, defaults=None, forgive=0, includeNames=0)
Get all values for given names.
 
Returns a list of values that match the given keys, each of which is
passed through valueForName() and so could be of the form 'a.b.c'.
 
keys and defaults are sequences.
default is any kind of object.
forgive and includeNames are flags.
 
If default is not None, then it is substituted when a key is not found.
Otherwise, if defaults is not None, then it's corresponding/parallel
value for the current key is substituted when a key is not found.
Otherwise, if forgive is true, then unknown keys simply don't produce
any values.
Otherwise, if default and defaults are None, and forgive is false,
then the unknown keys will probably raise an exception through
valueForUnknownKey() although that method can always return
a final, default value.
if keys is None, then None is returned.
If keys is an empty list, then None is returned.
Often these last four arguments are specified by key.
Examples:
        names = ['origin.x', 'origin.y', 'size.width', 'size.height']
        obj.valuesForNames(names)
        obj.valuesForNames(names, default=0.0)
        obj.valuesForNames(names, defaults=[0.0, 0.0, 100.0, 100.0])
        obj.valuesForNames(names, forgive=0)
@@ 2000-03-04 ce: includeNames is only supported when forgive=1.
        It should be supported for the other cases.
        It should be documented.
        It should be included in the test cases.

 
Data
        letters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'