Have you ever wondered why it sometimes takes two or three clicks of the button for your request to "go through?" Wonder no more: Valentin Valchev has discovered the root of the problem was checked into his source tree all along:
+ switch(throwException) {
+ case 1:
+ throw new EHSException(EHSException.MESSAGE_SENDFAILURE);
+ case 2:
+ if ( Math.round(Math.random()*randomFactor) == 0) {
+ throw new EHSException(EHSException.MESSAGE_SENDFAILURE);
+ }
+ default:
+ break;
+ }
I think I'll keep it in my source tree, though. I consider it more of a feature: users will think that their request is going through some important, complicated processes. They like that.
UPDATE: Sorry to those who got 800 versions of this post in their RSS feed.