我需要解决Java设计问题。我正在实现一个通用的ConfigurationRetriever,它将返回用户所需的配置。
我有多个*配置对象,需要根据用户提供的时间间隔自动刷新。客户端应该能够提供所需的配置列表。检索器应为用户提供检索自动更新的配置的方式。我应该如何设计?哪种设计模式更适合此问题?
这是示例类。
class AConfiguration {}
class BConfiguration {}
class CConfiguration {}
class ConfigurationRetriever {
AConfiguration getAConfiguration() {}
BConfiguration getBConfiguration() {}
CConfiguration getCConfiguration() {}
}
我想在ConfigurationRetriever类中添加其他字段。
long timePeriod; // This indicates hhow frequently configurations should be auto updated.
List<String> configNames; // This indicates which configs should be retrieved. e.g { "AConfiguration", "CConfiguration" }
基于timePeriod,将有一个ScheduledExecutorService,它将继续更新configNames列表中提供的配置。
我应该如何设计这些类?哪种设计模式适合这里?