|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectuk.ac.starlink.table.join.RowMatcher
public class 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(MultiJoinType[] joinTypes)
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 |
findMultiPairMatches(int index0,
boolean bestOnly,
MultiJoinType[] joinTypes)
Returns a set of RowLink objects each of which represents matches between one of the rows of a reference table and any of the other tables which can provide matches. |
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. |
ProgressIndicator |
getIndicator()
Returns the current progress indicator for this matcher. |
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 java.io.IOException, java.lang.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
java.io.IOException
java.lang.InterruptedException
public LinkSet findMultiPairMatches(int index0, boolean bestOnly, MultiJoinType[] joinTypes) throws java.io.IOException, java.lang.InterruptedException
PairsRowLink
.
index0
- index of the reference table in the list of tables
owned by this row matcherbestOnly
- true if only the best match between the reference
table and any other table should be retainedjoinTypes
- inclusion criteria for output table rows
java.io.IOException
java.lang.InterruptedException
public LinkSet findGroupMatches(MultiJoinType[] joinTypes) throws java.io.IOException, java.lang.InterruptedException
joinTypes
- inclusion criteria for output table rows
RowLink
s corresponding to the selected rows
java.io.IOException
java.lang.InterruptedException
public LinkSet findInternalMatches(boolean includeSingles) throws java.io.IOException, java.lang.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
java.io.IOException
java.lang.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 |