I always get concerned when I smell Java. I suppose either way you're going to have a long line of parameters. I'm concerned because this returns an object with a seemingly unrelated set of bits of user data and calculations.