/** * @param MediawikiApi $api * @param WikidataQueryApi|null $wikidataQueryApi * @param EntityStoreOptions|null $options */ public function __construct(MediawikiApi $api, WikidataQueryApi $wikidataQueryApi = null, EntityStoreOptions $options = null) { parent::__construct($options); $this->entityLookup = $this->newEntityLookup($api); $this->entityIdsForTermLookup = $this->newEntityForTermLookup($api); $this->wikidataQueryApi = $wikidataQueryApi; }
/** * @param Database $database * @param EntityStoreOptions $options */ public function __construct(Database $database, EntityStoreOptions $options = null) { $this->database = $database; parent::__construct($options); $this->defaultOption(self::OPTION_QUERY_TIME_LIMIT, null); $entityDatabase = $this->newEntityDatabase($database); $this->entityLookup = new DispatchingEntityLookup($entityDatabase); $this->entityForTermLookup = new DispatchingEntityIdForTermLookup($this->newEntityIdForTermLookup($database)); $this->entityForQueryLookup = new DispatchingEntityIdForQueryLookup($this->newEntityIdForQueryLookup($database)); $this->entitySaver = $entityDatabase; }
/** * @see EntityStore::setupIndexes */ public function setupIndexes() { $this->entityStore->setupIndexes(); }
/** * @param EntityDocument[] $entities */ public function __construct(array $entities) { parent::__construct(); $this->entityLookup = new DispatchingEntityLookup(new InMemoryEntityLookup($entities)); }