Exemplo n.º 1
0
class _CookieElement(HeaderElement):

    #RE_TSPECIALS = re.compile(br'[ \(\)<>@,;:\\"\[\]\?=]')
    RE_TSPECIALS = re.compile(br'(?!)')

    def __init__(self, cookie_name, cookie_value, params=None):
        self.cookie_name = Unicode(cookie_name)
        self.cookie_value = Unicode(cookie_value)
        super(_CookieElement, self).__init__(self.value, params)

    @classmethod
    def parse(cls, elementstr):
        value, params = cls.parseparams(elementstr)
        cookie_name, cookie_value, __ = cls.parseparam(value)
        return cls(cookie_name, cookie_value, params)

    @classmethod
    def unescape_key(cls, key):
        key = key.strip()
        if key.lower() in ('httponly', 'secure', 'path', 'domain', 'max-age',
                           'expires'):
            return key.lower()
        return key

    @property
    def value(self):
        return b'%s=%s' % (self.cookie_name.encode('ISO8859-1'),
                           self.cookie_value.encode('ISO8859-1'))

    @value.setter
    def value(self, value):
        self.cookie_name, self.cookie_value, __ = self.parseparam(value)
Exemplo n.º 2
0
class _CookieElement(HeaderElement):

	#RE_TSPECIALS = re.compile(r'[ \(\)<>@,;:\\"\[\]\?=]')
	RE_TSPECIALS = re.compile(r'(?!)')

	def __init__(self, cookie_name, cookie_value, params=None):
		self.cookie_name = Unicode(cookie_name)
		self.cookie_value = Unicode(cookie_value)
		super(_CookieElement, self).__init__(self.value, params)

	@classmethod
	def parse(cls, elementstr):
		value, params = cls.parseparams(elementstr)
		cookie_name, cookie_value, __ = cls.parseparam(value)
		return cls(cookie_name, cookie_value, params)

	@classmethod
	def unescape_key(cls, key):
		key = key.strip()
		if key.lower() in ('httponly', 'secure', 'path', 'domain', 'max-age', 'expires'):
			return key.lower()
		return key

	@property
	def value(self):
		return b'%s=%s' % (self.cookie_name.encode('ISO8859-1'), self.cookie_value.encode('ISO8859-1'))

	@value.setter
	def value(self, value):
		self.cookie_name, self.cookie_value, __ = self.parseparam(value)