Class: TeamBattlesSdk::Generated::Game::Matches::BatchScores::BatchScoresRequestBuilder
- Inherits:
-
MicrosoftKiotaAbstractions::BaseRequestBuilder
- Object
- MicrosoftKiotaAbstractions::BaseRequestBuilder
- TeamBattlesSdk::Generated::Game::Matches::BatchScores::BatchScoresRequestBuilder
- Defined in:
- lib/teambattles_sdk/generated/game/matches/batch_scores/batch_scores_request_builder.rb
Overview
Builds and executes requests for operations under #game#matches#batch-scores
Instance Method Summary collapse
-
#initialize(path_parameters, request_adapter) ⇒ Object
constructor
Instantiates a new BatchScoresRequestBuilder and sets the default values.
-
#post(body, request_configuration = nil) ⇒ Object
Submits map scores for up to 50 (match, map) items in a single request.
-
#to_post_request_information(body, request_configuration = nil) ⇒ Object
Submits map scores for up to 50 (match, map) items in a single request.
-
#with_url(raw_url) ⇒ Object
Returns a request builder with the provided arbitrary URL.
Constructor Details
#initialize(path_parameters, request_adapter) ⇒ Object
Instantiates a new BatchScoresRequestBuilder and sets the default values.
25 26 27 |
# File 'lib/teambattles_sdk/generated/game/matches/batch_scores/batch_scores_request_builder.rb', line 25 def initialize(path_parameters, request_adapter) super(path_parameters, request_adapter, "{+baseurl}/game/matches/batch-scores") end |
Instance Method Details
#post(body, request_configuration = nil) ⇒ Object
Submits map scores for up to 50 (match, map) items in a single request. Each item is independently scope-checked against the key’s bound game; an off-scope or otherwise failing item is rejected in its per-item envelope (status “failed”, error = bare error_* code) WITHOUT failing the whole request. The response is ALWAYS HTTP 200 - inspect per-item status. Requires the game.scores:write permission. Score submission is naturally idempotent: an unconfirmed map is overwritten on re-submit and an already-confirmed map returns a per-item error_score_already_submitted_by_game, so a retried batch is safe without an Idempotency-Key.
34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/teambattles_sdk/generated/game/matches/batch_scores/batch_scores_request_builder.rb', line 34 def post(body, request_configuration=nil) raise StandardError, 'body cannot be null' if body.nil? request_info = self.to_post_request_information( body, request_configuration ) error_mapping = Hash.new error_mapping["400"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) } error_mapping["401"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) } error_mapping["403"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) } error_mapping["404"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) } error_mapping["429"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) } return @request_adapter.send_async(request_info, lambda {|pn| TeamBattlesSdk::Generated::Models::GameBatchMatchScoresResponse.create_from_discriminator_value(pn) }, error_mapping) end |
#to_post_request_information(body, request_configuration = nil) ⇒ Object
Submits map scores for up to 50 (match, map) items in a single request. Each item is independently scope-checked against the key’s bound game; an off-scope or otherwise failing item is rejected in its per-item envelope (status “failed”, error = bare error_* code) WITHOUT failing the whole request. The response is ALWAYS HTTP 200 - inspect per-item status. Requires the game.scores:write permission. Score submission is naturally idempotent: an unconfirmed map is overwritten on re-submit and an already-confirmed map returns a per-item error_score_already_submitted_by_game, so a retried batch is safe without an Idempotency-Key.
53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/teambattles_sdk/generated/game/matches/batch_scores/batch_scores_request_builder.rb', line 53 def to_post_request_information(body, request_configuration=nil) raise StandardError, 'body cannot be null' if body.nil? request_info = MicrosoftKiotaAbstractions::RequestInformation.new() unless request_configuration.nil? request_info.add_headers_from_raw_object(request_configuration.headers) request_info.(request_configuration.) end request_info.set_content_from_parsable(@request_adapter, 'application/json', body) request_info.url_template = @url_template request_info.path_parameters = @path_parameters request_info.http_method = :POST request_info.headers.try_add('Accept', 'application/json') return request_info end |
#with_url(raw_url) ⇒ Object
Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.
72 73 74 75 |
# File 'lib/teambattles_sdk/generated/game/matches/batch_scores/batch_scores_request_builder.rb', line 72 def with_url(raw_url) raise StandardError, 'raw_url cannot be null' if raw_url.nil? return BatchScoresRequestBuilder.new(raw_url, @request_adapter) end |