package sqlserverflexbeta import ( "context" "fmt" "math" "github.com/hashicorp/terraform-plugin-framework/attr" "github.com/hashicorp/terraform-plugin-framework/diag" "github.com/hashicorp/terraform-plugin-framework/resource" "github.com/hashicorp/terraform-plugin-framework/types" "tf-provider.git.onstackit.cloud/stackit-dev-tools/terraform-provider-stackitprivatepreview/stackit/internal/conversion" sqlserverflexbeta "tf-provider.git.onstackit.cloud/stackit-dev-tools/terraform-provider-stackitprivatepreview/pkg_gen/sqlserverflexbeta" sqlserverflexbetaResGen "tf-provider.git.onstackit.cloud/stackit-dev-tools/terraform-provider-stackitprivatepreview/stackit/internal/services/sqlserverflexbeta/instance/resources_gen" ) func mapResponseToModel( ctx context.Context, resp *sqlserverflexbeta.GetUserResponse, m *sqlserverflexbetaResGen.UserModel, tfDiags diag.Diagnostics, ) error { // TODO: complete and refactor m.Id = types.StringValue(resp.GetId()) /* sampleList, diags := types.ListValueFrom(ctx, types.StringType, resp.GetList()) tfDiags.Append(diags...) if diags.HasError() { return fmt.Errorf( "error converting list response value", ) } sample, diags := sqlserverflexbetaResGen.NewSampleValue( sqlserverflexbetaResGen.SampleValue{}.AttributeTypes(ctx), map[string]attr.Value{ "field": types.StringValue(string(resp.GetField())), }, ) tfDiags.Append(diags...) if diags.HasError() { return fmt.Errorf( "error converting sample response value", "sample", types.StringValue(string(resp.GetField())), ) } m.Sample = sample */ return nil } func handleEncryption( m *sqlserverflexbetaResGen.UserModel, resp *sqlserverflexbeta.GetUserResponse, ) sqlserverflexbetaResGen.EncryptionValue { if !resp.HasEncryption() || resp.Encryption == nil || resp.Encryption.KekKeyId == nil || resp.Encryption.KekKeyRingId == nil || resp.Encryption.KekKeyVersion == nil || resp.Encryption.ServiceAccount == nil { if m.Encryption.IsNull() || m.Encryption.IsUnknown() { return sqlserverflexbetaResGen.NewEncryptionValueNull() } return m.Encryption } enc := sqlserverflexbetaResGen.NewEncryptionValueNull() if kVal, ok := resp.Encryption.GetKekKeyIdOk(); ok { enc.KekKeyId = types.StringValue(kVal) } if kkVal, ok := resp.Encryption.GetKekKeyRingIdOk(); ok { enc.KekKeyRingId = types.StringValue(kkVal) } if kkvVal, ok := resp.Encryption.GetKekKeyVersionOk(); ok { enc.KekKeyVersion = types.StringValue(kkvVal) } if sa, ok := resp.Encryption.GetServiceAccountOk(); ok { enc.ServiceAccount = types.StringValue(sa) } return enc } func toCreatePayload( ctx context.Context, model *sqlserverflexbetaResGen.UserModel, ) (*sqlserverflexbeta.CreateUserRequestPayload, error) { if model == nil { return nil, fmt.Errorf("nil model") } return &sqlserverflexbeta.CreateUserRequestPayload{ // TODO: fill fields }, nil }