eve_online 0.14.0 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +0 -2
  3. data/.rubocop.yml +8 -15
  4. data/.rubocop_general.yml +10 -2
  5. data/.ruby-version +1 -0
  6. data/.travis.yml +15 -16
  7. data/CHANGELOG.md +60 -0
  8. data/Gemfile +3 -0
  9. data/Gemfile.lock +170 -0
  10. data/LICENSE.txt +1 -1
  11. data/README.md +569 -587
  12. data/Rakefile +2 -0
  13. data/eve_online.gemspec +7 -6
  14. data/gemfiles/activesupport_42.gemfile +3 -1
  15. data/gemfiles/activesupport_50.gemfile +3 -1
  16. data/gemfiles/activesupport_51.gemfile +3 -1
  17. data/gemfiles/activesupport_52.gemfile +4 -2
  18. data/gemfiles/activesupport_edge.gemfile +3 -1
  19. data/lib/eve_online.rb +23 -40
  20. data/lib/eve_online/esi/alliance.rb +3 -1
  21. data/lib/eve_online/esi/alliance_corporations.rb +27 -0
  22. data/lib/eve_online/esi/alliance_icon.rb +4 -2
  23. data/lib/eve_online/esi/alliances.rb +19 -0
  24. data/lib/eve_online/esi/alliances_names.rb +32 -0
  25. data/lib/eve_online/esi/ancestries.rb +24 -0
  26. data/lib/eve_online/esi/base.rb +3 -0
  27. data/lib/eve_online/esi/bloodlines.rb +3 -1
  28. data/lib/eve_online/esi/character.rb +3 -1
  29. data/lib/eve_online/esi/character_assets.rb +3 -1
  30. data/lib/eve_online/esi/character_attributes.rb +3 -1
  31. data/lib/eve_online/esi/character_blueprints.rb +3 -1
  32. data/lib/eve_online/esi/character_bookmark_folders.rb +34 -0
  33. data/lib/eve_online/esi/character_bookmarks.rb +34 -0
  34. data/lib/eve_online/esi/character_calendar.rb +34 -0
  35. data/lib/eve_online/esi/character_clones.rb +3 -1
  36. data/lib/eve_online/esi/character_fatigue.rb +3 -1
  37. data/lib/eve_online/esi/character_implants.rb +3 -1
  38. data/lib/eve_online/esi/character_industry_jobs.rb +4 -2
  39. data/lib/eve_online/esi/character_loyalty_points.rb +3 -1
  40. data/lib/eve_online/esi/character_notifications.rb +34 -0
  41. data/lib/eve_online/esi/character_online.rb +3 -1
  42. data/lib/eve_online/esi/character_orders.rb +34 -0
  43. data/lib/eve_online/esi/character_portrait.rb +3 -1
  44. data/lib/eve_online/esi/character_skill_queue.rb +3 -1
  45. data/lib/eve_online/esi/character_skills.rb +3 -1
  46. data/lib/eve_online/esi/character_standings.rb +3 -1
  47. data/lib/eve_online/esi/character_wallet.rb +3 -1
  48. data/lib/eve_online/esi/character_wallet_journal.rb +34 -0
  49. data/lib/eve_online/esi/corporation.rb +3 -1
  50. data/lib/eve_online/esi/corporation_blueprints.rb +3 -1
  51. data/lib/eve_online/esi/corporation_industry_jobs.rb +4 -2
  52. data/lib/eve_online/esi/corporation_orders.rb +39 -0
  53. data/lib/eve_online/esi/dogma_attribute.rb +3 -1
  54. data/lib/eve_online/esi/dogma_attributes.rb +3 -1
  55. data/lib/eve_online/esi/factions.rb +3 -1
  56. data/lib/eve_online/esi/market_history.rb +4 -2
  57. data/lib/eve_online/esi/models/alliance.rb +2 -0
  58. data/lib/eve_online/esi/models/alliance_icon.rb +6 -4
  59. data/lib/eve_online/esi/models/alliance_short.rb +24 -0
  60. data/lib/eve_online/esi/models/ancestry.rb +44 -0
  61. data/lib/eve_online/esi/models/asset.rb +2 -0
  62. data/lib/eve_online/esi/models/attributes.rb +2 -0
  63. data/lib/eve_online/esi/models/base.rb +2 -0
  64. data/lib/eve_online/esi/models/bloodline.rb +2 -0
  65. data/lib/eve_online/esi/models/blueprint.rb +2 -0
  66. data/lib/eve_online/esi/models/bookmark.rb +76 -0
  67. data/lib/eve_online/esi/models/bookmark_folder.rb +24 -0
  68. data/lib/eve_online/esi/models/character.rb +2 -0
  69. data/lib/eve_online/esi/models/character_order.rb +96 -0
  70. data/lib/eve_online/esi/models/character_portrait.rb +2 -0
  71. data/lib/eve_online/esi/models/corporation.rb +2 -0
  72. data/lib/eve_online/esi/models/corporation_order.rb +91 -0
  73. data/lib/eve_online/esi/models/dogma_attribute.rb +2 -0
  74. data/lib/eve_online/esi/models/event.rb +41 -0
  75. data/lib/eve_online/esi/models/faction.rb +2 -0
  76. data/lib/eve_online/esi/models/fatigue.rb +2 -0
  77. data/lib/eve_online/esi/models/home_location.rb +2 -0
  78. data/lib/eve_online/esi/models/industry_job.rb +2 -0
  79. data/lib/eve_online/esi/models/jump_clone.rb +2 -0
  80. data/lib/eve_online/esi/models/loyalty_point.rb +2 -0
  81. data/lib/eve_online/esi/models/market_history.rb +2 -0
  82. data/lib/eve_online/esi/models/notification.rb +51 -0
  83. data/lib/eve_online/esi/models/online.rb +2 -0
  84. data/lib/eve_online/esi/models/race.rb +2 -0
  85. data/lib/eve_online/esi/models/server_status.rb +2 -0
  86. data/lib/eve_online/esi/models/skill.rb +2 -0
  87. data/lib/eve_online/esi/models/skill_queue_entry.rb +2 -0
  88. data/lib/eve_online/esi/models/standing.rb +2 -0
  89. data/lib/eve_online/esi/models/wallet_journal_entry.rb +77 -0
  90. data/lib/eve_online/esi/races.rb +3 -1
  91. data/lib/eve_online/esi/server_status.rb +3 -1
  92. data/lib/eve_online/exceptions/base.rb +2 -0
  93. data/lib/eve_online/exceptions/invalid_character_id_exception.rb +2 -0
  94. data/lib/eve_online/exceptions/timeout_exception.rb +2 -0
  95. data/lib/eve_online/exceptions/unauthorized_exception.rb +2 -0
  96. data/lib/eve_online/version.rb +3 -1
  97. metadata +55 -50
  98. data/lib/eve_online/base.rb +0 -34
  99. data/lib/eve_online/base_xml.rb +0 -43
  100. data/lib/eve_online/bookmark.rb +0 -71
  101. data/lib/eve_online/bookmark_folder.rb +0 -56
  102. data/lib/eve_online/contact_notification.rb +0 -42
  103. data/lib/eve_online/event.rb +0 -66
  104. data/lib/eve_online/event_response_object.rb +0 -18
  105. data/lib/eve_online/market_order.rb +0 -91
  106. data/lib/eve_online/sde/agt_agent_types.rb +0 -14
  107. data/lib/eve_online/sde/agt_agents.rb +0 -14
  108. data/lib/eve_online/sde/agt_research_agents.rb +0 -14
  109. data/lib/eve_online/sde/base.rb +0 -25
  110. data/lib/eve_online/sde/inv_flags.rb +0 -14
  111. data/lib/eve_online/sde/inv_items.rb +0 -14
  112. data/lib/eve_online/sde/inv_names.rb +0 -14
  113. data/lib/eve_online/sde/inv_positions.rb +0 -14
  114. data/lib/eve_online/sde/models/agt_agent.rb +0 -58
  115. data/lib/eve_online/sde/models/agt_agent_type.rb +0 -28
  116. data/lib/eve_online/sde/models/agt_research_agent.rb +0 -28
  117. data/lib/eve_online/sde/models/inv_flag.rb +0 -38
  118. data/lib/eve_online/sde/models/inv_item.rb +0 -48
  119. data/lib/eve_online/sde/models/inv_name.rb +0 -28
  120. data/lib/eve_online/sde/models/inv_position.rb +0 -53
  121. data/lib/eve_online/wallet_journal_entry.rb +0 -97
  122. data/lib/eve_online/xml/base.rb +0 -84
  123. data/lib/eve_online/xml/character_bookmarks.rb +0 -53
  124. data/lib/eve_online/xml/character_contact_notifications.rb +0 -51
  125. data/lib/eve_online/xml/character_market_orders.rb +0 -55
  126. data/lib/eve_online/xml/character_upcoming_calendar_events.rb +0 -51
  127. data/lib/eve_online/xml/character_wallet_journal.rb +0 -57
  128. data/lib/eve_online/xml/corporation_market_orders.rb +0 -55
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'forwardable'
2
4
 
