<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_24) on Mon Apr 01 21:56:35 EDT 2013 -->
<TITLE>
Groupable (ATG Java API)
</TITLE>

<META NAME="date" CONTENT="2013-04-01">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Groupable (ATG Java API)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../atg/search/routing/command/search/Group.html" title="class in atg.search.routing.command.search"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../atg/search/routing/command/search/Grouping.html" title="class in atg.search.routing.command.search"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?atg/search/routing/command/search/Groupable.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Groupable.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
atg.search.routing.command.search</FONT>
<BR>
Interface Groupable</H2>
<DL>
<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../../atg/search/routing/command/search/CategoryDocument.html" title="class in atg.search.routing.command.search">CategoryDocument</A>, <A HREF="../../../../../atg/search/routing/command/search/Result.html" title="class in atg.search.routing.command.search">Result</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public interface <B>Groupable</B></DL>
</PRE>

<P>
Groupable results can be grouped by property or by document.  A groupable
 result should implement this interface. 
 This interface allows for common merge code. It is not used outside of merge
<P>

<P>
<HR>

<P>
<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#CLASS_VERSION">CLASS_VERSION</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Class version string</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;atg.search.routing.command.search.InternalAnswerGroup</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#createNewAnswerGroup()">createNewAnswerGroup</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new internal answer group for this result.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#getAnswerGroup()">getAnswerGroup</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the answer group for this result</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#getContentId()">getContentId</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the content id of the partition that this result came from</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../atg/search/routing/command/search/Document.html" title="class in atg.search.routing.command.search">Document</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#getDocument()">getDocument</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the associated document</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#getOriginalAnswerGroup()">getOriginalAnswerGroup</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the original answer group, prior to the merge</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;float</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#getScore()">getScore</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result's score.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#getSortProp()">getSortProp</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;When the request specified group-by-property, this returns the sort property</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#setAnswerGroup(int)">setAnswerGroup</A></B>(int&nbsp;pAnswerGroup)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets this result's answer group</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#setContentId(java.lang.String)">setContentId</A></B>(java.lang.String&nbsp;pContentId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the content id of the partition that this result came from</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#setId(int)">setId</A></B>(int&nbsp;pId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;An optional result id.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../atg/search/routing/command/search/Groupable.html#setScore(float)">setScore</A></B>(float&nbsp;pScore)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the score.</TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->

<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="CLASS_VERSION"><!-- --></A><H3>
CLASS_VERSION</H3>
<PRE>
static final java.lang.String <B>CLASS_VERSION</B></PRE>
<DL>
<DD>Class version string
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#atg.search.routing.command.search.Groupable.CLASS_VERSION">Constant Field Values</A></DL>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="createNewAnswerGroup()"><!-- --></A><H3>
createNewAnswerGroup</H3>
<PRE>
atg.search.routing.command.search.InternalAnswerGroup <B>createNewAnswerGroup</B>()</PRE>
<DL>
<DD>Returns a new internal answer group for this result. Only used internally.
<P>
<DD><DL>

<DT><B>Returns:</B><DD>a new internal answer group</DL>
</DD>
</DL>
<HR>

<A NAME="getSortProp()"><!-- --></A><H3>
getSortProp</H3>
<PRE>
java.lang.String <B>getSortProp</B>()</PRE>
<DL>
<DD>When the request specified group-by-property, this returns the sort property
<P>
<DD><DL>

<DT><B>Returns:</B><DD>sort property</DL>
</DD>
</DL>
<HR>

<A NAME="getAnswerGroup()"><!-- --></A><H3>
getAnswerGroup</H3>
<PRE>
int <B>getAnswerGroup</B>()</PRE>
<DL>
<DD>Returns the answer group for this result
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the answer group for this result</DL>
</DD>
</DL>
<HR>

<A NAME="setAnswerGroup(int)"><!-- --></A><H3>
setAnswerGroup</H3>
<PRE>
void <B>setAnswerGroup</B>(int&nbsp;pAnswerGroup)</PRE>
<DL>
<DD>Sets this result's answer group
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>pAnswerGroup</CODE> - the answer group</DL>
</DD>
</DL>
<HR>

<A NAME="getOriginalAnswerGroup()"><!-- --></A><H3>
getOriginalAnswerGroup</H3>
<PRE>
int <B>getOriginalAnswerGroup</B>()</PRE>
<DL>
<DD>Returns the original answer group, prior to the merge
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the original answer group, prior to the merge</DL>
</DD>
</DL>
<HR>

<A NAME="getDocument()"><!-- --></A><H3>
getDocument</H3>
<PRE>
<A HREF="../../../../../atg/search/routing/command/search/Document.html" title="class in atg.search.routing.command.search">Document</A> <B>getDocument</B>()</PRE>
<DL>
<DD>Returns the associated document
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the associated document</DL>
</DD>
</DL>
<HR>

<A NAME="setId(int)"><!-- --></A><H3>
setId</H3>
<PRE>
void <B>setId</B>(int&nbsp;pId)</PRE>
<DL>
<DD>An optional result id. Not all groupable results use this
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>pId</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="getScore()"><!-- --></A><H3>
getScore</H3>
<PRE>
float <B>getScore</B>()</PRE>
<DL>
<DD>Returns the result's score.
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the score</DL>
</DD>
</DL>
<HR>

<A NAME="setScore(float)"><!-- --></A><H3>
setScore</H3>
<PRE>
void <B>setScore</B>(float&nbsp;pScore)</PRE>
<DL>
<DD>Sets the score.  Scores are rounded during merge.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>pScore</CODE> - the score</DL>
</DD>
</DL>
<HR>

<A NAME="getContentId()"><!-- --></A><H3>
getContentId</H3>
<PRE>
java.lang.String <B>getContentId</B>()</PRE>
<DL>
<DD>Returns the content id of the partition that this result came from
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the content id of the partition that this result came from</DL>
</DD>
</DL>
<HR>

<A NAME="setContentId(java.lang.String)"><!-- --></A><H3>
setContentId</H3>
<PRE>
void <B>setContentId</B>(java.lang.String&nbsp;pContentId)</PRE>
<DL>
<DD>Sets the content id of the partition that this result came from
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>pContentId</CODE> - the content id of the partition that this result came from</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../atg/search/routing/command/search/Group.html" title="class in atg.search.routing.command.search"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../atg/search/routing/command/search/Grouping.html" title="class in atg.search.routing.command.search"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?atg/search/routing/command/search/Groupable.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Groupable.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

</BODY>
</HTML>
