ILIAS
release_5-3 Revision v5.3.23-19-g915713cf615
◀ ilDoc Overview
class.ilLuceneSearchResultParser.php
Go to the documentation of this file.
1
<?php
2
/*
3
+-----------------------------------------------------------------------------+
4
| ILIAS open source |
5
+-----------------------------------------------------------------------------+
6
| Copyright (c) 1998-2006 ILIAS open source, University of Cologne |
7
| |
8
| This program is free software; you can redistribute it and/or |
9
| modify it under the terms of the GNU General Public License |
10
| as published by the Free Software Foundation; either version 2 |
11
| of the License, or (at your option) any later version. |
12
| |
13
| This program is distributed in the hope that it will be useful, |
14
| but WITHOUT ANY WARRANTY; without even the implied warranty of |
15
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16
| GNU General Public License for more details. |
17
| |
18
| You should have received a copy of the GNU General Public License |
19
| along with this program; if not, write to the Free Software |
20
| Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21
+-----------------------------------------------------------------------------+
22
*/
23
33
class
ilLuceneSearchResultParser
34
{
35
private
$xml
;
36
42
public
function
__construct
($a_xml)
43
{
44
$this->xml = $a_xml;
45
}
46
47
53
public
function
getXML
()
54
{
55
return
$this->xml
;
56
}
57
63
public
function
parse
(
ilLuceneSearchResult
$result
)
64
{
65
if
(!strlen($this->
getXML
())) {
66
return
$result
;
67
}
68
$hits =
new
SimpleXMLElement
($this->
getXML
());
69
$result->
setLimit
($result->
getLimit
() + (int) ((
string
) $hits[
'limit'
]));
70
$result->
setMaxScore
((
string
) $hits[
'maxScore'
]);
71
$result->
setTotalHits
((
string
) $hits[
'totalHits'
]);
72
73
foreach
($hits->children() as $object) {
74
if
(isset($object[
'absoluteScore'
])) {
75
$result->
addObject
((
string
) $object[
'id'
], (
float
) $object[
'absoluteScore'
]);
76
}
else
{
77
$result->
addObject
((
string
) $object[
'id'
], (
float
) $object->Item[0][
'absoluteScore'
]);
78
}
79
}
80
return
$result
;
81
}
82
}
SimpleXMLElement
ilLuceneSearchResultParser\parse
parse(ilLuceneSearchResult $result)
Parse XML.
Definition:
class.ilLuceneSearchResultParser.php:63
$result
$result
Definition:
CleanUpTest.php:463
ilLuceneSearchResult\setLimit
setLimit($a_limit)
Definition:
class.ilLuceneSearchResult.php:169
ilLuceneSearchResult\getLimit
getLimit()
Definition:
class.ilLuceneSearchResult.php:179
ilLuceneSearchResult\setTotalHits
setTotalHits($a_hits)
set total hits
Definition:
class.ilLuceneSearchResult.php:209
ilLuceneSearchResult
Search result implementing iterator interface.
Definition:
class.ilLuceneSearchResult.php:34
ilLuceneSearchResult\setMaxScore
setMaxScore($a_score)
Definition:
class.ilLuceneSearchResult.php:190
ilLuceneSearchResultParser\$xml
$xml
Definition:
class.ilLuceneSearchResultParser.php:35
ilLuceneSearchResultParser\__construct
__construct($a_xml)
Constructor.
Definition:
class.ilLuceneSearchResultParser.php:42
ilLuceneSearchResultParser
Parses Lucene search results.
Definition:
class.ilLuceneSearchResultParser.php:33
ilLuceneSearchResult\addObject
addObject($a_value, $a_relevance=0)
Add object entry.
Definition:
class.ilLuceneSearchResult.php:144
ilLuceneSearchResultParser\getXML
getXML()
get xml
Definition:
class.ilLuceneSearchResultParser.php:53
Services
Search
classes
Lucene
class.ilLuceneSearchResultParser.php
Generated on Sat Jan 18 2025 19:01:37 for ILIAS by
1.8.13 (using
Doxyfile
)