class OpenApiSDK::SDKHooks::Hooks
def after_error(error:, hook_ctx:, response:)
def after_error(error:, hook_ctx:, response:) @after_error_hooks.each do |hook| response = hook.after_error(error: error, hook_ctx: hook_ctx, response: response) end response end
def after_success(hook_ctx:, response:)
def after_success(hook_ctx:, response:) @after_success_hooks.each do |hook| response = hook.after_success(hook_ctx: hook_ctx, response: response) end response end
def before_request(hook_ctx:, request:)
def before_request(hook_ctx:, request:) @before_request_hooks.each do |hook| request = hook.before_request(hook_ctx: hook_ctx, request: request) end request end
def initialize
def initialize @sdk_init_hooks = T.let([], T::Array[AbstractSDKInitHook]) @before_request_hooks = T.let([], T::Array[AbstractBeforeRequestHook]) @after_success_hooks = T.let([], T::Array[AbstractAfterSuccessHook]) @after_error_hooks = T.let([], T::Array[AbstractAfterErrorHook]) Registration.init_hooks self end
def register_after_error_hook(hook)
def register_after_error_hook(hook) @after_error_hooks << hook end
def register_after_success_hook(hook)
def register_after_success_hook(hook) @after_success_hooks << hook end
def register_before_request_hook(hook)
def register_before_request_hook(hook) @before_request_hooks << hook end
def register_sdk_init_hook(hook)
def register_sdk_init_hook(hook) @sdk_init_hooks << hook end
def sdk_init(base_url:, client:)
def sdk_init(base_url:, client:) @sdk_init_hooks.each do |hook| base_url, client = hook.sdk_init(base_url: base_url, client: client) end return base_url, client end