Server IP : 192.158.238.246 / Your IP : 3.16.149.93 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/alt/python37/lib/python3.7/site-packages/beaker/ext/__pycache__/ |
Upload File : |
B ��[� � @ s� d dl Z d dlZd dlZd dlZyd dlZW n ek rD dZY nX d dlmZ d dlm Z d dl mZmZ d dl mZ d dlmZmZ G dd� de�ZG d d � d e �ZdS )� N)�NamespaceManager)�SynchronizerImpl)�SyncDict�machine_identifier)�sha1)�string_type�PY2c s~ e Zd ZdZdZe� Zd� fdd� Zdd� Zdd � Z d d� Z dd � Zdd� Zddd�Z dd� Zdd� Zdd� Zdd� Z� ZS )�RedisNamespaceManageraz Provides the :class:`.NamespaceManager` API over Redis. Provided ``url`` can be both a redis connection string or an already existing StrictRedis instance. The data will be stored into redis keys, with their name starting with ``beaker_cache:``. So make sure you provide a specific database number if you don't want to mix them with your own data. i Nc sX t t| ��|� d | _|| _td kr,td��t|t�rNtj � |tjj|�| _ n|| _ d S )Nzredis is not available)�superr �__init__Zlock_dir�timeout�redis�RuntimeError� isinstancer �clients�get�StrictRedis�from_url�client)�self� namespace�urlr �kw)� __class__� �C/opt/alt/python37/lib/python3.7/site-packages/beaker/ext/redisnm.pyr ! s zRedisNamespaceManager.__init__c C s` t |t�s|�d�}t|�| jt| j� td� d krRtsF|�d�}t|�� � }d| j|f S )N�asciiz beaker_cache:� zutf-8zbeaker_cache:%s:%s) r �str�decode�len�MAX_KEY_LENGTHr r �encoder � hexdigest)r �keyr r r �_format_key. s $ z!RedisNamespaceManager._format_keyc C s t | �|�| j�S )N)�RedisSynchronizerr% r )r r$ r r r �get_creation_lock7 s z'RedisNamespaceManager.get_creation_lockc C s, | j �| �|��}|d kr"t|��t�|�S )N)r r r% �KeyError�pickle�loads)r r$ �entryr r r �__getitem__: s z!RedisNamespaceManager.__getitem__c C s | j �| �|��S )N)r �existsr% )r r$ r r r �__contains__@ s z"RedisNamespaceManager.__contains__c C s || kS )Nr )r r$ r r r �has_keyC s zRedisNamespaceManager.has_keyc C s^ t �|�}|d kr"| jd k r"| j}|d k rF| j�| �|�t|�|� n| j�| �|�|� d S )N)r) �dumpsr r Zsetexr% �int�set)r r$ �valueZ expiretimer r r � set_valueF s zRedisNamespaceManager.set_valuec C s | � ||� d S )N)r4 )r r$ r3 r r r �__setitem__O s z!RedisNamespaceManager.__setitem__c C s | j �| �|�� d S )N)r �deleter% )r r$ r r r �__delitem__R s z!RedisNamespaceManager.__delitem__c C s"