Пример #1
0
        /// <summary>
        /// Überprüft, ob diese Datei gültig ist und lädt diese gegebenfalls. Diese wird unter <see cref="AddOnLoader.RegistredFiles"/>
        /// gleich mit angebunden.
        /// </summary>
        /// <param name="file">Die Zieldatei</param>
        /// <returns>Gibt ein Zeiger auf die Datei zurück.</returns>
        public AddOnFile SearchSingleFile(FileInfo file)
        {
            var  name    = file.Name;
            bool allowed = false;

            foreach (var ext in SupportedExtensions)
            {
                if (name.EndsWith(ext))
                {
                    allowed = true;
                }
            }
            if (!allowed)
            {
                return(null);
            }
            if (SupportedFileCheck != null)
            {
                if (!SupportedFileCheck(file))
                {
                    return(null);
                }
            }
            if (RegistredFiles.Exists((aof) => aof.FileInfo == file))
            {
                return(null);
            }
            var f = new AddOnFile(file, this);

            RegistredFiles.Add(f);
            return(f);
        }
Пример #2
0
 internal AddOnType(Type BasicType, Type RemoteType, AddOnFile File)
 {
     this.BasicType  = BasicType;
     this.RemoteType = RemoteType;
     this.File       = File;
 }