Class: ConvenientService::Core::Entities::Config::Commands::TrackMethodMissingCommitTrigger
- Inherits:
-
Support::Command
- Object
- Support::Command
- ConvenientService::Core::Entities::Config::Commands::TrackMethodMissingCommitTrigger
- Defined in:
- lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb
Instance Attribute Summary collapse
-
#config ⇒ Object
readonly
Returns the value of attribute config.
-
#trigger ⇒ Object
readonly
Returns the value of attribute trigger.
Instance Method Summary collapse
- #call ⇒ void
- #initialize(config:, trigger:) ⇒ void constructor
- #method_missing_commits_counter_incremented? ⇒ Boolean
- #method_missing_trigger_valid? ⇒ Boolean
- #method_missing_triggers ⇒ Array<ConvenientService::Support::UniqueValue>
Methods inherited from Support::Command
Constructor Details
#initialize(config:, trigger:) ⇒ void
31 32 33 34 |
# File 'lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb', line 31 def initialize(config:, trigger:) @config = config @trigger = trigger end |
Instance Attribute Details
#config ⇒ Object (readonly)
Returns the value of attribute config.
18 19 20 |
# File 'lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb', line 18 def config @config end |
#trigger ⇒ Object (readonly)
Returns the value of attribute trigger.
24 25 26 |
# File 'lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb', line 24 def trigger @trigger end |
Instance Method Details
#call ⇒ void
This method returns an undefined value.
39 40 41 42 43 44 |
# File 'lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb', line 39 def call return unless method_missing_trigger_valid? return if method_missing_commits_counter_incremented? ::ConvenientService.raise Exceptions::TooManyCommitsFromMethodMissing.new(config: config) end |
#method_missing_commits_counter_incremented? ⇒ Boolean
56 57 58 |
# File 'lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb', line 56 def method_missing_commits_counter_incremented? Utils.memoize_including_falsy_values(self, :@method_missing_commits_counter_incremented) { config.method_missing_commits_counter.bincrement } end |
#method_missing_trigger_valid? ⇒ Boolean
49 50 51 |
# File 'lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb', line 49 def method_missing_trigger_valid? method_missing_triggers.any?(trigger) end |
#method_missing_triggers ⇒ Array<ConvenientService::Support::UniqueValue>
63 64 65 66 67 68 |
# File 'lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb', line 63 def method_missing_triggers @method_missing_triggers ||= [ Constants::Triggers::INSTANCE_METHOD_MISSING, Constants::Triggers::CLASS_METHOD_MISSING ] end |