Ejemplo n.º 1
0
	EntityTestHandleResult LMP::CouldHandle (const Entity& e) const
	{
		EntityChecker ec (e);
		return ec.Can () ?
				EntityTestHandleResult (EntityTestHandleResult::PIdeal) :
				EntityTestHandleResult ();
	}
Ejemplo n.º 2
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& entity) const
	{
		if (entity.Mime_ != "x-leechcraft/package-manager-action")
			return EntityTestHandleResult ();

		return EntityTestHandleResult (EntityTestHandleResult::PIdeal);
	}
Ejemplo n.º 3
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& entity) const
	{
		const bool isCountInfo = entity.Mime_ == "x-leechcraft/notification-event-count-info";
		return EntityTestHandleResult (isCountInfo ?
					EntityTestHandleResult::PIdeal :
					EntityTestHandleResult::PNone);
	}
Ejemplo n.º 4
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& e) const
	{
		const bool good = (e.Mime_ == "x-leechcraft/global-action-register" ||
					e.Mime_ == "x-leechcraft/global-action-unregister") &&
				e.Additional_.contains ("ActionID");
		return EntityTestHandleResult (good ?
					EntityTestHandleResult::PIdeal :
					EntityTestHandleResult::PNone);
	}
Ejemplo n.º 5
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& e) const
	{
		if (e.Mime_ != "x-leechcraft/data-filter-request" ||
				!e.Entity_.canConvert<QString> ())
			return EntityTestHandleResult ();

		if (e.Additional_.contains ("DataFilter"))
		{
			const auto& rawCat = e.Additional_ ["DataFilter"].toByteArray ();
			const auto& catStr = QString::fromUtf8 (rawCat.data ());
			const auto& vars = GetFilterVariants ();
			if (std::find_if (vars.begin (), vars.end (),
					[&catStr] (decltype (vars.front ()) var)
						{ return var.ID_ == catStr; }) == vars.end ())
				return EntityTestHandleResult ();
		}

		const auto& str = e.Entity_.toString ();
		return str.size () < 200 && str.count ("\n") < 3 ?
				EntityTestHandleResult (EntityTestHandleResult::PIdeal) :
				EntityTestHandleResult ();
	}
Ejemplo n.º 6
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& e) const
	{
		QString path = e.Entity_.toString ();
		const QUrl& url = e.Entity_.toUrl ();
		if (path.isEmpty () &&
					url.isValid () &&
					url.scheme () == "file")
			path = url.toLocalFile ();

		if (!path.isEmpty ())
		{
			const auto& goodExt = XmlSettingsManager::Instance ()
					.property ("TestExtensions").toString ()
					.split (' ', QString::SkipEmptyParts);
			const QFileInfo fi = QFileInfo (path);
			if (fi.exists () && goodExt.contains (fi.suffix ()))
				return EntityTestHandleResult (EntityTestHandleResult::PHigh);
			else
				return EntityTestHandleResult ();
		}

		return EntityTestHandleResult ();
	}
Ejemplo n.º 7
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& e) const
	{
		if (!XmlSettingsManager::Instance ().property ("PreferPhonon").toBool () &&
				XmlSettingsManager::Instance ().property ("PlayerCommand").toString ().isEmpty ())
			return EntityTestHandleResult ();

		if (!(e.Parameters_ & Internal))
			return EntityTestHandleResult ();

		const auto& path = GetPath (e);

		if (!path.isEmpty ())
		{
			const QStringList goodExt = { "mp3", "ogg", "wav", "flac" };
			const QFileInfo fi = QFileInfo (path);
			if (fi.exists () && goodExt.contains (fi.suffix ()))
				return EntityTestHandleResult (EntityTestHandleResult::PNormal);
			else
				return EntityTestHandleResult ();
		}

		return EntityTestHandleResult ();
	}
Ejemplo n.º 8
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& e) const
	{
		const bool can = e.Mime_.startsWith ("x-leechcraft/notification") &&
				e.Additional_.contains ("org.LC.AdvNotifications.SenderID") &&
				e.Additional_.contains ("org.LC.AdvNotifications.EventID") &&
				e.Additional_.contains ("org.LC.AdvNotifications.EventCategory");

		if (!can)
			return EntityTestHandleResult ();

		EntityTestHandleResult result (EntityTestHandleResult::PIdeal);
		result.CancelOthers_ = true;
		return result;
	}
