eve_online 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +6 -2
- data/LICENSE.txt +1 -1
- data/README.md +197 -132
- data/eve_online.gemspec +3 -5
- data/lib/eve_online.rb +11 -3
- data/lib/eve_online/account/api_key_info.rb +4 -5
- data/lib/eve_online/account/characters.rb +3 -3
- data/lib/eve_online/account/status.rb +5 -7
- data/lib/eve_online/base.rb +6 -31
- data/lib/eve_online/base_crest.rb +11 -0
- data/lib/eve_online/base_xml.rb +32 -0
- data/lib/eve_online/blueprint.rb +1 -1
- data/lib/eve_online/bookmark.rb +69 -0
- data/lib/eve_online/bookmark_folder.rb +24 -0
- data/lib/eve_online/characters/account_balance.rb +3 -3
- data/lib/eve_online/characters/asset_list.rb +30 -6
- data/lib/eve_online/characters/blueprints.rb +3 -3
- data/lib/eve_online/characters/bookmarks.rb +29 -4
- data/lib/eve_online/characters/calendar_event_attendees.rb +3 -3
- data/lib/eve_online/characters/character_sheet.rb +3 -3
- data/lib/eve_online/characters/contact_list.rb +3 -3
- data/lib/eve_online/characters/contact_notifications.rb +3 -3
- data/lib/eve_online/characters/skill_in_training.rb +14 -17
- data/lib/eve_online/characters/upcoming_calendar_events.rb +3 -3
- data/lib/eve_online/eve/character_id.rb +41 -0
- data/lib/eve_online/event.rb +1 -2
- data/lib/eve_online/event_response_object.rb +4 -4
- data/lib/eve_online/item.rb +49 -0
- data/lib/eve_online/server/status.rb +3 -3
- data/lib/eve_online/sovereignty/campaigns.rb +28 -0
- data/lib/eve_online/version.rb +1 -1
- metadata +18 -14
- data/lib/eve_online/eve/skill_tree.rb +0 -12
- data/lib/eve_online/skill.rb +0 -5
- data/lib/eve_online/skill_group.rb +0 -5
@@ -1,8 +1,8 @@
|
|
1
1
|
module EveOnline
|
2
2
|
module Characters
|
3
|
-
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/char_charactersheet
|
4
|
-
class CharacterSheet <
|
5
|
-
API_ENDPOINT = 'https://api.eveonline.com/char/CharacterSheet.xml.aspx'
|
3
|
+
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/character/char_charactersheet.html
|
4
|
+
class CharacterSheet < BaseXML
|
5
|
+
API_ENDPOINT = 'https://api.eveonline.com/char/CharacterSheet.xml.aspx'.freeze
|
6
6
|
|
7
7
|
attr_reader :key_id, :v_code, :character_id
|
8
8
|
|
@@ -1,8 +1,8 @@
|
|
1
1
|
module EveOnline
|
2
2
|
module Characters
|
3
|
-
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/char_contactlist
|
4
|
-
class ContactList <
|
5
|
-
API_ENDPOINT = 'https://api.eveonline.com/char/ContactList.xml.aspx'
|
3
|
+
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/character/char_contactlist.html
|
4
|
+
class ContactList < BaseXML
|
5
|
+
API_ENDPOINT = 'https://api.eveonline.com/char/ContactList.xml.aspx'.freeze
|
6
6
|
|
7
7
|
attr_reader :key_id, :v_code, :character_id
|
8
8
|
|
@@ -1,8 +1,8 @@
|
|
1
1
|
module EveOnline
|
2
2
|
module Characters
|
3
|
-
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/char_contactnotifications
|
4
|
-
class ContactNotifications <
|
5
|
-
API_ENDPOINT = 'https://api.eveonline.com/char/ContactNotifications.xml.aspx'
|
3
|
+
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/character/char_contactnotifications.html
|
4
|
+
class ContactNotifications < BaseXML
|
5
|
+
API_ENDPOINT = 'https://api.eveonline.com/char/ContactNotifications.xml.aspx'.freeze
|
6
6
|
|
7
7
|
attr_reader :key_id, :v_code, :character_id
|
8
8
|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
module EveOnline
|
2
2
|
module Characters
|
3
|
-
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/char_skillintraining
|
4
|
-
class SkillInTraining <
|
5
|
-
API_ENDPOINT = 'https://api.eveonline.com/char/SkillInTraining.xml.aspx'
|
6
|
-
|
3
|
+
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/character/char_skillintraining.html
|
4
|
+
class SkillInTraining < BaseXML
|
5
|
+
API_ENDPOINT = 'https://api.eveonline.com/char/SkillInTraining.xml.aspx'.freeze
|
6
|
+
|
7
7
|
attr_reader :key_id, :v_code, :character_id
|
8
8
|
|
9
9
|
def initialize(key_id, v_code, character_id)
|
@@ -27,36 +27,33 @@ module EveOnline
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def current_tq_time
|
30
|
-
@current_tq_time ||=
|
31
|
-
ActiveSupport::TimeZone['UTC'].parse(result.fetch('currentTQTime'))
|
30
|
+
@current_tq_time ||= ActiveSupport::TimeZone['UTC'].parse(result.fetch('currentTQTime'))
|
32
31
|
end
|
33
|
-
|
32
|
+
|
34
33
|
def training_end_time
|
35
|
-
@training_end_time ||=
|
36
|
-
ActiveSupport::TimeZone['UTC'].parse(result.fetch('trainingEndTime'))
|
34
|
+
@training_end_time ||= ActiveSupport::TimeZone['UTC'].parse(result.fetch('trainingEndTime'))
|
37
35
|
end
|
38
|
-
|
36
|
+
|
39
37
|
def training_start_time
|
40
|
-
@training_start_time ||=
|
41
|
-
ActiveSupport::TimeZone['UTC'].parse(result.fetch('trainingStartTime'))
|
38
|
+
@training_start_time ||= ActiveSupport::TimeZone['UTC'].parse(result.fetch('trainingStartTime'))
|
42
39
|
end
|
43
|
-
|
40
|
+
|
44
41
|
def training_type_id
|
45
42
|
@training_type_id ||= result.fetch('trainingTypeID').to_i
|
46
43
|
end
|
47
|
-
|
44
|
+
|
48
45
|
def training_start_sp
|
49
46
|
@training_start_sp ||= result.fetch('trainingStartSP').to_i
|
50
47
|
end
|
51
|
-
|
48
|
+
|
52
49
|
def training_destination_sp
|
53
50
|
@training_destination_sp ||= result.fetch('trainingDestinationSP').to_i
|
54
51
|
end
|
55
|
-
|
52
|
+
|
56
53
|
def training_to_level
|
57
54
|
@training_to_level ||= result.fetch('trainingToLevel').to_i
|
58
55
|
end
|
59
|
-
|
56
|
+
|
60
57
|
def skill_in_training
|
61
58
|
@skill_in_training ||= result.fetch('skillInTraining').to_i
|
62
59
|
end
|
@@ -1,8 +1,8 @@
|
|
1
1
|
module EveOnline
|
2
2
|
module Characters
|
3
|
-
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/char_upcomingcalendarevents
|
4
|
-
class UpcomingCalendarEvents <
|
5
|
-
API_ENDPOINT = 'https://api.eveonline.com/char/UpcomingCalendarEvents.xml.aspx'
|
3
|
+
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/character/char_upcomingcalendarevents.html
|
4
|
+
class UpcomingCalendarEvents < BaseXML
|
5
|
+
API_ENDPOINT = 'https://api.eveonline.com/char/UpcomingCalendarEvents.xml.aspx'.freeze
|
6
6
|
|
7
7
|
attr_reader :key_id, :v_code, :character_id
|
8
8
|
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'uri'
|
2
|
+
|
3
|
+
module EveOnline
|
4
|
+
module Eve
|
5
|
+
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/eve/eve_characterid.html
|
6
|
+
class CharacterID < BaseXML
|
7
|
+
API_ENDPOINT = 'https://api.eveonline.com/eve/CharacterID.xml.aspx'.freeze
|
8
|
+
|
9
|
+
attr_reader :input
|
10
|
+
|
11
|
+
def initialize(input)
|
12
|
+
super()
|
13
|
+
@input = input
|
14
|
+
end
|
15
|
+
|
16
|
+
def characters
|
17
|
+
# TODO: implement
|
18
|
+
raise NotImplementedError
|
19
|
+
end
|
20
|
+
|
21
|
+
def names
|
22
|
+
@names ||= case input
|
23
|
+
when String
|
24
|
+
input
|
25
|
+
when Array
|
26
|
+
input.join(',')
|
27
|
+
else
|
28
|
+
raise ArgumentError
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def escaped_input
|
33
|
+
@escaped_input ||= URI.escape(names)
|
34
|
+
end
|
35
|
+
|
36
|
+
def url
|
37
|
+
"#{ API_ENDPOINT }?names=#{ escaped_input }"
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
data/lib/eve_online/event.rb
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
module EveOnline
|
2
2
|
class EventResponseObject
|
3
3
|
STATUSES = { 'Undecided' => :undecided, 'Accepted' => :accepted,
|
4
|
-
'Declined' => :declined, 'Tentative' => :tentative }
|
4
|
+
'Declined' => :declined, 'Tentative' => :tentative }.freeze
|
5
5
|
|
6
6
|
attr_reader :input
|
7
|
-
|
7
|
+
|
8
8
|
def initialize(input)
|
9
9
|
@input = input
|
10
10
|
end
|
11
|
-
|
11
|
+
|
12
12
|
def value
|
13
|
-
raise ArgumentError unless STATUSES.
|
13
|
+
raise ArgumentError unless STATUSES.key?(input)
|
14
14
|
|
15
15
|
@value ||= STATUSES.fetch(input)
|
16
16
|
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
module EveOnline
|
2
|
+
class Item
|
3
|
+
attr_reader :options
|
4
|
+
|
5
|
+
def initialize(options = {})
|
6
|
+
@options = options
|
7
|
+
end
|
8
|
+
|
9
|
+
def as_json(*args)
|
10
|
+
{
|
11
|
+
item_id: item_id,
|
12
|
+
location_id: location_id,
|
13
|
+
type_id: type_id,
|
14
|
+
quantity: quantity,
|
15
|
+
flag: flag,
|
16
|
+
singleton: singleton,
|
17
|
+
raw_quantity: raw_quantity
|
18
|
+
}
|
19
|
+
end
|
20
|
+
|
21
|
+
def item_id
|
22
|
+
@item_id ||= options.fetch('@itemID').to_i
|
23
|
+
end
|
24
|
+
|
25
|
+
def location_id
|
26
|
+
@location_id ||= options.fetch('@locationID').to_i
|
27
|
+
end
|
28
|
+
|
29
|
+
def type_id
|
30
|
+
@type_id ||= options.fetch('@typeID').to_i
|
31
|
+
end
|
32
|
+
|
33
|
+
def quantity
|
34
|
+
@quantity ||= options.fetch('@quantity').to_i
|
35
|
+
end
|
36
|
+
|
37
|
+
def flag
|
38
|
+
@flag ||= options.fetch('@flag').to_i
|
39
|
+
end
|
40
|
+
|
41
|
+
def singleton
|
42
|
+
@singleton ||= options.fetch('@singleton').to_i
|
43
|
+
end
|
44
|
+
|
45
|
+
def raw_quantity
|
46
|
+
@raw_quantity ||= options.fetch('@rawQuantity').to_i
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -1,8 +1,8 @@
|
|
1
1
|
module EveOnline
|
2
2
|
module Server
|
3
|
-
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/
|
4
|
-
class Status <
|
5
|
-
API_ENDPOINT = 'https://api.eveonline.com/Server/ServerStatus.xml.aspx'
|
3
|
+
# https://eveonline-third-party-documentation.readthedocs.org/en/latest/xmlapi/server/serv_serverstatus.html
|
4
|
+
class Status < BaseXML
|
5
|
+
API_ENDPOINT = 'https://api.eveonline.com/Server/ServerStatus.xml.aspx'.freeze
|
6
6
|
|
7
7
|
def as_json(*args)
|
8
8
|
{
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module EveOnline
|
2
|
+
module Sovereignty
|
3
|
+
# TODO: WTF? where docs???
|
4
|
+
# https://developers.eveonline.com/blog/article/aegis-sovereignty-api-changes
|
5
|
+
class Campaigns < BaseCREST
|
6
|
+
API_ENDPOINT = 'https://crest-tq.eveonline.com/sovereignty/campaigns/'.freeze
|
7
|
+
|
8
|
+
# TODO: return array of objects
|
9
|
+
def items
|
10
|
+
@items ||= response.fetch('items')
|
11
|
+
end
|
12
|
+
|
13
|
+
# TODO: recheck this and maybe remove as unneeded
|
14
|
+
def page_count
|
15
|
+
response.fetch('pageCount')
|
16
|
+
end
|
17
|
+
|
18
|
+
# TODO: recheck this and maybe remove as unneeded
|
19
|
+
def total_count
|
20
|
+
response.fetch('totalCount')
|
21
|
+
end
|
22
|
+
|
23
|
+
def url
|
24
|
+
API_ENDPOINT
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/eve_online/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eve_online
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Igor Zubkov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-05-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -28,16 +28,16 @@ dependencies:
|
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
89
|
+
version: 3.0.0
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
96
|
+
version: 3.0.0
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: nori
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -109,19 +109,19 @@ dependencies:
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '2.6'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: json
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - ">="
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
117
|
+
version: '0'
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - ">="
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
124
|
+
version: '0'
|
125
125
|
description: EveOnline API. XML and CREST.
|
126
126
|
email:
|
127
127
|
- igor.zubkov@gmail.com
|
@@ -144,7 +144,11 @@ files:
|
|
144
144
|
- lib/eve_online/account/characters.rb
|
145
145
|
- lib/eve_online/account/status.rb
|
146
146
|
- lib/eve_online/base.rb
|
147
|
+
- lib/eve_online/base_crest.rb
|
148
|
+
- lib/eve_online/base_xml.rb
|
147
149
|
- lib/eve_online/blueprint.rb
|
150
|
+
- lib/eve_online/bookmark.rb
|
151
|
+
- lib/eve_online/bookmark_folder.rb
|
148
152
|
- lib/eve_online/character.rb
|
149
153
|
- lib/eve_online/characters/account_balance.rb
|
150
154
|
- lib/eve_online/characters/asset_list.rb
|
@@ -156,12 +160,12 @@ files:
|
|
156
160
|
- lib/eve_online/characters/contact_notifications.rb
|
157
161
|
- lib/eve_online/characters/skill_in_training.rb
|
158
162
|
- lib/eve_online/characters/upcoming_calendar_events.rb
|
159
|
-
- lib/eve_online/eve/
|
163
|
+
- lib/eve_online/eve/character_id.rb
|
160
164
|
- lib/eve_online/event.rb
|
161
165
|
- lib/eve_online/event_response_object.rb
|
166
|
+
- lib/eve_online/item.rb
|
162
167
|
- lib/eve_online/server/status.rb
|
163
|
-
- lib/eve_online/
|
164
|
-
- lib/eve_online/skill_group.rb
|
168
|
+
- lib/eve_online/sovereignty/campaigns.rb
|
165
169
|
- lib/eve_online/version.rb
|
166
170
|
homepage: https://github.com/biow0lf/eve_online
|
167
171
|
licenses:
|
data/lib/eve_online/skill.rb
DELETED