У меня есть одноэлементный класс:
public class Widget
{
private Mapper mapper;
private static Widget SINGLETON;
private Widget(Mapper map)
{
setMapper(map);
}
public Widget getInstance()
{
if(SINGLETON == null)
SINGLETON = new Widget(???);
return SINGLETON;
}
}
Я не только не понимаю, как передать SINGLETON
a Mapper
в его частный конструктор, я не вижу, как я могу использоватьвнедрение зависимостей для правильной настройки синглтона.Скажем Mapper
это интерфейс.Возможно, при «нормальном» выполнении я хочу передать SINGLETON
экземпляр StandardMapper
, но во время модульного тестирования я хочу передать его MockMapper
.
Заранее спасибо за любые указатели!