3
5
  module EveOnline
@@ -5,7 +7,7 @@ module EveOnline
5
7
  class DogmaAttribute < Base
6
8
  extend Forwardable
7
9
 
8
- API_ENDPOINT = 'https://esi.tech.ccp.is/v1/dogma/attributes/%<attribute_id>s/?datasource=tranquility'.freeze
10
+ API_ENDPOINT = 'https://esi.tech.ccp.is/v1/dogma/attributes/%<attribute_id>s/?datasource=tranquility'
9
11
 
10
12
  attr_reader :attribute_id
11
13
 
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  class DogmaAttributes < Base
4
- API_ENDPOINT = 'https://esi.tech.ccp.is/v1/dogma/attributes/?datasource=tranquility'.freeze
6
+ API_ENDPOINT = 'https://esi.tech.ccp.is/v1/dogma/attributes/?datasource=tranquility'
5
7
 
6
8
  def attributes
7
9
  response
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  class Factions < Base
4
- API_ENDPOINT = 'https://esi.tech.ccp.is/v2/universe/factions/?datasource=tranquility&language=en-us'.freeze
6
+ API_ENDPOINT = 'https://esi.tech.ccp.is/v2/universe/factions/?datasource=tranquility&language=en-us'
5
7
 
6
8
  def factions
