AssetStudio.Logger.Warning C# (CSharp) Метод

Warning() публичный статический Метод

public static Warning ( string message ) : void
message string
Результат void
        public static void Warning(string message) => Default.Log(LoggerEvent.Warning, message);
        public static void Error(string message) => Default.Log(LoggerEvent.Error, message);

Usage Example

Пример #1
0
        private void LoadBlkFile(FileReader reader, Guid?targetId = null)
        {
            if (targetId == null)
            {
                Logger.Info("Loading " + reader.FileName);
            }
            else
            {
                Logger.Info("Loading " + reader.FileName + " with target ID " + targetId.Value.ToString());
            }
            try
            {
                var  blkFile     = new BlkFile(reader);
                bool targetFound = false;
                for (int i = 0; i < blkFile.Files.Count; i++)
                {
                    //Console.WriteLine(blkFile.Files[i].ID);
                    if (targetId.HasValue && targetId.Value != blkFile.Files[i].ID)
                    {
                        continue;
                    }
                    targetFound = true;
                    // TODO: proper dummyPath
                    var dummyPath = Path.Combine(Path.GetDirectoryName(reader.FullPath),
                                                 string.Format("{0}_{1}", reader.FileName, blkFile.Files[i].ID.ToString()));
                    var subReader = new FileReader(dummyPath, new MemoryStream(blkFile.Files[i].Data));
                    var asset     = LoadAssetsFromMemory(subReader, dummyPath);
                    if (asset == null)
                    {
                        //Logger.Error("what");
                        continue;
                    }
                    foreach (var sharedFile in asset.m_Externals)
                    {
                        var sharedFileName       = sharedFile.fileName;
                        var sharedFileNameWithID = string.Format("{0}_{1}", sharedFileName, sharedFile.cabId.ToString());

                        if (!sharedFileName.EndsWith(".blk"))
                        {
                            // this will directly load .blk files, so anything that isn't one is not supported
                            Logger.Warning(String.Format("attempted to load non-blk shared file ({0})", sharedFileName));
                            continue;
                        }

                        if (!importFilesHash.Contains(sharedFileNameWithID))
                        {
                            var sharedFilePath = Path.Combine(Path.GetDirectoryName(reader.FullPath), sharedFileName);
                            if (!File.Exists(sharedFilePath))
                            {
                                var findFiles = Directory.GetFiles(Path.GetDirectoryName(reader.FullPath), sharedFileName, SearchOption.AllDirectories);
                                if (findFiles.Length > 0)
                                {
                                    sharedFilePath = findFiles[0];
                                }
                            }

                            if (File.Exists(sharedFilePath))
                            {
                                // TODO: proper integration with the loading bar
                                LoadBlkFile(new FileReader(sharedFilePath), sharedFile.cabId);
                                //importFiles.Add(sharedFilePath);
                                importFilesHash.Add(sharedFileNameWithID);
                            }
                        }
                    }
                }
                if (blkFile.Files.Count > 0 && !targetFound)
                {
                    Logger.Warning("failed to find target mhy0");
                }
            }
            catch (Exception e)
            {
                Logger.Error($"Error while reading blk file {reader.FileName}", e);
            }
            finally
            {
                reader.Dispose();
            }
        }