Wstęp
Ta strona opisuje wszystkie dodatkowe komponenty, które używane są pomiędzy modułami.
Tip |
---|
Jeżeli własny moduł będzie wymagał np. spełnienia warunków, powinniśmy wykorzystać właśnie komponent condition opisany na tym stronie. Dzięki temu definicje modułów będą spójne i pisanie ich będzie bardziej naturalne. |
Komponenty
Warunki - condition
Warunki mogą być wykorzystywane np. do sprawdzenia praw użytkownika do konkretnego modułu. Możemy zdefiniować wiele warunków, jednak logika ich spełnienia zależy od implementacji modułu (AND, OR etc.)
Atrybuty
Nazwa | Wymagany | Opis |
---|---|---|
class | ![]() | Pełna nazwa klasy tego warunku. Klasa musi implementować Condition. |
Do każdego warunku możemy przesłać dowolne parametry:
Code Block | ||
---|---|---|
| ||
<param name="param1">asd</param>
<param name="param2">asd</param> |
Przykład
Code Block | ||
---|---|---|
| ||
<condition class="xyz.HasRightCondition">
<param name="right">admin</param>
</condition> |
Java API
Możemy ułatwić sobie pisanie warunków i ich odczyt z XML'a.
Code Block | ||
---|---|---|
| ||
// odczyt z elementu modułu
conditions = ModuleHelper.getConditions(plugin, definition);
// podczas pisania warunku możemy użyć klasy ConditionSupport:
public class HelloCondition extends ConditionSupport{
@Autowired
private SomeService someService;
@Override
public boolean isFulfilled(){
return someService.check(getParameter("someparam"));
}
} |