Ejemplo n.º 1
0
        public FriendInfoViewModel(int friendId
            , ILanguageRepository languageRepository
            , IFriendsRepository friendsRepository
            , IFriendsAvatarsRepository friendsAvatarsRepository
            , ILogger logger) 
            : base(languageRepository, logger)
        {
            FriendId = friendId;

            if (friendsRepository.NotEmpty())
            {
                var friend = friendsRepository.Data.FirstOrDefault(x => x.VkId == friendId);

                if (friend != null)
                {
                    FullName = friend.FullName;
                    Online = friend.Online;
                }
            }

            if (friendsAvatarsRepository.NotEmpty())
            {
                var content = friendsAvatarsRepository.Data.FirstOrDefault(x => x.FriendId == friendId)?.Content;
                Avatar = CreateBitmapImage(content);
            }
        }
 public AddFriendsAvatarsToRepository(ISessionInfoRepository sessionInfoRepository
     , IFriendsRepository friendsRepository
     , IFriendsAvatarsRepository friendsAvatarsRepository
     , IAddFriendAvatarFactory addFriendAvatarFactory
     , ISendFriendsAvatarsFactory sendAvatarsFactory)
 {
     _sessionInfoRepository = sessionInfoRepository;
     _friendsRepository = friendsRepository;
     _friendsAvatarsRepository = friendsAvatarsRepository;
     _addFriendAvatarFactory = addFriendAvatarFactory;
     _sendAvatarsFactory = sendAvatarsFactory;
 }
Ejemplo n.º 3
0
        public FriendListViewModel(bool displayOnlineStatuses
            , IFriendsRepository friendsRepository
            , IFriendsAvatarsRepository friendsAvatarsRepository
            , IFriendItemModelFactory friendItemViewModelFactory
            , ILoadingIndicatorViewModel loadingIndicatorViewModel
            , ILanguageRepository languageRepository
            , ILogger logger)
            : base(languageRepository, logger)
        {
            _friendItemViewModelFactory = friendItemViewModelFactory;
            _friendsAvatarsRepository = friendsAvatarsRepository;

            _displayOnlineStatuses = displayOnlineStatuses;

            FriendViews = new BindableCollection<IFriendItemViewModel>();
            LoadingIndicatorModel = loadingIndicatorViewModel;

            friendsAvatarsRepository.Adding += FriendsAvatarsRepositoryAdding;
            friendsAvatarsRepository.Added += FriendsAvatarsRepositoryAdded;
            friendsAvatarsRepository.AddFailed += FriendsAvatarsRepositoryAddFailed;

            BindLoadingIndicatorToCollectionRepository<IFriendsRepository, IFriend>(loadingIndicatorViewModel, friendsRepository);
        }