public abstract class JoinFixAction extends Object
JoinStarTable| Modifier and Type | Field and Description |
|---|---|
static JoinFixAction |
NO_ACTION
Action which causes names to be left alone.
|
| Modifier | Constructor and Description |
|---|---|
protected |
JoinFixAction(String name)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
static String |
ensureUnique(String name,
Collection<String> others,
boolean caseSensitive)
Utility method which repeatedly doctors a name until it fails to
match any of the others in a given collection.
|
abstract String |
getFixedName(String origName,
Collection<String> otherNames)
Returns a, possibly modified, name for a column in the context of
existing column names.
|
static boolean |
isDuplicate(String name,
Collection<String> others,
boolean caseSensitive)
Utility method to determine whether a given name is a duplicate of
any in a given collection of other names.
|
static JoinFixAction |
makeNumericDeduplicationAction(String delimiter,
boolean caseSensitive)
Returns an action which will deduplicate names by appending a
numeric value to them.
|
static JoinFixAction |
makeRenameAllAction(String appendage)
Returns an action for renaming all column names with default options.
|
static JoinFixAction |
makeRenameAllAction(String appendage,
boolean caseSensitive,
boolean ensureUnique)
Returns an action for renaming all columns with additional options.
|
static JoinFixAction |
makeRenameDuplicatesAction(String appendage)
Returns an action for renaming duplicated column names with
default options.
|
static JoinFixAction |
makeRenameDuplicatesAction(String appendage,
boolean caseSensitive,
boolean ensureUnique)
Returns an action for renaming duplicated column names with
additional options.
|
String |
toString()
Returns this action's name.
|
public static final JoinFixAction NO_ACTION
protected JoinFixAction(String name)
name - label for this actionpublic abstract String getFixedName(String origName, Collection<String> otherNames)
origName - input nameotherNames - list of names which may be duplicates of
origNameorigNamepublic static boolean isDuplicate(String name, Collection<String> others, boolean caseSensitive)
name - name to testothers - potential duplicates of namecaseSensitive - true iff matching is to be done in a
case-sensitive fashionname matches any of the entries in
otherspublic static String ensureUnique(String name, Collection<String> others, boolean caseSensitive)
name - input nameothers - list of names that must not matchcaseSensitive - whether matching others is case sensitivename but not matching
otherspublic static JoinFixAction makeRenameDuplicatesAction(String appendage)
appendage - string to append to duplicate columnspublic static JoinFixAction makeRenameDuplicatesAction(String appendage, boolean caseSensitive, boolean ensureUnique)
appendage - string to append to duplicate columnscaseSensitive - whether duplicate location should be case
sensitiveensureUnique - if true, every effort will be made to ensure
that the output name matches none of the others;
if false, the output name may still match
(but differently from the input one)public static JoinFixAction makeRenameAllAction(String appendage)
appendage - string to append to columnspublic static JoinFixAction makeRenameAllAction(String appendage, boolean caseSensitive, boolean ensureUnique)
appendage - string to append to columnscaseSensitive - whether duplicate location should be case
sensitive (only relevant if
ensureUnique is true)ensureUnique - if true, every effort will be made to ensure
that the output name matches none of the others;public static JoinFixAction makeNumericDeduplicationAction(String delimiter, boolean caseSensitive)
delimiter - string used to separate main part of name from
numeric partcaseSensitive - whether duplicate location is case sensitiveCopyright © 2025 Central Laboratory of the Research Councils. All Rights Reserved.