public void Load(bool from_cache) { bool retreiving = false; if (cached && from_cache) { retreiving = LoadFromCache(); } try { if (!retreiving) { uint [] handles = { Contact.Handle }; State = AvatarState.Loading; IDictionary <uint, string> tokens = avatars.GetKnownAvatarTokens(handles); if (tokens.Count == 0) { State = AvatarState.NoAvatar; } else { avatars.AvatarRetrieved += OnAvatarRetrieved; avatars.RequestAvatars(handles); } } } catch (Exception e) { Console.WriteLine(e.ToString()); State = AvatarState.NoAvatar; } }