バンドルの開始時と停止時に呼び出されるアノテーション付きメソッドの順序は?
aQute.bnd.annotation の注釈を使用します。
これに関するドキュメントはありますか?
私の推測では、次のとおりです。バンドルの開始時:
- セットA
- onStartUp (@Activate)
バンドル停止時:
- unsetA
- onShutdown (@Deactivate)
コンポーネントへのすべてのサービス参照が設定解除された後に呼び出されるメソッドが必要です。これに @Deactivate メソッドを使用できますか?
@Component(immediate=true)
public class AImpl implements A {
@Activate
public void onStartUp() {
}
@Deactivate
public void onShutDown() {
}
}
public class B {
private A a;
@Reference(name = "a",
service = A.class,
optional = false,
multiple = false,
dynamic = true,
unbind = "unsetA")
public void setA(A a) {
this.a = a;
}
public void unsetA(A a) {
this.a = null;
}
}