Moved respond_to/send check into shared method