Class: Files::App

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

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

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

Returns a new instance of App.



7
8
9
10
# File 'lib/files.com/models/app.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/app.rb', line 5

def attributes
  @attributes
end

#optionsObject (readonly)

Returns the value of attribute options.



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

def options
  @options
end

Class Method Details

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



113
114
115
# File 'lib/files.com/models/app.rb', line 113

def self.all(params = {}, options = {})
  list(params, options)
end

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

Parameters:

cursor - string - Used for pagination.  Send a cursor value to resume an existing list from the point at which you left off.  Get a cursor from an existing list via the X-Files-Cursor-Next header.
per_page - int64 - Number of records to show per page.  (Max: 10,000, 1,000 or less is recommended).
sort_by - object - If set, sort records by the specified field in either 'asc' or 'desc' direction (e.g. sort_by[last_login_at]=desc). Valid fields are `name` and `app_type`.
filter - object - If set, return records where the specifiied field is equal to the supplied value. Valid fields are `name` and `app_type`.
filter_gt - object - If set, return records where the specifiied field is greater than the supplied value. Valid fields are `name` and `app_type`.
filter_gteq - object - If set, return records where the specifiied field is greater than or equal to the supplied value. Valid fields are `name` and `app_type`.
filter_like - object - If set, return records where the specifiied field is equal to the supplied value. Valid fields are `name` and `app_type`.
filter_lt - object - If set, return records where the specifiied field is less than the supplied value. Valid fields are `name` and `app_type`.
filter_lteq - object - If set, return records where the specifiied field is less than or equal to the supplied value. Valid fields are `name` and `app_type`.


97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# File 'lib/files.com/models/app.rb', line 97

def self.list(params = {}, options = {})
  raise InvalidParameterError.new("Bad parameter: cursor must be an String") if params.dig(:cursor) and !params.dig(:cursor).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params.dig(:per_page) and !params.dig(:per_page).is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: sort_by must be an Hash") if params.dig(:sort_by) and !params.dig(:sort_by).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter must be an Hash") if params.dig(:filter) and !params.dig(:filter).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_gt must be an Hash") if params.dig(:filter_gt) and !params.dig(:filter_gt).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_gteq must be an Hash") if params.dig(:filter_gteq) and !params.dig(:filter_gteq).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_like must be an Hash") if params.dig(:filter_like) and !params.dig(:filter_like).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_lt must be an Hash") if params.dig(:filter_lt) and !params.dig(:filter_lt).is_a?(Hash)
  raise InvalidParameterError.new("Bad parameter: filter_lteq must be an Hash") if params.dig(:filter_lteq) and !params.dig(:filter_lteq).is_a?(Hash)

  List.new(App, params) do
    Api.send_request("/apps", :get, params, options)
  end
end

Instance Method Details

#app_typeObject

string - The type of the App



78
79
80
# File 'lib/files.com/models/app.rb', line 78

def app_type
  @attributes[:app_type]
end

string - Collection of named links to documentation



23
24
25
# File 'lib/files.com/models/app.rb', line 23

def documentation_links
  @attributes[:documentation_links]
end

#extended_descriptionObject

string - Long form description of the App



18
19
20
# File 'lib/files.com/models/app.rb', line 18

def extended_description
  @attributes[:extended_description]
end

#external_homepage_urlObject

string - Link to external homepage



63
64
65
# File 'lib/files.com/models/app.rb', line 63

def external_homepage_url
  @attributes[:external_homepage_url]
end

boolean - Is featured on the App listing?



83
84
85
# File 'lib/files.com/models/app.rb', line 83

def featured
  @attributes[:featured]
end

#folder_behavior_typeObject

string - Associated Folder Behavior type, if any



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

def folder_behavior_type
  @attributes[:folder_behavior_type]
end

#icon_urlObject

string - App icon



28
29
30
# File 'lib/files.com/models/app.rb', line 28

def icon_url
  @attributes[:icon_url]
end

#logo_thumbnail_urlObject

string - Logo thumbnail for the App



43
44
45
# File 'lib/files.com/models/app.rb', line 43

def logo_thumbnail_url
  @attributes[:logo_thumbnail_url]
end

#logo_urlObject

string - Full size logo for the App



33
34
35
# File 'lib/files.com/models/app.rb', line 33

def logo_url
  @attributes[:logo_url]
end

#marketing_youtube_urlObject

string - Marketing video page



68
69
70
# File 'lib/files.com/models/app.rb', line 68

def marketing_youtube_url
  @attributes[:marketing_youtube_url]
end

#nameObject

string - Name of the App



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

def name
  @attributes[:name]
end

#remote_server_typeObject

string - Associated Remote Server type, if any



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

def remote_server_type
  @attributes[:remote_server_type]
end

#screenshot_list_urlsObject

string - Screenshots of the App



38
39
40
# File 'lib/files.com/models/app.rb', line 38

def screenshot_list_urls
  @attributes[:screenshot_list_urls]
end

#sso_strategy_typeObject

string - Associated SSO Strategy type, if any



48
49
50
# File 'lib/files.com/models/app.rb', line 48

def sso_strategy_type
  @attributes[:sso_strategy_type]
end

#tutorial_youtube_urlObject

string - Tutorial video page



73
74
75
# File 'lib/files.com/models/app.rb', line 73

def tutorial_youtube_url
  @attributes[:tutorial_youtube_url]
end