Skip to content

Commit fb9bb7f

Browse files
authored
feat(forecasts): Add metadata column (#127)
1 parent 09220f6 commit fb9bb7f

File tree

8 files changed

+108
-186
lines changed

8 files changed

+108
-186
lines changed

internal/server/postgres/.sqlc.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,16 @@ sql:
1919
go_type:
2020
import: "github.com/google/uuid"
2121
type: "UUID"
22+
- db_type: "jsonb"
23+
nullable: true
24+
go_type:
25+
import: "google.golang.org/protobuf/types/known/structpb"
26+
type: "Struct"
27+
pointer: true
28+
- db_type: "jsonb"
29+
nullable: false
30+
go_type:
31+
import: "google.golang.org/protobuf/types/known/structpb"
32+
type: "Struct"
33+
pointer: true
2234

internal/server/postgres/adminserverimpl.go

Lines changed: 4 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -98,19 +98,9 @@ func (d *DataPlatformAdministrationServiceServerImpl) CreateOrganisation(
9898
l := zerolog.Ctx(ctx)
9999
querier := db.New(ix.GetTxFromContext(ctx))
100100

101-
metadata, err := req.Metadata.MarshalJSON()
102-
if err != nil {
103-
l.Err(err).Msgf("req.Metadata.MarshalJSON()")
104-
105-
return nil, status.Error(
106-
codes.InvalidArgument,
107-
"Invalid metadata. Ensure object is JSON serializable.",
108-
)
109-
}
110-
111101
coprms := db.CreateOrgParams{
112102
OrgName: req.OrgName,
113-
Metadata: metadata,
103+
Metadata: req.Metadata,
114104
}
115105

116106
dbOrg, err := querier.CreateOrg(ctx, coprms)
@@ -159,20 +149,10 @@ func (d *DataPlatformAdministrationServiceServerImpl) CreateUser(
159149
)
160150
}
161151

162-
metadata, err := req.Metadata.MarshalJSON()
163-
if err != nil {
164-
l.Err(err).Msgf("req.Metadata.MarshalJSON()")
165-
166-
return nil, status.Error(
167-
codes.InvalidArgument,
168-
"Invalid metadata. Ensure object is JSON serializable.",
169-
)
170-
}
171-
172152
cuParams := db.CreateUserParams{
173153
OrgUuid: dbOrg.OrgUuid,
174154
OauthID: req.OauthId,
175-
Metadata: metadata,
155+
Metadata: req.Metadata,
176156
}
177157

178158
dbUser, err := querier.CreateUser(ctx, cuParams)
@@ -381,17 +361,6 @@ func (d *DataPlatformAdministrationServiceServerImpl) GetOrganisation(
381361
)
382362
}
383363

384-
metadata, err := jsonbToStruct(dbOrg.Metadata)
385-
if err != nil {
386-
l.Error().Err(err).Msgf("jsonbToStruct(%s)", dbOrg.Metadata)
387-
388-
return nil, status.Errorf(
389-
codes.Internal,
390-
"Error parsing metadata for organisation with name '%s'",
391-
req.OrgName,
392-
)
393-
}
394-
395364
l.Debug().
396365
Str("dp.organisation.name", dbOrg.OrgName).
397366
Str("dp.organisation.uuid", dbOrg.OrgUuid.String()).
@@ -400,7 +369,7 @@ func (d *DataPlatformAdministrationServiceServerImpl) GetOrganisation(
400369
return &pb.GetOrganisationResponse{
401370
OrgId: dbOrg.OrgUuid.String(),
402371
OrgName: dbOrg.OrgName,
403-
Metadata: metadata,
372+
Metadata: dbOrg.Metadata,
404373
CreatedAt: timestamppb.New(dbOrg.CreatedAtUtc.Time),
405374
LocationPolicyGroups: dbOrg.LocationPolicyGroupNames,
406375
UserOauthIds: dbOrg.OauthIds,
@@ -430,17 +399,6 @@ func (d *DataPlatformAdministrationServiceServerImpl) GetUser(
430399
)
431400
}
432401

433-
metadata, err := jsonbToStruct(dbUser.Metadata)
434-
if err != nil {
435-
l.Error().Err(err).Msgf("jsonbToStruct(%s)", dbUser.Metadata)
436-
437-
return nil, status.Errorf(
438-
codes.Internal,
439-
"Error parsing metadata for user with OAuth ID '%s'",
440-
req.OauthId,
441-
)
442-
}
443-
444402
goParams := db.GetOrgByNameParams{
445403
OrgName: dbUser.OrgName,
446404
}
@@ -468,7 +426,7 @@ func (d *DataPlatformAdministrationServiceServerImpl) GetUser(
468426
Organisation: dbUser.OrgName,
469427
LocationPolicyGroups: dbOrg.LocationPolicyGroupNames,
470428
CreatedAt: &timestamppb.Timestamp{},
471-
Metadata: metadata,
429+
Metadata: dbUser.Metadata,
472430
}, nil
473431
}
474432

0 commit comments

Comments
 (0)