// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc             v6.33.3
// source: main-categories/main_categories.proto

package golang_client

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

// MainCategoriesManagerClient is the client API for MainCategoriesManager 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 MainCategoriesManagerClient interface {
	// GetById (Unary)
	GetById(ctx context.Context, in *GetByIdRequest, opts ...grpc.CallOption) (*GetByIdResponse, error)
	// GetByIds (Unary)
	GetByIds(ctx context.Context, in *GetByIdsRequest, opts ...grpc.CallOption) (*GetByIdsResponse, error)
	// GetDocumentsUpdatedBetweenDates (Server Stream)
	GetDocumentsUpdatedBetweenDates(ctx context.Context, in *GetDocumentsUpdatedBetweenDatesRequest, opts ...grpc.CallOption) (MainCategoriesManager_GetDocumentsUpdatedBetweenDatesClient, error)
	// CFeedsSyncDocuments (Server Stream)
	CFeedsSyncDocuments(ctx context.Context, in *CFeedsSyncDocumentsRequest, opts ...grpc.CallOption) (MainCategoriesManager_CFeedsSyncDocumentsClient, error)
	// CFeedsSyncAllIds (Server Stream)
	CFeedsSyncAllIds(ctx context.Context, in *CFeedsSyncAllIdsRequest, opts ...grpc.CallOption) (MainCategoriesManager_CFeedsSyncAllIdsClient, error)
	Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error)
	UpdateFields(ctx context.Context, in *UpdateFieldsRequest, opts ...grpc.CallOption) (*UpdateFieldsResponse, error)
	DeleteById(ctx context.Context, in *DeleteByIdRequest, opts ...grpc.CallOption) (*DeleteByIdResponse, error)
	GetVodCategoriesList(ctx context.Context, in *GetVodCategoriesListRequest, opts ...grpc.CallOption) (*GetVodCategoriesListResponse, error)
	GetChannelsList(ctx context.Context, in *GetChannelsListRequest, opts ...grpc.CallOption) (*GetChannelsListResponse, error)
	SetOrderInChannelsList(ctx context.Context, in *SetOrderInChannelsListRequest, opts ...grpc.CallOption) (*SetOrderInChannelsListResponse, error)
	SetOrderInVodList(ctx context.Context, in *SetOrderInVodListRequest, opts ...grpc.CallOption) (*SetOrderInVodListResponse, error)
	GetAllPaged(ctx context.Context, in *GetAllPagedRequest, opts ...grpc.CallOption) (*GetAllPagedResponse, error)
	// SetMainCategoriesOrder (Unary)
	SetMainCategoriesOrder(ctx context.Context, in *SetMainCategoriesOrderRequest, opts ...grpc.CallOption) (*SetMainCategoriesOrderResponse, error)
	// BulkAssignVodsToMainCategories (Unary)
	BulkAssignVodsToMainCategories(ctx context.Context, in *BulkAssignVodsToMainCategoriesRequest, opts ...grpc.CallOption) (*BulkAssignVodsToMainCategoriesResponse, error)
	// BulkAssignChannelsToMainCategories (Unary)
	BulkAssignChannelsToMainCategories(ctx context.Context, in *BulkAssignChannelsToMainCategoriesRequest, opts ...grpc.CallOption) (*BulkAssignChannelsToMainCategoriesResponse, error)
}

type mainCategoriesManagerClient struct {
	cc grpc.ClientConnInterface
}

func NewMainCategoriesManagerClient(cc grpc.ClientConnInterface) MainCategoriesManagerClient {
	return &mainCategoriesManagerClient{cc}
}

