diff options
author | Maxence Lange <maxence@artificial-owl.com> | 2018-11-02 08:38:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-02 08:38:02 +0100 |
commit | cd729b696b866e123fcb4a60d74458f1c8d9b0f8 (patch) | |
tree | 81ceebc41d4928465a62d71b690c939f547d3456 /lib/public | |
parent | 2cae91904c14f66aae26b0066a0c8cbfbe9a4c38 (diff) | |
parent | 70b8c5672b0f4b267f298a5c702a6b82250413dd (diff) | |
download | nextcloud-server-cd729b696b866e123fcb4a60d74458f1c8d9b0f8.tar.gz nextcloud-server-cd729b696b866e123fcb4a60d74458f1c8d9b0f8.zip |
Merge pull request #12193 from nextcloud/interface-fulltxtsearch-issue-00002
+infoBool / +infoInt
Diffstat (limited to 'lib/public')
-rw-r--r-- | lib/public/FullTextSearch/Model/IndexDocument.php | 82 |
1 files changed, 79 insertions, 3 deletions
diff --git a/lib/public/FullTextSearch/Model/IndexDocument.php b/lib/public/FullTextSearch/Model/IndexDocument.php index a73b702e506..78679ac6225 100644 --- a/lib/public/FullTextSearch/Model/IndexDocument.php +++ b/lib/public/FullTextSearch/Model/IndexDocument.php @@ -57,10 +57,10 @@ class IndexDocument implements JsonSerializable { /** @var string */ - protected $id; + protected $id = ''; /** @var string */ - protected $providerId; + protected $providerId = ''; /** @var DocumentAccess */ protected $access; @@ -111,7 +111,7 @@ class IndexDocument implements JsonSerializable { protected $info = []; /** @var int */ - protected $contentEncoded; + protected $contentEncoded = 0; /** @@ -819,6 +819,82 @@ class IndexDocument implements JsonSerializable { } /** + * Set some information about the original document that will be available + * to the front-end when displaying search result. (as int) + * Because this information will not be indexed, this method can also be + * used to manage some data while filling the IndexDocument before its + * indexing. + * + * @since 15.0.0 + * + * @param string $info + * @param int $value + * + * @return IndexDocument + */ + final public function setInfoInt(string $info, int $value): IndexDocument { + $this->info[$info] = $value; + + return $this; + } + + /** + * Get an information about a document. (int) + * + * @since 15.0.0 + * + * @param string $info + * @param int $default + * + * @return int + */ + final public function getInfoInt(string $info, int $default = 0): int { + if (!key_exists($info, $this->info)) { + return $default; + } + + return $this->info[$info]; + } + + /** + * Set some information about the original document that will be available + * to the front-end when displaying search result. (as bool) + * Because this information will not be indexed, this method can also be + * used to manage some data while filling the IndexDocument before its + * indexing. + * + * @since 15.0.0 + * + * @param string $info + * @param bool $value + * + * @return IndexDocument + */ + final public function setInfoBool(string $info, bool $value): IndexDocument { + $this->info[$info] = $value; + + return $this; + } + + /** + * Get an information about a document. (bool) + * + * @since 15.0.0 + * + * @param string $info + * @param bool $default + * + * @return bool + */ + final public function getInfoBool(string $info, bool $default = false): bool { + if (!key_exists($info, $this->info)) { + return $default; + } + + return $this->info[$info]; + } + + /** * Get all info. * * @since 15.0.0 |