From a3496a1114c6958aa1831af5348d7340e29ebf06 Mon Sep 17 00:00:00 2001 From: mo khan Date: Thu, 24 Jul 2025 16:59:43 -0600 Subject: refactor: delegate to GlobalID to provide object references --- app/init.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'app/init.go') diff --git a/app/init.go b/app/init.go index 581944b..c22628c 100644 --- a/app/init.go +++ b/app/init.go @@ -85,12 +85,15 @@ func init() { ioc.MustResolve[*event.TypedAggregator[*domain.Sparkle]](c).SubscribeTo("after.create", func(item *domain.Sparkle) { client := ioc.MustResolve[*authzed.Client](c) + + resource := item.ToGID().ToObjectReference() + response, err := client.WriteRelationships(context.Background(), &v1.WriteRelationshipsRequest{ Updates: []*v1.RelationshipUpdate{ &v1.RelationshipUpdate{ Operation: v1.RelationshipUpdate_OPERATION_CREATE, Relationship: &v1.Relationship{ - Resource: item.ToObjectReference(), + Resource: resource, Relation: "sparkler", Subject: item.Author.ToSubjectReference(), }, @@ -98,7 +101,7 @@ func init() { &v1.RelationshipUpdate{ Operation: v1.RelationshipUpdate_OPERATION_CREATE, Relationship: &v1.Relationship{ - Resource: item.ToObjectReference(), + Resource: resource, Relation: "sparklee", Subject: &v1.SubjectReference{ Object: &v1.ObjectReference{ @@ -111,7 +114,7 @@ func init() { &v1.RelationshipUpdate{ Operation: v1.RelationshipUpdate_OPERATION_CREATE, Relationship: &v1.Relationship{ - Resource: item.ToObjectReference(), + Resource: resource, Relation: "reader", Subject: &v1.SubjectReference{ Object: &v1.ObjectReference{ -- cgit v1.2.3