SDK selection based on subject's age#774
Conversation
831408b to
e6bf57b
Compare
a73a4ff to
ae316e8
Compare
ae316e8 to
3e87009
Compare
3e87009 to
57a2d7b
Compare
| ) | ||
| val fingerSelections = mutableListOf<FingerSelectionSection>() | ||
| configManager.getProjectConfiguration().fingerprint?.secugenSimMatcher?.fingersToCapture?.let { | ||
| fingerSelections.add(FingerSelectionSection("SimMatcher", it.toFingerSelectionItems())) |
There was a problem hiding this comment.
Is there a reasonable way to avoid hardcoding names?
There was a problem hiding this comment.
We don't have anything like a name parameter for SDK config. I can put the names in the resources so they can be reused but this is the first time they appear in UI.
| projectConfiguration: ProjectConfiguration, | ||
| ageGroup: AgeGroup? = null, | ||
| ): List<Step> { | ||
| val resolvedAgeGroup = ageGroup ?: ageGroupFromSubjectAge(action, projectConfiguration) |
There was a problem hiding this comment.
This line seems to be identical for all flows, could it be moved up the call stack and pre-resolved age be passed in?
There was a problem hiding this comment.
The problem is that all 3 functions with repeated code can be called from 2 places (which is why they were extracted in the first place). Was thinking of extracting this part in a helper function but IMO it would hardly improve things - less repetition but more lines of code.
There was a problem hiding this comment.
That said - if you can think of a good solution - it's more than welcome!
57a2d7b to
35c6bac
Compare
ybourgery
left a comment
There was a problem hiding this comment.
Something that I don't think was discussed in the design document, but with the current implementation the field modalities in the Session is based on the configuration. I think with this work it should be based on the configuration and the actual modalities that we are capturing based on the age.
Hm, what is this field used for in the backend? |
We use this to know what are the different modalities that are present in the sessions to compute the different metrics/models in Clio |
…ad of the single Activity to allow for capture with two fingerprint SDKs down the line
39cbdc5 to
cb51d22
Compare
…r or AgeGroupSelection step
cb51d22 to
8d3ac7d
Compare
|



These are the core changes to allow dynamic SDK selection based on age restriction of the SDKs and age of the subject.
Notable parts:
allowedAgeRangefor each SDKsubjectAgefrom Intent metadata (if present)subjectAgeis presentsubjectAgeis not presentsubjectAgeis not presentbioSdkConfigurationTried to keep commits thematic so the PR can be reviewed commit by commit if you want to follow the logic.