77
88 "github.com/conductorone/baton-onelogin/pkg/onelogin"
99 v2 "github.com/conductorone/baton-sdk/pb/c1/connector/v2"
10- "github.com/conductorone/baton-sdk/pkg/annotations"
11- "github.com/conductorone/baton-sdk/pkg/pagination"
1210 ent "github.com/conductorone/baton-sdk/pkg/types/entitlement"
1311 "github.com/conductorone/baton-sdk/pkg/types/grant"
1412 rs "github.com/conductorone/baton-sdk/pkg/types/resource"
@@ -48,10 +46,11 @@ func appResource(app *onelogin.App) (*v2.Resource, error) {
4846 return resource , nil
4947}
5048
51- func (a * appResourceType ) List (ctx context.Context , _ * v2.ResourceId , pt * pagination.Token ) ([]* v2.Resource , string , annotations.Annotations , error ) {
52- bag , cursor , err := parsePageToken (pt .Token , & v2.ResourceId {ResourceType : resourceTypeApp .Id })
49+ func (a * appResourceType ) List (ctx context.Context , _ * v2.ResourceId , attr rs.SyncOpAttrs ) ([]* v2.Resource , * rs.SyncOpResults , error ) {
50+ token := attr .PageToken .Token
51+ bag , cursor , err := parsePageToken (token , & v2.ResourceId {ResourceType : resourceTypeApp .Id })
5352 if err != nil {
54- return nil , "" , nil , fmt .Errorf ("onelogin-connector: failed to parse pagination token for application list: %w" , err )
53+ return nil , nil , fmt .Errorf ("onelogin-connector: failed to parse pagination token for application list: %w" , err )
5554 }
5655
5756 apps , nextCursor , err := a .client .GetApps (
@@ -62,12 +61,12 @@ func (a *appResourceType) List(ctx context.Context, _ *v2.ResourceId, pt *pagina
6261 },
6362 )
6463 if err != nil {
65- return nil , "" , nil , fmt .Errorf ("onelogin-connector: failed to list apps: %w" , err )
64+ return nil , nil , fmt .Errorf ("onelogin-connector: failed to list apps: %w" , err )
6665 }
6766
6867 nextPage , err := bag .NextToken (nextCursor )
6968 if err != nil {
70- return nil , "" , nil , fmt .Errorf ("onelogin-connector:failed to generate next pagination token for applications: %w" , err )
69+ return nil , nil , fmt .Errorf ("onelogin-connector:failed to generate next pagination token for applications: %w" , err )
7170 }
7271
7372 var rv []* v2.Resource
@@ -76,16 +75,18 @@ func (a *appResourceType) List(ctx context.Context, _ *v2.ResourceId, pt *pagina
7675 ur , err := appResource (& appCopy )
7776
7877 if err != nil {
79- return nil , "" , nil , fmt .Errorf ("onelogin-connector:failed to create resource for application %d: %w" , appCopy .Id , err )
78+ return nil , nil , fmt .Errorf ("onelogin-connector:failed to create resource for application %d: %w" , appCopy .Id , err )
8079 }
8180
8281 rv = append (rv , ur )
8382 }
8483
85- return rv , nextPage , nil , nil
84+ return rv , & rs.SyncOpResults {
85+ NextPageToken : nextPage ,
86+ }, nil
8687}
8788
88- func (a * appResourceType ) Entitlements (_ context.Context , resource * v2.Resource , token * pagination. Token ) ([]* v2.Entitlement , string , annotations. Annotations , error ) {
89+ func (a * appResourceType ) Entitlements (_ context.Context , resource * v2.Resource , _ rs. SyncOpAttrs ) ([]* v2.Entitlement , * rs. SyncOpResults , error ) {
8990 var rv []* v2.Entitlement
9091 memberAssignmentOptions := []ent.EntitlementOption {
9192 ent .WithGrantableTo (resourceTypeUser ),
@@ -102,13 +103,14 @@ func (a *appResourceType) Entitlements(_ context.Context, resource *v2.Resource,
102103 ),
103104 )
104105
105- return rv , "" , nil , nil
106+ return rv , nil , nil
106107}
107108
108- func (a * appResourceType ) Grants (ctx context.Context , resource * v2.Resource , token * pagination.Token ) ([]* v2.Grant , string , annotations.Annotations , error ) {
109- bag , cursor , err := parsePageToken (token .Token , resource .Id )
109+ func (a * appResourceType ) Grants (ctx context.Context , resource * v2.Resource , attr rs.SyncOpAttrs ) ([]* v2.Grant , * rs.SyncOpResults , error ) {
110+ token := attr .PageToken .Token
111+ bag , cursor , err := parsePageToken (token , resource .Id )
110112 if err != nil {
111- return nil , "" , nil , fmt .Errorf ("onelogin-connector: failed to parse pagination token for grants of application %s: %w" , resource .Id .Resource , err )
113+ return nil , nil , fmt .Errorf ("onelogin-connector: failed to parse pagination token for grants of application %s: %w" , resource .Id .Resource , err )
112114 }
113115
114116 appUsers , nextCursor , err := a .client .GetAppUsers (
@@ -120,7 +122,7 @@ func (a *appResourceType) Grants(ctx context.Context, resource *v2.Resource, tok
120122 },
121123 )
122124 if err != nil {
123- return nil , "" , nil , fmt .Errorf ("onelogin-connector: failed to list app users: %w" , err )
125+ return nil , nil , fmt .Errorf ("onelogin-connector: failed to list app users: %w" , err )
124126 }
125127
126128 var rv []* v2.Grant
@@ -143,10 +145,12 @@ func (a *appResourceType) Grants(ctx context.Context, resource *v2.Resource, tok
143145
144146 nextPage , err := bag .NextToken (nextCursor )
145147 if err != nil {
146- return nil , "" , nil , fmt .Errorf ("onelogin-connector:failed to generate next pagination token for application %s grants: %w" , resource .Id .Resource , err )
148+ return nil , nil , fmt .Errorf ("onelogin-connector:failed to generate next pagination token for application %s grants: %w" , resource .Id .Resource , err )
147149 }
148150
149- return rv , nextPage , nil , nil
151+ return rv , & rs.SyncOpResults {
152+ NextPageToken : nextPage ,
153+ }, nil
150154}
151155
152156func appBuilder (client * onelogin.Client ) * appResourceType {
0 commit comments