+
+class response(dispatch.restart):
+ charset = "utf-8"
+ doctype = None
+ formatter = indenter
+
+ def __init__(self, root):
+ super().__init__()
+ self.root = root
+
+ @property
+ def ctype(self):
+ raise Exception("a subclass of wrw.sp.util.response must override ctype")
+
+ def handle(self, req):
+ req.ohead["Content-Type"] = self.ctype
+ return [self.formatter.format(self.root, doctype=self.doctype, charset=self.charset)]