```ruby
class PayLoad

  attr_accessor :repository_name, :repository_url, :sha

  def initialize(params)
    @params = params
    # ...
  end

  def commits
    @hook_hash["commits"].map do |commit_hash|
      PayLoadCommit.new(commit_hash)
    end
  end

  def hook_hash
    @hook_hash ||= JSON.parse(params)
  end

end
```