Last modified: 2006-03-02 02:36:06 UTC
There are a few member functions in the Article class, named onArticleCreate(),
onArticleDelete() and onArticleEdit() that, according to the comment near them,
they are a kind of hook functions that are called when articles are created,
deleted or edited. Nevertheless, all calls to these member functions in the same
class are explicitly non-virtual for no apparent reason. I.e., these functions
are called like
Article::onArticleEdit( $this->mTitle );
$this->onArticleEdit( $this->mTitle );
This makes it impossible to override these hooks on derived classes. Is there
any reason why all calls to these functions were made non-virtual? Would it be
possible to make these calls virtual?
I'm designing an extension that needs such functionality. After editing an
article, I need to invalidate the cache of its parent articles, and this would
be cleanest way to do it.
This is somewhat related to bug #5135.
Those are static (class) methods.