Sha256: cb1481c3c3a7c10500a3182a066d17c05621242ca2f7fab78264eee77d86f4e1
Contents?: true
Size: 588 Bytes
Versions: 4
Compression:
Stored size: 588 Bytes
Contents
require 'flipper' module Flipper module Adapters # Public: Adapter that wraps another adapter and raises for any writes. class ReadOnly < Wrapper WRITE_METHODS = %i[add remove clear enable disable] class WriteAttempted < Error def initialize(message = nil) super(message || 'write attempted while in read only mode') end end def read_only? true end private def wrap(method, *args, **kwargs) raise WriteAttempted if WRITE_METHODS.include?(method) yield end end end end
Version data entries
4 entries across 4 versions & 1 rubygems