Ejemplo n.º 1
0
 def __getattribute__(self, attr):
     _value = object.__getattribute__(self,attr)
     value = MemObj.__getattribute__(self, attr)
     if attr=="data":
         if not value:
             tablename,pid = self._name.split(':')
             props = {self.pk:int(pid)}
             record = util.GetOneRecordInfo(tablename,props)
             if record:
                 _value.setValue(record)
                 return record
     return value
Ejemplo n.º 2
0
 def getData(self):
     """获取data数据
     """
     data = self.get('data')
     if data:
         return data
     tablename, pk_value = self._name.split(':')
     props = {self._pk: int(pk_value)}
     record = util.GetOneRecordInfo(tablename, props)
     if record:
         self.data = record
         self.insert()
         return self.data
     return None
Ejemplo n.º 3
0
 def getObj(self, pk):
     """
     """
     mm = MMode(self._name + ':%s' % pk, self._pk)
     if not mm.IsEffective():
         return None
     if mm.get('data'):
         return mm
     props = {self._pk: pk}
     record = util.GetOneRecordInfo(self._name, props)
     if not record:
         return None
     mm = MMode(self._name + ':%s' % pk, self._pk, data=record)
     mm.insert()
     return mm
Ejemplo n.º 4
0
    def getObjIncludeDel(self, pk):
        '''根据主键,可以获得mmode对象的实例.\n
        >>> m = madmin.getObj(1)
                            包含缓存中标识了DEL状态的
        '''
        mm = MMode(self._name + ':%s' % pk, self._pk)

        if mm.get('data'):
            return mm
        props = {self._pk: pk}
        record = util.GetOneRecordInfo(self._name, props)
        if not record:
            return None
        mm = MMode(self._name + ':%s' % pk, self._pk, data=record)
        mm.insert()
        return mm
Ejemplo n.º 5
0
 def getObj(self, pk):
     '''根据主键,可以获得mmode对象的实例.\n
     >>> m = madmin.getObj(1)
     '''
     mm = MMode(self._name + ':%s' % pk, self._pk)
     if not mm.IsEffective():
         return None
     if mm.get('data'):
         return mm
     props = {self._pk: pk}
     record = util.GetOneRecordInfo(self._name, props)
     if not record:
         return None
     mm = MMode(self._name + ':%s' % pk, self._pk, data=record)
     mm.insert()
     return mm
Ejemplo n.º 6
0
 def getObj(self, pk):
     """根据主键,可以获得mmode对象的实例.\n
     >>> m = madmin.getObj(1)
     """
     pk = pk.encode('utf-8') if isinstance(pk, unicode) else pk
     mm = MMode(self._name + ':%s' % pk, self._pk)
     if not mm.IsEffective():
         return None
     if mm.get('data'):
         return mm
     props = {self._pk: pk}
     record = util.GetOneRecordInfo(self._name, props)
     if not record:
         return None
     mm.loads(record)
     mm.insert()
     return mm
Ejemplo n.º 7
0
 def getObj(self, pk):
     '''根据主键,可以获得mmode对象的实例.\n
     >>> m = madmin.getObj(1)
     '''
     mm = MMode(self._name + ':%s' % pk,
                self.pk,
                fk=self._fk,
                timeout=self.timeout)
     if mm.get('data'):
         return mm
     props = {self.pk: pk}
     record = util.GetOneRecordInfo(self._name, props)
     if not record:
         return None
     mm = MMode(self._name + ':%s' % pk,
                self.pk,
                data=record,
                fk=self._fk,
                timeout=self.timeout)
     mm.insert()
     return mm
Ejemplo n.º 8
0
 def getObjData(self, pk):
     '''根据主键,可以获得mmode对象的实例的数据.\n
     >>> m = madmin.getObjData(1)
     '''
     mm = MMode(self._name + ':%s' % pk,
                self.pk,
                fk=self._fk,
                timeout=self.timeout)
     if not mm.IsEffective():
         return None
     data = mm.get('data')
     if data:
         return data
     props = {self.pk: pk}
     record = util.GetOneRecordInfo(self._name, props)
     if not record:
         return None
     mm = MMode(self._name + ':%s' % pk,
                self.pk,
                data=record,
                fk=self._fk,
                timeout=self.timeout)
     mm.insert()
     return record