if hasattr(self, '__before__'): self._inspect_call(self.__before__) try: response = self._dispatch_call() if hasattr(self, '__after__'): self._inspect_call(self.__after__) return response finally: if hasattr(self, '__finally__'): self._inspect_call(self.__finally__)