Details
-
Improvement
-
Resolution: Unresolved
-
Minor
-
None
-
None
-
None
Description
Request additional feature in the Point in time ( PIT ) api's:
edu.internet2.middleware.grouper.pit.PITGroup vs edu.internet2.middleware.grouper.Group
edu.internet2.middleware.grouper.pit.PITStem vs edu.internet2.middleware.grouper.Stem
PITGroup should have parity to the normal Group class with respect to attribute handling.
Example (but not limited to) : group.getAttributeDelegate().hasAttributeOrAncestorHasAttribute()
PITStem should have parity to the normal Stem class with respect to attribute handling as well.
I suggest that the time frame for the PITGroup/PITStem object be implicitly used in the methods that need to be added.
Example:
The group by have existed from Monday through Friday.
So treat all attribute request as "anywhere in that" time span.
Minimum request is to support:
pitGroup.getAttributeDelegate().hasAttributeOrAncestorHasAttribute()
More "complete" request would be to also support:
However, it might be (though hard for me to imagine why) nice for someone to be able to refine/limit the time frames independently too. But that is not strictly speaking a need that I have or picture ever having.
The group by have existed from Monday through Friday.
But the question might be if the attribute was assigned during the Wednesday of that week.
pitGroup.getAttributeDelegate(Timestamp startTime, Timestamp endTime).hasAttributeOrAncestorHasAttribute()
and/or
pitGroup.getAttributeDelegate().hasAttributeOrAncestorHasAttribute(Timestamp startTime, Timestamp endTime)
if the returned results/objects also contained the actual "Start assigned" and "stop assigned times" that would likely be helpful too. It would allow the API user to know that the assignment happened from "startTime" to "endTime" and that might be a narrow subset of the PITObject's startTime/endTime values. It likely also need to return a list of time windows (assigned,removed, assgined again, removed again, etc...) too.