Package org.elasticsearch.client.graph
Class Hop
- java.lang.Object
-
- org.elasticsearch.client.graph.Hop
-
- All Implemented Interfaces:
ToXContent
,ToXContentFragment
public class Hop extends java.lang.Object implements ToXContentFragment
A Hop represents one of potentially many stages in a graph exploration. Each Hop identifies one or more fields in which it will attempt to find terms that are significantly connected to the previous Hop. Each field is identified using aVertexRequest
An example series of Hops on webserver logs would be:
- an initial Hop to find the top ten IPAddresses trying to access urls containing the word "admin"
- a secondary Hop to see which other URLs those IPAddresses were trying to access
Optionally, each hop can contain a "guiding query" that further limits the set of documents considered. In our weblog example above we might choose to constrain the second hop to only look at log records that had a reponse code of 404.
If absent, the list of
VertexRequest
s is inherited from the prior Hop's list to avoid repeating the fields that will be examined at each stage.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
-
-
Field Summary
-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
Method Summary
Modifier and Type Method Description VertexRequest
addVertexRequest(java.lang.String fieldName)
Add a field in which thisHop
will look for terms that are highly linked to previous hops and optionally the guiding query.protected java.util.List<VertexRequest>
getEffectiveVertexRequests()
int
getNumberVertexRequests()
Hop
getParentHop()
VertexRequest
getVertexRequest(int requestNumber)
QueryBuilder
guidingQuery()
void
guidingQuery(QueryBuilder queryBuilder)
An optional parameter that focuses the exploration on documents that match the given query.XContentBuilder
toXContent(XContentBuilder builder, ToXContent.Params params)
void
validate(ValidationException validationException)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment
isFragment
-
-
-
-
Constructor Detail
-
Hop
public Hop(Hop parent)
-
-
Method Detail
-
validate
public void validate(ValidationException validationException)
-
getParentHop
public Hop getParentHop()
-
guidingQuery
public QueryBuilder guidingQuery()
-
addVertexRequest
public VertexRequest addVertexRequest(java.lang.String fieldName)
Add a field in which thisHop
will look for terms that are highly linked to previous hops and optionally the guiding query.- Parameters:
fieldName
- a field in the chosen index
-
guidingQuery
public void guidingQuery(QueryBuilder queryBuilder)
An optional parameter that focuses the exploration on documents that match the given query.- Parameters:
queryBuilder
- any query
-
getEffectiveVertexRequests
protected java.util.List<VertexRequest> getEffectiveVertexRequests()
-
getNumberVertexRequests
public int getNumberVertexRequests()
-
getVertexRequest
public VertexRequest getVertexRequest(int requestNumber)
-
toXContent
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
- Specified by:
toXContent
in interfaceToXContent
- Throws:
java.io.IOException
-
-