/** * Search for a given set of values, returning {@linkplain IndexEntry} results * * @param filter the filter (can optionally be used for optimized query execution) * @param indexName the name of the index (for logging) * @param indexMeta the index metadata node (may not be null) * @param values values to look for (null to check for property existence) * @return an iterator of index entries * * @throws UnsupportedOperationException if the operation is not supported */ public Iterable<IndexEntry> queryEntries(Filter filter, String indexName, NodeState indexMeta, Iterable<String> values) { return query0(filter, indexName, indexMeta, values, new HitProducer<IndexEntry>() { @Override public IndexEntry produce(NodeState indexHit, String pathName) { PropertyState s = indexHit.getProperty("entry"); return new IndexEntry(s.getValue(Type.STRING, 0), pathName); } }); }
/** * Search for a given set of values, returning <tt>IndexEntry</tt> results * * @param filter the filter (can optionally be used for optimized query execution) * @param indexName the name of the index (for logging) * @param indexMeta the index metadata node (may not be null) * @param values values to look for (null to check for property existence) * @return an iterator of index entries * * @throws UnsupportedOperationException if the operation is not supported */ public Iterable<IndexEntry> queryEntries(Filter filter, String indexName, NodeState indexMeta, Iterable<String> values) { return query0(filter, indexName, indexMeta, values, new HitProducer<IndexEntry>() { @Override public IndexEntry produce(NodeState indexHit, String pathName) { PropertyState s = indexHit.getProperty("entry"); return new IndexEntry(s.getValue(Type.STRING, 0), pathName); } }); }
@Override public Iterable<String> query(final Filter filter, final String indexName, final NodeState indexMeta, final Iterable<String> values) { return query0(filter, indexName, indexMeta, values, new HitProducer<String>() { @Override public String produce(NodeState indexHit, String pathName) { PropertyState s = indexHit.getProperty("entry"); if (s.count() <= 1) { return s.getValue(Type.STRING, 0); } else { StringBuilder buff = new StringBuilder(); for (int i = 0; i < s.count(); i++) { if (i > 0) { buff.append(", "); } buff.append(s.getValue(Type.STRING, i)); } return buff.toString(); } } }); }
/** * Search for a given set of values, returning {@linkplain IndexEntry} results * * @param filter the filter (can optionally be used for optimized query execution) * @param indexName the name of the index (for logging) * @param indexMeta the index metadata node (may not be null) * @param values values to look for (null to check for property existence) * @return an iterator of index entries * * @throws UnsupportedOperationException if the operation is not supported */ public Iterable<IndexEntry> queryEntries(Filter filter, String indexName, NodeState indexMeta, Iterable<String> values) { return query0(filter, indexName, indexMeta, values, new HitProducer<IndexEntry>() { @Override public IndexEntry produce(NodeState indexHit, String pathName) { PropertyState s = indexHit.getProperty("entry"); return new IndexEntry(s.getValue(Type.STRING, 0), pathName); } }); }
@Override public Iterable<String> query(final Filter filter, final String indexName, final NodeState indexMeta, final Iterable<String> values) { return query0(filter, indexName, indexMeta, values, new HitProducer<String>() { @Override public String produce(NodeState indexHit, String pathName) { PropertyState s = indexHit.getProperty("entry"); if (s.count() <= 1) { return s.getValue(Type.STRING, 0); } else { StringBuilder buff = new StringBuilder(); for (int i = 0; i < s.count(); i++) { if (i > 0) { buff.append(", "); } buff.append(s.getValue(Type.STRING, i)); } return buff.toString(); } } }); }
@Override public Iterable<String> query(final Filter filter, final String indexName, final NodeState indexMeta, final Iterable<String> values) { return query0(filter, indexName, indexMeta, values, new HitProducer<String>() { @Override public String produce(NodeState indexHit, String pathName) { PropertyState s = indexHit.getProperty("entry"); if (s.count() <= 1) { return s.getValue(Type.STRING, 0); } else { StringBuilder buff = new StringBuilder(); for (int i = 0; i < s.count(); i++) { if (i > 0) { buff.append(", "); } buff.append(s.getValue(Type.STRING, i)); } return buff.toString(); } } }); }