private void ProcessResults(WaitableTask <EncounterStatus> result,
                                    TaskResult <string> fileText, EncounterBasicStatus basicStatus)
        {
            EncounterContentStatus detailedStatus = (fileText.IsError()) ? new EncounterContentStatus() : parser.Deserialize(fileText.Value);
            var status = new EncounterStatus(basicStatus, detailedStatus);

            result.SetResult(status);
        }
        public EncounterStatus(EncounterBasicStatus basicStatus, EncounterContentStatus contentStatus)
        {
            if (basicStatus == null)
            {
                basicStatus = new EncounterBasicStatus();
            }
            if (contentStatus == null)
            {
                contentStatus = new EncounterContentStatus();
            }

            BasicStatus   = basicStatus;
            ContentStatus = contentStatus;
        }