betfair_api_ng_rails 0.0.6 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +28 -10
  3. data/lib/betfair_api_ng_rails/api/base_provider.rb +1 -11
  4. data/lib/betfair_api_ng_rails/api/bf/config.rb +1 -2
  5. data/lib/betfair_api_ng_rails/api/bf/constants.rb +14 -4
  6. data/lib/betfair_api_ng_rails/api/bf/data/attributes.rb +52 -0
  7. data/lib/betfair_api_ng_rails/api/bf/data/base.rb +17 -0
  8. data/lib/betfair_api_ng_rails/api/bf/data/competition.rb +26 -0
  9. data/lib/betfair_api_ng_rails/api/bf/data/competition_result.rb +23 -0
  10. data/lib/betfair_api_ng_rails/api/bf/data/concerns/hashable.rb +40 -0
  11. data/lib/betfair_api_ng_rails/api/bf/data/concerns/querable.rb +46 -0
  12. data/lib/betfair_api_ng_rails/api/bf/data/constants.rb +13 -0
  13. data/lib/betfair_api_ng_rails/api/bf/data/event.rb +26 -0
  14. data/lib/betfair_api_ng_rails/api/bf/data/event_result.rb +21 -0
  15. data/lib/betfair_api_ng_rails/api/bf/data/event_type.rb +26 -0
  16. data/lib/betfair_api_ng_rails/api/bf/data/event_type_result.rb +21 -0
  17. data/lib/betfair_api_ng_rails/api/bf/data/market_filter.rb +19 -0
  18. data/lib/betfair_api_ng_rails/api/bf/data/time_range.rb +18 -0
  19. data/lib/betfair_api_ng_rails/api/bf/data/time_range_result.rb +21 -0
  20. data/lib/betfair_api_ng_rails/api/bf/enums/bet_status.rb +17 -0
  21. data/lib/betfair_api_ng_rails/api/bf/enums/concerns/enumable.rb +17 -0
  22. data/lib/betfair_api_ng_rails/api/bf/enums/execution_report_error_code.rb +30 -0
  23. data/lib/betfair_api_ng_rails/api/bf/enums/execution_report_status.rb +17 -0
  24. data/lib/betfair_api_ng_rails/api/bf/enums/group_by.rb +19 -0
  25. data/lib/betfair_api_ng_rails/api/bf/enums/instruction_report_error_code.rb +33 -0
  26. data/lib/betfair_api_ng_rails/api/bf/enums/instruction_report_status.rb +16 -0
  27. data/lib/betfair_api_ng_rails/api/bf/enums/market_betting_type.rb +19 -0
  28. data/lib/betfair_api_ng_rails/api/bf/enums/market_projection.rb +20 -0
  29. data/lib/betfair_api_ng_rails/api/bf/enums/market_sort.rb +19 -0
  30. data/lib/betfair_api_ng_rails/api/bf/enums/market_status.rb +17 -0
  31. data/lib/betfair_api_ng_rails/api/bf/enums/match_projection.rb +16 -0
  32. data/lib/betfair_api_ng_rails/api/bf/enums/order_by.rb +16 -0
  33. data/lib/betfair_api_ng_rails/api/bf/enums/order_projection.rb +16 -0
  34. data/lib/betfair_api_ng_rails/api/bf/enums/order_status.rb +15 -0
  35. data/lib/betfair_api_ng_rails/api/bf/enums/order_type.rb +16 -0
  36. data/lib/betfair_api_ng_rails/api/bf/enums/persistence_type.rb +16 -0
  37. data/lib/betfair_api_ng_rails/api/bf/enums/price_data.rb +18 -0
  38. data/lib/betfair_api_ng_rails/api/bf/enums/rollup_model.rb +17 -0
  39. data/lib/betfair_api_ng_rails/api/bf/enums/runner_status.rb +19 -0
  40. data/lib/betfair_api_ng_rails/api/bf/enums/side.rb +15 -0
  41. data/lib/betfair_api_ng_rails/api/bf/enums/sort_dir.rb +15 -0
  42. data/lib/betfair_api_ng_rails/api/bf/enums/time_granularity.rb +16 -0
  43. data/lib/betfair_api_ng_rails/api/bf/formatters/js_tree_formatter.rb +7 -11
  44. data/lib/betfair_api_ng_rails/api/bf/helper.rb +33 -0
  45. data/lib/betfair_api_ng_rails/api/bf/http/factory.rb +37 -0
  46. data/lib/betfair_api_ng_rails/api/bf/http/requester.rb +69 -0
  47. data/lib/betfair_api_ng_rails/api/bf/http/responser.rb +58 -0
  48. data/lib/betfair_api_ng_rails/api/bf/orm/parsers/base.rb +33 -0
  49. data/lib/betfair_api_ng_rails/api/bf/orm/parsers/list_competitions.rb +19 -0
  50. data/lib/betfair_api_ng_rails/api/bf/orm/parsers/list_event_types.rb +19 -0
  51. data/lib/betfair_api_ng_rails/api/bf/orm/parsers/list_events.rb +19 -0
  52. data/lib/betfair_api_ng_rails/api/bf/orm/requester.rb +52 -0
  53. data/lib/betfair_api_ng_rails/api/bf/provider.rb +11 -28
  54. data/lib/betfair_api_ng_rails/api/bf/session_manager.rb +26 -37
  55. data/lib/betfair_api_ng_rails/version.rb +1 -1
  56. data/lib/betfair_api_ng_rails.rb +80 -9
  57. data/lib/generators/betfair_api_ng_rails/install/templates/betfair_api_ng_rails.rb +2 -3
  58. metadata +48 -9
  59. data/lib/betfair_api_ng_rails/api/base_formatter.rb +0 -11
  60. data/lib/betfair_api_ng_rails/api/base_parser.rb +0 -25
  61. data/lib/betfair_api_ng_rails/api/base_requester.rb +0 -25
  62. data/lib/betfair_api_ng_rails/api/bf/http_requester.rb +0 -73
  63. data/lib/betfair_api_ng_rails/api/bf/http_responser.rb +0 -44
  64. data/lib/betfair_api_ng_rails/api/bf/parser.rb +0 -31
  65. data/lib/betfair_api_ng_rails/api/soccer/requester.rb +0 -25
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9d4331f320e5e91adc30dcca6364e44be4bc38ad
4
- data.tar.gz: 32f2bb4dd3cf565ed282c9ddb1ba31e8a0538192
3
+ metadata.gz: cf7f63ee0737110869e21a922b12a4aa99850019
4
+ data.tar.gz: bed144ea5a16997275538b8fd88b1566413e6b64
5
5
  SHA512:
6
- metadata.gz: 09b7ff8a4028830d7addc66f5aabf22ed3a14bffe9d08bf071bccf5ec8634c5803dccb3873ebf036cdf396d1ca83fa74e4784e1e3f1fa79dabeadce7cf06e500
7
- data.tar.gz: 00b898d7cbe81d336514bab145731cac7424fe8113429dbe118d902618cf8b24bf44825b345f7f7ba545eff1d9fc5f3e72b4ed1931b09974644c4e1bd765cf95
6
+ metadata.gz: 86b7d9ab358b32912b1fe5e4a1bf2b56a8cd731f976a1e82268c0ca843dc03bda4aa94ec2da6e65edd34382b39c62ac60c8bb073bfd0b96ebde826f63c0a64d4
7
+ data.tar.gz: b437d15bea1d28fc5cbce55c6ad5bb8b1274249382d4f3b8a0ab38e0db0140534c14c2bae652497c98ec40c0f17deb163891736c7e2843382a0b5209bb373d9f
data/README.md CHANGED
@@ -2,10 +2,6 @@
2
2
 
3
3
  API-NG is Betfair's next generation API for developers looking to create automated betting systems or custom interfaces for themselves or for Betfair customers. Using this gem you may do calls to API-NG for fetching some interesting information about competitions, events and markets.
4
4
 
5
- ## WARNING!!!
6
-
7
- __Last version of gem supports only list* requests.__
8
-
9
5
  ## Installation
