// Code generated by MockGen. DO NOT EDIT.
// Source: ../interfaces/deploy_dispatcher_service.go
//
// Generated by this command:
//
//	mockgen -source ../interfaces/deploy_dispatcher_service.go -destination ../interfaces/mock/mock_deploy_dispatcher_service.go
//

// Package mock_interfaces is a generated GoMock package.
package mock_interfaces

import (
	context "context"
	interfaces "flow-stream-data-pipeline/pipeline-mgmt/interfaces"
	reflect "reflect"

	gomock "go.uber.org/mock/gomock"
	v1 "k8s.io/api/apps/v1"
	v10 "k8s.io/apimachinery/pkg/apis/meta/v1"
)

// MockApplyData is a mock of ApplyData interface.
type MockApplyData struct {
	ctrl     *gomock.Controller
	recorder *MockApplyDataMockRecorder
	isgomock struct{}
}

// MockApplyDataMockRecorder is the mock recorder for MockApplyData.
type MockApplyDataMockRecorder struct {
	mock *MockApplyData
}

// NewMockApplyData creates a new mock instance.
func NewMockApplyData(ctrl *gomock.Controller) *MockApplyData {
	mock := &MockApplyData{ctrl: ctrl}
	mock.recorder = &MockApplyDataMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockApplyData) EXPECT() *MockApplyDataMockRecorder {
	return m.recorder
}

// MockDeployDispatcherService is a mock of DeployDispatcherService interface.
type MockDeployDispatcherService struct {
	ctrl     *gomock.Controller
	recorder *MockDeployDispatcherServiceMockRecorder
	isgomock struct{}
}

// MockDeployDispatcherServiceMockRecorder is the mock recorder for MockDeployDispatcherService.
type MockDeployDispatcherServiceMockRecorder struct {
	mock *MockDeployDispatcherService
}

// NewMockDeployDispatcherService creates a new mock instance.
func NewMockDeployDispatcherService(ctrl *gomock.Controller) *MockDeployDispatcherService {
	mock := &MockDeployDispatcherService{ctrl: ctrl}
	mock.recorder = &MockDeployDispatcherServiceMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockDeployDispatcherService) EXPECT() *MockDeployDispatcherServiceMockRecorder {
	return m.recorder
}

// ApplyData mocks base method.
func (m *MockDeployDispatcherService) ApplyData(arg0 context.Context, arg1 interfaces.ApplyAction, arg2 interfaces.ApplyData) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ApplyData", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

// ApplyData indicates an expected call of ApplyData.
func (mr *MockDeployDispatcherServiceMockRecorder) ApplyData(arg0, arg1, arg2 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ApplyData", reflect.TypeOf((*MockDeployDispatcherService)(nil).ApplyData), arg0, arg1, arg2)
}

// CreateDeploy mocks base method.
func (m *MockDeployDispatcherService) CreateDeploy(ctx context.Context, pipelineID string, k8scfg *interfaces.KubernetesCfg, serviceInfo *interfaces.ServiceInfo) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateDeploy", ctx, pipelineID, k8scfg, serviceInfo)
	ret0, _ := ret[0].(error)
	return ret0
}

// CreateDeploy indicates an expected call of CreateDeploy.
func (mr *MockDeployDispatcherServiceMockRecorder) CreateDeploy(ctx, pipelineID, k8scfg, serviceInfo any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateDeploy", reflect.TypeOf((*MockDeployDispatcherService)(nil).CreateDeploy), ctx, pipelineID, k8scfg, serviceInfo)
}

// DeleteDeploy mocks base method.
func (m *MockDeployDispatcherService) DeleteDeploy(ctx context.Context, pipelineID string, serviceInfo *interfaces.ServiceInfo) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteDeploy", ctx, pipelineID, serviceInfo)
	ret0, _ := ret[0].(error)
	return ret0
}

// DeleteDeploy indicates an expected call of DeleteDeploy.
func (mr *MockDeployDispatcherServiceMockRecorder) DeleteDeploy(ctx, pipelineID, serviceInfo any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteDeploy", reflect.TypeOf((*MockDeployDispatcherService)(nil).DeleteDeploy), ctx, pipelineID, serviceInfo)
}

// GetDeploy mocks base method.
func (m *MockDeployDispatcherService) GetDeploy(ctx context.Context, pipelineID string, serviceInfo *interfaces.ServiceInfo) (*v1.Deployment, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetDeploy", ctx, pipelineID, serviceInfo)
	ret0, _ := ret[0].(*v1.Deployment)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetDeploy indicates an expected call of GetDeploy.
func (mr *MockDeployDispatcherServiceMockRecorder) GetDeploy(ctx, pipelineID, serviceInfo any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDeploy", reflect.TypeOf((*MockDeployDispatcherService)(nil).GetDeploy), ctx, pipelineID, serviceInfo)
}

// ListDeploy mocks base method.
func (m *MockDeployDispatcherService) ListDeploy(ctx context.Context, opts v10.ListOptions) (*v1.DeploymentList, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListDeploy", ctx, opts)
	ret0, _ := ret[0].(*v1.DeploymentList)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListDeploy indicates an expected call of ListDeploy.
func (mr *MockDeployDispatcherServiceMockRecorder) ListDeploy(ctx, opts any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListDeploy", reflect.TypeOf((*MockDeployDispatcherService)(nil).ListDeploy), ctx, opts)
}

// UpdateDeploy mocks base method.
func (m *MockDeployDispatcherService) UpdateDeploy(ctx context.Context, pipelineID string, k8scfg *interfaces.KubernetesCfg, serviceInfo *interfaces.ServiceInfo) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateDeploy", ctx, pipelineID, k8scfg, serviceInfo)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateDeploy indicates an expected call of UpdateDeploy.
func (mr *MockDeployDispatcherServiceMockRecorder) UpdateDeploy(ctx, pipelineID, k8scfg, serviceInfo any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateDeploy", reflect.TypeOf((*MockDeployDispatcherService)(nil).UpdateDeploy), ctx, pipelineID, k8scfg, serviceInfo)
}
