class Spaceship::Tunes::AppSubmission

This class handles the submission of all review information and documents
Represents a submission for review of an iTunes Connect Application

def complete!

Save and complete the app submission
def complete!
  client.send_app_submission(application.apple_id, raw_data)
  @submitted_for_review = true
end

def create(application, version)

Parameters:
  • application (Spaceship::Tunes::Application) -- The app this submission is for
def create(application, version)
  attrs = client.prepare_app_submissions(application.apple_id, application.edit_version.version_id)
  attrs[:application] = application
  attrs[:version] = version
  return self.factory(attrs)
end

def factory(attrs)

This is used to create a new object based on the server response.
Create a new object based on a hash.
def factory(attrs)
  # fill content rights section if iTC returns nil
  if attrs["contentRights"].nil?
    attrs["contentRights"] = {
      "containsThirdPartyContent" => {
        "value" => nil
      },
      "hasRights" => {
        "value" => nil
      }
    }
  end
  obj = self.new(attrs)
  return obj
end

def setup

def setup
  @submitted_for_review = false
end