// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/aws/aws-application-networking-k8s/pkg/deploy/lattice (interfaces: RuleManager)

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

import (
	context "context"
	reflect "reflect"

	lattice "github.com/aws/aws-application-networking-k8s/pkg/model/lattice"
	vpclattice "github.com/aws/aws-sdk-go/service/vpclattice"
	gomock "github.com/golang/mock/gomock"
)

// MockRuleManager is a mock of RuleManager interface.
type MockRuleManager struct {
	ctrl     *gomock.Controller
	recorder *MockRuleManagerMockRecorder
}

// MockRuleManagerMockRecorder is the mock recorder for MockRuleManager.
type MockRuleManagerMockRecorder struct {
	mock *MockRuleManager
}

// NewMockRuleManager creates a new mock instance.
func NewMockRuleManager(ctrl *gomock.Controller) *MockRuleManager {
	mock := &MockRuleManager{ctrl: ctrl}
	mock.recorder = &MockRuleManagerMockRecorder{mock}
	return mock
}

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

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

// Delete indicates an expected call of Delete.
func (mr *MockRuleManagerMockRecorder) Delete(arg0, arg1, arg2, arg3 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockRuleManager)(nil).Delete), arg0, arg1, arg2, arg3)
}

// Get mocks base method.
func (m *MockRuleManager) Get(arg0 context.Context, arg1, arg2, arg3 string) (*vpclattice.GetRuleOutput, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", arg0, arg1, arg2, arg3)
	ret0, _ := ret[0].(*vpclattice.GetRuleOutput)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Get indicates an expected call of Get.
func (mr *MockRuleManagerMockRecorder) Get(arg0, arg1, arg2, arg3 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockRuleManager)(nil).Get), arg0, arg1, arg2, arg3)
}

// List mocks base method.
func (m *MockRuleManager) List(arg0 context.Context, arg1, arg2 string) ([]*vpclattice.RuleSummary, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "List", arg0, arg1, arg2)
	ret0, _ := ret[0].([]*vpclattice.RuleSummary)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// List indicates an expected call of List.
func (mr *MockRuleManagerMockRecorder) List(arg0, arg1, arg2 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockRuleManager)(nil).List), arg0, arg1, arg2)
}

// UpdatePriorities mocks base method.
func (m *MockRuleManager) UpdatePriorities(arg0 context.Context, arg1, arg2 string, arg3 []*lattice.Rule) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdatePriorities", arg0, arg1, arg2, arg3)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdatePriorities indicates an expected call of UpdatePriorities.
func (mr *MockRuleManagerMockRecorder) UpdatePriorities(arg0, arg1, arg2, arg3 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdatePriorities", reflect.TypeOf((*MockRuleManager)(nil).UpdatePriorities), arg0, arg1, arg2, arg3)
}

// Upsert mocks base method.
func (m *MockRuleManager) Upsert(arg0 context.Context, arg1 *lattice.Rule, arg2 *lattice.Listener, arg3 *lattice.Service) (lattice.RuleStatus, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Upsert", arg0, arg1, arg2, arg3)
	ret0, _ := ret[0].(lattice.RuleStatus)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Upsert indicates an expected call of Upsert.
func (mr *MockRuleManagerMockRecorder) Upsert(arg0, arg1, arg2, arg3 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Upsert", reflect.TypeOf((*MockRuleManager)(nil).Upsert), arg0, arg1, arg2, arg3)
}
