* @param t The line type, should be set by the derived class constructor
*/
XLine(time_t s_time, long d, std::string src, std::string re, const std::string &t)
- : set_time(s_time), duration(d), source(src), reason(re), type(t)
+ : set_time(s_time)
+ , duration(d)
+ , source(src)
+ , reason(re)
+ , type(t)
+ , from_config(false)
{
expiry = set_time + duration;
}
*/
const std::string type;
+ // Whether this XLine was loaded from the server config.
+ bool from_config;
+
virtual bool IsBurstable();
};
{
}
- virtual bool Matches(User *u);
+ bool Matches(User* u) CXX11_OVERRIDE;
- virtual bool Matches(const std::string &str);
+ bool Matches(const std::string& str) CXX11_OVERRIDE;
- virtual void Apply(User* u);
+ void Apply(User* u) CXX11_OVERRIDE;
- virtual const std::string& Displayable();
+ const std::string& Displayable() CXX11_OVERRIDE;
- virtual bool IsBurstable();
+ bool IsBurstable() CXX11_OVERRIDE;
/** Ident mask (ident part only)
*/
{
}
- virtual bool Matches(User *u);
+ bool Matches(User* u) CXX11_OVERRIDE;
- virtual bool Matches(const std::string &str);
+ bool Matches(const std::string& str) CXX11_OVERRIDE;
- virtual void Apply(User* u);
+ void Apply(User* u) CXX11_OVERRIDE;
- virtual const std::string& Displayable();
+ const std::string& Displayable() CXX11_OVERRIDE;
/** Ident mask (ident part only)
*/
{
}
- virtual bool Matches(User *u);
+ bool Matches(User* u) CXX11_OVERRIDE;
- virtual bool Matches(const std::string &str);
+ bool Matches(const std::string& str) CXX11_OVERRIDE;
- virtual void Unset();
+ void Unset() CXX11_OVERRIDE;
- virtual void OnAdd();
+ void OnAdd() CXX11_OVERRIDE;
- virtual const std::string& Displayable();
+ const std::string& Displayable() CXX11_OVERRIDE;
/** Ident mask (ident part only)
*/
{
}
- virtual bool Matches(User *u);
+ bool Matches(User* u) CXX11_OVERRIDE;
- virtual bool Matches(const std::string &str);
+ bool Matches(const std::string& str) CXX11_OVERRIDE;
- virtual void Apply(User* u);
+ void Apply(User* u) CXX11_OVERRIDE;
- virtual const std::string& Displayable();
+ const std::string& Displayable() CXX11_OVERRIDE;
/** IP mask (no ident part)
*/
~QLine()
{
}
- virtual bool Matches(User *u);
+ bool Matches(User* u) CXX11_OVERRIDE;
- virtual bool Matches(const std::string &str);
+ bool Matches(const std::string& str) CXX11_OVERRIDE;
- virtual void Apply(User* u);
+ void Apply(User* u) CXX11_OVERRIDE;
- virtual const std::string& Displayable();
+ const std::string& Displayable() CXX11_OVERRIDE;
/** Nickname mask
*/
* will be expired and removed before the list is displayed.
* @param type The type of stats to show
* @param numeric The numeric to give to each result line
- * @param user The username making the query
- * @param results The string_list to receive the results
+ * @param stats Stats context
*/
- void InvokeStats(const std::string &type, int numeric, User* user, string_list &results);
-};
+ void InvokeStats(const std::string& type, unsigned int numeric, Stats::Context& stats);
+ /** Clears any XLines which were added by the server configuration. */
+ void ClearConfigLines();
+};