7
9
  output = []
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  class MarketHistory < Base
4
- API_ENDPOINT = 'https://esi.tech.ccp.is/v1/markets/%s/history/?datasource=tranquility&type_id=%s'.freeze
6
+ API_ENDPOINT = 'https://esi.tech.ccp.is/v1/markets/%<region_id>s/history/?datasource=tranquility&type_id=%<type_id>s'
5
7
 
6
8
  attr_reader :region_id, :type_id
7
9
 
@@ -24,7 +26,7 @@ module EveOnline
24
26
  def scope; end
25
27
 
26
28
  def url
27
- API_ENDPOINT % [region_id, type_id]
29
+ format(API_ENDPOINT, region_id: region_id, type_id: type_id)
28
30
  end
29
31
  end
30
32
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
@@ -1,19 +1,21 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
4
6
  class AllianceIcon < Base
5
7
  def as_json
6
8
  {
7
- small: small,
8
- medium: medium
9
+ icon_small: icon_small,
10
+ icon_medium: icon_medium
9
11
  }
10
12
  end
11
13
 
12
- def small
14
+ def icon_small
13
15
  options['px64x64']
14
16
  end
15
17
 
16
- def medium
18
+ def icon_medium
17
19
  options['px128x128']
18
20
  end
19
21
  end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ module Models
6
+ class AllianceShort < Base
7
+ def as_json
8
+ {
9
+ alliance_id: alliance_id,
10
+ alliance_name: alliance_name
11
+ }
12
+ end
13
+
14
+ def alliance_id
15
+ options['alliance_id']
16
+ end
17
+
18
+ def alliance_name
19
+ options['alliance_name']
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ module Models
6
+ class Ancestry < Base
7
+ def as_json
8
+ {
9
+ ancestry_id: ancestry_id,
10
+ name: name,
11
+ bloodline_id: bloodline_id,
12
+ description: description,
13
+ short_description: short_description,
14
+ icon_id: icon_id
15
+ }
16
+ end
17
+
18
+ def ancestry_id
19
+ options['id']
20
+ end
21
+
22
+ def name
23
+ options['name']
24
+ end
25
+
26
+ def bloodline_id
27
+ options['bloodline_id']
28
+ end
29
+
30
+ def description
31
+ options['description']
32
+ end
33
+
34
+ def short_description
35
+ options['short_description']
36
+ end
37
+
38
+ def icon_id
39
+ options['icon_id']
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'active_support/time'
2
4
 