10
6
 
11
7
  Add this line to your application's Gemfile:
@@ -39,22 +35,44 @@ In this files you must specify credentials to API-NG. Also you should notice tha
39
35
 
40
36
  ## Usage
41
37
 
42
- Sample code for fetching competitions list:
38
+ Sample code for fetching all competitions:
43
39
 
44
40
  ```ruby
45
- requester = BetfairApiNgRails::Api::Soccer::Requester.new provider: :bf
46
- res = requester.load resource: :competitions
41
+ result = BetfairApiNgRails::Competition.all
47
42
  ```
48
43
 
49
44
  For all available methods see [there](https://api.developer.betfair.com/services/webapps/docs/display/1smk3cen4v3lu3yomq5qye0ni/Betting+Operations).
50
45
 
51
- Also you may passing filering params in _load_:
46
+ Also you may passing filtering params:
47
+
48
+ ```ruby
49
+ filter = BetfairApiNgRails::MarketFilter.new text_query: 'World*'
50
+ result = BetfairApiNgRails::Competition.where filter: filter
51
+ ```
52
+
53
+ Or fetching competition by identifier:
52
54
 
53
55
  ```ruby
54
- requester = BetfairApiNgRails::Api::Soccer::Requester.new provider: :bf
55
- res = requester.load resource: :competitions, parameters: { event_ids: [1, 2] }
56
+ result = BetfairApiNgRails::Competition.find 1
56
57
  ```
57
58
 
59
+ ## CHANGES IN 0.0.8
60
+
61
+ 1. Fixing more of bugs
62
+ 2. Came back formatters and out-of-box exists formatter for JsTree
63
+ 3. Added all enums
64
+ 4. Added shortcuts for models
65
+ 5. Refactoring
66
+
67
+ ## CHANGES IN 0.0.7!!!
68
+
69
+ Now gem used Object model for doing requests and it's results that is based on [betfair's type definitions](https://api.developer.betfair.com/services/webapps/docs/display/1smk3cen4v3lu3yomq5qye0ni/Betting+Type+Definitions#BettingTypeDefinitions-UpdateInstruction).
70
+
71
+ ## WARNING!!!
72
+
73
+ __Last version of gem supports only listCompetitions, listEventTypes and listEvents requests.__ I will provide more powerful functional soon.
74
+
75
+
58
76
  ## Contributing
59
77
 
60
78
  1. Fork it
@@ -6,20 +6,10 @@ module BetfairApiNgRails
6
6
 
7
7
  attr_reader :provider_name
8
8
 
9
- def fetch(data: "", parameters: {}, sport: "")
9
+ def fetch(method: "", filter: {}, params: {})
10
10
  raise "Must be reimplemented!"
11
11
  end
12
12
 
13
- private
14
-
15
- def build_function(method)
16
- "list#{method.to_s.camelize}"
17
- end
18
-
19
- def build_parser(data)
20
- "BetfairApiNgRails::Api::#{provider_name}::Parser".constantize.new data.to_s.singularize
21
- end
22
-
23
13
  end
24
14
  end
25
15
  end
@@ -1,5 +1,3 @@
1
- require 'betfair_api_ng_rails/api/bf/formatters/js_tree_formatter'
2
-
3
1
  module BetfairApiNgRails
4
2
  module Api
5
3
  module BF
@@ -14,6 +12,7 @@ module BetfairApiNgRails
14
12
  :api_url,
15
13
  :username,
16
14
  :password,
15
+ :locale,
17
16
  :formatter
18
17
 
19
18
  def formatter=(value)
@@ -16,10 +16,20 @@ module BetfairApiNgRails
16
16
  "Accept" => "application/json"
17
17
  }
18
18
 
