Предположим, у меня есть несколько процессоров данных, расширяющих один и тот же интерфейс:
IProcessor.java
public interface IProcessor() {
void processName(String name);
}
BookProcessor.java
public class BookProcessor implements IProcessor {
@Override
public void processName(String name){
//Process name in book specific logic
}
}
MagazineProcessor.java
public class MagazineProcessor implements IProcessor {
@Override
public void processName(String name){
//Process name in magazine specific logic
}
}
Все эти процессоры находятся на клиенте, скажем MyClient
, и этот клиент получает данные от службы, скажем MyService
.
Я хочу реализовать пространство имен, чтобы из этого пространства имен MyClient
мог автоматически выбрать нужный процессор. Для этого я подумал, что MyService
сам должен посылать данные в пространстве имен (может быть, идентификатор пространства имен).
У меня вопрос, как мне реализовать этот именование, чтобы MyService
и MyClient
делились им, даже когда MyService
не знает о процессорах, присутствующих в MyClient
.