Skip to end of metadata
Go to start of metadata

Przeznaczenie

Moduł component-import służy do importu komponentów z systemu PlusWorkflow lub innych wtyczek. Zaimportowany moduł trafia do kontekstu wtyczki, dzięki czemu do jego pobrania możemy użyć wstrzykiwania zależności (Autowired).

Konfiguracja

Moduł component-import zawiera następujące opcje konfiguracyjne:

Atrybuty

NazwaWymaganyOpis
key(tick)Unikalny klucz tego modułu. Pod tym kluczem serwis zostanie zarejestrowany w kontekście wtyczki (bean name).
source 

Źródło, z którego pobieramy komponent:

    • system
    • plugin

Domyślnie system.

interface(tick)

Nazwa klasy importowanego serwisu/komponentu

Nie musi to być interfejs, ale wykorzystywanie interfejsów jest zalecane

filter 

Opcjonalny filtr serwisu. Jego znaczenie jest inne w zależności od atrybutu source:

Serwisy udostępnione z wtyczek mogą być opisane dodatkowymi atrybutami. Filtr pozwala na pobranie tylko odpowiedniego serwisu. Więcej o filtrach w dokumentacji OSGi.


Przykładowy deskryptor

<?xml version="1.0" encoding="UTF-8"?>
<plugin key="com.suncode.plugins-helloworld" name="Hello World">
 
	<!-- Import serwisu UserService z systemu -->
	<component-import key="userService" source="system" interface="com.suncode.pwfl.administration.user.UserService" />
 
	<!-- Import serwisu z innej wtyczki (nie jest ważna wtyczka, tylko nazwa interfejsu) -->
	<!-- Dodatkowo pobrany będzie tylko serwis, który został udostępniony z właściwością "language=en" -->
	<component-import key="dynamic" source="plugin" interface="com.suncode.plugin.tutorial.TestService" filter="(language=en)" />
</plugin>
  

 

 

Opis importu i eksportu serwisów znajduje się na stronie: Import i udostępnianie serwisów

  • No labels

1 Comment

  1. Gryzą mi się nazwy w opisie.

    Wygląda to mi tak, że czasem używasz nazwy komponent, drugi raz moduł, a innym serwis. A jak rozumie, to wszystko to jedno i to samo.

    Czy mylę się?