【问题标题】:Configurable Resource - Design patterns可配置资源 - 设计模式
【发布时间】:2011-11-23 04:05:10
【问题描述】:
首先是一点背景。
我们正在开发一个应用程序,它接收来自n 数量的sources 的消息。 source 可能是messaging queue、FTP 位置、webservice 对特定服务或我们能想到的任何可能的编排层的调用。我的任务是设计和开发一个模块,该模块将充当可配置的资源管理器,它将在处理消息的模块和发送消息的应用程序之间工作。
您能否建议我可以在这里使用的任何设计模式或最佳实践。我们希望能够灵活地配置这些资源并即时更改频道。表示如果消息类型 A 今天进入队列,明天这可能是预定的 Web 服务调用。
任何关于这方面的指针将不胜感激。
【问题讨论】:
标签:
java
oop
design-patterns
input
channel
【解决方案1】:
要获得好的答案,您应该发布更多详细信息,但看起来您需要strategy 设计模式。
public interface SourceStrategy{
public Message getMessage();
}
public FtpLocation implements SourceStrategy{...}
public MessageQueue implements SourceStrategy{...}
public WebService implements SourceStrategy{...}
public class Application(){
SourceStrategy s;
public void setStrategy(SourceStrategy s){
this.strategy = s;
}
public void readMessage(){
Message m = this.s.getMessage();
}
}