| Table Excerpt | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||
|
| Table of Contents |
|---|
Wstęp
Wtyczka umożliwia zarządzanie konfiguracjami (plikami konfiguracyjnymi) wtyczek zainstalowanych w systemie. Zamiast tworzenia dedykowanej zakładki do wgrywania/zmiany plików konfiguracyjnych dla każdej wtyczki z osobna, można zintegrować ją z PCM, która umożliwi użytkownikowi zmianę plików konfiguracyjnych dla wszystkich wtyczek w jednym miejscu.
Integracja z wtyczką
Aby zintegrować dowolną wtyczkę z PCM, należy dodać znacznik plugin-configuration w deskryptorze wtyczki - plik suncode-plugin.xml.
...
| Code Block | ||
|---|---|---|
| ||
<plugin-configuration key="plugin-configuration"
template-provider="com.suncode.plugin.somepluginid.TemplateProviderImpl"
change-listener="com.suncode.plugin.somepluginid.ChangeListenerImpl"
allow-file-management="false"
graphic-schema-provider="com.suncode.plugin.somepluginid.ConfigurationFileGraphicSchemaProviderImpl"
init-configuration="com.suncode.plugin.somepluginid.InitConfigurationProviderImpl"
before-save-config-modifier="com.suncode.sso.authenticator.configuration.BeforeSaveConfigModifierProviderImpl"
/>
<!-- key jest wymagany przez mechanizm modułów wtyczek. Nie ma związku z działaniem tej funkcjonalności --> |
...
- template-provider (opcjonalny) - nazwa klasy implementującej interfejs ConfigurationFileTemplateProvider. Pozwala to na załadowanie szablonu pliku konfiguracyjnego w widoku edycji konfiguracji wtyczek. Wtyczka przez interfejs podaje własny szablon.
- change-listener (opcjonalny) - nazwa klasy implementującej interfejs ConfigurationFileChangeListener. Umożliwia obsługę reagowania na zdarzenie, gdy plik konfiguracyjny zostanie zmieniony (np. w celu cache'owania konfiguracji).
- allow-file-management (opcjonalny) - wartośc true/false (domyślnie true). Flaga określająca, czy użytkownik może zarządzać plikami konfiguracyjnymi wtyczki (dodawanie, usuwanie, modyfikacjia identyfikatorów/typów plików).
- graphic-schema-provider (opcjonalny) - nazwa klasy implementującej ConfigurationFileGraphicSchemaProvider. Pozwala na załadowanie konfiguracji schematu graficznego dzięki czemu będzie dostępna konfiguracja wtyczki w trybie graficznym.
- init-configuration (opcjonalny) - nazwa klasy implementującej InitConfigurationProvider. Pozwala na załadowanie gotowych plików konfiguracyjnych podczas instalacji wtyczki.
- before-save-config-modifier (opcjonalny) - nazwa klasy implementującej BeforeSaveConfigModifierProvider. Pozwala wtyczce na modyfikację pliku konfiguracyjnego przed zapisałem w PCM.
Widok konfiguracji wtyczek
Po uruchomieniu wtyczki w zakładce Administracja -> Konfiguracja systemu pojawi się nowa zakładka Konfiguracja wtyczek.
...
Jeżeli wtyczka zwraca schemat graficzny konfiguracji to widok konfiguracji wyświetlony zostanie w trybie graficznym (od wersji 4.0.0). W każdej chwili można przełączyć się na tryb tekstowy. Zmiany wprowadzone w trybie graficznym automatycznie pojawią się w trybie tekstowym i odwrotnie.
We wtyczce aby odczytać plik, należy użyć interfejsu ConfigurationFileService.
Tryb graficzny konfiguracji wtyczek
Po dodaniu wpisu graphic-schema-provider w deskryptorze wtyczki (dla której chcemy wyświetlić graficzną konfigurację) i prawidłowym napisaniu schematu do konfiguracji wtyczki pojawi się konfiguracja w trybie graficznym.
| Info | ||
|---|---|---|
| ||
Wtyczka w pomie powinna mieć zależność do plugin-configuration-manager w wersji minimum 4.0.0 |
Plik ze schematem powinien być w formacie js i musi posiadać skrypt przypisujący do window.vfgFileSchema konfigurację schematu graficznego
...
| Code Block | ||
|---|---|---|
| ||
schema: {
fields: [{
type: "field-array",
label: "Popertis posiadający tablicę obiektów posiadających dane i tablicę obiektów ",
model: "table6.table6_1",
schema: {
fields: [
{
type: "input",
inputType: "text",
label: "ID",
model: "id"
},
{
type: "field-array",
label: "table6_2",
model: "table6_2",
schema: {
fields: [{
type: "input",
inputType: "text",
label: "ID",
model: "id"
},
{
type: "input",
inputType: "text",
label: "Rodzaj wydatku",
model: "wydatek"
}
]
}
}
]
}
}]
} |
Wymagane minimalne wersje systemu
| System 4.1 | System 4.2 | ||
| Wersja wtyczki | Wersja systemu | Wersja wtyczki | Wersja systemu |
|---|---|---|---|
| 4.0.4 | 4.1.11 | 4.2.0 | 4.2.1 |

