Class: Files::Release

Inherits:
Object
  • Object
show all
Defined in:
lib/files.com/models/release.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}, options = {}) ⇒ Release

Returns a new instance of Release.



7
8
9
10
# File 'lib/files.com/models/release.rb', line 7

def initialize(attributes = {}, options = {})
  @attributes = attributes || {}
  @options = options || {}
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



5
6
7
# File 'lib/files.com/models/release.rb', line 5

def attributes
  @attributes
end

#optionsObject (readonly)

Returns the value of attribute options.



5
6
7
# File 'lib/files.com/models/release.rb', line 5

def options
  @options
end

Class Method Details

.create(params = {}, options = {}) ⇒ Object

Parameters:

title - string
description - string
version_major - int64
version_minor - int64
version_patch - int64
version_build - int64
oem - string
product - string
native_release_packages - array(object)


138
139
140
141
142
143
144
145
146
147
148
149
150
151
# File 'lib/files.com/models/release.rb', line 138

def self.create(params = {}, options = {})
  raise InvalidParameterError.new("Bad parameter: title must be an String") if params[:title] and !params[:title].is_a?(String)
  raise InvalidParameterError.new("Bad parameter: description must be an String") if params[:description] and !params[:description].is_a?(String)
  raise InvalidParameterError.new("Bad parameter: version_major must be an Integer") if params[:version_major] and !params[:version_major].is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: version_minor must be an Integer") if params[:version_minor] and !params[:version_minor].is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: version_patch must be an Integer") if params[:version_patch] and !params[:version_patch].is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: version_build must be an Integer") if params[:version_build] and !params[:version_build].is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: oem must be an String") if params[:oem] and !params[:oem].is_a?(String)
  raise InvalidParameterError.new("Bad parameter: product must be an String") if params[:product] and !params[:product].is_a?(String)
  raise InvalidParameterError.new("Bad parameter: native_release_packages must be an Array") if params[:native_release_packages] and !params[:native_release_packages].is_a?(Array)

  response, options = Api.send_request("/releases", :post, params, options)
  Release.new(response.data, options)
end

.get_latest(params = {}, options = {}) ⇒ Object

Parameters:

product - string
platform - string
architecture - string
ext - string


118
119
120
121
122
123
124
125
126
# File 'lib/files.com/models/release.rb', line 118

def self.get_latest(params = {}, options = {})
  raise InvalidParameterError.new("Bad parameter: product must be an String") if params[:product] and !params[:product].is_a?(String)
  raise InvalidParameterError.new("Bad parameter: platform must be an String") if params[:platform] and !params[:platform].is_a?(String)
  raise InvalidParameterError.new("Bad parameter: architecture must be an String") if params[:architecture] and !params[:architecture].is_a?(String)
  raise InvalidParameterError.new("Bad parameter: ext must be an String") if params[:ext] and !params[:ext].is_a?(String)

  response, options = Api.send_request("/releases/latest", :get, params, options)
  Release.new(response.data, options)
end

Instance Method Details

#descriptionObject

string - Native release description



22
23
24
# File 'lib/files.com/models/release.rb', line 22

def description
  @attributes[:description]
end

#description=(value) ⇒ Object



26
27
28
# File 'lib/files.com/models/release.rb', line 26

def description=(value)
  @attributes[:description] = value
end

#native_release_packagesObject

array(object) - A list of native release packages



31
32
33
# File 'lib/files.com/models/release.rb', line 31

def native_release_packages
  @attributes[:native_release_packages]
end

#native_release_packages=(value) ⇒ Object



35
36
37
# File 'lib/files.com/models/release.rb', line 35

def native_release_packages=(value)
  @attributes[:native_release_packages] = value
end

#oemObject

string



94
95
96
# File 'lib/files.com/models/release.rb', line 94

def oem
  @attributes[:oem]
end

#oem=(value) ⇒ Object



98
99
100
# File 'lib/files.com/models/release.rb', line 98

def oem=(value)
  @attributes[:oem] = value
end

#productObject

string - Native release product



49
50
51
# File 'lib/files.com/models/release.rb', line 49

def product
  @attributes[:product]
end

#product=(value) ⇒ Object



53
54
55
# File 'lib/files.com/models/release.rb', line 53

def product=(value)
  @attributes[:product] = value
end

#saveObject



102
103
104
105
106
107
108
109
110
111
# File 'lib/files.com/models/release.rb', line 102

def save
  if @attributes[:id]
    raise NotImplementedError.new("The Release object doesn't support updates.")
  else
    new_obj = Release.create(@attributes, @options)
  end

  @attributes = new_obj.attributes
  true
end

#titleObject

string - Native release title



40
41
42
# File 'lib/files.com/models/release.rb', line 40

def title
  @attributes[:title]
end

#title=(value) ⇒ Object



44
45
46
# File 'lib/files.com/models/release.rb', line 44

def title=(value)
  @attributes[:title] = value
end

#versionObject

string - Native release version



13
14
15
# File 'lib/files.com/models/release.rb', line 13

def version
  @attributes[:version]
end

#version=(value) ⇒ Object



17
18
19
# File 'lib/files.com/models/release.rb', line 17

def version=(value)
  @attributes[:version] = value
end

#version_buildObject

int64



85
86
87
# File 'lib/files.com/models/release.rb', line 85

def version_build
  @attributes[:version_build]
end

#version_build=(value) ⇒ Object



89
90
91
# File 'lib/files.com/models/release.rb', line 89

def version_build=(value)
  @attributes[:version_build] = value
end

#version_majorObject

int64



58
59
60
# File 'lib/files.com/models/release.rb', line 58

def version_major
  @attributes[:version_major]
end

#version_major=(value) ⇒ Object



62
63
64
# File 'lib/files.com/models/release.rb', line 62

def version_major=(value)
  @attributes[:version_major] = value
end

#version_minorObject

int64



67
68
69
# File 'lib/files.com/models/release.rb', line 67

def version_minor
  @attributes[:version_minor]
end

#version_minor=(value) ⇒ Object



71
72
73
# File 'lib/files.com/models/release.rb', line 71

def version_minor=(value)
  @attributes[:version_minor] = value
end

#version_patchObject

int64



76
77
78
# File 'lib/files.com/models/release.rb', line 76

def version_patch
  @attributes[:version_patch]
end

#version_patch=(value) ⇒ Object



80
81
82
# File 'lib/files.com/models/release.rb', line 80

def version_patch=(value)
  @attributes[:version_patch] = value
end