class GfreshPoint::Usecase::BaseUsecase

Attributes

repo[RW]

Public Class Methods

new( repo) click to toggle source
# File lib/gfresh_point/usecase/base_usecase.rb, line 6
def initialize( repo)
  @repo = repo
end

Public Instance Methods

call(request) click to toggle source
# File lib/gfresh_point/usecase/base_usecase.rb, line 10
def call(request)
  if request.success?
    result = execute(request)
    generate_response(result)
  else
    GfreshPoint::ResponseObjects::ResponseFailure.new(GfreshPoint::ResponseObjects::ResponseFailure::PARAMETERS_ERROR, request.errors)
  end
rescue StandardError => e
  GfreshPoint::ResponseObjects::ResponseFailure.new(GfreshPoint::ResponseObjects::ResponseFailure::SYSTEM_ERROR, e.message)
end
execute(request) click to toggle source
# File lib/gfresh_point/usecase/base_usecase.rb, line 25
def execute(request)
  raise "Not impl"
end
generate_response(result) click to toggle source
# File lib/gfresh_point/usecase/base_usecase.rb, line 21
def generate_response(result)
  GfreshPoint::ResponseObjects::ResponseSuccess.new(result)
end