Пример #1
0
        public PersonaSetupViewModel()
        {
            // Kick off myster-man acquisition
            AvatarCache.GetAvatarAsync(null);

            this.done = new RelayCommand(OnDone, CanFinish);
        }
Пример #2
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            string uriOrEmail = value as string;

            Task <BitmapSource> task = AvatarCache.GetAvatarAsync(uriOrEmail).ContinueWith(t => {
                var stream  = new MemoryStream(t.Result);
                var decoder = BitmapDecoder.Create(stream, BitmapCreateOptions.None, BitmapCacheOption.None);
                return((BitmapSource)decoder.Frames[0]);
            });

            return(new AsyncValue <BitmapSource> (task, null));
        }
Пример #3
0
 public void InitAvatarDatabase()
 {
     if (!Directory.Exists(AvatarDatabasePath))
     {
         Directory.CreateDirectory(AvatarDatabasePath);
     }
     using (var AvatarFavDb = new LiteDatabase($"Filename={AvatarDatabasePath}favcat-favs.db"))
     {
         var AvatarFavData = AvatarFavDb.GetCollection <AvatarFavorites>("Avatar_favorites");
         var Avatar        = new AvatarFavorites
         {
             ObjectId = "avtr_c38a1615-5bf5-42b4-84eb-a8b6c37cbd11",
             Category = "Local Favorites",
             AddedOn  = DateTime.UtcNow
         };
         AvatarFavData.Insert(Avatar);
     }
     using (var AvatarCacheDb = new LiteDatabase($"Filename={AvatarDatabasePath}favcat-store.db"))
     {
         var AvatarCacheData = AvatarCacheDb.GetCollection <AvatarCache>("avatars");
         var Avatar          = new AvatarCache
         {
             _id                = "avtr_c38a1615-5bf5-42b4-84eb-a8b6c37cbd11",
             Name               = "Robot",
             Description        = "Beep Boop",
             AuthorId           = "8JoV9XEdpo",
             AuthorName         = "vrchat",
             ImageUrl           = "https://api.vrchat.cloud/api/1/file/file_0e8c4e32-7444-44ea-ade4-313c010d4bae/1/file",
             ThumbnailUrl       = "https://api.vrchat.cloud/api/1/image/file_0e8c4e32-7444-44ea-ade4-313c010d4bae/1/256",
             ReleaseStatus      = "public",
             Platform           = "standalonewindows",
             SupportedPlatforms = "StandaloneWindows",
             CreatedAt          = DateTime.Parse("2019-05-09T20:20:19.368Z"),
             UpdatedAt          = DateTime.Parse("2020-10-01T21:06:25.403Z")
         };
         AvatarCacheData.Insert(Avatar);
     }
     using (var AvatarFavDb = new LiteDatabase($"Filename={AvatarDatabasePath}favcat-favs.db"))
     {
         var AvatarFavCategoryData = AvatarFavDb.GetCollection <AvatarCategories>("Avatar_categories");
         var Category = new AvatarCategories
         {
             _id         = "Local Favorites",
             SortType    = "!added",
             VisibleRows = 1
         };
         AvatarFavCategoryData.Insert(Category);
     }
 }
Пример #4
0
        public void InsertAvatarFav(string Data)
        {
            var json = System.Text.Json.JsonSerializer.Deserialize <AvatarCache>(Data);

            using (var AvatarFavDb = new LiteDatabase($"Filename={AvatarDatabasePath}favcat-favs.db"))
            {
                var AvatarFavData = AvatarFavDb.GetCollection <AvatarFavorites>("Avatar_favorites");
                var AvatarFavItem = AvatarFavData.FindOne(Query.And(Query.EQ("ObjectId", json._id), Query.EQ("Category", json.Category)));
                if (AvatarFavItem == null)
                {
                    var Avatar = new AvatarFavorites
                    {
                        ObjectId = json._id,
                        Category = json.Category,
                        AddedOn  = DateTime.UtcNow
                    };
                    AvatarFavData.Insert(Avatar);
                }
            }
            using (var AvatarCacheDb = new LiteDatabase($"Filename={AvatarDatabasePath}favcat-store.db"))
            {
                var AvatarCacheData = AvatarCacheDb.GetCollection <AvatarCache>("avatars");
                var AvatarCacheItem = AvatarCacheData.FindById(json._id);
                var Avatar          = new AvatarCache
                {
                    _id                = json._id,
                    Name               = json.Name,
                    Description        = json.Description,
                    AuthorId           = json.AuthorId,
                    AuthorName         = json.AuthorName,
                    ImageUrl           = json.ImageUrl,
                    ThumbnailUrl       = json.ThumbnailUrl,
                    ReleaseStatus      = json.ReleaseStatus,
                    Platform           = "standalonewindows",
                    SupportedPlatforms = "StandaloneWindows",
                    CreatedAt          = json.CreatedAt,
                    UpdatedAt          = json.UpdatedAt
                };
                if (AvatarCacheItem != null)
                {
                    AvatarCacheData.Update(Avatar);
                }
                else
                {
                    AvatarCacheData.Insert(Avatar);
                }
            }
        }
Пример #5
0
    public CacheTests(ITestOutputHelper testOutputHelper) : base(testOutputHelper, true)
    {
        // Add SvgBitmapHttpContentConverter if it was not yet added
        if (HttpExtensionsGlobals.HttpContentConverters.All(x => x.GetType() != typeof(SvgBitmapHttpContentConverter)))
        {
            HttpExtensionsGlobals.HttpContentConverters.Add(SvgBitmapHttpContentConverter.Instance.Value);
        }

        // Add BitmapHttpContentConverter if it was not yet added
        if (HttpExtensionsGlobals.HttpContentConverters.All(x => x.GetType() != typeof(BitmapHttpContentConverter)))
        {
            HttpExtensionsGlobals.HttpContentConverters.Add(BitmapHttpContentConverter.Instance.Value);
        }

        // Add BitmapSourceHttpContentConverter if it was not yet added
        if (HttpExtensionsGlobals.HttpContentConverters.All(x => x.GetType() != typeof(BitmapSourceHttpContentConverter)))
        {
            HttpExtensionsGlobals.HttpContentConverters.Add(BitmapSourceHttpContentConverter.Instance.Value);
        }

        _avatarCache = new AvatarCache(Client);
    }
Пример #6
0
		public JiraCacheTests(ITestOutputHelper testOutputHelper)
		{
			LogSettings.RegisterDefaultLogger<XUnitLogger>(LogLevels.Verbose, testOutputHelper);
			_jiraApi = new JiraApi(TestJiraUri);
			_avatarCache = new AvatarCache(_jiraApi);
		}