refactors ConversationAdapter