regen: synchronize final membership concurrency contract

feat/estate-admin-members-contract
Vernon Keenan 2026-07-18 23:20:56 +00:00
parent c67edb84f3
commit 5e0f3d888a
4 changed files with 12 additions and 12 deletions

View File

@ -84,10 +84,10 @@ type ClientService interface {
// GetTenantMembershipsContext list actor visible tenant memberships. // GetTenantMembershipsContext list actor visible tenant memberships.
GetTenantMembershipsContext(ctx context.Context, params *GetTenantMembershipsParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*GetTenantMembershipsOK, error) GetTenantMembershipsContext(ctx context.Context, params *GetTenantMembershipsParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*GetTenantMembershipsOK, error)
// PostTenantMembership idempotently link one existing active user to one tenant. // PostTenantMembership create a tenant link or return an exact desired state match.
PostTenantMembership(params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error) PostTenantMembership(params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error)
// PostTenantMembershipContext idempotently link one existing active user to one tenant. // PostTenantMembershipContext create a tenant link or return an exact desired state match.
PostTenantMembershipContext(ctx context.Context, params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error) PostTenantMembershipContext(ctx context.Context, params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error)
// PutTenantMembership idempotently change membership access or lifecycle. // PutTenantMembership idempotently change membership access or lifecycle.
@ -351,7 +351,7 @@ func (a *Client) GetTenantMembershipsContext(ctx context.Context, params *GetTen
panic(msg) panic(msg)
} }
// PostTenantMembership idempotentlies link one existing active user to one tenant. // PostTenantMembership creates a tenant link or return an exact desired state match.
// //
// This method does not support injected context. // This method does not support injected context.
// However, timeout and opentracing contexts are honored whenever enabled. // However, timeout and opentracing contexts are honored whenever enabled.
@ -368,7 +368,7 @@ func (a *Client) PostTenantMembership(params *PostTenantMembershipParams, authIn
return a.PostTenantMembershipContext(ctx, params, authInfo, opts...) return a.PostTenantMembershipContext(ctx, params, authInfo, opts...)
} }
// PostTenantMembershipContext idempotentlies link one existing active user to one tenant. // PostTenantMembershipContext creates a tenant link or return an exact desired state match.
// //
// Do not use the deprecated [PostTenantMembershipParams.Context] with this method: it would be ignored. // Do not use the deprecated [PostTenantMembershipParams.Context] with this method: it would be ignored.
func (a *Client) PostTenantMembershipContext(ctx context.Context, params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error) { func (a *Client) PostTenantMembershipContext(ctx context.Context, params *PostTenantMembershipParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*PostTenantMembershipOK, error) {

View File

@ -73,7 +73,7 @@ func NewPostTenantMembershipOK() *PostTenantMembershipOK {
// PostTenantMembershipOK describes a response with status code 200, with default header values. // PostTenantMembershipOK describes a response with status code 200, with default header values.
// //
// Current membership desired state // Newly created membership or exact existing desired-state match
type PostTenantMembershipOK struct { type PostTenantMembershipOK struct {
Payload *members_models.TenantMembershipResponse Payload *members_models.TenantMembershipResponse
} }
@ -303,7 +303,7 @@ func NewPostTenantMembershipConflict() *PostTenantMembershipConflict {
// PostTenantMembershipConflict describes a response with status code 409, with default header values. // PostTenantMembershipConflict describes a response with status code 409, with default header values.
// //
// Self-change, owner, or concurrent-state conflict // Self-change, owner, or existing-state conflict; use GET plus optimistic PUT for state changes
type PostTenantMembershipConflict struct { type PostTenantMembershipConflict struct {
} }

View File

@ -1268,7 +1268,7 @@ paths:
post: post:
operationId: postTenantMembership operationId: postTenantMembership
tags: [PortalMemberships] tags: [PortalMemberships]
summary: Idempotently link one existing active user to one tenant summary: Create a tenant link or return an exact desired-state match
parameters: parameters:
- $ref: "#/parameters/requestId" - $ref: "#/parameters/requestId"
- in: body - in: body
@ -1276,11 +1276,11 @@ paths:
required: true required: true
schema: {$ref: "#/definitions/TenantMembershipCreateRequest"} schema: {$ref: "#/definitions/TenantMembershipCreateRequest"}
responses: responses:
200: {description: Current membership desired state, schema: {$ref: "#/definitions/TenantMembershipResponse"}} 200: {description: Newly created membership or exact existing desired-state match, schema: {$ref: "#/definitions/TenantMembershipResponse"}}
400: {description: Invalid identity selector or desired state} 400: {description: Invalid identity selector or desired state}
401: {description: Missing or invalid server or session credential} 401: {description: Missing or invalid server or session credential}
404: {description: "Target tenant, user, or authority is unavailable"} 404: {description: "Target tenant, user, or authority is unavailable"}
409: {description: "Self-change, owner, or concurrent-state conflict"} 409: {description: "Self-change, owner, or existing-state conflict; use GET plus optimistic PUT for state changes"}
500: {description: Server error} 500: {description: Server error}
security: *portalSecurity security: *portalSecurity

View File

@ -1268,7 +1268,7 @@ paths:
post: post:
operationId: postTenantMembership operationId: postTenantMembership
tags: [PortalMemberships] tags: [PortalMemberships]
summary: Idempotently link one existing active user to one tenant summary: Create a tenant link or return an exact desired-state match
parameters: parameters:
- $ref: "#/parameters/requestId" - $ref: "#/parameters/requestId"
- in: body - in: body
@ -1276,11 +1276,11 @@ paths:
required: true required: true
schema: {$ref: "#/definitions/TenantMembershipCreateRequest"} schema: {$ref: "#/definitions/TenantMembershipCreateRequest"}
responses: responses:
200: {description: Current membership desired state, schema: {$ref: "#/definitions/TenantMembershipResponse"}} 200: {description: Newly created membership or exact existing desired-state match, schema: {$ref: "#/definitions/TenantMembershipResponse"}}
400: {description: Invalid identity selector or desired state} 400: {description: Invalid identity selector or desired state}
401: {description: Missing or invalid server or session credential} 401: {description: Missing or invalid server or session credential}
404: {description: "Target tenant, user, or authority is unavailable"} 404: {description: "Target tenant, user, or authority is unavailable"}
409: {description: "Self-change, owner, or concurrent-state conflict"} 409: {description: "Self-change, owner, or existing-state conflict; use GET plus optimistic PUT for state changes"}
500: {description: Server error} 500: {description: Server error}
security: *portalSecurity security: *portalSecurity