3
5
  module EveOnline
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ module Models
6
+ class Bookmark < Base
7
+ def as_json
8
+ {
9
+ bookmark_id: bookmark_id,
10
+ folder_id: folder_id,
11
+ created: created,
12
+ label: label,
13
+ notes: notes,
14
+ location_id: location_id,
15
+ creator_id: creator_id,
16
+ item_id: item_id,
17
+ item_type_id: item_type_id,
18
+ coordinate_x: coordinate_x,
19
+ coordinate_y: coordinate_y,
20
+ coordinate_z: coordinate_z
21
+ }
22
+ end
23
+
24
+ def bookmark_id
25
+ options['bookmark_id']
26
+ end
27
+
28
+ def folder_id
29
+ options['folder_id']
30
+ end
31
+
32
+ def created
33
+ created = options['created']
34
+
35
+ parse_datetime_with_timezone(created) if created
36
+ end
37
+
38
+ def label
39
+ options['label']
40
+ end
41
+
42
+ def notes
43
+ options['notes']
44
+ end
45
+
46
+ def location_id
47
+ options['location_id']
48
+ end
49
+
50
+ def creator_id
51
+ options['creator_id']
52
+ end
53
+
54
+ def item_id
55
+ options['item']['item_id'] if options['item']
56
+ end
57
+
58
+ def item_type_id
59
+ options['item']['type_id'] if options['item']
60
+ end
61
+
62
+ def coordinate_x
63
+ options['coordinates']['x'] if options['coordinates']
64
+ end
65
+
66
+ def coordinate_y
67
+ options['coordinates']['y'] if options['coordinates']
68
+ end
69
+
70
+ def coordinate_z
71
+ options['coordinates']['z'] if options['coordinates']
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ module Models
6
+ class BookmarkFolder < Base
7
+ def as_json
8
+ {
9
+ folder_id: folder_id,
10
+ name: name
11
+ }
12
+ end
13
+
14
+ def folder_id
15
+ options['folder_id']
16
+ end
17
+
18
+ def name
19
+ options['name']
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
@@ -0,0 +1,96 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ module Models
6
+ class CharacterOrder < Base
7
+ def as_json
8
+ {
9
+ order_id: order_id,
10
+ type_id: type_id,
11
+ region_id: region_id,
12
+ location_id: location_id,
13
+ range: range,
14
+ is_buy_order: is_buy_order,
15
+ price: price,
16
+ volume_total: volume_total,
17
+ volume_remain: volume_remain,
18
+ issued: issued,
19
+ state: state,
20
+ min_volume: min_volume,
21
+ account_id: account_id,
22
+ duration: duration,
23
+ is_corp: is_corp,
24
+ escrow: escrow
25
+ }
26
+ end
27
+
28
+ def order_id
29
+ options['order_id']
30
+ end
31
+
32
+ def type_id
33
+ options['type_id']
34
+ end
35
+
36
+ def region_id
37
+ options['region_id']
38
+ end
39
+
40
+ def location_id
41
+ options['location_id']
42
+ end
43
+
44
+ def range
45
+ options['range']
46
+ end
47
+
48
+ def is_buy_order
49
+ options['is_buy_order']
50
+ end
51
+
52
+ def price
53
+ options['price']
54
+ end
55
+
56
+ def volume_total
57
+ options['volume_total']
58
+ end
59
+
60
+ def volume_remain
61
+ options['volume_remain']
62
+ end
63
+
64
+ def issued
65
+ issued = options['issued']
66
+
67
+ parse_datetime_with_timezone(issued) if issued
68
+ end
69
+
70
+ def state
71
+ options['state']
72
+ end
73
+
74
+ def min_volume
75
+ options['min_volume']
76
+ end
77
+
78
+ def account_id
79
+ options['account_id']
80
+ end
81
+
82
+ def duration
83
+ options['duration']
84
+ end
85
+
86
+ def is_corp
87
+ options['is_corp']
88
+ end
89
+
90
+ def escrow
91
+ options['escrow']
92
+ end
93
+ end
94
+ end
95
+ end
96
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module EveOnline
2
4
  module ESI
3
5
  module Models
@@ -0,0 +1,91 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ module Models
6
+ class CorporationOrder < Base
7
+ def as_json
8
+ {
9
+ order_id: order_id,
10
+ type_id: type_id,
11
+ region_id: region_id,
12
+ location_id: location_id,
13
+ range: range,
14
+ is_buy_order: is_buy_order,
15
+ price: price,
16
+ volume_total: volume_total,
17
+ volume_remain: volume_remain,
18
+ issued: issued,
19
+ state: state,
20
+ min_volume: min_volume,
21
+ wallet_division: wallet_division,
22
+ duration: duration,
23
+ escrow: escrow
24
+ }
25
+ end
26
+
27
+ def order_id
28
+ options['order_id']
29
+ end
30
+
31
+ def type_id
32
+ options['type_id']
33
+ end
34
+
35
+ def region_id
36
+ options['region_id']
37
+ end
38
+
39
+ def location_id
40
+ options['location_id']
41
+ end
42
+
43
+ def range
44
+ options['range']
45
+ end
46
+
47
+ def is_buy_order
48
+ options['is_buy_order']
49
+ end
50
+
51
+ def price
52
+ options['price']
53
+ end
54
+
55
+ def volume_total
56
+ options['volume_total']
57
+ end
58
+
59
+ def volume_remain
60
+ options['volume_remain']
61
+ end
62
+
63
+ def issued
64
+ issued = options['issued']
65
+
66
+ parse_datetime_with_timezone(issued) if issued
67
+ end
68
+
69
+ def state
70
+ options['state']
71
+ end
72
+
73
+ def min_volume
74
+ options['min_volume']
75
+ end
76
+
77
+ def wallet_division
78
+ options['wallet_division']
79
+ end
80
+
81
+ def duration
82
+ options['duration']
83
+ end
84
+
85
+ def escrow
86
+ options['escrow']
87
+ end
88
+ end
89
+ end
90
+ end
91
+ end