Extracted ChannelAdapter to its own class.
Extracted ListItemState to its own class.