Sha256: 1352c4d16dae6d928944ba70f8808ca4e7df4a5467f10cfc9b1ff5cf6ae128f8
Contents?: true
Size: 1.31 KB
Versions: 1
Compression:
Stored size: 1.31 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_class, use_case_parameters, use_case_result, use_case_target) @use_case_class = use_case_class @use_case_parameters = use_case_parameters @use_case_result = use_case_result @use_case_target = use_case_target 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
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
clean-architecture-0.2.0 | lib/clean_architecture/entities/use_case_history_entry.rb |