diff options
author | James Lopez <james@jameslopez.es> | 2016-06-13 16:12:40 +0200 |
---|---|---|
committer | James Lopez <james@jameslopez.es> | 2016-06-13 16:12:40 +0200 |
commit | f4d762d7c299b245b16169b446472aae71173d96 (patch) | |
tree | 292f5bab30a7ddba4165bd23f3b0ee20054f842a | |
parent | e5cf4cd745514b81e7d12ef36f073823e5cdee96 (diff) | |
download | gitlab-ce-f4d762d7c299b245b16169b446472aae71173d96.tar.gz |
addressing MR feedback, few changes to members mapper
-rw-r--r-- | lib/gitlab/import_export/members_mapper.rb | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/lib/gitlab/import_export/members_mapper.rb b/lib/gitlab/import_export/members_mapper.rb index 13fe68d5408..d2748ee5cb4 100644 --- a/lib/gitlab/import_export/members_mapper.rb +++ b/lib/gitlab/import_export/members_mapper.rb @@ -10,29 +10,18 @@ module Gitlab @project = project @note_member_list = [] - # This needs to run first, as second call would be from generate_map + # This needs to run first, as second call would be from #map # which means project members already exist. ensure_default_member! end def map - @map ||= generate_map - end - - def default_user_id - @user.id - end - - private - - - def generate_map @map ||= begin @exported_members.inject(missing_keys_tracking_hash) do |hash, member| existing_user = User.where(find_project_user_query(member)).first old_user_id = member['user']['id'] - if existing_user && add_user_as_team_member(existing_user, member).persisted? + if existing_user && add_user_as_team_member(existing_user, member) hash[old_user_id] = existing_user.id end hash @@ -40,10 +29,16 @@ module Gitlab end end + def default_user_id + @user.id + end + + private + def missing_keys_tracking_hash Hash.new do |_, key| @note_member_list << key - @user.id + default_user_id end end @@ -54,7 +49,7 @@ module Gitlab def add_user_as_team_member(existing_user, member) member['user'] = existing_user - ProjectMember.create(member_hash(member)) + ProjectMember.create(member_hash(member)).persisted? end def member_hash(member) |