From 9bdc7b496eb357402f0acb5a08b17d00596f4058 Mon Sep 17 00:00:00 2001 From: Konstantin Haase Date: Thu, 8 Oct 2015 18:53:26 +0200 Subject: [PATCH] v3: repository - allow rendering minimal default branch without having to fetch the branch from the branches table --- lib/travis/api/v3/renderer/repository.rb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/travis/api/v3/renderer/repository.rb b/lib/travis/api/v3/renderer/repository.rb index c410235c..d2c0319e 100644 --- a/lib/travis/api/v3/renderer/repository.rb +++ b/lib/travis/api/v3/renderer/repository.rb @@ -9,6 +9,22 @@ module Travis::API::V3 !!model.active end + def default_branch + return model.default_branch if include_default_branch? + { + :@type => 'branch'.freeze, + :@href => Renderer.href(:branch, name: model.default_branch_name, repository_id: id, script_name: script_name), + :@representation => 'minimal'.freeze, + :name => model.default_branch_name + } + end + + def include_default_branch? + return true if include? 'repository.default_branch'.freeze + return true if include.any? { |i| i.start_with? 'branch'.freeze } + return true if included.any? { |i| i.is_a? Models::Branch and i.respository_id == id and i.name == i.default_branch_name } + end + def owner return model.owner if include_owner? owner_href = Renderer.href(owner_type.to_sym, id: model.owner_id, script_name: script_name)