org.d2rq.mapgen
Class Filter

java.lang.Object
  extended by org.d2rq.mapgen.Filter
Direct Known Subclasses:
FilterIncludeExclude, FilterMatchAny, FilterMatchColumn, FilterMatchSchema, FilterMatchTable

public abstract class Filter
extends Object


Nested Class Summary
static interface Filter.IdentifierMatcher
           
 
Field Summary
static Filter ALL
           
static Filter NOTHING
           
static Filter.IdentifierMatcher NULL_MATCHER
           
 
Constructor Summary
Filter()
           
 
Method Summary
static Filter.IdentifierMatcher createPatternMatcher(Pattern pattern)
           
static Filter.IdentifierMatcher createStringMatcher(String s)
           
abstract  String getSingleSchema()
           
 boolean matches(ColumnName column)
           
 boolean matches(TableName table)
           
 boolean matches(TableName table, Identifier column)
           
 boolean matchesAll(Collection<ColumnName> columns)
           
 boolean matchesAll(TableName table, Key columns)
           
 boolean matchesAll(TableName table, List<Identifier> columns)
           
abstract  boolean matchesColumn(String schema, String table, String column)
           
abstract  boolean matchesSchema(String schema)
           
abstract  boolean matchesTable(String schema, String table)
           
protected  boolean sameSchema(String schema1, String schema2)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ALL

public static final Filter ALL

NOTHING

public static final Filter NOTHING

NULL_MATCHER

public static final Filter.IdentifierMatcher NULL_MATCHER
Constructor Detail

Filter

public Filter()
Method Detail

matchesSchema

public abstract boolean matchesSchema(String schema)

matchesTable

public abstract boolean matchesTable(String schema,
                                     String table)

matchesColumn

public abstract boolean matchesColumn(String schema,
                                      String table,
                                      String column)

getSingleSchema

public abstract String getSingleSchema()
Returns:
If the filter matches only a single schema, then its name; otherwise, null

matches

public boolean matches(TableName table)

matches

public boolean matches(ColumnName column)

matches

public boolean matches(TableName table,
                       Identifier column)

matchesAll

public boolean matchesAll(TableName table,
                          List<Identifier> columns)

matchesAll

public boolean matchesAll(TableName table,
                          Key columns)

matchesAll

public boolean matchesAll(Collection<ColumnName> columns)

sameSchema

protected boolean sameSchema(String schema1,
                             String schema2)

createStringMatcher

public static Filter.IdentifierMatcher createStringMatcher(String s)

createPatternMatcher

public static Filter.IdentifierMatcher createPatternMatcher(Pattern pattern)