eve_online 0.12.0 → 0.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (120) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +0 -1
  3. data/.rubocop-thread_safety.yml +9 -0
  4. data/.rubocop.yml +26 -102
  5. data/.rubocop_general.yml +94 -0
  6. data/.rubocop_rspec.yml +61 -0
  7. data/.rubocop_todo.yml +0 -0
  8. data/.travis.yml +14 -29
  9. data/CHANGELOG.md +329 -0
  10. data/Gemfile +1 -2
  11. data/README.md +840 -1088
  12. data/eve_online.gemspec +8 -8
  13. data/lib/eve_online.rb +45 -59
  14. data/lib/eve_online/esi/alliance.rb +33 -0
  15. data/lib/eve_online/esi/alliance_icon.rb +32 -0
  16. data/lib/eve_online/esi/base.rb +3 -2
  17. data/lib/eve_online/esi/bloodlines.rb +22 -0
  18. data/lib/eve_online/esi/character.rb +13 -56
  19. data/lib/eve_online/esi/character_assets.rb +32 -0
  20. data/lib/eve_online/esi/character_attributes.rb +36 -0
  21. data/lib/eve_online/esi/character_blueprints.rb +32 -0
  22. data/lib/eve_online/esi/character_clones.rb +43 -0
  23. data/lib/eve_online/esi/character_fatigue.rb +35 -0
  24. data/lib/eve_online/esi/character_implants.rb +27 -0
  25. data/lib/eve_online/esi/character_industry_jobs.rb +33 -0
  26. data/lib/eve_online/esi/character_loyalty_points.rb +4 -3
  27. data/lib/eve_online/esi/character_portrait.rb +12 -40
  28. data/lib/eve_online/esi/character_skill_queue.rb +6 -5
  29. data/lib/eve_online/esi/character_skills.rb +6 -5
  30. data/lib/eve_online/esi/character_standings.rb +32 -0
  31. data/lib/eve_online/esi/character_wallet.rb +33 -0
  32. data/lib/eve_online/esi/corporation.rb +35 -0
  33. data/lib/eve_online/esi/corporation_industry_jobs.rb +33 -0
  34. data/lib/eve_online/esi/dogma_attribute.rb +34 -0
  35. data/lib/eve_online/esi/dogma_attributes.rb +17 -0
  36. data/lib/eve_online/esi/factions.rb +22 -0
  37. data/lib/eve_online/esi/models/alliance.rb +34 -0
  38. data/lib/eve_online/esi/models/alliance_icon.rb +22 -0
  39. data/lib/eve_online/esi/models/asset.rb +47 -0
  40. data/lib/eve_online/esi/models/attributes.rb +56 -0
  41. data/lib/eve_online/esi/models/base.rb +21 -0
  42. data/lib/eve_online/esi/models/bloodline.rb +67 -0
  43. data/lib/eve_online/esi/models/blueprint.rb +52 -0
  44. data/lib/eve_online/esi/models/character.rb +64 -0
  45. data/lib/eve_online/esi/models/character_portrait.rb +48 -0
  46. data/lib/eve_online/esi/models/corporation.rb +69 -0
  47. data/lib/eve_online/esi/models/dogma_attribute.rb +62 -0
  48. data/lib/eve_online/esi/models/faction.rb +62 -0
  49. data/lib/eve_online/esi/models/fatigue.rb +33 -0
  50. data/lib/eve_online/esi/models/home_location.rb +22 -0
  51. data/lib/eve_online/esi/models/industry_job.rb +130 -0
  52. data/lib/eve_online/esi/models/jump_clone.rb +27 -0
  53. data/lib/eve_online/esi/models/loyalty_point.rb +1 -7
  54. data/lib/eve_online/esi/models/race.rb +32 -0
  55. data/lib/eve_online/esi/models/server_status.rb +34 -0
  56. data/lib/eve_online/esi/models/skill.rb +1 -7
  57. data/lib/eve_online/esi/models/skill_queue_entry.rb +13 -17
  58. data/lib/eve_online/esi/models/standing.rb +27 -0
  59. data/lib/eve_online/esi/races.rb +22 -0
  60. data/lib/eve_online/esi/server_status.rb +8 -24
  61. data/lib/eve_online/version.rb +1 -1
  62. metadata +67 -83
  63. data/.codeclimate.yml +0 -11
  64. data/.editorconfig +0 -10
  65. data/.rspec +0 -1
  66. data/lib/eve_online/base_crest.rb +0 -11
  67. data/lib/eve_online/blueprint.rb +0 -60
  68. data/lib/eve_online/character.rb +0 -54
  69. data/lib/eve_online/character_implants.rb +0 -29
  70. data/lib/eve_online/character_jump_clone_implants.rb +0 -29
  71. data/lib/eve_online/character_jump_clones.rb +0 -29
  72. data/lib/eve_online/character_skills.rb +0 -29
  73. data/lib/eve_online/eve/character_id.rb +0 -41
  74. data/lib/eve_online/implant.rb +0 -24
  75. data/lib/eve_online/item.rb +0 -49
  76. data/lib/eve_online/jump_clone.rb +0 -34
  77. data/lib/eve_online/jump_clone_implant.rb +0 -29
  78. data/lib/eve_online/sde/chr_races.rb +0 -14
  79. data/lib/eve_online/sde/models/chr_race.rb +0 -38
  80. data/lib/eve_online/skill.rb +0 -34
  81. data/lib/eve_online/sovereignty/campaigns.rb +0 -28
  82. data/lib/eve_online/standing.rb +0 -29
  83. data/lib/eve_online/xml/account_characters.rb +0 -48
  84. data/lib/eve_online/xml/account_status.rb +0 -31
  85. data/lib/eve_online/xml/api_key_info.rb +0 -63
  86. data/lib/eve_online/xml/character_account_balance.rb +0 -59
  87. data/lib/eve_online/xml/character_asset_list.rb +0 -54
  88. data/lib/eve_online/xml/character_blueprints.rb +0 -53
  89. data/lib/eve_online/xml/character_calendar_event_attendees.rb +0 -24
  90. data/lib/eve_online/xml/character_chat_channels.rb +0 -25
  91. data/lib/eve_online/xml/character_contact_list.rb +0 -25
  92. data/lib/eve_online/xml/character_contract_bids.rb +0 -23
  93. data/lib/eve_online/xml/character_contract_items.rb +0 -24
  94. data/lib/eve_online/xml/character_contracts.rb +0 -26
  95. data/lib/eve_online/xml/character_fac_war_stats.rb +0 -23
  96. data/lib/eve_online/xml/character_industry_jobs.rb +0 -23
  97. data/lib/eve_online/xml/character_industry_jobs_history.rb +0 -23
  98. data/lib/eve_online/xml/character_kill_mails.rb +0 -25
  99. data/lib/eve_online/xml/character_locations.rb +0 -32
  100. data/lib/eve_online/xml/character_mail_bodies.rb +0 -30
  101. data/lib/eve_online/xml/character_mail_messages.rb +0 -23
  102. data/lib/eve_online/xml/character_mailing_lists.rb +0 -23
  103. data/lib/eve_online/xml/character_medals.rb +0 -23
  104. data/lib/eve_online/xml/character_notification_texts.rb +0 -32
  105. data/lib/eve_online/xml/character_notifications.rb +0 -23
  106. data/lib/eve_online/xml/character_planetary_colonies.rb +0 -23
  107. data/lib/eve_online/xml/character_planetary_links.rb +0 -24
  108. data/lib/eve_online/xml/character_planetary_pins.rb +0 -24
  109. data/lib/eve_online/xml/character_planetary_routes.rb +0 -24
  110. data/lib/eve_online/xml/character_research.rb +0 -23
  111. data/lib/eve_online/xml/character_sheet.rb +0 -231
  112. data/lib/eve_online/xml/character_skill_in_training.rb +0 -68
  113. data/lib/eve_online/xml/character_skill_queue.rb +0 -51
  114. data/lib/eve_online/xml/character_standings.rb +0 -67
  115. data/lib/eve_online/xml/character_wallet_transactions.rb +0 -24
  116. data/lib/eve_online/xml/models/account_status.rb +0 -40
  117. data/lib/eve_online/xml/models/account_type_object.rb +0 -22
  118. data/lib/eve_online/xml/models/api_key_info.rb +0 -35
  119. data/lib/eve_online/xml/models/skill_queue_entry.rb +0 -55
  120. data/lib/eve_online/xml/server_status.rb +0 -31
