Class: Lapis::Minecraft::Versioning::VersionList
- Inherits:
-
Object
- Object
- Lapis::Minecraft::Versioning::VersionList
- Includes:
- Enumerable
- Defined in:
- lib/lapis/minecraft/versioning/version_list.rb
Overview
Complete listing of Minecraft versions and detailed information about them.
Constant Summary collapse
- OFFICIAL_MANIFEST_URL =
URL of the official Mojang Minecraft version list.
'https://launchermeta.mojang.com/mc/game/version_manifest.json'
Class Method Summary collapse
-
.official ⇒ VersionList
Singleton for retrieving information about official Minecraft versions.
Instance Method Summary collapse
-
#each {|version| ... } ⇒ void
Iterates over all versions.
-
#initialize(manifest_url) ⇒ VersionList
constructor
Creates a version list.
-
#latest_release ⇒ Version
Retrieves the latest released version.
-
#latest_snapshot ⇒ Version
Information about the latest snapshot version.
Constructor Details
#initialize(manifest_url) ⇒ VersionList
Creates a version list.
24 25 26 27 |
# File 'lib/lapis/minecraft/versioning/version_list.rb', line 24 def initialize(manifest_url) @manifest_url = manifest_url.dup.freeze = MetaServer.new(HTTPClient.new) end |
Class Method Details
.official ⇒ VersionList
Singleton for retrieving information about official Minecraft versions.
18 19 20 |
# File 'lib/lapis/minecraft/versioning/version_list.rb', line 18 def self.official @official ||= new(OFFICIAL_MANIFEST_URL) end |
Instance Method Details
#each {|version| ... } ⇒ void
This method returns an undefined value.
Iterates over all versions.
32 33 34 35 36 37 38 |
# File 'lib/lapis/minecraft/versioning/version_list.rb', line 32 def each return enum_for(:each) unless block_given? manifest.each do |basic| yield Version.new(basic, ) end end |
#latest_release ⇒ Version
Retrieves the latest released version.
42 43 44 |
# File 'lib/lapis/minecraft/versioning/version_list.rb', line 42 def latest_release Version.new(manifest.latest_release, ) end |
#latest_snapshot ⇒ Version
Information about the latest snapshot version.
48 49 50 |
# File 'lib/lapis/minecraft/versioning/version_list.rb', line 48 def latest_snapshot Version.new(manifest.latest_snapshot, ) end |