// Code generated by MockGen. DO NOT EDIT.
// Source: types.go
//
// Generated by this command:
//
//	mockgen -destination=mocks/mock_registry_handler.go -package=mocks -source=types.go RegistryHandler,RegistryHandlerFactory
//

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

import (
	context "context"
	reflect "reflect"

	registry "github.com/stacklok/toolhive-core/registry/types"
	config "github.com/stacklok/toolhive-registry-server/internal/config"
	sources "github.com/stacklok/toolhive-registry-server/internal/sources"
	gomock "go.uber.org/mock/gomock"
)

// MockRegistryDataValidator is a mock of RegistryDataValidator interface.
type MockRegistryDataValidator struct {
	ctrl     *gomock.Controller
	recorder *MockRegistryDataValidatorMockRecorder
	isgomock struct{}
}

// MockRegistryDataValidatorMockRecorder is the mock recorder for MockRegistryDataValidator.
type MockRegistryDataValidatorMockRecorder struct {
	mock *MockRegistryDataValidator
}

// NewMockRegistryDataValidator creates a new mock instance.
func NewMockRegistryDataValidator(ctrl *gomock.Controller) *MockRegistryDataValidator {
	mock := &MockRegistryDataValidator{ctrl: ctrl}
	mock.recorder = &MockRegistryDataValidatorMockRecorder{mock}
	return mock
}

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

// ValidateData mocks base method.
func (m *MockRegistryDataValidator) ValidateData(data []byte) (*registry.UpstreamRegistry, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ValidateData", data)
	ret0, _ := ret[0].(*registry.UpstreamRegistry)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ValidateData indicates an expected call of ValidateData.
func (mr *MockRegistryDataValidatorMockRecorder) ValidateData(data any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ValidateData", reflect.TypeOf((*MockRegistryDataValidator)(nil).ValidateData), data)
}

// MockRegistryHandler is a mock of RegistryHandler interface.
type MockRegistryHandler struct {
	ctrl     *gomock.Controller
	recorder *MockRegistryHandlerMockRecorder
	isgomock struct{}
}

// MockRegistryHandlerMockRecorder is the mock recorder for MockRegistryHandler.
type MockRegistryHandlerMockRecorder struct {
	mock *MockRegistryHandler
}

// NewMockRegistryHandler creates a new mock instance.
func NewMockRegistryHandler(ctrl *gomock.Controller) *MockRegistryHandler {
	mock := &MockRegistryHandler{ctrl: ctrl}
	mock.recorder = &MockRegistryHandlerMockRecorder{mock}
	return mock
}

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

// FetchRegistry mocks base method.
func (m *MockRegistryHandler) FetchRegistry(ctx context.Context, regCfg *config.SourceConfig) (*sources.FetchResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "FetchRegistry", ctx, regCfg)
	ret0, _ := ret[0].(*sources.FetchResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// FetchRegistry indicates an expected call of FetchRegistry.
func (mr *MockRegistryHandlerMockRecorder) FetchRegistry(ctx, regCfg any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FetchRegistry", reflect.TypeOf((*MockRegistryHandler)(nil).FetchRegistry), ctx, regCfg)
}

// Validate mocks base method.
func (m *MockRegistryHandler) Validate(regCfg *config.SourceConfig) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Validate", regCfg)
	ret0, _ := ret[0].(error)
	return ret0
}

// Validate indicates an expected call of Validate.
func (mr *MockRegistryHandlerMockRecorder) Validate(regCfg any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Validate", reflect.TypeOf((*MockRegistryHandler)(nil).Validate), regCfg)
}

// MockRegistryHandlerFactory is a mock of RegistryHandlerFactory interface.
type MockRegistryHandlerFactory struct {
	ctrl     *gomock.Controller
	recorder *MockRegistryHandlerFactoryMockRecorder
	isgomock struct{}
}

// MockRegistryHandlerFactoryMockRecorder is the mock recorder for MockRegistryHandlerFactory.
type MockRegistryHandlerFactoryMockRecorder struct {
	mock *MockRegistryHandlerFactory
}

// NewMockRegistryHandlerFactory creates a new mock instance.
func NewMockRegistryHandlerFactory(ctrl *gomock.Controller) *MockRegistryHandlerFactory {
	mock := &MockRegistryHandlerFactory{ctrl: ctrl}
	mock.recorder = &MockRegistryHandlerFactoryMockRecorder{mock}
	return mock
}

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

// CreateHandler mocks base method.
func (m *MockRegistryHandlerFactory) CreateHandler(regCfg *config.SourceConfig) (sources.RegistryHandler, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateHandler", regCfg)
	ret0, _ := ret[0].(sources.RegistryHandler)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateHandler indicates an expected call of CreateHandler.
func (mr *MockRegistryHandlerFactoryMockRecorder) CreateHandler(regCfg any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateHandler", reflect.TypeOf((*MockRegistryHandlerFactory)(nil).CreateHandler), regCfg)
}
