/* Ory Identities API This is the API specification for Ory Identities with features such as registration, login, recovery, account verification, profile settings, password reset, identity management, session management, email and sms delivery, and more. API version: Contact: office@ory.sh */ // Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. package client import ( "encoding/json" "fmt" ) // checks if the LoginFlowTestContext type satisfies the MappedNullable interface at compile time var _ MappedNullable = &LoginFlowTestContext{} // LoginFlowTestContext Admin-test extension of a login flow. Populated only for flows created by the admin test endpoint; included in the flow's API response so the admin UI can render the pre-scoped provider and (once captured) the debug round-trip result. type LoginFlowTestContext struct { DebugPayload *LoginFlowTestDebugPayload `json:"debug_payload,omitempty"` // The ID of the OIDC provider this test flow targets. ProviderId string `json:"provider_id"` AdditionalProperties map[string]interface{} } type _LoginFlowTestContext LoginFlowTestContext // NewLoginFlowTestContext instantiates a new LoginFlowTestContext object // This constructor will assign default values to properties that have it defined, // and makes sure properties required by API are set, but the set of arguments // will change when the set of required properties is changed func NewLoginFlowTestContext(providerId string) *LoginFlowTestContext { this := LoginFlowTestContext{} this.ProviderId = providerId return &this } // NewLoginFlowTestContextWithDefaults instantiates a new LoginFlowTestContext object // This constructor will only assign default values to properties that have it defined, // but it doesn't guarantee that properties required by API are set func NewLoginFlowTestContextWithDefaults() *LoginFlowTestContext { this := LoginFlowTestContext{} return &this } // GetDebugPayload returns the DebugPayload field value if set, zero value otherwise. func (o *LoginFlowTestContext) GetDebugPayload() LoginFlowTestDebugPayload { if o == nil || IsNil(o.DebugPayload) { var ret LoginFlowTestDebugPayload return ret } return *o.DebugPayload } // GetDebugPayloadOk returns a tuple with the DebugPayload field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *LoginFlowTestContext) GetDebugPayloadOk() (*LoginFlowTestDebugPayload, bool) { if o == nil || IsNil(o.DebugPayload) { return nil, false } return o.DebugPayload, true } // HasDebugPayload returns a boolean if a field has been set. func (o *LoginFlowTestContext) HasDebugPayload() bool { if o != nil && !IsNil(o.DebugPayload) { return true } return false } // SetDebugPayload gets a reference to the given LoginFlowTestDebugPayload and assigns it to the DebugPayload field. func (o *LoginFlowTestContext) SetDebugPayload(v LoginFlowTestDebugPayload) { o.DebugPayload = &v } // GetProviderId returns the ProviderId field value func (o *LoginFlowTestContext) GetProviderId() string { if o == nil { var ret string return ret } return o.ProviderId } // GetProviderIdOk returns a tuple with the ProviderId field value // and a boolean to check if the value has been set. func (o *LoginFlowTestContext) GetProviderIdOk() (*string, bool) { if o == nil { return nil, false } return &o.ProviderId, true } // SetProviderId sets field value func (o *LoginFlowTestContext) SetProviderId(v string) { o.ProviderId = v } func (o LoginFlowTestContext) MarshalJSON() ([]byte, error) { toSerialize, err := o.ToMap() if err != nil { return []byte{}, err } return json.Marshal(toSerialize) } func (o LoginFlowTestContext) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} if !IsNil(o.DebugPayload) { toSerialize["debug_payload"] = o.DebugPayload } toSerialize["provider_id"] = o.ProviderId for key, value := range o.AdditionalProperties { toSerialize[key] = value } return toSerialize, nil } func (o *LoginFlowTestContext) UnmarshalJSON(data []byte) (err error) { // This validates that all required properties are included in the JSON object // by unmarshalling the object into a generic map with string keys and checking // that every required field exists as a key in the generic map. requiredProperties := []string{ "provider_id", } allProperties := make(map[string]interface{}) err = json.Unmarshal(data, &allProperties) if err != nil { return err } for _, requiredProperty := range requiredProperties { if _, exists := allProperties[requiredProperty]; !exists { return fmt.Errorf("no value given for required property %v", requiredProperty) } } varLoginFlowTestContext := _LoginFlowTestContext{} err = json.Unmarshal(data, &varLoginFlowTestContext) if err != nil { return err } *o = LoginFlowTestContext(varLoginFlowTestContext) additionalProperties := make(map[string]interface{}) if err = json.Unmarshal(data, &additionalProperties); err == nil { delete(additionalProperties, "debug_payload") delete(additionalProperties, "provider_id") o.AdditionalProperties = additionalProperties } return err } type NullableLoginFlowTestContext struct { value *LoginFlowTestContext isSet bool } func (v NullableLoginFlowTestContext) Get() *LoginFlowTestContext { return v.value } func (v *NullableLoginFlowTestContext) Set(val *LoginFlowTestContext) { v.value = val v.isSet = true } func (v NullableLoginFlowTestContext) IsSet() bool { return v.isSet } func (v *NullableLoginFlowTestContext) Unset() { v.value = nil v.isSet = false } func NewNullableLoginFlowTestContext(val *LoginFlowTestContext) *NullableLoginFlowTestContext { return &NullableLoginFlowTestContext{value: val, isSet: true} } func (v NullableLoginFlowTestContext) MarshalJSON() ([]byte, error) { return json.Marshal(v.value) } func (v *NullableLoginFlowTestContext) UnmarshalJSON(src []byte) error { v.isSet = true return json.Unmarshal(src, &v.value) }