CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface Class Reference
Inheritance diagram for Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface:

Public Member Functions

def __getattr__ (self, attr)
 
def __init__ (self, object, accessor, throwAttributeErrors=True)
 
def runScript (self, script)
 

Private Attributes

 _accessor
 
 _object
 
 _throwAttributeErrors
 

Detailed Description

This class gives a comfortable Interface to objects accessible via an accessor.

Given the object and the accessor all properties and attributes of the object and
the accessor are accessible via __getattr__. A script in which all attributes
of the objects can be accessed can be run. 

Definition at line 77 of file BasicDataAccessor.py.

Constructor & Destructor Documentation

def Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface.__init__ (   self,
  object,
  accessor,
  throwAttributeErrors = True 
)

Definition at line 84 of file BasicDataAccessor.py.

84  def __init__(self, object, accessor, throwAttributeErrors=True):
85  self._object = object
86  self._accessor = accessor
87  self._throwAttributeErrors=throwAttributeErrors
88 
def __init__(self, object, accessor, throwAttributeErrors=True)

Member Function Documentation

def Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface.__getattr__ (   self,
  attr 
)

Definition at line 89 of file BasicDataAccessor.py.

References Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface._accessor, Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface._object, and Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface._throwAttributeErrors.

Referenced by VarParsing.VarParsing.setType().

89  def __getattr__(self, attr):
90  if attr in [p[1] for p in self._accessor.properties(self._object)]:
91  return self._accessor.propertyValue(self._object, attr)
92  elif hasattr(self._object, attr):
93  return getattr(self._object, attr)
94  elif hasattr(self._accessor, attr):
95  return getattr(self._accessor, attr)(self._object)
96  else:
97  if self._throwAttributeErrors:
98  raise AttributeError("object has no property '" + attr + "'")
99  else:
100  return "???"
101 
def Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface.runScript (   self,
  script 
)

Definition at line 102 of file BasicDataAccessor.py.

References str.

102  def runScript(self, script):
103  object = self
104  exec("result=" + str(script))
105  return result

Member Data Documentation

Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface._accessor
private
Vispa.Share.BasicDataAccessor.BasicDataAccessorInterface._throwAttributeErrors
private