betfair_api_ng_rails 0.0.6 → 0.0.8

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.
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