// Code generated by mockery v2.9.4. DO NOT EDIT.

package mocks

import (
	contracts "github.com/aws/amazon-ssm-agent/agent/contracts"
	messagehandler "github.com/aws/amazon-ssm-agent/agent/messageservice/messagehandler"
	processorwrappers "github.com/aws/amazon-ssm-agent/agent/messageservice/messagehandler/processorwrappers"
	mock "github.com/stretchr/testify/mock"
)

// IMessageHandler is an autogenerated mock type for the IMessageHandler type
type IMessageHandler struct {
	mock.Mock
}

// GetName provides a mock function with given fields:
func (_m *IMessageHandler) GetName() string {
	ret := _m.Called()

	var r0 string
	if rf, ok := ret.Get(0).(func() string); ok {
		r0 = rf()
	} else {
		r0 = ret.Get(0).(string)
	}

	return r0
}

// Initialize provides a mock function with given fields:
func (_m *IMessageHandler) Initialize() error {
	ret := _m.Called()

	var r0 error
	if rf, ok := ret.Get(0).(func() error); ok {
		r0 = rf()
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// InitializeAndRegisterProcessor provides a mock function with given fields: proc
func (_m *IMessageHandler) InitializeAndRegisterProcessor(proc processorwrappers.IProcessorWrapper) error {
	ret := _m.Called(proc)

	var r0 error
	if rf, ok := ret.Get(0).(func(processorwrappers.IProcessorWrapper) error); ok {
		r0 = rf(proc)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// RegisterReply provides a mock function with given fields: name, reply
func (_m *IMessageHandler) RegisterReply(name contracts.UpstreamServiceName, reply chan contracts.DocumentResult) {
	_m.Called(name, reply)
}

// Stop provides a mock function with given fields: stopType
func (_m *IMessageHandler) Stop() error {
	ret := _m.Called()

	var r0 error
	if rf, ok := ret.Get(0).(func() error); ok {
		r0 = rf()
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// Submit provides a mock function with given fields: message
func (_m *IMessageHandler) Submit(message *contracts.DocumentState) messagehandler.ErrorCode {
	ret := _m.Called(message)

	var r0 messagehandler.ErrorCode
	if rf, ok := ret.Get(0).(func(*contracts.DocumentState) messagehandler.ErrorCode); ok {
		r0 = rf(message)
	} else {
		r0 = ret.Get(0).(messagehandler.ErrorCode)
	}

	return r0
}
