I agree that polymorphism is the "right way" if there's already a class hierarchy established.<p>If the superclass-subclass relationships aren't in place for you (worse yet, they're not set up how you want them to be set up), this hack accomplishes a similar effect with no refactoring.