Method: GoodData::Project.create_object

Defined in:
lib/gooddata/models/project.rb

.create_object(data = {}) ⇒ Object


114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/gooddata/models/project.rb', line 114

def create_object(data = {})
  c = GoodData.get_client(data)
  new_data = GoodData::Helpers.deep_dup(EMPTY_OBJECT).tap do |d|
    d['project']['meta']['title'] = data[:title]
    d['project']['meta']['summary'] = data[:summary] if data[:summary]
    d['project']['meta']['projectTemplate'] = data[:template] if data[:template]
    d['project']['content']['guidedNavigation'] = data[:guided_navigation] if data[:guided_navigation]

    token = data[:auth_token] || data[:token]

    d['project']['content']['authorizationToken'] = token if token
    d['project']['content']['driver'] = data[:driver] if data[:driver]
    d['project']['content']['environment'] = data[:environment] if data[:environment]
  end
  c.create(Project, new_data)
end