Sha256: b42a4f3e08a2825f7fa82bc081f95d24b2104b5619e0194cac78f7a4ef670cae
Contents?: true
Size: 1.3 KB
Versions: 2
Compression:
Stored size: 1.3 KB
Contents
# frozen_string_literal: true require 'dry-monads' require 'dry/matcher/result_matcher' require 'duckface' require 'clean_architecture/interfaces/use_case_history_entry' require 'clean_architecture/matchers/use_case_result' module CleanArchitecture module Entities class UseCaseHistoryEntry implements_interface Interfaces::UseCaseHistoryEntry extend Forwardable def initialize(use_case, use_case_target) @use_case = use_case @use_case_target = use_case_target @use_case_class = @use_case.class @use_case_parameters = @use_case.parameters @use_case_result = @use_case.result end def extra_parameters_hash @use_case_parameters.extra_parameters_hash end def failure_messages Matchers::UseCaseResult.call(@use_case_result) do |matcher| matcher.success { nil } matcher.failure(&:message) end end def prior_target_state @use_case_target.attribute_hash end def succeeded? @use_case_result.success? end def target_identifier @use_case_target.identifier end def use_case_class_name @use_case_class.name end def user_identifier @use_case_parameters.actor.user_identifier end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
clean-architecture-1.0.1 | lib/clean_architecture/entities/use_case_history_entry.rb |
clean-architecture-1.0.0 | lib/clean_architecture/entities/use_case_history_entry.rb |