当前位置: 首页>>代码示例>>C++>>正文


C++ Server::Delete方法代码示例

本文整理汇总了C++中Server::Delete方法的典型用法代码示例。如果您正苦于以下问题:C++ Server::Delete方法的具体用法?C++ Server::Delete怎么用?C++ Server::Delete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Server的用法示例。


在下文中一共展示了Server::Delete方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: OnSQuit

bool IRCdMessage::OnSQuit(const Anope::string &source, const std::vector<Anope::string> &params)
{
	const Anope::string &server = params[0];

	Server *s = Server::Find(server);

	if (!s)
	{
		Log() << "SQUIT for nonexistent server " << server;
		return true;
	}

	FOREACH_MOD(I_OnServerQuit, OnServerQuit(s));

	Anope::string buf = s->GetName() + " " + s->GetUplink()->GetName();

	if (s->GetUplink() == Me && Capab.count("UNCONNECT") > 0)
	{
		Log(LOG_DEBUG) << "Sending UNCONNECT SQUIT for " << s->GetName();
		/* need to fix */
		ircdproto->SendSquit(s, buf);
	}

	s->Delete(buf);

	return true;
}
开发者ID:xxgrunge,项目名称:anope196,代码行数:27,代码来源:protocol.cpp

示例2: Run

void SQuit::Run(MessageSource &source, const std::vector<Anope::string> &params)
{
	Server *s = Server::Find(params[0]);

	if (!s)
	{
		Log(LOG_DEBUG) << "SQUIT for nonexistent server " << params[0];
		return;
	}

	if (s == Me)
	{
		if (Me->GetLinks().empty())
			return;

		s = Me->GetLinks().front();
	}

	s->Delete(s->GetName() + " " + s->GetUplink()->GetName());
}
开发者ID:SaberUK,项目名称:anope,代码行数:20,代码来源:messages.cpp

示例3: Execute

	void Execute(CommandSource &source, const std::vector<Anope::string> &params) override
	{
		const Anope::string &jserver = params[0];
		const Anope::string &reason = params.size() > 1 ? params[1] : "";
		Server *server = Server::Find(jserver, true);

		if (!IRCD->IsHostValid(jserver) || jserver.find('.') == Anope::string::npos)
		{
			source.Reply(_("\002{0}\002 is not a valid server name."), jserver);
			return;
		}

		if (server == Me || server == Servers::GetUplink() || server->IsULined())
		{
			source.Reply(_("You can not jupe Servoces or its uplink server."));
			return;
		}

		if (server && server->IsJuped())
		{
			source.Reply(_("You can not jupe an already juped server."));
			return;
		}

		Anope::string rbuf = "Juped by " + source.GetNick() + (!reason.empty() ? ": " + reason : "");
		/* Generate the new sid before quitting the old server, so they can't collide */
		Anope::string sid = IRCD->SID_Retrieve();
		if (server)
		{
			IRCD->Send<messages::SQuit>(server, rbuf);
			server->Delete(rbuf);
		}
		Server *juped_server = new Server(Me, jserver, 1, rbuf, sid, true);
		IRCD->Send<messages::MessageServer>(juped_server);

		Log(LOG_ADMIN, source, this) << "on " << jserver << " (" << rbuf << ")";
	}
开发者ID:,项目名称:,代码行数:37,代码来源:


注:本文中的Server::Delete方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。