diff --git a/lib/neweden.rb b/lib/neweden.rb index 7551f8e..c37e58e 100644 --- a/lib/neweden.rb +++ b/lib/neweden.rb @@ -6,10 +6,12 @@ require File.join(File.dirname(__FILE__), 'neweden', 'errors') require File.join(File.dirname(__FILE__), 'neweden', 'account') require File.join(File.dirname(__FILE__), 'neweden', 'character') +require File.join(File.dirname(__FILE__), 'neweden', 'corporation') class NewEden include Account include Character + include Corporation REQUEST_TIMEOUT = 60000 # 60 seconds CACHE_TIMEOUT = 300 # 5 minutes diff --git a/lib/neweden/corporation.rb b/lib/neweden/corporation.rb new file mode 100644 index 0000000..a55c5fe --- /dev/null +++ b/lib/neweden/corporation.rb @@ -0,0 +1,24 @@ +module Corporation + CORPORATION_ENDPOINTS = %w{ AccountBalance AssetList ContactList ContainerLog Contracts CorporationSheet FacWarStats + IndustryJobs Killlog MarketOrders Medals MemberMedals MemberSecurity MemberSecurityLog MemberTracking OutpostList + OutpostServiceDetail Shareholders Standings StarbaseDetail StarbaseList Titles WalletJournal WalletTransactions + } + + CORPORATION_ENDPOINTS.each do |endpoint| + module_eval <<-RUBY + def corp_#{endpoint.underscore}(character_id) + corportaion_request("/corp/#{endpoint}.xml.aspx", character_id) + end + RUBY + end + + alias :corp_account_balances :corp_account_balance + alias :corp_factional_warfare_stats :corp_fac_war_stats + alias :corp_kill_log :corp_killlog + + private + + def corportaion_request(endpoint, character_id) + request(endpoint, :post, :characterID => character_id) + end +end diff --git a/lib/neweden/string_extensions.rb b/lib/neweden/string_extensions.rb deleted file mode 100644 index 60bc166..0000000 --- a/lib/neweden/string_extensions.rb +++ /dev/null @@ -1,11 +0,0 @@ -class String - def underscore - word = self.dup - word.gsub!(/::/, '/') - word.gsub!(/([A-Z]+)([A-Z][a-z])/,'\1_\2') - word.gsub!(/([a-z\d])([A-Z])/,'\1_\2') - word.tr!("-", "_") - word.downcase! - word - end -end