Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/injector extensions - part 2 - last #1670

Conversation

niekraaijmakers
Copy link
Contributor

This contains the last changes I had + corrected a mistake that I should have spotted in previous PR (renamed injector didn't got deleted)

Niek Raaijmakers added 22 commits December 27, 2018 11:02
Reflection utility class
…t manner.

Also easy to use for dependency inversion with unit tests.
Supports resource and request adaptables.
Allows you to inject Json objects using GSON directly into your sling model. Will use the underlying resource valuemap to retrieve the JSON as property and parse it to the declared field type.
Supports single values or list, set, collection.
…ructure (inheritance value map) to retrieve an inherited page property to inject it into your sling model.

Supports request or resource.
# Conflicts:
#	CHANGELOG.md
#	bundle/src/main/java/com/adobe/acs/commons/i18n/impl/Config.java
#	bundle/src/main/java/com/adobe/acs/commons/i18n/impl/I18nProviderImpl.java
#	bundle/src/main/java/com/adobe/acs/commons/models/injectors/impl/AemObjectInjector.java
#	bundle/src/main/java/com/adobe/acs/commons/models/injectors/impl/HierarchicalPagePropertyInjector.java
#	bundle/src/main/java/com/adobe/acs/commons/models/injectors/impl/I18nInjector.java
#	bundle/src/main/java/com/adobe/acs/commons/util/impl/ValueMapTypeConverter.java
#	bundle/src/test/java/com/adobe/acs/commons/i18n/impl/I18nProviderImplTest.java
#	bundle/src/test/java/com/adobe/acs/commons/models/injectors/impl/AemObjectInjectorTest.java
#	bundle/src/test/java/com/adobe/acs/commons/models/injectors/impl/I18NInjectorTest.java
#	bundle/src/test/java/com/adobe/acs/commons/models/injectors/impl/model/TestModelI18nValue.java
#	bundle/src/test/java/com/adobe/acs/commons/models/injectors/impl/model/impl/TestJsonObject.java
#	bundle/src/test/java/com/adobe/acs/commons/models/injectors/impl/model/impl/TestJsonObjectInjectionImpl.java
#	bundle/src/test/java/com/adobe/acs/commons/models/injectors/impl/model/impl/TestModelI18nValueImpl.java
@update-changelog
Copy link

Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would update the CHANGELOG.md file with this pull request.

@badvision badvision merged commit 29938cb into Adobe-Consulting-Services:master Jan 8, 2019
@badvision badvision added this to the 4.0.0 milestone Jan 8, 2019
@coveralls
Copy link

Pull Request Test Coverage Report for Build 3640

  • 3 of 3 (100.0%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage decreased (-0.04%) to 46.494%

Totals Coverage Status
Change from base Build 3636: -0.04%
Covered Lines: 10842
Relevant Lines: 23319

💛 - Coveralls

justinedelson pushed a commit that referenced this pull request Feb 6, 2019
* Utility class for injectors - Reflection utility class

* I18n Provider : Added a service to provide I18n values in a convenient manner. Also easy to use for dependency inversion with unit tests.

* Added a json file to mock the aem context for injectors

* Added aem context for injectors

* I18n injector : Injects I18n values into your sling model. Supports resource and request adaptables.

* Added a JSON injector: Allows you to inject Json objects using GSON directly into your sling model. Will use the underlying resource valuemap to retrieve the JSON as property and parse it to the declared field type. Supports single values or list, set, collection.

* Hierarchical page property injector: traverses upwards in the page structure (inheritance value map) to retrieve an inherited page property to inject it into your sling model. Supports request or resource.

* Cleaned up the AEMObject injector to remove code duplication.

* Cleaned up the shared value map injector to remove redundant code.

* Added copyright scripts

* Added guava cache (count based) for the i18nprovider with JMX interface

* Removed JsonInjector - this was renamed to JsonValueMapInjector. Fault in branching.

* Removed unused I18n reference from AemObjectInjector. Moved to I18nInjector.

* Remove unused I18nProvider from AemObjectInjector

* Removed jsonannotationprocessorfactory.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants