code: def global_request_interceptor(self):
          # type: () -> Callable
          
          def wrapper(process_func):
              if not callable(process_func):
                  raise SkillBuilderException(
                      "Global Request Interceptor process_func input parameter "
                      "should be callable")
  
              class_attributes = {
                  "process": lambda self, handler_input: process_func(
                      handler_input)
              }
  
              request_interceptor = type(
                  "RequestInterceptor{}".format(
                      process_func.__name__.title().replace("_", "")),
                  (AbstractRequestInterceptor,), class_attributes)
  
              self.add_global_request_interceptor(
                  request_interceptor=request_interceptor())
          return wrapper
docs: Decorator that can be used to add global request
          interceptors easily to the builder.
  
          The returned wrapper function can be applied as a decorator on
          any function that processes the input. The function should
          follow the signature of the process function in
          :py:class:`ask_sdk_runtime.dispatch_components.request_components.AbstractRequestInterceptor`
          class.
  
          :return: Wrapper function that can be decorated on a
              interceptor process function.