Your IP : 3.144.9.183
�
^
bc @ s� d Z d d l Z e j d d k Z e r6 d d Un d d l Z e j d d k rd d d l Z nz e j d k r� d d l Z n\ d d l Z e j � Z e j � z) e j
d d d
d e �d d l Z Wd e j � X[ e j
Z
d � Z e j d k rd d
l m Z n d d l Z e j Z e j d e j d d d � Z d e j f d � � YZ d e f d � � YZ d d d � � YZ d S( sN Manage shelves of pickled objects using bsddb database files for the
storage.
i����Ni i s from . import dbi i t ignoret messages1 the cPickle module has been removed in Python 3.0t categoryc C s t j | d | �S( Nt protocol( t cPicklet dumps( t objectR ( ( s3 /opt/alt/python27/lib64/python2.7/bsddb/dbshelve.pyt _dumpsD s ( t DictMixini� c C s� t | � t d � k r� | } | d k r6 t j } q� | d k rK d } q� | d k rc t j } q� | d k r{ t j } q� | d k r� t j t j B} q� t j d � n t | � } | j | | | | | � | S( s(
A simple factory function for compatibility with the standard
shleve.py module. It can be used like this, where key is a string
and data is a pickleable object:
from bsddb import dbshelve
db = dbshelve.open(filename)
db[key] = data
db.close()
t t rt rwi t wt ct nsJ flags should be one of 'r', 'w', 'c' or 'n' or use the bsddb.db.DB_* flags( t typet dbt DB_RDONLYt DB_CREATEt DB_TRUNCATEt DBErrort DBShelft open( t filenamet flagst modet filetypet dbenvt dbnamet sflagt d( ( s3 /opt/alt/python27/lib64/python2.7/bsddb/dbshelve.pyR P s t
DBShelveErrorc B s e Z RS( ( t __name__t
__module__( ( ( s3 /opt/alt/python27/lib64/python2.7/bsddb/dbshelve.pyR s s R c B s e Z d Z d d � Z d � Z d � Z d � Z d � Z d � Z d � Z
d d � Z e j
d k ru d � Z n d � Z d
� Z d � Z d d � Z d d � Z d d � Z d d � Z d d � Z d � Z d d d � Z d d d � Z d d d � Z d d � Z RS( s� A shelf to hold pickled objects, built upon a bsddb DB object. It
automatically pickles/unpickles data objects going to/from the DB.
c C s: t j | � | _ t | _ t r- t | _ n d | _ d S( Ni ( R t DBt Truet _closedt HIGHEST_PROTOCOLR ( t selfR ( ( s3 /opt/alt/python27/lib64/python2.7/bsddb/dbshelve.pyt __init__z s
c C s | j � d S( N( t close( R&