コード例 #1
0
        // Implemented from IION
        public virtual Task <Analyzer> LoadAnalyzerAsync(IFile file)
        {
//      return Task.Factory.StartNew(() => {
            try {
                var parser = new AnalyzerParser();
                using (var s = file.OpenForReading()) {
                    return(Task.FromResult(parser.ReadFromStream(this, s)));
                }
            } catch (Exception e) {
                Log.E(this, "Failed to load analyzer. Defaulting to a new one.", e);
                return(Task.FromResult(new Analyzer(this)));
            }
//      });
        }
コード例 #2
0
 // Implemented for IION
 public virtual Task SaveAnalyzerAsync()
 {
     return(Task.Factory.StartNew(() => {
         lock (locker) {
             var internalDirectory = fileManager.GetApplicationInternalDirectory();
             var file = internalDirectory.GetFile(PRIMARY_ANALYZER_FILENAME, EFileAccessResponse.CreateIfMissing);
             var parser = new AnalyzerParser();
             try {
                 using (var s = file.OpenForWriting()) {
                     parser.WriteToStream(this, currentAnalyzer, s);
                 }
             } catch (Exception e) {
                 Log.E(this, "Failed to write analyzer to file", e);
             }
         }
     }));
 }