+
+ SetID(id);
+}
+
+const std::string& TreeServer::GetID()
+{
+ return sid;
+}
+
+void TreeServer::FinishBurstInternal()
+{
+ this->bursting = false;
+ SetNextPingTime(ServerInstance->Time() + Utils->PingFreq);
+ SetPingFlag();
+ for(unsigned int q=0; q < ChildCount(); q++)
+ {
+ TreeServer* child = GetChild(q);
+ child->FinishBurstInternal();
+ }
+}
+
+void TreeServer::FinishBurst()
+{
+ FinishBurstInternal();
+ ServerInstance->XLines->ApplyLines();
+ long ts = ServerInstance->Time() * 1000 + (ServerInstance->Time_ns() / 1000000);
+ unsigned long bursttime = ts - this->StartBurst;
+ ServerInstance->SNO->WriteToSnoMask(Parent == Utils->TreeRoot ? 'l' : 'L', "Received end of netburst from \2%s\2 (burst time: %lu %s)",
+ ServerName.c_str(), (bursttime > 10000 ? bursttime / 1000 : bursttime), (bursttime > 10000 ? "secs" : "msecs"));
+ AddServerEvent(Utils->Creator, ServerName.c_str());
+}
+
+void TreeServer::SetID(const std::string &id)
+{
+ ServerInstance->Logs->Log("m_spanningtree", LOG_DEBUG, "Setting SID to " + id);
+ sid = id;
+ Utils->sidlist[sid] = this;