Sling Models Injectors
The AEM Library provides several custom Sling Models injectors to facilitate injection of AEM Library-specific context objects. Injector services are registered by default when the AEM Library Models bundle is installed, so @Inject annotated fields in model classes will be handled by the injectors below in addition to the default set of injectors provided by Sling.
Available Injectors
Title |
Name |
Service Ranking |
Description |
Resource Resolver Adaptable Injector |
adaptable |
Integer.MIN_VALUE |
Injects objects that can be adapted from ResourceResolver, e.g. PageManagerDecorator |
Component Content Injector |
component |
Integer.MAX_VALUE |
Injects objects derived from the current component context |
Enum Injector |
enum |
4000 |
Injects an enum for the property value matching the annotated field name |
Image Injector |
images |
4000 |
Injects com.day.cq.wcm.foundation.Image from the current resource |
Inherit Injector |
inherit |
4000 |
Injects a property that inherits from ancestor pages if it isn’t found on the current resource |
Link Injector |
links |
4000 |
Injects com.icfolson.aem.library.api.link.Link derived from the property value for the current field name |
Model List Injector |
model-list |
999 |
Injects a list of models from adapted from the child of a named child resource |
Reference Injector |
references |
4000 |
Injects a resource or object adapted from a resource based on the value of a property |
Tag Injector |
tags |
800 |
Resolves a com.day.cq.tagging.Tag object (or list of tags) for the given property |
ValueMap Injector |
valuemap |
2500 |
Injects a property value with the given type from a ValueMap |
Injector-specific Annotations
Annotation |
Supported Optional Elements |
Injector |
@ImageInject |
injectionStrategy, isSelf, inherit, selectors |
images |
@InheritInject |
injectionStrategy |
inherit |
@LinkInject |
injectionStrategy, titleProperty, inherit |
links |
@ReferenceInject |
injectionStrategy, inherit |
references |
@TagInject |
injectionStrategy, inherit |
tags |