|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--uk.ac.starlink.table.join.RowMatcher
Performs matching on the rows of one or more tables.
The specifics of what constitutes a matched row, and some additional
intelligence about how to determine this, are supplied by an
associated MatchEngine
object, but the generic parts of
the matching algorithms are done here.
Note that since the LinkSets and other objects handled by this class may be very large when large tables are being matched, the algorithms in this class are coded carefully to use as little memory as possible. Techniques include removing items from one collection as they are added to another. This means that in many cases input values may be modified by the methods.
Constructor Summary | |
RowMatcher(MatchEngine engine,
StarTable[] tables)
Constructs a new matcher with match characteristics defined by a given matching engine. |
Method Summary | |
LinkSet |
createLinkSet()
Constructs a new empty LinkSet for use by this matcher. |
LinkSet |
findGroupMatches(boolean[] useAll)
Returns a list of RowLink objects corresponding to a match performed with this matcher's tables using its match engine. |
LinkSet |
findInternalMatches(boolean includeSingles)
Returns a list of RowLink objects corresponding to all the internal matches in this matcher's sole table using its match engine. |
LinkSet |
findPairMatches(boolean bestOnly)
Returns a set of RowLink objects corresponding to a pairwise match between this matcher's two tables performed with its match engine. |
LinkSet |
findPairMatches(boolean req1,
boolean req2)
Returns a set of RowLink objects corresponding to a match between this matcher's two tables performed with its match engine. |
ProgressIndicator |
getIndicator()
Returns the current progress indicator for this matcher. |
LinkSet |
getPossibleInterLinks(int index1,
int index2)
Gets a list of all the pairs of rows which constitute possible links between two tables. |
void |
setIndicator(ProgressIndicator indicator)
Sets the progress indicator for this matcher. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public RowMatcher(MatchEngine engine, StarTable[] tables)
engine
- matching enginetables
- the array of tables on which matches are to be doneMethod Detail |
public void setIndicator(ProgressIndicator indicator)
indicator
- new indicatorpublic ProgressIndicator getIndicator()
public LinkSet createLinkSet()
public LinkSet findPairMatches(boolean bestOnly) throws IOException, InterruptedException
bestOnly
- whether only the best match between the two tables
is required, or whether you would like to retain every
match which fits the criteria
IOException
InterruptedException
public LinkSet findPairMatches(boolean req1, boolean req2) throws IOException, InterruptedException
req1
- whether an entry from the first table must be present
in each element of the resultreq2
- whether an entry from the second table must be present
in each element of the result
IOException
InterruptedException
public LinkSet findGroupMatches(boolean[] useAll) throws IOException, InterruptedException
useAll
- array of booleans indicating for each table whether
all rows are to be used (otherwise just matched)
RowLink
s corresponding to the selected rows
IOException
InterruptedException
public LinkSet findInternalMatches(boolean includeSingles) throws IOException, InterruptedException
includeSingles
- whether to include unmatched (singleton)
row links in the returned link set
RowLink
objects giving all the groups of
matched objects in this matcher's sole table
IOException
InterruptedException
public LinkSet getPossibleInterLinks(int index1, int index2) throws IOException, InterruptedException
index1
- index of the first tableindex2
- index of the second table
RowLink
objects which constitute possible
matches
IOException
InterruptedException
|
Copyright © 2004 CLRC: Central Laboratory of the Research Councils. All rights reserved. | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |