Class: ZendeskAppsSupport::AppVersion
- Inherits:
-
Object
- Object
- ZendeskAppsSupport::AppVersion
- Defined in:
- lib/zendesk_apps_support/app_version.rb
Overview
At any point in time, we support up to three versions:
* deprecated -- we will still serve apps targeting the deprecated version,
but newly created or updated apps CANNOT target it
* current -- we will serve apps targeting the current version;
newly created or updated apps SHOULD target it
* future -- we will serve apps targeting the future version;
newly created or updates apps MAY target it, but it
may change without notice
Constant Summary collapse
- DEPRECATED =
'0.5'.freeze
- CURRENT =
'1.0'.freeze
- FUTURE =
'2.0'.freeze
- TO_BE_SERVED =
[DEPRECATED, CURRENT, FUTURE].compact.freeze
- VALID_FOR_UPDATE =
[CURRENT, FUTURE].compact.freeze
Instance Method Summary collapse
- #==(other) ⇒ Object
- #blank? ⇒ Boolean
- #deprecated? ⇒ Boolean
-
#initialize(version) ⇒ AppVersion
constructor
A new instance of AppVersion.
- #obsolete? ⇒ Boolean
- #present? ⇒ Boolean
- #servable? ⇒ Boolean
- #to_json ⇒ Object
- #to_s ⇒ Object
- #valid_for_update? ⇒ Boolean
Constructor Details
#initialize(version) ⇒ AppVersion
Returns a new instance of AppVersion.
20 21 22 23 24 |
# File 'lib/zendesk_apps_support/app_version.rb', line 20 def initialize(version) @version = version.to_s @version.freeze freeze end |
Instance Method Details
#==(other) ⇒ Object
58 59 60 |
# File 'lib/zendesk_apps_support/app_version.rb', line 58 def ==(other) @version == other.to_s end |
#blank? ⇒ Boolean
42 43 44 |
# File 'lib/zendesk_apps_support/app_version.rb', line 42 def blank? @version.nil? || @version == '' end |
#deprecated? ⇒ Boolean
34 35 36 |
# File 'lib/zendesk_apps_support/app_version.rb', line 34 def deprecated? @version == DEPRECATED end |
#obsolete? ⇒ Boolean
38 39 40 |
# File 'lib/zendesk_apps_support/app_version.rb', line 38 def obsolete? !servable? end |
#present? ⇒ Boolean
46 47 48 |
# File 'lib/zendesk_apps_support/app_version.rb', line 46 def present? !blank? end |
#servable? ⇒ Boolean
26 27 28 |
# File 'lib/zendesk_apps_support/app_version.rb', line 26 def servable? TO_BE_SERVED.include?(@version) end |
#to_json ⇒ Object
54 55 56 |
# File 'lib/zendesk_apps_support/app_version.rb', line 54 def to_json(*) @version.inspect end |
#to_s ⇒ Object
50 51 52 |
# File 'lib/zendesk_apps_support/app_version.rb', line 50 def to_s @version end |
#valid_for_update? ⇒ Boolean
30 31 32 |
# File 'lib/zendesk_apps_support/app_version.rb', line 30 def valid_for_update? VALID_FOR_UPDATE.include?(@version) end |