Ejemplo n.º 9
0
EntityTestHandleResult Plugin::CouldHandle (const Entity& e) const
{
    if (e.Mime_ == "x-leechcraft/power-state-changed")
        return EntityTestHandleResult (EntityTestHandleResult::PHigh);

    QString path = e.Entity_.toString ();
    const QUrl& url = e.Entity_.toUrl ();
    if (path.isEmpty () &&
            url.isValid () &&
            url.scheme () == "file")
        path = url.toLocalFile ();

    const auto& goodExt = XmlSettingsManager::Instance ()
                          .property ("TestExtensions").toString ()
                          .split (' ', QString::SkipEmptyParts);
    const QFileInfo fi (path);
    if ((fi.exists () && goodExt.contains (fi.suffix ())) ||
            e.Additional_ ["Action"] == "AudioEnqueuePlay" ||
            e.Additional_ ["Action"] == "AudioEnqueue")
        return EntityTestHandleResult (EntityTestHandleResult::PHigh);
    else
        return EntityTestHandleResult ();
}
Ejemplo n.º 10
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& entity) const
	{
		QString language = entity.Additional_ ["Language"].toString ().toLower ();
		if (entity.Mime_ != "x-leechcraft/script-wrap-request")
			return EntityTestHandleResult ();
		if (!entity.Additional_ ["Object"].value<QObject**> ())
			return EntityTestHandleResult ();
		if (!Qross::Manager::self ().interpreters ().contains (language))
			return EntityTestHandleResult ();
		if (!entity.Entity_.toUrl ().isValid ())
			return EntityTestHandleResult ();
		if (!QFileInfo (entity.Entity_
				.toUrl ().toLocalFile ()).exists ())
			return EntityTestHandleResult ();

		return EntityTestHandleResult (EntityTestHandleResult::PIdeal);
	}
Ejemplo n.º 11
0
			EntityTestHandleResult Plugin::CouldHandle (const LeechCraft::Entity& e) const
			{
				if (!(e.Parameters_ & FromUserInitiated))
					return EntityTestHandleResult ();

				if (!e.Entity_.canConvert<QUrl> ())
					return EntityTestHandleResult ();

				if (e.Mime_.startsWith ("x-leechcraft/"))
					return EntityTestHandleResult ();

				const QUrl& url = e.Entity_.toUrl ();
				if (url.scheme () != "file")
					return EntityTestHandleResult ();

				if (!QFileInfo (url.toLocalFile ()).exists ())
					return EntityTestHandleResult ();

				return EntityTestHandleResult (EntityTestHandleResult::PHigh);
			}
Ejemplo n.º 12
0
	EntityTestHandleResult CleanWeb::CouldHandle (const Entity& e) const
	{
		return Core_->CouldHandle (e) ?
				EntityTestHandleResult (EntityTestHandleResult::PIdeal) :
				EntityTestHandleResult ();
	}
Ejemplo n.º 13
0
			EntityTestHandleResult LCFTP::CouldHandle (const Entity& e) const
			{
				return Core::Instance ().IsOK (e) ?
						EntityTestHandleResult (EntityTestHandleResult::PIdeal) :
						EntityTestHandleResult ();
			}
Ejemplo n.º 14
0
	EntityTestHandleResult Plugin::CouldHandle (const Entity& e) const
	{
		return Core::Instance ().CouldHandle (e) ?
				EntityTestHandleResult (EntityTestHandleResult::PIdeal) :
				EntityTestHandleResult ();
	}
Ejemplo n.º 15
0
	EntityTestHandleResult Poshuku::CouldHandle (const LeechCraft::Entity& e) const
	{
		return Core::Instance ().CouldHandle (e) ?
				EntityTestHandleResult (EntityTestHandleResult::PIdeal) :
				EntityTestHandleResult ();
	}
Ejemplo n.º 16
0
	EntityTestHandleResult DBusManager::CouldHandle (const Entity& e) const
	{
		return Core::Instance ().CouldHandle (e) ?
				EntityTestHandleResult (EntityTestHandleResult::PHigh) :
				EntityTestHandleResult ();
	}