func (c *mainCategoriesManagerClient) GetById(ctx context.Context, in *GetByIdRequest, opts ...grpc.CallOption) (*GetByIdResponse, error) {
	out := new(GetByIdResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/GetById", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) GetByIds(ctx context.Context, in *GetByIdsRequest, opts ...grpc.CallOption) (*GetByIdsResponse, error) {
	out := new(GetByIdsResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/GetByIds", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) GetDocumentsUpdatedBetweenDates(ctx context.Context, in *GetDocumentsUpdatedBetweenDatesRequest, opts ...grpc.CallOption) (MainCategoriesManager_GetDocumentsUpdatedBetweenDatesClient, error) {
	stream, err := c.cc.NewStream(ctx, &MainCategoriesManager_ServiceDesc.Streams[0], "/maincategoriespackage.MainCategoriesManager/GetDocumentsUpdatedBetweenDates", opts...)
	if err != nil {
		return nil, err
	}
	x := &mainCategoriesManagerGetDocumentsUpdatedBetweenDatesClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type MainCategoriesManager_GetDocumentsUpdatedBetweenDatesClient interface {
	Recv() (*MainCategory, error)
	grpc.ClientStream
}

type mainCategoriesManagerGetDocumentsUpdatedBetweenDatesClient struct {
	grpc.ClientStream
}

func (x *mainCategoriesManagerGetDocumentsUpdatedBetweenDatesClient) Recv() (*MainCategory, error) {
	m := new(MainCategory)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *mainCategoriesManagerClient) CFeedsSyncDocuments(ctx context.Context, in *CFeedsSyncDocumentsRequest, opts ...grpc.CallOption) (MainCategoriesManager_CFeedsSyncDocumentsClient, error) {
	stream, err := c.cc.NewStream(ctx, &MainCategoriesManager_ServiceDesc.Streams[1], "/maincategoriespackage.MainCategoriesManager/CFeedsSyncDocuments", opts...)
	if err != nil {
		return nil, err
	}
	x := &mainCategoriesManagerCFeedsSyncDocumentsClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type MainCategoriesManager_CFeedsSyncDocumentsClient interface {
	Recv() (*MainCategory, error)
	grpc.ClientStream
}

type mainCategoriesManagerCFeedsSyncDocumentsClient struct {
	grpc.ClientStream
}

func (x *mainCategoriesManagerCFeedsSyncDocumentsClient) Recv() (*MainCategory, error) {
	m := new(MainCategory)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *mainCategoriesManagerClient) CFeedsSyncAllIds(ctx context.Context, in *CFeedsSyncAllIdsRequest, opts ...grpc.CallOption) (MainCategoriesManager_CFeedsSyncAllIdsClient, error) {
	stream, err := c.cc.NewStream(ctx, &MainCategoriesManager_ServiceDesc.Streams[2], "/maincategoriespackage.MainCategoriesManager/CFeedsSyncAllIds", opts...)
	if err != nil {
		return nil, err
	}
	x := &mainCategoriesManagerCFeedsSyncAllIdsClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type MainCategoriesManager_CFeedsSyncAllIdsClient interface {
	Recv() (*Id, error)
	grpc.ClientStream
}

type mainCategoriesManagerCFeedsSyncAllIdsClient struct {
	grpc.ClientStream
}

func (x *mainCategoriesManagerCFeedsSyncAllIdsClient) Recv() (*Id, error) {
	m := new(Id)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *mainCategoriesManagerClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) {
	out := new(CreateResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/Create", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) UpdateFields(ctx context.Context, in *UpdateFieldsRequest, opts ...grpc.CallOption) (*UpdateFieldsResponse, error) {
	out := new(UpdateFieldsResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/UpdateFields", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) DeleteById(ctx context.Context, in *DeleteByIdRequest, opts ...grpc.CallOption) (*DeleteByIdResponse, error) {
	out := new(DeleteByIdResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/DeleteById", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) GetVodCategoriesList(ctx context.Context, in *GetVodCategoriesListRequest, opts ...grpc.CallOption) (*GetVodCategoriesListResponse, error) {
	out := new(GetVodCategoriesListResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/GetVodCategoriesList", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) GetChannelsList(ctx context.Context, in *GetChannelsListRequest, opts ...grpc.CallOption) (*GetChannelsListResponse, error) {
	out := new(GetChannelsListResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/GetChannelsList", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) SetOrderInChannelsList(ctx context.Context, in *SetOrderInChannelsListRequest, opts ...grpc.CallOption) (*SetOrderInChannelsListResponse, error) {
	out := new(SetOrderInChannelsListResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/SetOrderInChannelsList", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) SetOrderInVodList(ctx context.Context, in *SetOrderInVodListRequest, opts ...grpc.CallOption) (*SetOrderInVodListResponse, error) {
	out := new(SetOrderInVodListResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/SetOrderInVodList", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) GetAllPaged(ctx context.Context, in *GetAllPagedRequest, opts ...grpc.CallOption) (*GetAllPagedResponse, error) {
	out := new(GetAllPagedResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/GetAllPaged", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) SetMainCategoriesOrder(ctx context.Context, in *SetMainCategoriesOrderRequest, opts ...grpc.CallOption) (*SetMainCategoriesOrderResponse, error) {
	out := new(SetMainCategoriesOrderResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/SetMainCategoriesOrder", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) BulkAssignVodsToMainCategories(ctx context.Context, in *BulkAssignVodsToMainCategoriesRequest, opts ...grpc.CallOption) (*BulkAssignVodsToMainCategoriesResponse, error) {
	out := new(BulkAssignVodsToMainCategoriesResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/BulkAssignVodsToMainCategories", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *mainCategoriesManagerClient) BulkAssignChannelsToMainCategories(ctx context.Context, in *BulkAssignChannelsToMainCategoriesRequest, opts ...grpc.CallOption) (*BulkAssignChannelsToMainCategoriesResponse, error) {
	out := new(BulkAssignChannelsToMainCategoriesResponse)
	err := c.cc.Invoke(ctx, "/maincategoriespackage.MainCategoriesManager/BulkAssignChannelsToMainCategories", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// MainCategoriesManagerServer is the server API for MainCategoriesManager service.
// All implementations must embed UnimplementedMainCategoriesManagerServer
// for forward compatibility
type MainCategoriesManagerServer interface {
	// GetById (Unary)
	GetById(context.Context, *GetByIdRequest) (*GetByIdResponse, error)
	// GetByIds (Unary)
	GetByIds(context.Context, *GetByIdsRequest) (*GetByIdsResponse, error)
	// GetDocumentsUpdatedBetweenDates (Server Stream)
	GetDocumentsUpdatedBetweenDates(*GetDocumentsUpdatedBetweenDatesRequest, MainCategoriesManager_GetDocumentsUpdatedBetweenDatesServer) error
	// CFeedsSyncDocuments (Server Stream)
	CFeedsSyncDocuments(*CFeedsSyncDocumentsRequest, MainCategoriesManager_CFeedsSyncDocumentsServer) error
	// CFeedsSyncAllIds (Server Stream)
	CFeedsSyncAllIds(*CFeedsSyncAllIdsRequest, MainCategoriesManager_CFeedsSyncAllIdsServer) error
	Create(context.Context, *CreateRequest) (*CreateResponse, error)
	UpdateFields(context.Context, *UpdateFieldsRequest) (*UpdateFieldsResponse, error)
	DeleteById(context.Context, *DeleteByIdRequest) (*DeleteByIdResponse, error)
	GetVodCategoriesList(context.Context, *GetVodCategoriesListRequest) (*GetVodCategoriesListResponse, error)
	GetChannelsList(context.Context, *GetChannelsListRequest) (*GetChannelsListResponse, error)
	SetOrderInChannelsList(context.Context, *SetOrderInChannelsListRequest) (*SetOrderInChannelsListResponse, error)
	SetOrderInVodList(context.Context, *SetOrderInVodListRequest) (*SetOrderInVodListResponse, error)
	GetAllPaged(context.Context, *GetAllPagedRequest) (*GetAllPagedResponse, error)
	// SetMainCategoriesOrder (Unary)
	SetMainCategoriesOrder(context.Context, *SetMainCategoriesOrderRequest) (*SetMainCategoriesOrderResponse, error)
	// BulkAssignVodsToMainCategories (Unary)
	BulkAssignVodsToMainCategories(context.Context, *BulkAssignVodsToMainCategoriesRequest) (*BulkAssignVodsToMainCategoriesResponse, error)
	// BulkAssignChannelsToMainCategories (Unary)
	BulkAssignChannelsToMainCategories(context.Context, *BulkAssignChannelsToMainCategoriesRequest) (*BulkAssignChannelsToMainCategoriesResponse, error)
	mustEmbedUnimplementedMainCategoriesManagerServer()
}

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

func (UnimplementedMainCategoriesManagerServer) GetById(context.Context, *GetByIdRequest) (*GetByIdResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetById not implemented")
}
func (UnimplementedMainCategoriesManagerServer) GetByIds(context.Context, *GetByIdsRequest) (*GetByIdsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetByIds not implemented")
}
func (UnimplementedMainCategoriesManagerServer) GetDocumentsUpdatedBetweenDates(*GetDocumentsUpdatedBetweenDatesRequest, MainCategoriesManager_GetDocumentsUpdatedBetweenDatesServer) error {
	return status.Errorf(codes.Unimplemented, "method GetDocumentsUpdatedBetweenDates not implemented")
}
func (UnimplementedMainCategoriesManagerServer) CFeedsSyncDocuments(*CFeedsSyncDocumentsRequest, MainCategoriesManager_CFeedsSyncDocumentsServer) error {
	return status.Errorf(codes.Unimplemented, "method CFeedsSyncDocuments not implemented")
}
func (UnimplementedMainCategoriesManagerServer) CFeedsSyncAllIds(*CFeedsSyncAllIdsRequest, MainCategoriesManager_CFeedsSyncAllIdsServer) error {
	return status.Errorf(codes.Unimplemented, "method CFeedsSyncAllIds not implemented")
}
func (UnimplementedMainCategoriesManagerServer) Create(context.Context, *CreateRequest) (*CreateResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Create not implemented")
}
func (UnimplementedMainCategoriesManagerServer) UpdateFields(context.Context, *UpdateFieldsRequest) (*UpdateFieldsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateFields not implemented")
}
func (UnimplementedMainCategoriesManagerServer) DeleteById(context.Context, *DeleteByIdRequest) (*DeleteByIdResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteById not implemented")
}
func (UnimplementedMainCategoriesManagerServer) GetVodCategoriesList(context.Context, *GetVodCategoriesListRequest) (*GetVodCategoriesListResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetVodCategoriesList not implemented")
}
func (UnimplementedMainCategoriesManagerServer) GetChannelsList(context.Context, *GetChannelsListRequest) (*GetChannelsListResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetChannelsList not implemented")
}
func (UnimplementedMainCategoriesManagerServer) SetOrderInChannelsList(context.Context, *SetOrderInChannelsListRequest) (*SetOrderInChannelsListResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetOrderInChannelsList not implemented")
}
func (UnimplementedMainCategoriesManagerServer) SetOrderInVodList(context.Context, *SetOrderInVodListRequest) (*SetOrderInVodListResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetOrderInVodList not implemented")
}
func (UnimplementedMainCategoriesManagerServer) GetAllPaged(context.Context, *GetAllPagedRequest) (*GetAllPagedResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetAllPaged not implemented")
}
func (UnimplementedMainCategoriesManagerServer) SetMainCategoriesOrder(context.Context, *SetMainCategoriesOrderRequest) (*SetMainCategoriesOrderResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetMainCategoriesOrder not implemented")
}
func (UnimplementedMainCategoriesManagerServer) BulkAssignVodsToMainCategories(context.Context, *BulkAssignVodsToMainCategoriesRequest) (*BulkAssignVodsToMainCategoriesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BulkAssignVodsToMainCategories not implemented")
}
func (UnimplementedMainCategoriesManagerServer) BulkAssignChannelsToMainCategories(context.Context, *BulkAssignChannelsToMainCategoriesRequest) (*BulkAssignChannelsToMainCategoriesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BulkAssignChannelsToMainCategories not implemented")
}
func (UnimplementedMainCategoriesManagerServer) mustEmbedUnimplementedMainCategoriesManagerServer() {}

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

func RegisterMainCategoriesManagerServer(s grpc.ServiceRegistrar, srv MainCategoriesManagerServer) {
	s.RegisterService(&MainCategoriesManager_ServiceDesc, srv)
}

func _MainCategoriesManager_GetById_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetByIdRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).GetById(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/GetById",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).GetById(ctx, req.(*GetByIdRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_GetByIds_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetByIdsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).GetByIds(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/GetByIds",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).GetByIds(ctx, req.(*GetByIdsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_GetDocumentsUpdatedBetweenDates_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(GetDocumentsUpdatedBetweenDatesRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(MainCategoriesManagerServer).GetDocumentsUpdatedBetweenDates(m, &mainCategoriesManagerGetDocumentsUpdatedBetweenDatesServer{stream})
}

type MainCategoriesManager_GetDocumentsUpdatedBetweenDatesServer interface {
	Send(*MainCategory) error
	grpc.ServerStream
}

type mainCategoriesManagerGetDocumentsUpdatedBetweenDatesServer struct {
	grpc.ServerStream
}

func (x *mainCategoriesManagerGetDocumentsUpdatedBetweenDatesServer) Send(m *MainCategory) error {
	return x.ServerStream.SendMsg(m)
}

func _MainCategoriesManager_CFeedsSyncDocuments_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(CFeedsSyncDocumentsRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(MainCategoriesManagerServer).CFeedsSyncDocuments(m, &mainCategoriesManagerCFeedsSyncDocumentsServer{stream})
}

type MainCategoriesManager_CFeedsSyncDocumentsServer interface {
	Send(*MainCategory) error
	grpc.ServerStream
}

type mainCategoriesManagerCFeedsSyncDocumentsServer struct {
	grpc.ServerStream
}

func (x *mainCategoriesManagerCFeedsSyncDocumentsServer) Send(m *MainCategory) error {
	return x.ServerStream.SendMsg(m)
}

func _MainCategoriesManager_CFeedsSyncAllIds_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(CFeedsSyncAllIdsRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(MainCategoriesManagerServer).CFeedsSyncAllIds(m, &mainCategoriesManagerCFeedsSyncAllIdsServer{stream})
}

type MainCategoriesManager_CFeedsSyncAllIdsServer interface {
	Send(*Id) error
	grpc.ServerStream
}

type mainCategoriesManagerCFeedsSyncAllIdsServer struct {
	grpc.ServerStream
}

func (x *mainCategoriesManagerCFeedsSyncAllIdsServer) Send(m *Id) error {
	return x.ServerStream.SendMsg(m)
}

func _MainCategoriesManager_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).Create(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/Create",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).Create(ctx, req.(*CreateRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_UpdateFields_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateFieldsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).UpdateFields(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/UpdateFields",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).UpdateFields(ctx, req.(*UpdateFieldsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_DeleteById_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteByIdRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).DeleteById(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/DeleteById",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).DeleteById(ctx, req.(*DeleteByIdRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_GetVodCategoriesList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetVodCategoriesListRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).GetVodCategoriesList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/GetVodCategoriesList",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).GetVodCategoriesList(ctx, req.(*GetVodCategoriesListRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_GetChannelsList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetChannelsListRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).GetChannelsList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/GetChannelsList",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).GetChannelsList(ctx, req.(*GetChannelsListRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_SetOrderInChannelsList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetOrderInChannelsListRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).SetOrderInChannelsList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/SetOrderInChannelsList",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).SetOrderInChannelsList(ctx, req.(*SetOrderInChannelsListRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_SetOrderInVodList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetOrderInVodListRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).SetOrderInVodList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/SetOrderInVodList",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).SetOrderInVodList(ctx, req.(*SetOrderInVodListRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_GetAllPaged_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetAllPagedRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).GetAllPaged(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/GetAllPaged",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).GetAllPaged(ctx, req.(*GetAllPagedRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_SetMainCategoriesOrder_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetMainCategoriesOrderRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).SetMainCategoriesOrder(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/SetMainCategoriesOrder",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).SetMainCategoriesOrder(ctx, req.(*SetMainCategoriesOrderRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_BulkAssignVodsToMainCategories_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BulkAssignVodsToMainCategoriesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).BulkAssignVodsToMainCategories(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/BulkAssignVodsToMainCategories",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).BulkAssignVodsToMainCategories(ctx, req.(*BulkAssignVodsToMainCategoriesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _MainCategoriesManager_BulkAssignChannelsToMainCategories_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BulkAssignChannelsToMainCategoriesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(MainCategoriesManagerServer).BulkAssignChannelsToMainCategories(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/maincategoriespackage.MainCategoriesManager/BulkAssignChannelsToMainCategories",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(MainCategoriesManagerServer).BulkAssignChannelsToMainCategories(ctx, req.(*BulkAssignChannelsToMainCategoriesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

// MainCategoriesManager_ServiceDesc is the grpc.ServiceDesc for MainCategoriesManager service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var MainCategoriesManager_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "maincategoriespackage.MainCategoriesManager",
	HandlerType: (*MainCategoriesManagerServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetById",
			Handler:    _MainCategoriesManager_GetById_Handler,
		},
		{
			MethodName: "GetByIds",
			Handler:    _MainCategoriesManager_GetByIds_Handler,
		},
		{
			MethodName: "Create",
			Handler:    _MainCategoriesManager_Create_Handler,
		},
		{
			MethodName: "UpdateFields",
			Handler:    _MainCategoriesManager_UpdateFields_Handler,
		},
		{
			MethodName: "DeleteById",
			Handler:    _MainCategoriesManager_DeleteById_Handler,
		},
		{
			MethodName: "GetVodCategoriesList",
			Handler:    _MainCategoriesManager_GetVodCategoriesList_Handler,
		},
		{
			MethodName: "GetChannelsList",
			Handler:    _MainCategoriesManager_GetChannelsList_Handler,
		},
		{
			MethodName: "SetOrderInChannelsList",
			Handler:    _MainCategoriesManager_SetOrderInChannelsList_Handler,
		},
		{
			MethodName: "SetOrderInVodList",
			Handler:    _MainCategoriesManager_SetOrderInVodList_Handler,
		},
		{
			MethodName: "GetAllPaged",
			Handler:    _MainCategoriesManager_GetAllPaged_Handler,
		},
		{
			MethodName: "SetMainCategoriesOrder",
			Handler:    _MainCategoriesManager_SetMainCategoriesOrder_Handler,
		},
		{
			MethodName: "BulkAssignVodsToMainCategories",
			Handler:    _MainCategoriesManager_BulkAssignVodsToMainCategories_Handler,
		},
		{
			MethodName: "BulkAssignChannelsToMainCategories",
			Handler:    _MainCategoriesManager_BulkAssignChannelsToMainCategories_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "GetDocumentsUpdatedBetweenDates",
			Handler:       _MainCategoriesManager_GetDocumentsUpdatedBetweenDates_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "CFeedsSyncDocuments",
			Handler:       _MainCategoriesManager_CFeedsSyncDocuments_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "CFeedsSyncAllIds",
			Handler:       _MainCategoriesManager_CFeedsSyncAllIds_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "main-categories/main_categories.proto",
}
