diff --git a/lib/sightstone.rb b/lib/sightstone.rb index b8eceee..fed0f93 100644 --- a/lib/sightstone.rb +++ b/lib/sightstone.rb @@ -30,3 +30,5 @@ class SightstoneApiException < Exception; end class SummonerNotFoundException < SightstoneApiException; end class SightstoneConnectionException < SightstoneApiException; end + +class RateLimitExceededException < SightstoneApiException; end diff --git a/lib/sightstone/modules/champion_module.rb b/lib/sightstone/modules/champion_module.rb index b1e8be6..9ce86ea 100644 --- a/lib/sightstone/modules/champion_module.rb +++ b/lib/sightstone/modules/champion_module.rb @@ -1,6 +1,7 @@ require 'sightstone/champion' +require 'sightstone/modules/sightstone_base_module' -class ChampionModule +class ChampionModule < SightstoneBaseModule def initialize(sightstone) @sightstone = sightstone @@ -20,28 +21,4 @@ class ChampionModule return champions } end - - private - def _get_api_response(uri, headers={}) - params = {'api_key' => @sightstone.api_key}.merge headers - RestClient.get(uri, headers={:params => params}) {|response, request, result| response } - rescue SocketError => e - nil - - end - - def _parse_response(response, &block) - response_code = if response.nil? - 500 - else - response.code - end - - if response_code == 200 - block.call(response.body) - elsif response_code == 500 - raise Sightstone::SightstoneConnectionException - end - end - end \ No newline at end of file diff --git a/lib/sightstone/modules/game_module.rb b/lib/sightstone/modules/game_module.rb index 7058803..61eab89 100644 --- a/lib/sightstone/modules/game_module.rb +++ b/lib/sightstone/modules/game_module.rb @@ -1,7 +1,8 @@ +require 'sightstone/modules/sightstone_base_module' require 'sightstone/summoner' require 'sightstone/match_history' -class GameModule +class GameModule < SightstoneBaseModule def initialize(sightstone) @sightstone = sightstone @@ -22,29 +23,5 @@ class GameModule } end - private - - def _get_api_response(uri) - params = {'api_key' => @sightstone.api_key} - RestClient.get(uri, headers={:params => params}) {|response, request, result| response } - rescue SocketError => e - nil - - end - - def _parse_response(response, &block) - response_code = if response.nil? - 500 - else - response.code - end - - if response_code == 200 - block.call(response.body) - elsif response_code == 404 - raise Sightstone::SummonerNotFoundException - elsif response_code == 500 - raise Sightstone::SightstoneConnectionException - end - end + end \ No newline at end of file diff --git a/lib/sightstone/modules/league_module.rb b/lib/sightstone/modules/league_module.rb index c607859..4df5589 100644 --- a/lib/sightstone/modules/league_module.rb +++ b/lib/sightstone/modules/league_module.rb @@ -1,7 +1,8 @@ +require 'sightstone/modules/sightstone_base_module' require 'sightstone/summoner' require 'sightstone/league' -class LeagueModule +class LeagueModule < SightstoneBaseModule def initialize(sightstone) @sightstone = sightstone end @@ -26,28 +27,4 @@ class LeagueModule } end - private - - def _get_api_response(uri) - params = {'api_key' => @sightstone.api_key} - RestClient.get(uri, headers={:params => params}) {|response, request, result| response } - rescue SocketError => e - nil - - end - - def _parse_response(response, &block) - response_code = if response.nil? - 500 - else - response.code - end - if response_code == 200 - block.call(response.body) - elsif response_code == 404 - raise Sightstone::SummonerNotFoundException - elsif response_code == 500 - raise Sightstone::SightstoneConnectionException - end - end end \ No newline at end of file diff --git a/lib/sightstone/modules/stats_module.rb b/lib/sightstone/modules/stats_module.rb index 483b4dd..fba7546 100644 --- a/lib/sightstone/modules/stats_module.rb +++ b/lib/sightstone/modules/stats_module.rb @@ -1,8 +1,9 @@ +require 'sightstone/modules/sightstone_base_module' require 'sightstone/summoner' require 'sightstone/player_stats_summary' require 'sightstone/ranked_stats' -class StatsModule +class StatsModule < SightstoneBaseModule def initialize(sightstone) @sightstone = sightstone end @@ -46,29 +47,4 @@ class StatsModule } end - - def _get_api_response(uri, header={}) - params = {'api_key' => @sightstone.api_key}.merge header - RestClient.get(uri, headers={:params => params}) {|response, request, result| response } - rescue SocketError => e - nil - - end - - def _parse_response(response, &block) - response_code = if response.nil? - 500 - else - response.code - end - - if response_code == 200 - block.call(response.body) - elsif response_code == 404 - raise Sightstone::SummonerNotFoundException - elsif response_code == 500 - raise Sightstone::SightstoneConnectionException - end - end - end \ No newline at end of file diff --git a/lib/sightstone/modules/summoner_module.rb b/lib/sightstone/modules/summoner_module.rb index b3190f8..33c0a38 100644 --- a/lib/sightstone/modules/summoner_module.rb +++ b/lib/sightstone/modules/summoner_module.rb @@ -1,8 +1,9 @@ +require 'sightstone/modules/sightstone_base_module' require 'sightstone/summoner' require 'sightstone/masterybook' require 'sightstone/runebook' -class SummonerModule +class SummonerModule < SightstoneBaseModule def initialize(sightstone) @sightstone = sightstone end @@ -59,30 +60,4 @@ class SummonerModule return MasteryBook.new(data) } end - - private - - def _get_api_response(uri) - params = {'api_key' => @sightstone.api_key} - RestClient.get(uri, headers={:params => params}) {|response, request, result| response } - rescue SocketError => e - nil - - end - - def _parse_response(response, &block) - response_code = if response.nil? - 500 - else - response.code - end - - if response_code == 200 - block.call(response.body) - elsif response_code == 404 - raise Sightstone::SummonerNotFoundException - elsif response_code == 500 - raise Sightstone::SightstoneConnectionException - end - end end diff --git a/lib/sightstone/modules/team_module.rb b/lib/sightstone/modules/team_module.rb index ada1cf1..bee5832 100644 --- a/lib/sightstone/modules/team_module.rb +++ b/lib/sightstone/modules/team_module.rb @@ -1,7 +1,8 @@ +require 'sightstone/modules/sightstone_base_module' require 'sightstone/summoner' require 'sightstone/team' -class TeamModule +class TeamModule < SightstoneBaseModule def initialize(sightstone) @sightstone = sightstone end @@ -26,31 +27,4 @@ class TeamModule } end - - - private - - def _get_api_response(uri) - params = {'api_key' => @sightstone.api_key} - RestClient.get(uri, headers={:params => params}) {|response, request, result| response } - rescue SocketError => e - nil - - end - - def _parse_response(response, &block) - response_code = if response.nil? - 500 - else - response.code - end - - if response_code == 200 - block.call(response.body) - elsif response_code == 404 - raise Sightstone::SummonerNotFoundException - elsif response_code == 500 - raise Sightstone::SightstoneConnectionException - end - end end