in client/api/multiplay_api.go [183:254]
func (s *MultiplayApiService) Join(
varForms *model.MultiplayJoinForms,
) (model.MultiplayJoinResult, *http.Response, error) {
var (
varHttpMethod = strings.ToUpper("Post")
varReturnValue model.MultiplayJoinResult
)
// create path and map variables
varPath := s.client.cfg.Scheme + "://" + s.client.cfg.Host + "/multiplay/join"
varHeaderParams := make(map[string]string)
varQueryParams := url.Values{}
varFormParams := url.Values{}
// to determine the Content-Type header
varHttpContentTypes := []string{"application/x-www-form-urlencoded"}
// set Content-Type header
varHttpContentType := selectHeaderContentType(varHttpContentTypes)
if varHttpContentType != "" {
varHeaderParams["Content-Type"] = varHttpContentType
}
// to determine the Accept header
varHttpHeaderAccepts := []string{"application/json"}
// set Accept header
varHttpHeaderAccept := selectHeaderAccept(varHttpHeaderAccepts)
if varHttpHeaderAccept != "" {
varHeaderParams["Accept"] = varHttpHeaderAccept
}
varFormParams.Add("mpId", parameterToString(varForms.MpId, ""))
varFormParams.Add("accountId", parameterToString(varForms.AccountId, ""))
if varForms != nil && varForms.ControlId != nil {
varFormParams.Add("controlId", parameterToString(*varForms.ControlId, ""))
}
r, err := s.client.prepareRequest(varPath, varHttpMethod, varHeaderParams, varQueryParams, varFormParams)
if err != nil {
return varReturnValue, nil, err
}
varHttpResponse, err := s.client.callAPI(r)
if err != nil || varHttpResponse == nil {
return varReturnValue, varHttpResponse, err
}
defer varHttpResponse.Body.Close()
varBody, err := ioutil.ReadAll(varHttpResponse.Body)
if err != nil {
return varReturnValue, varHttpResponse, err
}
if varHttpResponse.StatusCode < 300 {
// If we succeed, return the data, otherwise pass on to decode error.
err = s.client.decode(&varReturnValue, varBody, varHttpResponse.Header.Get("Content-Type"))
if err == nil {
return varReturnValue, varHttpResponse, err
}
}
if varHttpResponse.StatusCode >= 300 {
newErr := GenericError{
body: varBody,
error: varHttpResponse.Status,
}
return varReturnValue, varHttpResponse, newErr
}
return varReturnValue, varHttpResponse, nil
}