Beispiel #1
0
class RequestHeader(m.Message):
    magic = m.Byte(default=0xA0)
    id = m.Uvarlong()
    version = m.Byte(default=25)
    op = m.Byte()
    cname = m.String(optional=True)
    flags = m.Uvarint(default=0)
    ci = m.Byte(default=ClientIntelligence.BASIC)
    t_id = m.Uvarint(default=0)
Beispiel #2
0
class PutRequest(Request):
    OP_CODE = 0x01
    key = m.Varbytes()
    tunits = m.SplitByte(default=[TimeUnits.DEFAULT, TimeUnits.DEFAULT])
    lifespan = m.Uvarint(default=10, condition=lambda s: s.tunits[0] not in
                         [TimeUnits.DEFAULT, TimeUnits.INFINITE])
    max_idle = m.Uvarint(default=10, condition=lambda s: s.tunits[1] not in
                         [TimeUnits.DEFAULT, TimeUnits.INFINITE])
    value = m.Varbytes()
Beispiel #3
0
class ReplaceIfUnmodifiedRequest(Request):
    OP_CODE = 0x09
    key = m.Varbytes()
    tunits = m.SplitByte(default=[TimeUnits.DEFAULT, TimeUnits.DEFAULT])
    lifespan = m.Uvarint(default=10, condition=lambda s: s.tunits[0] not in
                         [TimeUnits.DEFAULT, TimeUnits.INFINITE])
    max_idle = m.Uvarint(default=10, condition=lambda s: s.tunits[1] not in
                         [TimeUnits.DEFAULT, TimeUnits.INFINITE])
    version = m.Bytes(8)
    value = m.Varbytes()
Beispiel #4
0
class GetWithMetadataResponse(Response):
    OP_CODE = 0x1C
    flag = m.Byte(condition=lambda s: s.header.status == Status.OK)
    created = m.Long(condition=lambda s:
                     s.header.status == Status.OK and not(s.flag & 0x01))
    lifespan = m.Uvarint(condition=lambda s:
                         s.header.status == Status.OK and not(s.flag & 0x01))
    last_used = m.Long(condition=lambda s:
                       s.header.status == Status.OK and not(s.flag & 0x02))
    max_idle = m.Uvarint(condition=lambda s:
                         s.header.status == Status.OK and not(s.flag & 0x02))
    version = m.Bytes(8, condition=lambda s: s.header.status == Status.OK)
    value = m.Varbytes(condition=lambda s: s.header.status == Status.OK)
Beispiel #5
0
class TopologyChangeHeader(m.Message):
    id = m.Uvarint()
    n = m.Uvarint()
    hosts = m.List(of=Host, size=lambda s: s.n)
Beispiel #6
0
class StatsResponse(Response):
    OP_CODE = 0x16
    n = m.Uvarint()
    stats = m.List(of=Stat, size=lambda s: s.n)