列表元素之间的依赖

时间:2013-06-19 11:46:43

标签: java list

我有4项服务。每个人都依赖于其他人,例如,如果服务A开始则B和C,如果B开始则可以开始。如果A-> B和C,如果B-> D.我设法创建了他们的start()和stop()方法,但我只是不知道如何在它们之间建立依赖关系。我正在考虑向ChechRequirements类服务发送他必须运行的服务以及该服务所依赖的服务列表,如果该列表等于当前运行的列表,他可以像其他人一样在该服务之前启动。这是一个好主意还是你有另一个?

非常感谢

1 个答案:

答案 0 :(得分:1)

我建议你依赖一个经过批准的框架,比如OSGi(以及他的Apache Felix实现)。

如果您因任何原因希望保留自己的框架,我建议您根据这些步骤设计和设置生命周期管理:

  1. 停止:服务存在
  2. 无效:服务已初始化,但依赖性不可用
  3. 就绪:所有运行条件都有效(例如依赖性)
  4. 已启动:服务可以处理请求
  5. 然后,当启动依赖于另一个服务的服务时,您必须升级依赖状态。当停止依赖时,你必须降低依赖服务的状态。