changed setData method to protected, removed todo tag