I would prefer that the base class which is effectively a binary only handler wouldn't know about charset at all.
Perhaps the JSON class should derive from the Text one...