This method is same as findTask, just returns value is different. What about just keeping one method with return value TreeItem (should use interface not specific implementation) and calling it selectTask() or getTask() ?