Exemple #1
0
 public OResult <Case> DeserializeFromPath()
 {
     try {
         var @case = JsonConvert.DeserializeObject <Case>(File.ReadAllText(FilePath));
         return(OResult <Case> .CreateSucces(@case));
     }
     catch (Exception ex) {
         Logger.Debug(ex.Message);
         return(OResult <Case> .CreateFailure(ex));
     }
 }
Exemple #2
0
 /// <summary>
 /// Serializes the contents of Case file to the path represented by this object.
 /// </summary>
 /// <param name="case">Case file to serialze to path</param>
 public OResult <bool> SerializeToPath(Case @case)
 {
     try {
         File.WriteAllText(FilePath, JsonConvert.SerializeObject(@case, Formatting.Indented));
         return(OResult <bool> .CreateSucces(true));
     }
     catch (Exception ex) {
         Logger.Debug(ex.Message);
         return(OResult <bool> .CreateFailure(ex));
     }
 }
        /// <summary>
        /// Gets the case with the given case number.
        /// </summary>
        /// <param name="caseNumber">Case Number</param>
        /// <returns></returns>
        public OResult <Case> GetCase(string caseNumber)
        {
            var caseFile = GetFilePath(caseNumber);

            if (caseFile.Exists() == false)
            {
                var exception = new FileNotFoundException(caseFile.FilePath);
                Logger.Debug(exception.Message);
                return(OResult <Case> .CreateFailure(exception));
            }
            return(caseFile.DeserializeFromPath());
        }
        /// <summary>
        /// Adds a case to CaseStorage.
        /// </summary>
        /// <param name="caseToAddToStorage">Case to add to CaseStorage</param>
        /// <returns>Operation Result</returns>
        public OResult <bool> AddCase(Case caseToAddToStorage)
        {
            var caseFile = new CaseFilePath(caseToAddToStorage.CaseNumber, _directoryToSaveFiles);

            if (caseFile.Exists())
            {
                var errMsg = $"{caseFile.FilePath} already exists. {caseFile.CaseNumber} must be unique.";
                Logger.Debug(errMsg);
                return(OResult <bool> .CreateFailure(new Exception(errMsg)));
            }
            return(caseFile.SerializeToPath(caseToAddToStorage));
        }
Exemple #5
0
        public OResult Query(OResult flags, string errormsg, string condition, string file)
        {
            var s   = String.Format(condition, file);
            int len = Math.Min(s.Length, Terminal.Cols - 8);

            var d = new Dialog(len, 8, "Error");

            d.ErrorColors();
            d.Add(new Label(1, 1, errormsg));
            d.Add(new Label(1, 2, String.Format(condition, file.Ellipsize(len - condition.Length))));

            OResult result = OResult.Ignore;
            Button  b;

            if ((flags & OResult.Retry) == OResult.Retry)
            {
                b          = new Button(0, 0, "Retry", true);
                b.Clicked += delegate {
                    result    = OResult.Retry;
                    d.Running = false;
                };
                d.Add(b);
            }
            if ((flags & OResult.Ignore) == OResult.Ignore)
            {
                b          = new Button(0, 0, "Ignore", true);
                b.Clicked += delegate {
                    result    = OResult.Ignore;
                    d.Running = false;
                };
                d.Add(b);
            }
            if ((flags & OResult.Cancel) == OResult.Cancel)
            {
                b          = new Button(0, 0, "Cancel", true);
                b.Clicked += delegate {
                    result    = OResult.Cancel;
                    d.Running = false;
                };
                d.Add(b);
            }
            Terminal.Run(d);
            return(result);
        }
Exemple #6
0
Fichier : util.cs Projet : arg/mc
        public OResult Query(OResult flags, string errormsg, string condition, string file)
        {
            var s = String.Format (condition, file);
            int len = Math.Min (s.Length, Application.Cols-8);

            var d = new Dialog (len, 8, "Error");
            d.ErrorColors ();
            d.Add (new Label (1, 1, errormsg));
            d.Add (new Label (1, 2, String.Format (condition, file.Ellipsize (len-condition.Length))));

            OResult result = OResult.Ignore;
            Button b;
            if ((flags & OResult.Retry) == OResult.Retry){
                b = new Button (0, 0, "Retry", true);
                b.Clicked += delegate {
                    result = OResult.Retry;
                    d.Running = false;
                };
                d.Add (b);
            }
            if ((flags & OResult.Ignore) == OResult.Ignore){
                b = new Button (0, 0, "Ignore", true);
                b.Clicked += delegate {
                    result = OResult.Ignore;
                    d.Running = false;
                };
                d.Add (b);
            }
            if ((flags & OResult.Cancel) == OResult.Cancel){
                b = new Button (0, 0, "Cancel", true);
                b.Clicked += delegate {
                    result = OResult.Cancel;
                    d.Running = false;
                };
                d.Add (b);
            }
            Application.Run (d);
            return result;
        }