コード例 #1
0
ファイル: PackageExplorer.cs プロジェクト: xJayLee/RPGCore
        private static T LoadJsonDocument <T>(IReadOnlyArchiveFile entry)
        {
            using var zipStream = entry.OpenRead();
            using var sr        = new StreamReader(zipStream);
            using var reader    = new JsonTextReader(sr);

            var serializer = new JsonSerializer();

            return(serializer.Deserialize <T>(reader));
        }
コード例 #2
0
 internal PackageResourceContent(IReadOnlyArchiveFile zipArchiveEntry)
 {
     this.zipArchiveEntry = zipArchiveEntry;
 }
コード例 #3
0
        internal PackageResourceContent(PackageExplorer packageExplorer, string contentKey, IReadOnlyArchiveFile zipArchiveEntry)
        {
            this.packageExplorer = packageExplorer;
            this.contentKey      = contentKey;

            CompressedSize   = 0;
            UncompressedSize = 0;
        }
コード例 #4
0
ファイル: PackageResource.cs プロジェクト: xJayLee/RPGCore
        internal PackageResource(PackageExplorer packageExplorer, PackageDirectory directory, IReadOnlyArchiveFile contentEntry, PackageResourceMetadataModel metadataModel)
        {
            Explorer     = packageExplorer;
            Directory    = directory;
            Dependencies = new PackageResourceDependencies(packageExplorer, metadataModel);
            Tags         = new PackageResourceTags();

            Name = contentEntry.Name;

            string withoutData = contentEntry.FullName.Substring(5);

            FullName = withoutData;

            Content = new PackageResourceContent(packageExplorer, contentEntry.FullName, contentEntry);

            int dotIndex = contentEntry.FullName.LastIndexOf('.');

            Extension = dotIndex != -1
                                ? contentEntry.FullName.Substring(dotIndex)
                                : null;
        }