| 51 | // scheduler handshake. Concrete stores that implement it own both global |
| 52 | // admission evaluation and claiming the caller's request. Compatibility stores |
| 53 | // may fall back to the exact-ref TryAcquire interfaces above; ID-only acquisition |
| 54 | // is deliberately unsupported because it cannot fence a reused request ID. |
| 55 | type runtimeOrgConnectionScheduleAndClaimStore interface { |
| 56 | ScheduleAndClaimOrgConnectionLeaseForRef(ref configstore.OrgConnectionAdmissionRef) (*configstore.OrgConnectionLease, error) |
| 57 | } |
| 58 | |
| 59 | type runtimeOrgConnectionScheduleAndClaimContextStore interface { |
| 60 | ScheduleAndClaimOrgConnectionLeaseForRefContext(ctx context.Context, ref configstore.OrgConnectionAdmissionRef) (*configstore.OrgConnectionLease, error) |
| 61 | } |
| 62 | |
| 63 | type runtimeOrgConnectionScheduleAndClaimEvaluationContextStore interface { |
| 64 | ScheduleAndClaimOrgConnectionLeaseForRefWithEvaluationContext(ctx context.Context, ref configstore.OrgConnectionAdmissionRef) (*configstore.OrgConnectionLease, configstore.OrgConnectionAdmissionEvaluation, error) |
| 65 | } |
| 66 | |
| 67 | type runtimeOrgConnectionLimiter struct { |
| 68 | store runtimeOrgConnectionStore |
| 69 | reclaimer admissionReclaimer |