package module

import (
	"gitlab.alibaba-inc.com/pai_biz_arch/pairec/context"
	"gitlab.alibaba-inc.com/pai_biz_arch/pairec/recconf"
)

type UserGlobalHotRecallDao interface {
	ListItemsByUser(user *User, context *context.RecommendContext) []*Item
}

func NewUserGlobalHotRecallDao(config recconf.RecallConfig) UserGlobalHotRecallDao {
	// if config.DaoConf.AdapterType == recconf.DaoConf_Adapter_Mysql {
	// return NewUserCusteomRecallMysqlDao(config)
	// } else if config.DaoConf.AdapterType == recconf.DaoConf_Adapter_TableStore {
	// return NewUserGlobalHotRecallTableStoreDao(config)
	// } else if config.DaoConf.AdapterType == recconf.DaoConf_Adapter_Hologres {
	// return NewUserCusteomRecallHologresDao(config)
	// }

	if config.DaoConf.AdapterType == recconf.DaoConf_Adapter_Hologres {
		return NewUserGlobalHotRecallHologresDao(config)
	}

	panic("not found UserGlobalHotRecallDao implement")
}
