Ich habe eine OSGi-Komponente:Gültige Wege von einer OSGi-Komponente zu unterbrechen aktiviert wird
@Component(immediate=true)
public class SomeComponent implements SomeInterface {...}
Beachten Sie, dass die Komponente unmittelbar. Da die Komponentenklasse eine Schnittstelle implementiert, verstehe ich, dass ein Dienst automatisch (im Rahmen der) Aktivierung der Komponente registriert wird.
Jetzt möchte ich in der Lage sein, die Komponentenaktivierung und Service-Registrierung dynamisch zu unterbrechen, wenn bestimmte Bedingungen erfüllt sind. Ein "ComponentException" in einem Komponentenaktivator zu werfen scheint die Aufgabe nicht zu erfüllen:
@Activate
public void activate() {
if (notReady)
throw new ComponentException("Component not ready");
}
Irgendwelche Vorschläge? Vielen Dank!