private function hydrateClassObject($obj, $data)
    {
        // loop through the class object and hydrate it
        foreach ($data as $property => $value) {
            $this->hydrate($obj, $property, $value);
        }

        return $obj;
    }