Skip to content

Conversation

@spoorthipujariadobe
Copy link
Contributor

@spoorthipujariadobe spoorthipujariadobe commented Jul 22, 2025

Description

Changes to support content card disqualification

  1. Deprecate existing ExtensionApi.getHistoricalEvents API and added a new one which is consistent with the iOS SDK which provides a callback with an array of EventHistoryResult, one for each EventHistoryRequest passed in the API call.
  2. Handle new rule consequence type - insert/insertIfNotExists which allows writing to event history
  3. Add a new ExtensionApi.recordHistoricalEvents API to allow extensions to write to event history directly.
  4. Support for reading values inside nested lists in rule condition and consequence.
  5. Handle new mostRecent historical condition search type

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • I have signed the Adobe Open Source CLA.
  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

spoorthipujariadobe and others added 30 commits March 31, 2025 22:06
* Fix ordered search type lookup in event history

* add failure test case for event history ordered lookup
* Added handling for insert and insertIfNotExists rule consequence

* remove keys look up in event history insert/insertIfNotExists consequence

* Dispatch event after insert event history consequence

* Tests for insert & insertIfNotExists rule consequence

* update API dump

* fix failing functional test

* fix formatting issues

* addressing code review comments

* change fnv1a32 to produce 0 hash for empty mask map

* fix typo in log

* Adding additional tests for invalid event history rules

* fix test json content
…tion

Change ExtensionApi getHistoricalEvents API to be on par with Core iOS
Merging main to feature/disqualification branch
spoorthipujariadobe and others added 6 commits May 29, 2025 16:42
…dobe/aepsdk-core-android-1 into feature/disqualification
…tion

Added implementation of mostRecent search type for historical lookup
Update usages and tests accordingly
* Dispatch consequence in an event for schema type if its not eventHistory

* Add support for nested lists to map flattening logic

* disable list flattening for ~all_url for backward compatibility

* Add more tests and rename existing to maintain uniformity

* Separate list and array flattening as extension functions

* Unit tests for list and array flattening extension functions

* Add entire rule consequence in event dispatched as a result of event history insert

* Set newest and oldest occurance to null for event not found in event history
* Dispatch consequence in an event for schema type if its not eventHistory

* Add support for nested lists to map flattening logic

* disable list flattening for ~all_url for backward compatibility

* Add more tests and rename existing to maintain uniformity

* Separate list and array flattening as extension functions

* Unit tests for list and array flattening extension functions

* Add entire rule consequence in event dispatched as a result of event history insert

* Set newest and oldest occurance to null for event not found in event history

* early escape from insert/insertIfNotExists if event hash is 0
Copy link
Contributor

@prudrabhat prudrabhat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Let's also get a +1 from @yangyansong-adbe before merging.

Copy link
Contributor

@yangyansong-adbe yangyansong-adbe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@spoorthipujariadobe spoorthipujariadobe merged commit da102b8 into dev Jul 23, 2025
21 checks passed
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.

5 participants