コード例 #1
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
        public static HiveDataContext CreateContext(bool longRunning = false)
        {
            var context = new HiveDataContext(Settings.Default.HeuristicLab_Hive_LinqConnectionString);

            if (longRunning)
            {
                context.CommandTimeout = (int)Settings.Default.LongRunningDatabaseCommandTimeout.TotalSeconds;
            }
            return(context);
        }
コード例 #2
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
        private void CollectChildJobs(HiveDataContext db, Guid parentJobId, List <Job> collection)
        {
            var jobs = db.Jobs.Where(j => j.ParentJobId == parentJobId);

            foreach (var job in jobs)
            {
                collection.Add(job);
                if (job.IsParentJob)
                {
                    CollectChildJobs(db, job.JobId, collection);
                }
            }
        }
コード例 #3
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
        private DT.HiveExperiment AddStatsToExperiment(HiveDataContext db, DT.HiveExperiment exp)
        {
            if (exp == null)
            {
                return(null);
            }

            var jobs = db.Jobs.Where(j => j.HiveExperimentId == exp.Id);

            exp.JobCount         = jobs.Count();
            exp.CalculatingCount = jobs.Count(j => j.State == JobState.Calculating);
            exp.FinishedCount    = jobs.Count(j => j.State == JobState.Finished);
            return(exp);
        }
コード例 #4
0
 public OptimizedHiveDao(HiveDataContext db)
 {
     Db = db;
 }
コード例 #5
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
 private void CollectChildTasks(HiveDataContext db, Guid parentTaskId, List<Task> collection) {
   var tasks = db.Tasks.Where(j => j.ParentTaskId == parentTaskId);
   foreach (var task in tasks) {
     collection.Add(task);
     if (task.IsParentTask)
       CollectChildTasks(db, task.TaskId, collection);
   }
 }
コード例 #6
0
 public OptimizedHiveDao(HiveDataContext db) {
   Db = db;
 }
コード例 #7
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
 public IEnumerable<DT.Resource> CollectChildResources(Guid resourceId, HiveDataContext db) {
   var childs = new List<DT.Resource>();
   foreach (var child in db.Resources.Where(x => x.ParentResourceId == resourceId)) {
     childs.Add(DT.Convert.ToDto(child));
     childs.AddRange(CollectChildResources(child.ResourceId, db));
   }
   return childs;
 }
コード例 #8
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
    private DT.Job AddStatsToJob(HiveDataContext db, DT.Job exp) {
      if (exp == null)
        return null;

      var jobs = db.Tasks.Where(j => j.JobId == exp.Id);
      exp.JobCount = jobs.Count();
      exp.CalculatingCount = jobs.Count(j => j.State == TaskState.Calculating);
      exp.FinishedCount = jobs.Count(j => j.State == TaskState.Finished || j.State == TaskState.Aborted || j.State == TaskState.Failed);
      return exp;
    }
コード例 #9
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
 public static HiveDataContext CreateContext(bool longRunning = false) {
   var context = new HiveDataContext(Settings.Default.HeuristicLab_Hive_LinqConnectionString);
   if (longRunning) context.CommandTimeout = (int)Settings.Default.LongRunningDatabaseCommandTimeout.TotalSeconds;
   return context;
 }
コード例 #10
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
 private void CollectChildJobs(HiveDataContext db, Guid parentJobId, List<Job> collection) {
   var jobs = db.Jobs.Where(j => j.ParentJobId == parentJobId);
   foreach (var job in jobs) {
     collection.Add(job);
     if (job.IsParentJob)
       CollectChildJobs(db, job.JobId, collection);
   }
 }
コード例 #11
0
ファイル: HiveDao.cs プロジェクト: thunder176/HeuristicLab
    private DT.HiveExperiment AddStatsToExperiment(HiveDataContext db, DT.HiveExperiment exp) {
      if (exp == null)
        return null;

      var jobs = db.Jobs.Where(j => j.HiveExperimentId == exp.Id);
      exp.JobCount = jobs.Count();
      exp.CalculatingCount = jobs.Count(j => j.State == JobState.Calculating);
      exp.FinishedCount = jobs.Count(j => j.State == JobState.Finished);
      return exp;
    }