Does the class have unnecessary and violating Single responsibility principle method?
You're right, but you should take this to its logical conclusion. 


Creating item belongs to a factory class.
Tracking a list of items (coordinating?) is another responsibility.
Handling the new item (or list? Not clear from the code) belongs to a third class.


With this design you can reliability test each component in isolation. Merging these responsibilities into a single class makes testing difficult and blocks alternate implementations.