@@ -1,24 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/character/char_calendareventattendees.html
4
- class CharacterCalendarEventAttendees < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/CalendarEventAttendees.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 4
8
-
9
- attr_reader :key_id, :v_code, :character_id, :event_id
10
-
11
- def initialize(key_id, v_code, character_id, event_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- @event_id = event_id
17
- end
18
-
19
- def url
20
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }&eventIDs=#{ event_id }"
21
- end
22
- end
23
- end
24
- end
@@ -1,25 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_chatchannels.html
4
- class CharacterChatChannels < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/ChatChannels.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 536_870_912
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, options = {})
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = options.fetch(:character_id, nil)
16
- end
17
-
18
- def url
19
- output = "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }"
20
- output = "#{ output }&characterID=#{ character_id }" if character_id
21
- output
22
- end
23
- end
24
- end
25
- end
@@ -1,25 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/character/char_contactlist.html
4
- class CharacterContactList < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/ContactList.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 16
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, options = {})
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = options.fetch(:character_id, nil)
16
- end
17
-
18
- def url
19
- output = "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }"
20
- output = "#{ output }&characterID=#{ character_id }" if character_id
21
- output
22
- end
23
- end
24
- end
25
- end
@@ -1,23 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_contractbids.html
4
- class CharacterContractBids < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/ContractBids.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 67_108_864
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- end
17
-
18
- def url
19
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
20
- end
21
- end
22
- end
23
- end
@@ -1,24 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_contractitems.html
4
- class CharacterContractItems < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/ContractItems.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 67_108_864
8
-
9
- attr_reader :key_id, :v_code, :character_id, :contract_id
10
-
11
- def initialize(key_id, v_code, character_id, contract_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- @contract_id = contract_id
17
- end
18
-
19
- def url
20
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }&contractID=#{ contract_id }"
21
- end
22
- end
23
- end
24
- end
@@ -1,26 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_contracts.html
4
- class CharacterContracts < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/Contracts.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 67_108_864
8
-
9
- # attr_reader :key_id, :v_code, :character_id, :contract_id
10
- attr_reader :key_id, :v_code, :character_id
11
-
12
- # def initialize(key_id, v_code, character_id, contract_id = nil)
13
- def initialize(key_id, v_code, character_id)
14
- super()
15
- @key_id = key_id
16
- @v_code = v_code
17
- @character_id = character_id
18
- end
19
-
20
- def url
21
- # TODO: add support for contract_id
22
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
23
- end
24
- end
25
- end
26
- end
@@ -1,23 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_facwarstats.html
4
- class CharacterFacWarStats < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/FacWarStats.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 64
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- end
17
-
18
- def url
19
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
20
- end
21
- end
22
- end
23
- end
@@ -1,23 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_industryjobs.html
4
- class CharacterIndustryJobs < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/IndustryJobs.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 128
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- end
17
-
18
- def url
19
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
20
- end
21
- end
22
- end
23
- end
@@ -1,23 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_industryjobshistory.html
4
- class CharacterIndustryJobsHistory < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/IndustryJobsHistory.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 128
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- end
17
-
18
- def url
19
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
20
- end
21
- end
22
- end
23
- end
@@ -1,25 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_killmails.html
4
- class CharacterKillMails < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/KillMails.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 256
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- # TODO: @from_id
17
- # TODO: row_count
18
- end
19
-
20
- def url
21
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
22
- end
23
- end
24
- end
25
- end
@@ -1,32 +0,0 @@
1
- require 'uri'
2
-
3
- module EveOnline
4
- module XML
5
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_locations.html
6
- class CharacterLocations < Base
7
- API_ENDPOINT = 'https://api.eveonline.com/char/Locations.xml.aspx'.freeze
8
-
9
- ACCESS_MASK = 134_217_728
10
-
11
- attr_reader :key_id, :v_code, :character_id, :ids
12
-
13
- def initialize(key_id, v_code, character_id, ids)
14
- super()
15
- @key_id = key_id
16
- @v_code = v_code
17
- @character_id = character_id
18
- @ids = ids
19
- end
20
-
21
- def url
22
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }&IDs=#{ escaped_ids }"
23
- end
24
-
25
- private
26
-
27
- def escaped_ids
28
- URI.escape(ids.join(','))
29
- end
30
- end
31
- end
32
- end
@@ -1,30 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_mailbodies.html
4
- class CharacterMailBodies < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/MailBodies.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 512
8
-
9
- attr_reader :key_id, :v_code, :character_id, :ids
10
-
11
- def initialize(key_id, v_code, character_id, ids)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- @ids = ids
17
- end
18
-
19
- def url
20
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }&IDs=#{ escaped_ids }"
21
- end
22
-
23
- private
24
-
25
- def escaped_ids
26
- URI.escape(ids.join(','))
27
- end
28
- end
29
- end
30
- end
@@ -1,23 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_mailmessages.html
4
- class CharacterMailMessages < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/MailMessages.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 2_048
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- end
17
-
18
- def url
19
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
20
- end
21
- end
22
- end
23
- end
@@ -1,23 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_mailinglists.html
4
- class CharacterMailingLists < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/mailinglists.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 1_024
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- end
17
-
18
- def url
19
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
20
- end
21
- end
22
- end
23
- end
@@ -1,23 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_medals.html
4
- class CharacterMedals < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/Medals.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 8_192
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- end
17
-
18
- def url
19
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
20
- end
21
- end
22
- end
23
- end
@@ -1,32 +0,0 @@
1
- require 'uri'
2
-
3
- module EveOnline
4
- module XML
5
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_notificationtexts.html
6
- class CharacterNotificationTexts < Base
7
- API_ENDPOINT = 'https://api.eveonline.com/char/NotificationTexts.xml.aspx'.freeze
8
-
9
- ACCESS_MASK = 32_768
10
-
11
- attr_reader :key_id, :v_code, :character_id, :ids
12
-
13
- def initialize(key_id, v_code, character_id, ids)
14
- super()
15
- @key_id = key_id
16
- @v_code = v_code
17
- @character_id = character_id
18
- @ids = ids
19
- end
20
-
21
- def url
22
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }&IDs=#{ escaped_ids }"
23
- end
24
-
25
- private
26
-
27
- def escaped_ids
28
- URI.escape(ids.join(','))
29
- end
30
- end
31
- end
32
- end
@@ -1,23 +0,0 @@
1
- module EveOnline
2
- module XML
3
- # https://eveonline-third-party-documentation.readthedocs.io/en/latest/xmlapi/character/char_notifications.html
4
- class CharacterNotifications < Base
5
- API_ENDPOINT = 'https://api.eveonline.com/char/Notifications.xml.aspx'.freeze
6
-
7
- ACCESS_MASK = 16_384
8
-
9
- attr_reader :key_id, :v_code, :character_id
10
-
11
- def initialize(key_id, v_code, character_id)
12
- super()
13
- @key_id = key_id
14
- @v_code = v_code
15
- @character_id = character_id
16
- end
17
-
18
- def url
19
- "#{ API_ENDPOINT }?keyID=#{ key_id }&vCode=#{ v_code }&characterID=#{ character_id }"
20
- end
21
- end
22
- end
23
- end