I'm writing an application using the OpenDACS REST API. I plan to cache the Service and PE information retrieved from the ODPS. I was planning to retrieve the U.ITEM.MAX.AGGREGATE value for each user and use that to manage the user's aggregated item count. I'm also going to make subscriptionTest requests (to ensure that the usage is collected appropriately).
I'm assuming that he DACS system applies the U.ITEM.MAX.AGGREGATE value to the user's subscriptions and denies subscriptionTest request when the user has hit their max aggregate limit.
There's one thing I don't understand. There doesn't appear to be a DACS request to indicate a user is no longer subscribing to an item. So, what happens with a sequence like this:
(assume U.ITEM.MAX.AGGREGATE value set to 3 and all items are permissioned for the user)
User asks to subscribe to ServiceA, Symbol1 → subscriptionTest succeeds.
User asks to subscribe to ServiceA, Symbol2 → subscriptionTest succeeds.
User asks to subscribe to ServiceB, Symbol3 → subscriptionTest succeeds.
User asks to subscribe to ServiceA, Symbol4 → subscriptionTest (presumably) fails (above item limit)
User stops subcribing to ServiceA, Symbol1 and Symbol2 → No way to indicate this to DACS
User asks to subscribe to ServiceA, Symbol4 → What happens here? What should happen?
Thanks In Advance for any help you can give.
— Kevin N.