本文整理汇总了C#中DB.GetAllHostLanes方法的典型用法代码示例。如果您正苦于以下问题:C# DB.GetAllHostLanes方法的具体用法?C# DB.GetAllHostLanes怎么用?C# DB.GetAllHostLanes使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DB
的用法示例。
在下文中一共展示了DB.GetAllHostLanes方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ExecuteScheduler
public static bool ExecuteScheduler (bool forcefullupdate)
{
DateTime start;
Lock scheduler_lock = null;
List<DBLane> lanes;
List<DBHost> hosts;
List<DBHostLane> hostlanes;
List<XmlDocument> reports;
try {
scheduler_lock = Lock.Create ("MonkeyWrench.Scheduler");
if (scheduler_lock == null) {
log.Info ("Could not aquire scheduler lock.");
return false;
}
log.Info ("Scheduler lock aquired successfully.");
is_executing = true;
start = DateTime.Now;
// SVNUpdater.StartDiffThread ();
// Check reports
reports = GetReports (forcefullupdate);
using (DB db = new DB (true)) {
lanes = db.GetAllLanes ();
hosts = db.GetHosts ();
hostlanes = db.GetAllHostLanes ();
log.InfoFormat ("Updater will now update {0} lanes.", lanes.Count);
GITUpdater git_updater = null;
// SVNUpdater svn_updater = null;
foreach (DBLane lane in lanes) {
if (!lane.enabled) {
log.InfoFormat ("Schedule: lane {0} is disabled, skipping it.", lane.lane);
continue;
}
SchedulerBase updater;
switch (lane.source_control) {
/*
case "svn":
if (svn_updater == null)
svn_updater = new SVNUpdater (forcefullupdate);
updater = svn_updater;
break;
* */
case "git":
if (git_updater == null)
git_updater = new GITUpdater (forcefullupdate);
updater = git_updater;
break;
default:
log.ErrorFormat ("Unknown source control: {0} for lane {1}", lane.source_control, lane.lane);
continue;
}
updater.Clear ();
updater.AddChangeSets (reports);
updater.UpdateRevisionsInDB (db, lane, hosts, hostlanes);
}
AddRevisionWork (db);
AddWork (db, hosts, lanes, hostlanes);
CheckDependencies (db, hosts, lanes, hostlanes);
}
// SVNUpdater.StopDiffThread ();
log.InfoFormat ("Update finished successfully in {0} seconds.", (DateTime.Now - start).TotalSeconds);
return true;
} catch (Exception ex) {
log.ErrorFormat ("An exception occurred: {0}", ex);
return false;
} finally {
if (scheduler_lock != null)
scheduler_lock.Unlock ();
is_executing = false;
}
}
示例2: GetHostLanes
public GetHostLanesResponse GetHostLanes (WebServiceLogin login)
{
GetHostLanesResponse response = new GetHostLanesResponse ();
using (DB db = new DB ()) {
Authenticate (db, login, response);
response.HostLanes = db.GetAllHostLanes ();
}
return response;
}
示例3: ExecuteScheduler
public static bool ExecuteScheduler (bool forcefullupdate)
{
Lock scheduler_lock = null;
List<DBLane> lanes;
List<DBHost> hosts;
List<DBHostLane> hostlanes;
List<XmlDocument> reports;
try {
scheduler_lock = Lock.Create ("MonkeyWrench.Scheduler");
if (scheduler_lock == null) {
Logger.Log ("Could not aquire scheduler lock.");
return false;
}
Logger.Log ("Scheduler lock aquired successfully.");
is_executing = true;
SVNUpdater.StartDiffThread ();
// Check reports
reports = GetReports (forcefullupdate);
using (DB db = new DB (true)) {
lanes = db.GetAllLanes ();
hosts = db.GetHosts ();
hostlanes = db.GetAllHostLanes ();
Logger.Log ("Updater will now update {0} lanes.", lanes.Count);
foreach (DBLane lane in lanes) {
SchedulerBase updater;
switch (lane.source_control) {
case "svn":
updater = new SVNUpdater (forcefullupdate);
break;
case "git":
updater = new GITUpdater (forcefullupdate);
break;
default:
Logger.Log ("Unknown source control: {0} for lane {1}", lane.source_control, lane.lane);
continue;
}
updater.AddChangeSets (reports);
updater.UpdateRevisionsInDB (db, lane, hosts, hostlanes);
UpdateBuildLogDB (db, lane, hosts, hostlanes);
}
}
Logger.Log ("Update done, waiting for diff thread to finish...");
SVNUpdater.StopDiffThread ();
Logger.Log ("Update finished successfully.");
return true;
} catch (Exception ex) {
Logger.Log ("An exception occurred: {0}", ex.ToString ());
return false;
} finally {
if (scheduler_lock != null)
scheduler_lock.Unlock ();
is_executing = false;
}
}