Example #1
0
def dumps_version(version,
                  item,
                  buffer_size=None,
                  charset=None,
                  tmp_size=None):
    """
    dump python object into mcpack data buffer
    select a version
    """
    global _default_buffer_size, _default_charset
    buffer_size = buffer_size or _default_buffer_size
    buffer_size += _min_buff_size
    tmp_size = tmp_size or _default_tmp_size
    tmp_size += _min_buff_size
    charset = charset or _default_charset

    assert isinstance(item, dict), 'dumps() can only dump dict item'
    data = _dump_item(item, charset)
    if (data[0] != 'obj'):
        raise Error, 'cannot dump not-obj item to string'

    p = _mcpack.mcpack(version, buffer_size, tmp_size)
    for key, value in data[1].iteritems():
        p[key] = value
    p.pack()
    p.close()
    return p.getPack()
Example #2
0
def loads (data, use_unicode = False, charset = None):
    """load python object from mcpack data buffer"""
    
    global _default_charset
    charset = charset or _default_charset
    
    p = _mcpack.mcpack(_default_version, len(data) + 8, _default_tmp_size)
    """set Pack decide the mcpack version"""
    p.setPack(data)
    p.parse()
    return _load_item(('obj', p.getdict()),
                      use_unicode, charset)
Example #3
0
def loads(data, use_unicode=False, charset=None):
    """load python object from mcpack data buffer"""

    global _default_charset
    charset = charset or _default_charset

    p = _mcpack.mcpack(mcpackv1,
                       len(data) + _min_buff_size,
                       _default_tmp_size + _min_buff_size)
    """set Pack decide the mcpack version"""
    p.setPack(data)
    p.parse()
    return _load_item(('obj', p.getdict()), use_unicode, charset)
Example #4
0
def dumps (item, buffer_size = None, charset = None, tmp_size = None):
    """
    dump python object into mcpack data buffer
    """
    global _default_buffer_size, _default_charset,_default_version
    buffer_size = buffer_size or _default_buffer_size
    tmp_size = tmp_size or _default_tmp_size
    charset = charset or _default_charset

    assert isinstance(item, dict), 'dumps() can only dump dict item'
    data = _dump_item(item, charset)
    if (data[0] != 'obj'):
        raise Error, 'cannot dump not-obj item to string'

    p = _mcpack.mcpack(_default_version, buffer_size, tmp_size)
    for key, value in data[1].iteritems():
        p[key] = value
    p.pack()
    p.close()
    return p.getPack()