mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
proxy/grpcproxy: implement LeaseLeases API
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
This commit is contained in:
@@ -48,6 +48,10 @@ func (c *ls2lc) LeaseTimeToLive(ctx context.Context, in *pb.LeaseTimeToLiveReque
|
||||
return c.leaseServer.LeaseTimeToLive(ctx, in)
|
||||
}
|
||||
|
||||
func (c *ls2lc) LeaseLeases(ctx context.Context, in *pb.LeaseLeasesRequest, opts ...grpc.CallOption) (*pb.LeaseLeasesResponse, error) {
|
||||
return c.leaseServer.LeaseLeases(ctx, in)
|
||||
}
|
||||
|
||||
// ls2lcClientStream implements Lease_LeaseKeepAliveClient
|
||||
type ls2lcClientStream struct{ chanClientStream }
|
||||
|
||||
|
||||
@@ -113,6 +113,22 @@ func (lp *leaseProxy) LeaseTimeToLive(ctx context.Context, rr *pb.LeaseTimeToLiv
|
||||
return rp, err
|
||||
}
|
||||
|
||||
func (lp *leaseProxy) LeaseLeases(ctx context.Context, rr *pb.LeaseLeasesRequest) (*pb.LeaseLeasesResponse, error) {
|
||||
r, err := lp.lessor.Leases(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
leases := make([]*pb.LeaseStatus, len(r.Leases))
|
||||
for i := range r.Leases {
|
||||
leases[i] = &pb.LeaseStatus{ID: int64(r.Leases[i].ID)}
|
||||
}
|
||||
rp := &pb.LeaseLeasesResponse{
|
||||
Header: r.ResponseHeader,
|
||||
Leases: leases,
|
||||
}
|
||||
return rp, err
|
||||
}
|
||||
|
||||
func (lp *leaseProxy) LeaseKeepAlive(stream pb.Lease_LeaseKeepAliveServer) error {
|
||||
lp.mu.Lock()
|
||||
select {
|
||||
|
||||
Reference in New Issue
Block a user