Class ApplicationAspectMap
java.lang.Object
de.espirit.firstspirit.scheduling.aspects.ApplicationAspectMap
Map for keeping
application aspects
in a type safe manner.- Since:
- 5.2.5
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<A> A
get
(ApplicationAspectType<A> type) Get the correctly typed aspect for a type.<A,
C extends A>
voidput
(@NotNull ApplicationAspectType<A> type, C aspect) Put an aspect for specific type.void
remove
(ApplicationAspectType<?> type) Remove the aspect for the given type from this map.
-
Constructor Details
-
ApplicationAspectMap
public ApplicationAspectMap()
-
-
Method Details
-
put
public <A,C extends A> void put(@NotNull @NotNull ApplicationAspectType<A> type, @NotNull C aspect) Put an aspect for specific type.
Example:
String aspect = ...;
AspectType<CharSequence> type = ...;
put(type, aspect);- Type Parameters:
A
- The type of the aspect.C
- The concrete implementation type of the aspect.- Parameters:
type
- The aspect type.aspect
- The aspect implementation.- Since:
- 5.2.5
-
remove
Remove the aspect for the given type from this map.- Parameters:
type
- The aspect type.- Since:
- 5.2.5
-
get
Get the correctly typed aspect for a type.
Example
AspectType<CharSequence> type = ...;
CharSequence aspect = get(type);- Type Parameters:
A
- The type of the aspect.- Parameters:
type
- The aspect type to look up.- Returns:
- The aspect implementation.
- Since:
- 5.2.5
-