Class: RestMyCase::Trial::Court

Inherits:
Struct
  • Object
show all
Defined in:
lib/rest_my_case/trial/court.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#context_classObject

Returns the value of attribute context_class

Returns:

  • (Object)

    the current value of context_class



3
4
5
# File 'lib/rest_my_case/trial/court.rb', line 3

def context_class
  @context_class
end

#defense_attorney_classObject

Returns the value of attribute defense_attorney_class

Returns:

  • (Object)

    the current value of defense_attorney_class



3
4
5
# File 'lib/rest_my_case/trial/court.rb', line 3

def defense_attorney_class
  @defense_attorney_class
end

#judge_classObject

Returns the value of attribute judge_class

Returns:

  • (Object)

    the current value of judge_class



3
4
5
# File 'lib/rest_my_case/trial/court.rb', line 3

def judge_class
  @judge_class
end

#last_ancestorObject

Returns the value of attribute last_ancestor

Returns:

  • (Object)

    the current value of last_ancestor



3
4
5
# File 'lib/rest_my_case/trial/court.rb', line 3

def last_ancestor
  @last_ancestor
end

Instance Method Details

#execute(use_case_classes, attributes = {}) ⇒ Object



7
8
9
10
11
12
13
14
15
16
# File 'lib/rest_my_case/trial/court.rb', line 7

def execute(use_case_classes, attributes = {})
  trial_case = Case.new \
    last_ancestor, context_class, use_case_classes, attributes

  defense_attorney_class.new(trial_case).build_case_for_the_defendant

  judge_class.new(trial_case).determine_the_sentence

  trial_case
end