public bool RunAction(ViewsManager views) { try { /////////////////////////////////////////////////////////////////////////////// ReportProgress(0); /////////////////////////////////////////////////////////////////////////////// if (!StartEntitiesPlumbingOperation(_parm.GetFullPath(_paramsFileName))) { return(false); } /////////////////////////////////////////////////////////////////////////////// WaitForExit(); /////////////////////////////////////////////////////////////////////////////// if (_parm.Command == "Calculate") { ReportProgress(70); CalculatedEntitiesResult result = null; if (File.Exists(_parm.GetFullPath(_parm.OutputFileName))) { var json = File.ReadAllText(_parm.GetFullPath(_parm.OutputFileName)); result = JsonConvert.DeserializeObject <CalculatedEntitiesResult>(json); } if (result == null) { return(false); } if (!WriteEntitiesNames(views, result.EntityLabels)) { return(false); } if (!WriteEntitiesValues(views, result.Documents)) { return(false); } if (!CalculateStatistics(views, result)) { return(false); } } else if (_parm.Command == "GetEntityNames") { ReportProgress(50); // write to database EntityLabelResult result = null; if (File.Exists(_parm.GetFullPath(_parm.OutputFileName))) { var json = File.ReadAllText(_parm.GetFullPath(_parm.OutputFileName)); result = JsonConvert.DeserializeObject <EntityLabelResult>(json); } if (result == null) { return(false); } if (!WriteEntitiesNames(views, result)) { return(false); } } return(true); } catch (Exception e) { HandleException(e); } return(false); }