diff options
| author | Yuval Adam <_@yuv.al> | 2018-03-28 23:52:52 +0200 |
|---|---|---|
| committer | Yuval Adam <_@yuv.al> | 2018-04-02 11:16:06 +0300 |
| commit | aca380284ca619cd08ede20bc204e9d03a5409c5 (patch) | |
| tree | 61c290443c900c5087daa1ae0f49a14ea7ad239a | |
| parent | bfc9b7a416450e72b6309fcaf41ec102f7dc2901 (diff) | |
Name cleanup
| -rw-r--r-- | viewstate/parse.py | 20 | ||||
| -rw-r--r-- | viewstate/viewstate.py | 5 |
2 files changed, 13 insertions, 12 deletions
diff --git a/viewstate/parse.py b/viewstate/parse.py index 5b4aa55..3c213ca 100644 --- a/viewstate/parse.py +++ b/viewstate/parse.py @@ -3,9 +3,9 @@ from datetime import datetime from .exceptions import ViewStateException -class ViewStateParserMeta(type): +class ParserMeta(type): def __init__(cls, name, bases, namespace): - super(ViewStateParserMeta, cls).__init__(name, bases, namespace) + super(ParserMeta, cls).__init__(name, bases, namespace) if not hasattr(cls, 'registry'): cls.registry = {} if hasattr(cls, 'marker'): @@ -13,17 +13,17 @@ class ViewStateParserMeta(type): cls.registry[getattr(cls, 'marker')] = cls -class ViewStateParser(metaclass=ViewStateParserMeta): +class Parser(metaclass=ParserMeta): def parse(self, b): marker, *remain = b try: - return ViewStateParser.registry[marker]().parse(remain) + return Parser.registry[marker]().parse(remain) except KeyError: raise ViewStateException('Unknown marker') -class Const(ViewStateParser): +class Const(Parser): def parse(self, remain): return self.const, remain @@ -46,7 +46,7 @@ def parse_const(b): return CONSTS.get(b, None) -class Integer(ViewStateParser): +class Integer(Parser): marker = 0x02 def parse(self, b): @@ -63,7 +63,7 @@ class Integer(ViewStateParser): return n, b[i:] # overflow -class String(ViewStateParser): +class String(Parser): marker = (0x05, 0x1e) def parse(self, b): @@ -72,7 +72,7 @@ class String(ViewStateParser): s = remain[:n] return s.decode(), remain[n:] -class Enum(ViewStateParser): +class Enum(Parser): marker = 0x0b def parse(self, b): @@ -84,7 +84,7 @@ class Enum(ViewStateParser): final = 'Enum: {}, val: {}'.format(enum, val) return final, remain -class Color(ViewStateParser): +class Color(Parser): marker = 0x0a def parse(self, b): @@ -93,7 +93,7 @@ class Color(ViewStateParser): # Originally reported in https://github.com/yuvadm/viewstate/issues/2 return 'Color: unknown', b[2:] -class Pair(ViewStateParser): +class Pair(Parser): marker = 0x0f def parse(self, b): diff --git a/viewstate/viewstate.py b/viewstate/viewstate.py index c08e011..36c650a 100644 --- a/viewstate/viewstate.py +++ b/viewstate/viewstate.py @@ -2,7 +2,7 @@ from base64 import b64decode, b64encode from binascii import Error as BinAsciiError from .exceptions import ViewStateException -from .parse import ViewStateParser +from .parse import Parser class ViewState(object): @@ -42,7 +42,7 @@ class ViewState(object): if not self.is_valid(): raise ViewStateException('Cannot decode invalid viewstate, bad preamble') - self.decoded, self.remainder = ViewStateParser().parse(self.body) + self.decoded, self.remainder = Parser().parse(self.body) if self.remainder: if len(self.remainder) == 20: @@ -53,4 +53,5 @@ class ViewState(object): self.mac = 'unknown' self.signature = self.remainder + return self.decoded |
