Skip to content

Instantly share code, notes, and snippets.

@adamcooper
adamcooper / example_controller.rb
Last active August 29, 2015 13:56
Sample Service Base Class and Result Class
class UserController < ActionController::Base
def new
@user = User.new
end
def create
result = SignupUser.call(params[:user])
if result.successful?
redirect_to root_url, notice: "A welcome e-mail is on it's way!"
class TennisGame
def player_one_scores
end
def player_two_scores
end
def score
"Love All"
@adamcooper
adamcooper / _grade_students.rb
Last active August 29, 2015 13:56
Students and Courses
class GradeStudents
def self.call(teacher_name, course_name, grade_list)
course = CourseRegistry.lookup(course_name)
teacher = TeacherRegistry.lookup(teacher_name)
course.for_each_student do |student|
if grade = grade_list[student.name]
student.complete_course(course, grade)
end
end
end
class Course
attr_accessor :title, :location
def initialize(params = {}); end
def add_teacher(teacher); end
def add_student(student); end
def for_each_student; end
private
attr_accessor :teachers, :students