//command to generate gRPC code
//protoc --go_out=. --go_opt=paths=source_relative \
//--go-grpc_out=. --go-grpc_opt=paths=source_relative credentialsfetcher/credentialsfetcher.proto
// This will generate credentialsfetcher/credentialsfetcher.pb.go and
//credentialsfetcher/credentialsfetcher_grpc.pb.go files

// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc             v3.19.6
// source: credentialsfetcher/credentialsfetcher.proto

package credentialsfetcher

import (
	context "context"

	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
)

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7

// CredentialsFetcherServiceClient is the client API for CredentialsFetcherService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
type CredentialsFetcherServiceClient interface {
	AddKerberosLease(ctx context.Context, in *CreateKerberosLeaseRequest, opts ...grpc.CallOption) (*CreateKerberosLeaseResponse, error)
	AddNonDomainJoinedKerberosLease(ctx context.Context, in *CreateNonDomainJoinedKerberosLeaseRequest, opts ...grpc.CallOption) (*CreateNonDomainJoinedKerberosLeaseResponse, error)
	RenewNonDomainJoinedKerberosLease(ctx context.Context, in *RenewNonDomainJoinedKerberosLeaseRequest, opts ...grpc.CallOption) (*RenewNonDomainJoinedKerberosLeaseResponse, error)
	DeleteKerberosLease(ctx context.Context, in *DeleteKerberosLeaseRequest, opts ...grpc.CallOption) (*DeleteKerberosLeaseResponse, error)
	HealthCheck(ctx context.Context, in *HealthCheckRequest, opts ...grpc.CallOption) (*HealthCheckResponse, error)
	AddKerberosArnLease(ctx context.Context, in *KerberosArnLeaseRequest, opts ...grpc.CallOption) (*CreateKerberosArnLeaseResponse, error)
	RenewKerberosArnLease(ctx context.Context, in *RenewKerberosArnLeaseRequest, opts ...grpc.CallOption) (*RenewKerberosArnLeaseResponse, error)
}

type credentialsFetcherServiceClient struct {
	cc grpc.ClientConnInterface
}

func NewCredentialsFetcherServiceClient(cc grpc.ClientConnInterface) CredentialsFetcherServiceClient {
	return &credentialsFetcherServiceClient{cc}
}

