Hi Taru,
I'll write and submit the following patches:
- expand Expanding_rm_session_client to handle the necessary functions
- create Expanding_cpu_session_client and the assorted fixes (I have
this code already and just need to polish it).
that sounds good. :-)
Btw, I think that the 'Expanding_*' classes are not really elegant right now. There is quite a bit of code duplication. Adding the case for CPU sessions will further add repetitions.
Maybe it would be beneficial to separate the retry logic (the do loop for executing a RPC function, upgrading the session if the function fails in a particular way, retry after upgrade) from the actual RPC function call? I haven't had a good idea how to do that exactly but my basic approach would be to implement the do loop in a generic way that takes the code for the RPC function call as functor argument. What do you think? Would you like to give it a try?
ps. Thanks for the patience to help with this.
You are very welcome.
Cheers Norman