Hi Tucker,
I don't quite follow your scenario, but let's start with some semantics. GeoEvent 'filters' examine incoming geoevents, evaluate them against some criteria, and if any geoevent meets the criteria, it will continue through the flow of the geoevent service. Any geoevent that does not meet the criteria is simply dropped. A filter cannot perform any field calculation, but there is a Field Calculator *processor*. So I think you may be needing the Field Calculator processor...?
I *think* I *kinda* understand what you're trying to do, and if I'm understanding you, you would need a mix of filters and processors. Here is my 'pseudocode' of what I think you're trying to do. For now, just let me know if my interpretation is correct, then we can move forward from there.
1. Geoevents are flowing in, and a geoevent contains a 'Rank' field (and probably other fields)
2.a. If a geoevent contains a Rank value of 1, use the Field Calculator processor to add some amount of days (maybe months) to a date.
2.b. If a geoevent contains a Rank value of 2, use the Field Calculator processor to add some amount of days (maybe months) to a date that's different than the days (or months) in 2.a.
2.c. Same as 2.b. but for Rank of 3 or 4.
Is that correct? If so, is the 'base' date value something that's in the geoevent, or something else, like system time at which the geoevent is processed (i.e. 'now')?
Mark