Module: Datadog::AppSec::Contrib::Sinatra::Patcher
- Defined in:
- lib/datadog/appsec/contrib/sinatra/patcher.rb
Overview
Patcher for AppSec on Sinatra
Class Method Summary collapse
Class Method Details
.patch ⇒ Object
113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/datadog/appsec/contrib/sinatra/patcher.rb', line 113 def patch Gateway::Watcher.watch ::Sinatra::Base.singleton_class.prepend(DefaultMiddlewarePatch) ::Sinatra::Base.prepend(DispatchPatch) ::Sinatra::Base.prepend(RoutePatch) ::Sinatra::Base.prepend(Patches::JsonPatch) if patch_json? ::Sinatra::Base.singleton_class.prepend(AppSecSetupPatch) Patcher.instance_variable_set(:@patched, true) end |
.patch_json? ⇒ Boolean
125 126 127 |
# File 'lib/datadog/appsec/contrib/sinatra/patcher.rb', line 125 def patch_json? defined?(::Sinatra::JSON) && ::Sinatra::Base < ::Sinatra::JSON end |
.patched? ⇒ Boolean
105 106 107 |
# File 'lib/datadog/appsec/contrib/sinatra/patcher.rb', line 105 def patched? Patcher.instance_variable_get(:@patched) end |
.target_version ⇒ Object
109 110 111 |
# File 'lib/datadog/appsec/contrib/sinatra/patcher.rb', line 109 def target_version Integration.version end |