in awscdk/awsec2/CfnClientVpnEndpoint__checks.go [182:243]
func (j *jsiiProxy_CfnClientVpnEndpoint) validateSetAuthenticationOptionsParameters(val interface{}) error {
if val == nil {
return fmt.Errorf("parameter val is required, but nil was provided")
}
switch val.(type) {
case awscdk.IResolvable:
// ok
case *[]interface{}:
val := val.(*[]interface{})
for idx_97dfc6, v := range *val {
switch v.(type) {
case awscdk.IResolvable:
// ok
case *CfnClientVpnEndpoint_ClientAuthenticationRequestProperty:
v := v.(*CfnClientVpnEndpoint_ClientAuthenticationRequestProperty)
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
case CfnClientVpnEndpoint_ClientAuthenticationRequestProperty:
v_ := v.(CfnClientVpnEndpoint_ClientAuthenticationRequestProperty)
v := &v_
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
default:
if !_jsii_.IsAnonymousProxy(v) {
return fmt.Errorf("parameter val[%#v] must be one of the allowed types: awscdk.IResolvable, *CfnClientVpnEndpoint_ClientAuthenticationRequestProperty; received %#v (a %T)", idx_97dfc6, v, v)
}
}
}
case []interface{}:
val_ := val.([]interface{})
val := &val_
for idx_97dfc6, v := range *val {
switch v.(type) {
case awscdk.IResolvable:
// ok
case *CfnClientVpnEndpoint_ClientAuthenticationRequestProperty:
v := v.(*CfnClientVpnEndpoint_ClientAuthenticationRequestProperty)
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
case CfnClientVpnEndpoint_ClientAuthenticationRequestProperty:
v_ := v.(CfnClientVpnEndpoint_ClientAuthenticationRequestProperty)
v := &v_
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
default:
if !_jsii_.IsAnonymousProxy(v) {
return fmt.Errorf("parameter val[%#v] must be one of the allowed types: awscdk.IResolvable, *CfnClientVpnEndpoint_ClientAuthenticationRequestProperty; received %#v (a %T)", idx_97dfc6, v, v)
}
}
}
default:
if !_jsii_.IsAnonymousProxy(val) {
return fmt.Errorf("parameter val must be one of the allowed types: awscdk.IResolvable, *[]interface{}; received %#v (a %T)", val, val)
}
}
return nil
}