Class: Textus::Application::Context
- Inherits:
-
Object
- Object
- Textus::Application::Context
- Defined in:
- lib/textus/application/context.rb
Instance Attribute Summary collapse
-
#correlation_id ⇒ Object
readonly
Returns the value of attribute correlation_id.
-
#role ⇒ Object
readonly
Returns the value of attribute role.
-
#store ⇒ Object
readonly
Returns the value of attribute store.
Instance Method Summary collapse
- #can_read?(zone) ⇒ Boolean
- #can_write?(zone) ⇒ Boolean
- #dry_run? ⇒ Boolean
-
#initialize(store:, role:, correlation_id: nil, clock: Time, dry_run: false) ⇒ Context
constructor
A new instance of Context.
- #now ⇒ Object
- #with_role(new_role) ⇒ Object
Constructor Details
#initialize(store:, role:, correlation_id: nil, clock: Time, dry_run: false) ⇒ Context
Returns a new instance of Context.
8 9 10 11 12 13 14 15 |
# File 'lib/textus/application/context.rb', line 8 def initialize(store:, role:, correlation_id: nil, clock: Time, dry_run: false) @store = store @role = role.to_s @correlation_id = correlation_id || SecureRandom.uuid @clock = clock @dry_run = dry_run @now = nil end |
Instance Attribute Details
#correlation_id ⇒ Object (readonly)
Returns the value of attribute correlation_id.
6 7 8 |
# File 'lib/textus/application/context.rb', line 6 def correlation_id @correlation_id end |
#role ⇒ Object (readonly)
Returns the value of attribute role.
6 7 8 |
# File 'lib/textus/application/context.rb', line 6 def role @role end |
#store ⇒ Object (readonly)
Returns the value of attribute store.
6 7 8 |
# File 'lib/textus/application/context.rb', line 6 def store @store end |
Instance Method Details
#can_read?(zone) ⇒ Boolean
29 30 31 |
# File 'lib/textus/application/context.rb', line 29 def can_read?(zone) store.manifest.(zone.to_s).allows_read?(role) end |
#can_write?(zone) ⇒ Boolean
25 26 27 |
# File 'lib/textus/application/context.rb', line 25 def can_write?(zone) store.manifest.(zone.to_s).allows_write?(role) end |
#dry_run? ⇒ Boolean
21 22 23 |
# File 'lib/textus/application/context.rb', line 21 def dry_run? @dry_run end |
#now ⇒ Object
17 18 19 |
# File 'lib/textus/application/context.rb', line 17 def now @now ||= @clock.now end |
#with_role(new_role) ⇒ Object
33 34 35 36 37 38 39 40 41 |
# File 'lib/textus/application/context.rb', line 33 def with_role(new_role) self.class.new( store: @store, role: new_role, correlation_id: @correlation_id, clock: @clock, dry_run: @dry_run, ) end |