Class: SC2Cli::Shared::Region

Inherits:
Object
  • Object
show all
Defined in:
lib/sc2cli/shared/region.rb

Constant Summary collapse

@@console =
Console.instance
@@name =
"eu"
@@regions =
{
  "cn" => {
    "api_server"   => "gateway.battlenet.com.cn",
    "description"  => "China",
    "id"           => 5,
    "oauth_server" => "www.battlenet.com.cn",
    "realm"        => 1
  },
  "eu" => {
    "api_server"   => "eu.api.blizzard.com",
    "description"  => "Europe",
    "id"           => 2,
    "oauth_server" => "eu.battle.net",
    "realm"        => 1
  },
  "la" => {
    "api_server"   => "us.api.blizzard.com",
    "description"  => "Latin America",
    "id"           => 1,
    "oauth_server" => "us.battle.net",
    "realm"        => 2
  },
  "kr" => {
    "api_server"   => "kr.api.blizzard.com",
    "description"  => "Korea",
    "id"           => 3,
    "oauth_server" => "kr.battle.net",
    "realm"        => 1
  },
  "ru" => {
    "api_server"   => "eu.api.blizzard.com",
    "description"  => "Russia",
    "id"           => 2,
    "oauth_server" => "eu.battle.net",
    "realm"        => 2
  },
  "tw" => {
    "api_server"   => "tw.api.blizzard.com",
    "description"  => "Taiwan",
    "id"           => 3,
    "oauth_server" => "apac.battle.net",
    "realm"        => 2
  },
  "us" => {
    "api_server"   => "us.api.blizzard.com",
    "description"  => "United States",
    "id"           => 1,
    "oauth_server" => "us.battle.net",
    "realm"        => 1
  }
}

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name: nil) ⇒ Region

Returns a new instance of Region.



86
87
88
89
90
91
92
93
94
95
96
97
98
# File 'lib/sc2cli/shared/region.rb', line 86

def initialize(name: nil)
  name = name || @@name

  @@console.fatal("Invalid region: #{name}!") unless @@regions.key?(name)

  @name = name

  @api_server   = @@regions[name]["api_server"]
  @description  = @@regions[name]["description"]
  @id           = @@regions[name]["id"]
  @oauth_server = @@regions[name]["oauth_server"]
  @realm        = @@regions[name]["realm"]
end

Instance Attribute Details

#api_serverObject (readonly)

Returns the value of attribute api_server.



77
78
79
# File 'lib/sc2cli/shared/region.rb', line 77

def api_server
  @api_server
end

#descriptionObject (readonly)

Returns the value of attribute description.



78
79
80
# File 'lib/sc2cli/shared/region.rb', line 78

def description
  @description
end

#idObject (readonly)

Returns the value of attribute id.



79
80
81
# File 'lib/sc2cli/shared/region.rb', line 79

def id
  @id
end

#nameObject (readonly)

Returns the value of attribute name.



80
81
82
# File 'lib/sc2cli/shared/region.rb', line 80

def name
  @name
end

#oauth_serverObject (readonly)

Returns the value of attribute oauth_server.



81
82
83
# File 'lib/sc2cli/shared/region.rb', line 81

def oauth_server
  @oauth_server
end

#realmObject (readonly)

Returns the value of attribute realm.



82
83
84
# File 'lib/sc2cli/shared/region.rb', line 82

def realm
  @realm
end