19
- ALLOWED_RESOURCES = {
20
- soccer: [:event_types, :competitions, :time_ranges, :events, :market_types, :countries, :venues, :market_catalogue,
21
- :market_book, :current_orders, :cleared_orders, :market_profit_and_loss]
22
- }
19
+ ALLOWED_RESOURCES = [
20
+ "listEventTypes",
21
+ "listCompetitions",
22
+ "listTimeRanges",
23
+ "listEvents",
24
+ "listMarketTypes",
25
+ "listCountries",
26
+ "listVenues",
27
+ "listMarketCatalogue",
28
+ "listMarketBook",
29
+ "listCurrentOrders",
30
+ "listClearedOrders",
31
+ "listMarketProfitAndLoss"
32
+ ]
23
33
 
24
34
  end
25
35
  end
@@ -0,0 +1,52 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ module Attributes
6
+
7
+ MARKET_FILTER_ATTRS = [
8
+ :text_query,
9
+ :exchange_ids,
10
+ :event_type_ids,
11
+ :event_ids,
12
+ :competition_ids,
13
+ :venues,
14
+ :bsp_only,
15
+ :turn_in_play_enabled,
16
+ :in_play_only,
17
+ :market_betting_types,
18
+ :market_countries,
19
+ :market_type_codes,
20
+ :market_start_time,
21
+ :with_orders
22
+ ]
23
+
24
+ COMPETITION_ATTRS = [
25
+ :id,
26
+ :name
27
+ ]
28
+
29
+ EVENT_TYPE_ATTRS = [
30
+ :id,
31
+ :name
32
+ ]
33
+
34
+ EVENT_ATTRS = [
35
+ :id,
36
+ :name,
37
+ :timezone,
38
+ :country_code,
39
+ :venue,
40
+ :open_date
41
+ ]
42
+
43
+ TIME_RANGE_ATTRS = [
44
+ :from,
45
+ :to
46
+ ]
47
+
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,17 @@
1
+ require 'active_support/inflector'
2
+
3
+ module BetfairApiNgRails
4
+ module Api
5
+ module BF
6
+ module Data
7
+ class Base
8
+
9
+ def initialize(args = {})
10
+ args.each { |attribute, value| self.send("#{attribute}=", value) }
11
+ end
12
+
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,26 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class Competition < Api::BF::Data::Base
6
+ include Api::BF::Data::Attributes
7
+ extend Api::BF::Data::Concerns::Querable
8
+ include Api::BF::Data::Concerns::Hashable
9
+
10
+ attr_accessor *COMPETITION_ATTRS
11
+
12
+ querable :competitions, :competition_ids
13
+
14
+ def self.from_json(json_row)
15
+ new COMPETITION_ATTRS.inject({}) { |h, a| h[a] = json_row[a.to_s.camelize(:lower)]; h }
16
+ end
17
+
18
+ def self.to_hash_attrs
19
+ COMPETITION_ATTRS
20
+ end
21
+
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,23 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class CompetitionResult < Api::BF::Data::Base
6
+
7
+ attr_accessor :market_count,
8
+ :competition_region,
9
+ :competition
10
+
11
+ def self.from_json(json_row)
12
+ new(
13
+ competition: Api::BF::Data::Competition.from_json(json_row['competition']),
14
+ market_count: json_row['marketCount'],
15
+ competition_region: json_row['competitionRegion']
16
+ )
17
+ end
18
+
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,40 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ module Concerns
6
+ module Hashable
7
+ include BetfairApiNgRails::Api::BF::Data::Constants
8
+
9
+ def to_hash
10
+ self.class.to_hash_attrs.inject({}) do |h, attrib|
11
+ val = get_attr_value(attrib)
12
+ h[hash_key(attrib)] = hash_value(val) unless val.nil?
13
+ h
14
+ end
15
+ end
16
+
17
+ private
18
+
19
+ def hash_value(val)
20
+ need_to_hash?(val) ? val.to_hash : val
21
+ end
22
+
23
+ def need_to_hash?(val)
24
+ !ATTRS_AS_IS.include?(val.class)
25
+ end
26
+
27
+ def get_attr_value(attrib)
28
+ self.send attrib
29
+ end
30
+
31
+ def hash_key(attrib)
32
+ attrib.to_s.camelize(:lower)
33
+ end
34
+
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,46 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ module Concerns
6
+ module Querable
7
+
8
+ def querable(resource, find_attr = false)
9
+ methods = <<-CODE
10
+ #{where_query_method(resource)}
11
+ #{all_query_method}
12
+ #{find_query_method(find_attr) if find_attr}
13
+ CODE
14
+ instance_eval(methods)
15
+ end
16
+
17
+ private
18
+
19
+ def where_query_method(resource)
20
+ <<-STR
21
+ def where(filter: Api::BF::Data::MarketFilter.new, params: {})
22
+ Api::BF::ORM::Requester.load resource: :#{resource}, filter: filter, params: params
23
+ end
24
+ STR
25
+ end
26
+
27
+ def all_query_method
28
+ <<-STR
29
+ def all; where; end;
30
+ STR
31
+ end
32
+
33
+ def find_query_method(find_attr)
34
+ <<-STR
35
+ def find(id)
36
+ where filter: Api::BF::Data::MarketFilter.new(#{find_attr}: [id])
37
+ end
38
+ STR
39
+ end
40
+
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,13 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ module Constants
6
+
7
+ ATTRS_AS_IS = [Array, Hash, String, Symbol, Fixnum]
8
+
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,26 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class Event < Api::BF::Data::Base
6
+ include Api::BF::Data::Attributes
7
+ extend Api::BF::Data::Concerns::Querable
8
+ include Api::BF::Data::Concerns::Hashable
9
+
10
+ attr_accessor *EVENT_ATTRS
11
+
12
+ querable :events, :event_ids
13
+
14
+ def self.from_json(json_row)
15
+ new EVENT_ATTRS.inject({}) { |h, a| h[a] = json_row[a.to_s.camelize(:lower)]; h }
16
+ end
17
+
18
+ def self.to_hash_attrs
19
+ EVENT_ATTRS
20
+ end
21
+
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,21 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class EventResult < Api::BF::Data::Base
6
+
7
+ attr_accessor :market_count,
8
+ :event
9
+
10
+ def self.from_json(json_row)
11
+ new(
12
+ event: Api::BF::Data::Event.from_json(json_row['event']),
13
+ market_count: json_row['marketCount']
14
+ )
15
+ end
16
+
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,26 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class EventType < Api::BF::Data::Base
6
+ include Api::BF::Data::Attributes
7
+ extend Api::BF::Data::Concerns::Querable
8
+ include Api::BF::Data::Concerns::Hashable
9
+
10
+ attr_accessor *EVENT_TYPE_ATTRS
11
+
12
+ querable :event_types, :event_type_ids
13
+
14
+ def self.from_json(json_row)
15
+ new EVENT_TYPE_ATTRS.inject({}) { |h, a| h[a] = json_row[a.to_s.camelize(:lower)]; h }
16
+ end
17
+
18
+ def self.to_hash_attrs
19
+ EVENT_TYPE_ATTRS
20
+ end
21
+
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,21 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class EventTypeResult < Api::BF::Data::Base
6
+
7
+ attr_accessor :market_count,
8
+ :event_type
9
+
10
+ def self.from_json(json_row)
11
+ new(
12
+ event_type: Api::BF::Data::EventType.from_json(json_row['eventType']),
13
+ market_count: json_row['marketCount'],
14
+ )
15
+ end
16
+
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,19 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class MarketFilter < Api::BF::Data::Base
6
+ include Api::BF::Data::Attributes
7
+ include Api::BF::Data::Concerns::Hashable
8
+
9
+ attr_accessor *MARKET_FILTER_ATTRS
10
+
11
+ def self.to_hash_attrs
12
+ MARKET_FILTER_ATTRS
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,18 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class TimeRange < Api::BF::Data::Base
6
+ include Api::BF::Data::Attributes
7
+
8
+ attr_accessor *TIME_RANGE_ATTRS
9
+
10
+ def self.from_json(json_row)
11
+ new TIME_RANGE_ATTRS.inject({}) { |h, a| h[a] = json_row[a.to_s.camelize(:lower)]; h }
12
+ end
13
+
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,21 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Data
5
+ class TimeRangeResult < Api::BF::Data::Base
6
+
7
+ attr_accessor :time_range,
8
+ :market_count
9
+
10
+ def self.from_json(json_row)
11
+ new(
12
+ time_range: Api::BF::Data::TimeRange.from_json(json_row['timeRange']),
13
+ market_count: json_row['marketCount'],
14
+ )
15
+ end
16
+
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,17 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Enums
5
+ class BetStatus
6
+ extend Api::BF::Enums::Concerns::Enumable
7
+
8
+ enumify "SETTLED",
9
+ "VOIDED",
10
+ "LAPSED",
11
+ "CANCELLED"
12
+
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Enums
5
+ module Concerns
6
+ module Enumable
7
+
8
+ def enumify(*args)
9
+ args.flatten.each { |const| const_set(const, const) }
10
+ end
11
+
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,30 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Enums
5
+ class ExecutionReportErrorCode
6
+ extend Api::BF::Enums::Concerns::Enumable
7
+
8
+ enumify "ERROR_IN_MATCHER",
9
+ "PROCESSED_WITH_ERRORS",
10
+ "BET_ACTION_ERROR",
11
+ "INVALID_ACCOUNT_STATE",
12
+ "INVALID_WALLET_STATUS",
13
+ "INSUFFICIENT_FUNDS",
14
+ "LOSS_LIMIT_EXCEEDED",
15
+ "MARKET_SUSPENDED",
16
+ "MARKET_NOT_OPEN_FOR_BETTING",
17
+ "DUPLICATE_TRANSACTION",
18
+ "INVALID_ORDER",
19
+ "INVALID_MARKET_ID",
20
+ "PERMISSION_DENIED",
21
+ "DUPLICATE_BETIDS",
22
+ "NO_ACTION_REQUIRED",
23
+ "SERVICE_UNAVAILABLE",
24
+ "REJECTED_BY_REGULATOR"
25
+
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,17 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Enums
5
+ class ExecutionReportStatus
6
+ extend Api::BF::Enums::Concerns::Enumable
7
+
8
+ enumify "SUCCESS",
9
+ "FAILURE",
10
+ "PROCESSED_WITH_ERRORS",
11
+ "TIMEOUT"
12
+
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,19 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Enums
5
+ class GroupBy
6
+ extend Api::BF::Enums::Concerns::Enumable
7
+
8
+ enumify "EVENT_TYPE",
9
+ "EVENT",
10
+ "MARKET",
11
+ "RUNNER",
12
+ "SIDE",
13
+ "BET"
14
+
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,33 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Enums
5
+ class InstructionReportErrorCode
6
+ extend Api::BF::Enums::Concerns::Enumable
7
+
8
+ enumify "INVALID_BET_SIZE",
9
+ "INVALID_RUNNER",
10
+ "BET_TAKEN_OR_LAPSED",
11
+ "BET_IN_PROGRESS",
12
+ "RUNNER_REMOVED",
13
+ "MARKET_NOT_OPEN_FOR_BETTING",
14
+ "LOSS_LIMIT_EXCEEDED",
15
+ "MARKET_NOT_OPEN_FOR_BSP_BETTING",
16
+ "INVALID_PRICE_EDIT",
17
+ "INVALID_ODDS",
18
+ "INSUFFICIENT_FUNDS",
19
+ "INVALID_PERSISTENCE_TYPE",
20
+ "ERROR_IN_MATCHER",
21
+ "INVALID_BACK_LAY_COMBINATION",
22
+ "ERROR_IN_ORDER",
23
+ "INVALID_BID_TYPE",
24
+ "INVALID_BET_ID",
25
+ "CANCELLED_NOT_PLACED",
26
+ "RELATED_ACTION_FAILED",
27
+ "NO_ACTION_REQUIRED"
28
+
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,16 @@
1
+ module BetfairApiNgRails
2
+ module Api
3
+ module BF
4
+ module Enums
5
+ class InstructionReportStatus
6
+ extend Api::BF::Enums::Concerns::Enumable
7
+
8
+ enumify "SUCCESS",
9
+ "FAILURE",
10
+ "TIMEOUT"
11
+
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end