How is this class used? I see only a public constructor and all methods are protected.