Example #1
0
 def _create_sessionid(self):
     rand = os.urandom(16)
     now = time.time()
     secret_key = self.config.secret_key
     session_id = sha1("%s%s%s%s" % (rand, now, safestr(self.remote_ip), secret_key))
     session_id = session_id.hexdigest()
     return str(session_id).upper() + '|' + self.config.session_version
Example #2
0
 def _create_sessionid(self):
     rand = os.urandom(16)
     now = time.time()
     secret_key = self.config.secret_key
     session_id = sha1("%s%s%s%s" %
                       (rand, now, safestr(self.remote_ip), secret_key))
     session_id = session_id.hexdigest()
     return str(session_id).upper() + '|' + self.config.session_version
Example #3
0
 def query(self, paramstyle=None):
     """
     Returns the query part of the sql query.
         >>> q = SQLQuery(["SELECT * FROM test WHERE name=", SQLParam('joe')])
         >>> q.query()
         'SELECT * FROM test WHERE name=%s'
         >>> q.query(paramstyle='qmark')
         'SELECT * FROM test WHERE name=?'
     """
     s = []
     for x in self.items:
         if isinstance(x, SQLParam):
             x = x.get_marker(paramstyle)
             s.append(safestr(x))
         else:
             x = safestr(x)
             # automatically escape % characters in the query
             # For backward compatability, ignore escaping when the query looks already escaped
             if paramstyle in ['format', 'pyformat']:
                 if '%' in x and '%%' not in x:
                     x = x.replace('%', '%%')
             s.append(x)
     return "".join(s)
Example #4
0
 def query(self, paramstyle=None):
     """
     Returns the query part of the sql query.
         >>> q = SQLQuery(["SELECT * FROM test WHERE name=", SQLParam('joe')])
         >>> q.query()
         'SELECT * FROM test WHERE name=%s'
         >>> q.query(paramstyle='qmark')
         'SELECT * FROM test WHERE name=?'
     """
     s = []
     for x in self.items:
         if isinstance(x, SQLParam):
             x = x.get_marker(paramstyle)
             s.append(safestr(x))
         else:
             x = safestr(x)
             # automatically escape % characters in the query
             # For backward compatability, ignore escaping when the query looks already escaped
             if paramstyle in ['format', 'pyformat']:
                 if '%' in x and '%%' not in x:
                     x = x.replace('%', '%%')
             s.append(x)
     return "".join(s)
Example #5
0
 def get_many(self, keys, version=None):
     """
     Retrieve many keys.
     """
     if not keys:
         return {}
     recovered_data = SortedDict()
     new_keys = list(map(lambda key: self.make_key(key, version=version), keys))
     map_keys = dict(zip(new_keys, keys))
     results = self._client.mget(new_keys)
     for key, value in zip(new_keys, results):
         if value is None:
             continue
         value = self.unpickle(value)
         if isinstance(value, bytes_type):
             value = safestr(value)
         recovered_data[map_keys[key]] = value
     return recovered_data
Example #6
0
 def get_many(self, keys, version=None):
     """
     Retrieve many keys.
     """
     if not keys:
         return {}
     recovered_data = SortedDict()
     new_keys = list(map(lambda key: self.make_key(key, version=version), keys))
     map_keys = dict(zip(new_keys, keys))
     results = self._client.mget(new_keys)
     for key, value in zip(new_keys, results):
         if value is None:
             continue
         value = self.unpickle(value)
         if isinstance(value, bytes_type):
             value = safestr(value)
         recovered_data[map_keys[key]] = value
     return recovered_data
Example #7
0
 def make_key(self, key, version=None):
     # Python 2 memcache requires the key to be a byte string.
     return safestr(super(BaseMemcachedCache, self).make_key(key, version))
Example #8
0
 def __str__(self):
     return safestr(self._str())
Example #9
0
 def __str__(self):
     return safestr(self._key)
Example #10
0
 def make_key(self, key, version=None):
     # Python 2 memcache requires the key to be a byte string.
     return safestr(super(BaseMemcachedCache, self).make_key(key, version))