'''
Created on Jun 3, 2012

@author: manuel
'''

class MyClass(object):
    '''
    classdocs
    '''
    const1 = 'a'
    const2 = 'b'
    def __init__(self):
        '''
        Constructor
        '''
        print 'in constructor'
        self.__prop1 = None
        self.__prop2 = None
        
    def getProp1(self):
        print 'in getProp1'
        return self.__prop1


    def getProp2(self):
        print 'in getProp2'
        return self.__prop2


    def setProp1(self, value):
        print 'in setProp1'
        self.__prop1 = value


    def setProp2(self, value):
        print 'in setProp2'
        self.__prop2 = value


    def delProp1(self):
        print 'in delProp1'
        del self.__prop1


    def delProp2(self):
        print 'in delProp2'
        del self.__prop2

    _prop1 = property(getProp1, setProp1, delProp1, "_prop1's docstring")
    _prop2 = property(getProp2, setProp2, delProp2, "_prop2's docstring")
    
    def __str__(self):
        val = '';
        val += "object %s\n"%self.__class__
        #val += " prop1: %s  prop2: %s\n"%(self.prop1,self.prop2)
        val += "_prop1: %s _prop2: %s\n"%(self.__prop1,self.__prop2)
        return val

if __name__ == "__main__":
    a = MyClass()
    print a
    print MyClass.const1