Class: StoryCopy

Inherits:
ObjectCopy show all
Defined in:
lib/translate/copy/story_copy.rb

Instance Method Summary collapse

Methods inherited from ObjectCopy

#copy, #excluded_attributes, #fetch_object, #fetch_project, #initialize, #remember, #user_exists?

Constructor Details

This class inherits a constructor from ObjectCopy

Instance Method Details

#copy_children(new_workspace) ⇒ Object



39
40
41
42
43
# File 'lib/translate/copy/story_copy.rb', line 39

def copy_children(new_workspace)
  @object.cards.first.tasks.values.flatten.each do |task|
    task.copy(new_workspace, :work_product => @new_object)
  end if !@object.cards.nil? && !@object.cards.first.tasks.nil?
end

#create_object(rally_rest, values) ⇒ Object



35
36
37
# File 'lib/translate/copy/story_copy.rb', line 35

def create_object(rally_rest, values)
  rally_rest.create(:hierarchical_requirement, values)
end

#find_project_in_new_workspace(new_workspace) ⇒ Object



25
26
27
28
29
30
31
32
33
# File 'lib/translate/copy/story_copy.rb', line 25

def find_project_in_new_workspace(new_workspace)
  if @object.cards.nil?
    return super
  elsif @object.cards.first.project.nil?
    return super 
  else
    fetch_project(@object.cards.first.project.name, new_workspace)
  end
end

#shallow_copy(object, new_workspace) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/translate/copy/story_copy.rb', line 2

def shallow_copy(object, new_workspace)
  values = super
  
  unless object.cards.nil?
    values[:rank] = object.cards.first.rank 
    values[:schedule_state] = object.cards.first.state 

    unless object.cards.first.iteration.nil?
	iteration_name = object.cards.first.iteration.name
	iteration = fetch_object(:iteration, object.cards.first.iteration.oid, new_workspace)
	values[:iteration] = iteration if iteration
    end

    unless object.cards.first.release.nil?
	release_name = object.cards.first.release.name
	release = fetch_object(:release, object.cards.first.release.oid, new_workspace)
	values[:release] = release if release
    end

  end
  values
end