Exemplo n.º 1
0
		public static UserViewModel Get(User user)
		{
			if (user == null) return null;
			lock (syncCache)
			{
				UserViewModel userViewModel = null;
				return cache.TryGetValue(user.Id, out userViewModel)
					? userViewModel
					: cache.AddOrUpdate(user.Id, new UserViewModel(user), (_, u) => u);
			}
		}
Exemplo n.º 2
0
		static UserViewModel()
		{
			var emptyUser = new User
			{
				ScreenName = new ScreenName("(empty)"),
				Name = "@-------",
				CreatedAt = DateTime.Now,
				Location = "--------, -----, Japan",
				Description = "--------------------.",
			};

			lock (syncCache)
			{
				cache = new ConcurrentDictionary<UserId, UserViewModel>();
				cache.AddOrUpdate(0, new UserViewModel(emptyUser), (_, u) => u);
			}
		}
Exemplo n.º 3
0
		private UserViewModel(User user)
		{
			this.user = user;

			this.CompositeDisposable.Add(
				new PropertyChangedEventListener(user)
				{
					(sender, e) => this.RaisePropertyChanged(e.PropertyName)
				});
		}
Exemplo n.º 4
0
		public UserViewModel(User user)
		{
			this.user = user;
		}