...
1from typing import TYPE_CHECKING
2
3from ..config import Config
4from .irfilter import IRFilter
5
6if TYPE_CHECKING:
7 from .ir import IR # pragma: no cover
8
9
10class IRGzip(IRFilter):
11 def __init__(
12 self,
13 ir: "IR",
14 aconf: Config,
15 rkey: str = "ir.gzip",
16 name: str = "ir.gzip",
17 kind: str = "IRGzip",
18 **kwargs
19 ) -> None:
20
21 super().__init__(ir=ir, aconf=aconf, rkey=rkey, kind=kind, name=name, **kwargs)
22
23 def setup(self, ir: "IR", aconf: Config) -> bool:
24 self["memory_level"] = self.pop("memory_level", None)
25 self["content_length"] = self.pop("min_content_length", None)
26 self["compression_level"] = self.pop("compression_level", None)
27 self["compression_strategy"] = self.pop("compression_strategy", None)
28 self["window_bits"] = self.pop("window_bits", None)
29 self["content_type"] = self.pop("content_type", [])
30 self["disable_on_etag_header"] = self.pop("disable_on_etag_header", None)
31 self["remove_accept_encoding_header"] = self.pop("remove_accept_encoding_header", None)
32
33 return True
View as plain text