func (c *credentialsFetcherServiceClient) AddKerberosLease(ctx context.Context, in *CreateKerberosLeaseRequest, opts ...grpc.CallOption) (*CreateKerberosLeaseResponse, error) {
	out := new(CreateKerberosLeaseResponse)
	err := c.cc.Invoke(ctx, "/credentialsfetcher.CredentialsFetcherService/AddKerberosLease", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *credentialsFetcherServiceClient) AddNonDomainJoinedKerberosLease(ctx context.Context, in *CreateNonDomainJoinedKerberosLeaseRequest, opts ...grpc.CallOption) (*CreateNonDomainJoinedKerberosLeaseResponse, error) {
	out := new(CreateNonDomainJoinedKerberosLeaseResponse)
	err := c.cc.Invoke(ctx, "/credentialsfetcher.CredentialsFetcherService/AddNonDomainJoinedKerberosLease", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *credentialsFetcherServiceClient) RenewNonDomainJoinedKerberosLease(ctx context.Context, in *RenewNonDomainJoinedKerberosLeaseRequest, opts ...grpc.CallOption) (*RenewNonDomainJoinedKerberosLeaseResponse, error) {
	out := new(RenewNonDomainJoinedKerberosLeaseResponse)
	err := c.cc.Invoke(ctx, "/credentialsfetcher.CredentialsFetcherService/RenewNonDomainJoinedKerberosLease", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *credentialsFetcherServiceClient) DeleteKerberosLease(ctx context.Context, in *DeleteKerberosLeaseRequest, opts ...grpc.CallOption) (*DeleteKerberosLeaseResponse, error) {
	out := new(DeleteKerberosLeaseResponse)
	err := c.cc.Invoke(ctx, "/credentialsfetcher.CredentialsFetcherService/DeleteKerberosLease", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *credentialsFetcherServiceClient) HealthCheck(ctx context.Context, in *HealthCheckRequest, opts ...grpc.CallOption) (*HealthCheckResponse, error) {
	out := new(HealthCheckResponse)
	err := c.cc.Invoke(ctx, "/credentialsfetcher.CredentialsFetcherService/HealthCheck", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *credentialsFetcherServiceClient) AddKerberosArnLease(ctx context.Context, in *KerberosArnLeaseRequest, opts ...grpc.CallOption) (*CreateKerberosArnLeaseResponse, error) {
	out := new(CreateKerberosArnLeaseResponse)
	err := c.cc.Invoke(ctx, "/credentialsfetcher.CredentialsFetcherService/AddKerberosArnLease", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *credentialsFetcherServiceClient) RenewKerberosArnLease(ctx context.Context, in *RenewKerberosArnLeaseRequest, opts ...grpc.CallOption) (*RenewKerberosArnLeaseResponse, error) {
	out := new(RenewKerberosArnLeaseResponse)
	err := c.cc.Invoke(ctx, "/credentialsfetcher.CredentialsFetcherService/RenewKerberosArnLease", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// CredentialsFetcherServiceServer is the server API for CredentialsFetcherService service.
// All implementations must embed UnimplementedCredentialsFetcherServiceServer
// for forward compatibility
type CredentialsFetcherServiceServer interface {
	AddKerberosLease(context.Context, *CreateKerberosLeaseRequest) (*CreateKerberosLeaseResponse, error)
	AddNonDomainJoinedKerberosLease(context.Context, *CreateNonDomainJoinedKerberosLeaseRequest) (*CreateNonDomainJoinedKerberosLeaseResponse, error)
	RenewNonDomainJoinedKerberosLease(context.Context, *RenewNonDomainJoinedKerberosLeaseRequest) (*RenewNonDomainJoinedKerberosLeaseResponse, error)
	DeleteKerberosLease(context.Context, *DeleteKerberosLeaseRequest) (*DeleteKerberosLeaseResponse, error)
	HealthCheck(context.Context, *HealthCheckRequest) (*HealthCheckResponse, error)
	AddKerberosArnLease(context.Context, *KerberosArnLeaseRequest) (*CreateKerberosArnLeaseResponse, error)
	RenewKerberosArnLease(context.Context, *RenewKerberosArnLeaseRequest) (*RenewKerberosArnLeaseResponse, error)
	mustEmbedUnimplementedCredentialsFetcherServiceServer()
}

// UnimplementedCredentialsFetcherServiceServer must be embedded to have forward compatible implementations.
type UnimplementedCredentialsFetcherServiceServer struct {
}

func (UnimplementedCredentialsFetcherServiceServer) AddKerberosLease(context.Context, *CreateKerberosLeaseRequest) (*CreateKerberosLeaseResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddKerberosLease not implemented")
}
func (UnimplementedCredentialsFetcherServiceServer) AddNonDomainJoinedKerberosLease(context.Context, *CreateNonDomainJoinedKerberosLeaseRequest) (*CreateNonDomainJoinedKerberosLeaseResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddNonDomainJoinedKerberosLease not implemented")
}
func (UnimplementedCredentialsFetcherServiceServer) RenewNonDomainJoinedKerberosLease(context.Context, *RenewNonDomainJoinedKerberosLeaseRequest) (*RenewNonDomainJoinedKerberosLeaseResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RenewNonDomainJoinedKerberosLease not implemented")
}
func (UnimplementedCredentialsFetcherServiceServer) DeleteKerberosLease(context.Context, *DeleteKerberosLeaseRequest) (*DeleteKerberosLeaseResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteKerberosLease not implemented")
}
func (UnimplementedCredentialsFetcherServiceServer) HealthCheck(context.Context, *HealthCheckRequest) (*HealthCheckResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method HealthCheck not implemented")
}
func (UnimplementedCredentialsFetcherServiceServer) AddKerberosArnLease(context.Context, *KerberosArnLeaseRequest) (*CreateKerberosArnLeaseResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddKerberosArnLease not implemented")
}
func (UnimplementedCredentialsFetcherServiceServer) RenewKerberosArnLease(context.Context, *RenewKerberosArnLeaseRequest) (*RenewKerberosArnLeaseResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RenewKerberosArnLease not implemented")
}
func (UnimplementedCredentialsFetcherServiceServer) mustEmbedUnimplementedCredentialsFetcherServiceServer() {
}

// UnsafeCredentialsFetcherServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to CredentialsFetcherServiceServer will
// result in compilation errors.
type UnsafeCredentialsFetcherServiceServer interface {
	mustEmbedUnimplementedCredentialsFetcherServiceServer()
}

func RegisterCredentialsFetcherServiceServer(s grpc.ServiceRegistrar, srv CredentialsFetcherServiceServer) {
	s.RegisterService(&CredentialsFetcherService_ServiceDesc, srv)
}

func _CredentialsFetcherService_AddKerberosLease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateKerberosLeaseRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(CredentialsFetcherServiceServer).AddKerberosLease(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/credentialsfetcher.CredentialsFetcherService/AddKerberosLease",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(CredentialsFetcherServiceServer).AddKerberosLease(ctx, req.(*CreateKerberosLeaseRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _CredentialsFetcherService_AddNonDomainJoinedKerberosLease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateNonDomainJoinedKerberosLeaseRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(CredentialsFetcherServiceServer).AddNonDomainJoinedKerberosLease(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/credentialsfetcher.CredentialsFetcherService/AddNonDomainJoinedKerberosLease",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(CredentialsFetcherServiceServer).AddNonDomainJoinedKerberosLease(ctx, req.(*CreateNonDomainJoinedKerberosLeaseRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _CredentialsFetcherService_RenewNonDomainJoinedKerberosLease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RenewNonDomainJoinedKerberosLeaseRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(CredentialsFetcherServiceServer).RenewNonDomainJoinedKerberosLease(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/credentialsfetcher.CredentialsFetcherService/RenewNonDomainJoinedKerberosLease",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(CredentialsFetcherServiceServer).RenewNonDomainJoinedKerberosLease(ctx, req.(*RenewNonDomainJoinedKerberosLeaseRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _CredentialsFetcherService_DeleteKerberosLease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteKerberosLeaseRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(CredentialsFetcherServiceServer).DeleteKerberosLease(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/credentialsfetcher.CredentialsFetcherService/DeleteKerberosLease",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(CredentialsFetcherServiceServer).DeleteKerberosLease(ctx, req.(*DeleteKerberosLeaseRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _CredentialsFetcherService_HealthCheck_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(HealthCheckRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(CredentialsFetcherServiceServer).HealthCheck(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/credentialsfetcher.CredentialsFetcherService/HealthCheck",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(CredentialsFetcherServiceServer).HealthCheck(ctx, req.(*HealthCheckRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _CredentialsFetcherService_AddKerberosArnLease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(KerberosArnLeaseRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(CredentialsFetcherServiceServer).AddKerberosArnLease(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/credentialsfetcher.CredentialsFetcherService/AddKerberosArnLease",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(CredentialsFetcherServiceServer).AddKerberosArnLease(ctx, req.(*KerberosArnLeaseRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _CredentialsFetcherService_RenewKerberosArnLease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RenewKerberosArnLeaseRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(CredentialsFetcherServiceServer).RenewKerberosArnLease(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/credentialsfetcher.CredentialsFetcherService/RenewKerberosArnLease",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(CredentialsFetcherServiceServer).RenewKerberosArnLease(ctx, req.(*RenewKerberosArnLeaseRequest))
	}
	return interceptor(ctx, in, info, handler)
}

// CredentialsFetcherService_ServiceDesc is the grpc.ServiceDesc for CredentialsFetcherService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var CredentialsFetcherService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "credentialsfetcher.CredentialsFetcherService",
	HandlerType: (*CredentialsFetcherServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "AddKerberosLease",
			Handler:    _CredentialsFetcherService_AddKerberosLease_Handler,
		},
		{
			MethodName: "AddNonDomainJoinedKerberosLease",
			Handler:    _CredentialsFetcherService_AddNonDomainJoinedKerberosLease_Handler,
		},
		{
			MethodName: "RenewNonDomainJoinedKerberosLease",
			Handler:    _CredentialsFetcherService_RenewNonDomainJoinedKerberosLease_Handler,
		},
		{
			MethodName: "DeleteKerberosLease",
			Handler:    _CredentialsFetcherService_DeleteKerberosLease_Handler,
		},
		{
			MethodName: "HealthCheck",
			Handler:    _CredentialsFetcherService_HealthCheck_Handler,
		},
		{
			MethodName: "AddKerberosArnLease",
			Handler:    _CredentialsFetcherService_AddKerberosArnLease_Handler,
		},
		{
			MethodName: "RenewKerberosArnLease",
			Handler:    _CredentialsFetcherService_RenewKerberosArnLease_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "credentialsfetcher/credentialsfetcher.proto",
}
