Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Sign in
Toggle navigation
S
solarium
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
common
solarium
Commits
275056b6
Commit
275056b6
authored
Nov 17, 2011
by
Bas de Nooijer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added truncate param to grouping component
parent
5c2adfa1
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
46 additions
and
6 deletions
+46
-6
library/Solarium/Client/RequestBuilder/Select/Component/Grouping.php
...arium/Client/RequestBuilder/Select/Component/Grouping.php
+2
-1
library/Solarium/Query/Select/Component/Grouping.php
library/Solarium/Query/Select/Component/Grouping.php
+28
-4
tests/Solarium/Client/RequestBuilder/Select/Component/GroupingTest.php
...m/Client/RequestBuilder/Select/Component/GroupingTest.php
+2
-0
tests/Solarium/Query/Select/Component/GroupingTest.php
tests/Solarium/Query/Select/Component/GroupingTest.php
+14
-1
No files found.
library/Solarium/Client/RequestBuilder/Select/Component/Grouping.php
View file @
275056b6
...
@@ -44,7 +44,7 @@
...
@@ -44,7 +44,7 @@
*/
*/
class
Solarium_Client_RequestBuilder_Select_Component_Grouping
class
Solarium_Client_RequestBuilder_Select_Component_Grouping
{
{
/**
/**
* Add request settings for Grouping
* Add request settings for Grouping
*
*
...
@@ -65,6 +65,7 @@ class Solarium_Client_RequestBuilder_Select_Component_Grouping
...
@@ -65,6 +65,7 @@ class Solarium_Client_RequestBuilder_Select_Component_Grouping
$request
->
addParam
(
'group.main'
,
$component
->
getMainResult
());
$request
->
addParam
(
'group.main'
,
$component
->
getMainResult
());
$request
->
addParam
(
'group.ngroups'
,
$component
->
getNumberOfGroups
());
$request
->
addParam
(
'group.ngroups'
,
$component
->
getNumberOfGroups
());
$request
->
addParam
(
'group.cache.percent'
,
$component
->
getCachePercentage
());
$request
->
addParam
(
'group.cache.percent'
,
$component
->
getCachePercentage
());
$request
->
addParam
(
'group.truncate'
,
$component
->
getTruncate
());
return
$request
;
return
$request
;
}
}
...
...
library/Solarium/Query/Select/Component/Grouping.php
View file @
275056b6
...
@@ -45,7 +45,7 @@
...
@@ -45,7 +45,7 @@
* @link http://wiki.apache.org/solr/FieldCollapsing
* @link http://wiki.apache.org/solr/FieldCollapsing
*
*
* @since 2.1.0
* @since 2.1.0
*
*
* @package Solarium
* @package Solarium
* @subpackage Query
* @subpackage Query
*/
*/
...
@@ -64,7 +64,7 @@ class Solarium_Query_Select_Component_Grouping extends Solarium_Query_Select_Com
...
@@ -64,7 +64,7 @@ class Solarium_Query_Select_Component_Grouping extends Solarium_Query_Select_Com
/**
/**
* Component type
* Component type
*
*
* @var string
* @var string
*/
*/
protected
$_type
=
Solarium_Query_Select
::
COMPONENT_GROUPING
;
protected
$_type
=
Solarium_Query_Select
::
COMPONENT_GROUPING
;
...
@@ -78,7 +78,7 @@ class Solarium_Query_Select_Component_Grouping extends Solarium_Query_Select_Com
...
@@ -78,7 +78,7 @@ class Solarium_Query_Select_Component_Grouping extends Solarium_Query_Select_Com
/**
/**
* Queries for grouping
* Queries for grouping
*
*
* @var array
* @var array
*/
*/
protected
$_queries
=
array
();
protected
$_queries
=
array
();
...
@@ -381,5 +381,29 @@ class Solarium_Query_Select_Component_Grouping extends Solarium_Query_Select_Com
...
@@ -381,5 +381,29 @@ class Solarium_Query_Select_Component_Grouping extends Solarium_Query_Select_Com
{
{
return
$this
->
getOption
(
'cachepercentage'
);
return
$this
->
getOption
(
'cachepercentage'
);
}
}
/**
* Set truncate option
*
* If true, facet counts are based on the most relevant document of each group matching the query.
* Same applies for StatsComponent. Default is false. Only available from Solr 3.4
*
* @param boolean $value
* @return Solarium_Query_Select_Component_Grouping Provides fluent interface
*/
public
function
setTruncate
(
$value
)
{
return
$this
->
_setOption
(
'truncate'
,
$value
);
}
/**
* Get truncate option
*
* @return boolean|null
*/
public
function
getTruncate
()
{
return
$this
->
getOption
(
'truncate'
);
}
}
}
\ No newline at end of file
tests/Solarium/Client/RequestBuilder/Select/Component/GroupingTest.php
View file @
275056b6
...
@@ -46,6 +46,7 @@ class Solarium_Client_RequestBuilder_Select_Component_GroupingTest extends PHPUn
...
@@ -46,6 +46,7 @@ class Solarium_Client_RequestBuilder_Select_Component_GroupingTest extends PHPUn
$component
->
setMainResult
(
true
);
$component
->
setMainResult
(
true
);
$component
->
setNumberOfGroups
(
false
);
$component
->
setNumberOfGroups
(
false
);
$component
->
setCachePercentage
(
50
);
$component
->
setCachePercentage
(
50
);
$component
->
setTruncate
(
true
);
$request
=
$builder
->
build
(
$component
,
$request
);
$request
=
$builder
->
build
(
$component
,
$request
);
...
@@ -60,6 +61,7 @@ class Solarium_Client_RequestBuilder_Select_Component_GroupingTest extends PHPUn
...
@@ -60,6 +61,7 @@ class Solarium_Client_RequestBuilder_Select_Component_GroupingTest extends PHPUn
'group.main'
=>
'true'
,
'group.main'
=>
'true'
,
'group.ngroups'
=>
'false'
,
'group.ngroups'
=>
'false'
,
'group.cache.percent'
=>
50
,
'group.cache.percent'
=>
50
,
'group.truncate'
=>
'true'
,
),
),
$request
->
getParams
()
$request
->
getParams
()
);
);
...
...
tests/Solarium/Query/Select/Component/GroupingTest.php
View file @
275056b6
...
@@ -53,6 +53,7 @@ class Solarium_Query_Select_Component_GroupingTest extends PHPUnit_Framework_Tes
...
@@ -53,6 +53,7 @@ class Solarium_Query_Select_Component_GroupingTest extends PHPUnit_Framework_Tes
'mainresult'
=>
false
,
'mainresult'
=>
false
,
'numberofgroups'
=>
true
,
'numberofgroups'
=>
true
,
'cachepercentage'
=>
45
,
'cachepercentage'
=>
45
,
'truncate'
=>
true
,
);
);
$this
->
_grouping
->
setOptions
(
$options
);
$this
->
_grouping
->
setOptions
(
$options
);
...
@@ -65,6 +66,7 @@ class Solarium_Query_Select_Component_GroupingTest extends PHPUnit_Framework_Tes
...
@@ -65,6 +66,7 @@ class Solarium_Query_Select_Component_GroupingTest extends PHPUnit_Framework_Tes
$this
->
assertEquals
(
$options
[
'mainresult'
],
$this
->
_grouping
->
getMainResult
());
$this
->
assertEquals
(
$options
[
'mainresult'
],
$this
->
_grouping
->
getMainResult
());
$this
->
assertEquals
(
$options
[
'numberofgroups'
],
$this
->
_grouping
->
getNumberOfGroups
());
$this
->
assertEquals
(
$options
[
'numberofgroups'
],
$this
->
_grouping
->
getNumberOfGroups
());
$this
->
assertEquals
(
$options
[
'cachepercentage'
],
$this
->
_grouping
->
getCachePercentage
());
$this
->
assertEquals
(
$options
[
'cachepercentage'
],
$this
->
_grouping
->
getCachePercentage
());
$this
->
assertEquals
(
$options
[
'truncate'
],
$this
->
_grouping
->
getTruncate
());
}
}
public
function
testGetType
()
public
function
testGetType
()
...
@@ -195,5 +197,16 @@ class Solarium_Query_Select_Component_GroupingTest extends PHPUnit_Framework_Tes
...
@@ -195,5 +197,16 @@ class Solarium_Query_Select_Component_GroupingTest extends PHPUnit_Framework_Tes
$this
->
_grouping
->
getCachePercentage
()
$this
->
_grouping
->
getCachePercentage
()
);
);
}
}
public
function
testSetAndGetTruncate
()
{
$value
=
true
;
$this
->
_grouping
->
setTruncate
(
$value
);
$this
->
assertEquals
(
$value
,
$this
->
_grouping
->
getTruncate
()
);
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment