46use Psr\Log\LoggerInterface;
76 private $revisionStore;
79 private $revisionRenderer;
82 private $slotRoleRegistry;
88 private $jobQueueGroup;
91 private $messageCache;
97 private $loadbalancerFactory;
100 private $contentHandlerFactory;
103 private $hookContainer;
106 private $editResultCache;
109 private $userNameUtils;
118 private $userEditTracker;
121 private $userGroupManager;
124 private $titleFormatter;
127 private $contentTransformer;
130 private $pageEditStash;
133 private $talkPageNotificationManager;
136 private $mainWANObjectCache;
139 private $permissionManager;
142 private $wikiPageFactory;
145 private $softwareTags;
148 private $parsoidOutputAccess;
191 LoggerInterface $logger,
206 $this->revisionStore = $revisionStore;
207 $this->revisionRenderer = $revisionRenderer;
208 $this->slotRoleRegistry = $slotRoleRegistry;
209 $this->parserCache = $parserCache;
210 $this->parsoidOutputAccess = $parsoidOutputAccess;
211 $this->jobQueueGroup = $jobQueueGroup;
212 $this->messageCache = $messageCache;
213 $this->contLang = $contLang;
214 $this->loadbalancerFactory = $loadbalancerFactory;
215 $this->contentHandlerFactory = $contentHandlerFactory;
216 $this->hookContainer = $hookContainer;
217 $this->editResultCache = $editResultCache;
218 $this->userNameUtils = $userNameUtils;
219 $this->logger = $logger;
220 $this->options = $options;
221 $this->userEditTracker = $userEditTracker;
222 $this->userGroupManager = $userGroupManager;
223 $this->titleFormatter = $titleFormatter;
224 $this->contentTransformer = $contentTransformer;
225 $this->pageEditStash = $pageEditStash;
226 $this->talkPageNotificationManager = $talkPageNotificationManager;
227 $this->mainWANObjectCache = $mainWANObjectCache;
228 $this->permissionManager = $permissionManager;
229 $this->softwareTags = $softwareTags;
230 $this->wikiPageFactory = $wikiPageFactory;
251 $page = $this->wikiPageFactory->newFromTitle( $page );
281 $derivedPageDataUpdater,
282 $this->loadbalancerFactory->getMainLB(),
283 $this->revisionStore,
284 $this->slotRoleRegistry,
285 $this->contentHandlerFactory,
286 $this->hookContainer,
287 $this->userEditTracker,
288 $this->userGroupManager,
289 $this->titleFormatter,
300 $pageUpdater->setUseAutomaticEditSummaries(
319 $this->revisionStore,
320 $this->revisionRenderer,
321 $this->slotRoleRegistry,
323 $this->parsoidOutputAccess,
324 $this->jobQueueGroup,
327 $this->loadbalancerFactory,
328 $this->contentHandlerFactory,
329 $this->hookContainer,
330 $this->editResultCache,
331 $this->userNameUtils,
332 $this->contentTransformer,
333 $this->pageEditStash,
334 $this->talkPageNotificationManager,
335 $this->mainWANObjectCache,
336 $this->permissionManager
339 $derivedDataUpdater->
setLogger( $this->logger );
340 $derivedDataUpdater->setArticleCountMethod(
341 $this->options->get( MainConfigNames::ArticleCountMethod ) );
342 $derivedDataUpdater->setRcWatchCategoryMembership(
343 $this->options->get( MainConfigNames::RCWatchCategoryMembership )
346 return $derivedDataUpdater;
Class to handle enqueueing of background jobs.
Base class for language-specific code.
A service to transform content.
A class containing constants representing the names of configuration variables.
const UseRCPatrol
Name constant for the UseRCPatrol setting, for use with Config::get()
const ArticleCountMethod
Name constant for the ArticleCountMethod setting, for use with Config::get()
const ManualRevertSearchRadius
Name constant for the ManualRevertSearchRadius setting, for use with Config::get()
const PageCreationLog
Name constant for the PageCreationLog setting, for use with Config::get()
const RCWatchCategoryMembership
Name constant for the RCWatchCategoryMembership setting, for use with Config::get()
const ParsoidCacheConfig
Name constant for the ParsoidCacheConfig setting, for use with Config::get()
const UseAutomaticEditSummaries
Name constant for the UseAutomaticEditSummaries setting, for use with Config::get()
Service for creating WikiPage objects.
A handle for managing updates for derived page data on edit, import, purge, etc.
setLogger(LoggerInterface $logger)
Manage the pre-emptive page parsing for edits to wiki pages.
A factory for PageUpdater instances.
__construct(RevisionStore $revisionStore, RevisionRenderer $revisionRenderer, SlotRoleRegistry $slotRoleRegistry, ParserCache $parserCache, ParsoidOutputAccess $parsoidOutputAccess, JobQueueGroup $jobQueueGroup, MessageCache $messageCache, Language $contLang, ILBFactory $loadbalancerFactory, IContentHandlerFactory $contentHandlerFactory, HookContainer $hookContainer, EditResultCache $editResultCache, UserNameUtils $userNameUtils, LoggerInterface $logger, ServiceOptions $options, UserEditTracker $userEditTracker, UserGroupManager $userGroupManager, TitleFormatter $titleFormatter, ContentTransformer $contentTransformer, PageEditStash $pageEditStash, TalkPageNotificationManager $talkPageNotificationManager, WANObjectCache $mainWANObjectCache, PermissionManager $permissionManager, WikiPageFactory $wikiPageFactory, array $softwareTags)
newDerivedPageDataUpdater(WikiPage $page)
newPageUpdaterForDerivedPageDataUpdater(WikiPage $page, UserIdentity $user, DerivedPageDataUpdater $derivedPageDataUpdater)
Return a PageUpdater for building an update to a page, reusing the state of an existing DerivedPageDa...
newPageUpdater(PageIdentity $page, UserIdentity $user)
Return a PageUpdater for building an update to a page.
const CONSTRUCTOR_OPTIONS
Options that have to be present in the ServiceOptions object passed to the constructor.
Controller-like object for creating and updating pages by creating new revisions.
setUsePageCreationLog( $use)
Whether to create a log entry for new page creations.
Manages user talk page notifications.
Cache messages that are defined by MediaWiki-namespace pages or by hooks.
Cache for ParserOutput objects corresponding to the latest page revisions.
Multi-datacenter aware caching interface.
Base representation for an editable wiki page.
Interface for objects (potentially) representing an editable wiki page.