Package com.mysql.cj.result
Class DefaultColumnDefinition
java.lang.Object
com.mysql.cj.result.DefaultColumnDefinition
- All Implemented Interfaces:
ColumnDefinition,ProtocolEntity
- Direct Known Subclasses:
CachedResultSetMetaDataImpl
public class DefaultColumnDefinition extends java.lang.Object implements ColumnDefinition
Protocol::ColumnDefinition41 object
-
Field Summary
-
Constructor Summary
Constructors Constructor Description DefaultColumnDefinition()DefaultColumnDefinition(Field[] fields) -
Method Summary
Modifier and Type Method Description voidbuildIndexMapping()Builds a hash between column names and their indices for fast retrieval.voidexportTo(ColumnDefinition columnDefinition)intfindColumn(java.lang.String columnName, boolean useColumnNamesInFindColumn, int indexBase)java.util.Map<java.lang.String,java.lang.Integer>getColumnLabelToIndex()java.util.Map<java.lang.String,java.lang.Integer>getColumnNameToIndex()java.util.Map<java.lang.String,java.lang.Integer>getColumnToIndexCache()Field[]getFields()java.util.Map<java.lang.String,java.lang.Integer>getFullColumnNameToIndex()booleanhasBuiltIndexMapping()booleanhasLargeFields()Check if fields with type BLOB, MEDIUMBLOB, LONGBLOB, TEXT, MEDIUMTEXT or LONGTEXT exist in this ColumnDefinition.voidinitializeFrom(ColumnDefinition columnDefinition)voidsetColumnLabelToIndex(java.util.Map<java.lang.String,java.lang.Integer> columnLabelToIndex)voidsetColumnNameToIndex(java.util.Map<java.lang.String,java.lang.Integer> colNameToIndex)voidsetColumnToIndexCache(java.util.Map<java.lang.String,java.lang.Integer> columnToIndexCache)voidsetFields(Field[] fields)voidsetFullColumnNameToIndex(java.util.Map<java.lang.String,java.lang.Integer> fullColNameToIndex)
-
Field Details
-
Constructor Details
-
DefaultColumnDefinition
public DefaultColumnDefinition() -
DefaultColumnDefinition
-
-
Method Details
-
getFields
- Specified by:
getFieldsin interfaceColumnDefinition
-
setFields
- Specified by:
setFieldsin interfaceColumnDefinition
-
buildIndexMapping
public void buildIndexMapping()Description copied from interface:ColumnDefinitionBuilds a hash between column names and their indices for fast retrieval. This is done lazily to support findColumn() and get*(String), as it can be more expensive than just retrieving result set values by ordinal index.- Specified by:
buildIndexMappingin interfaceColumnDefinition
-
hasBuiltIndexMapping
public boolean hasBuiltIndexMapping()- Specified by:
hasBuiltIndexMappingin interfaceColumnDefinition
-
getColumnLabelToIndex
public java.util.Map<java.lang.String,java.lang.Integer> getColumnLabelToIndex()- Specified by:
getColumnLabelToIndexin interfaceColumnDefinition
-
setColumnLabelToIndex
public void setColumnLabelToIndex(java.util.Map<java.lang.String,java.lang.Integer> columnLabelToIndex)- Specified by:
setColumnLabelToIndexin interfaceColumnDefinition
-
getFullColumnNameToIndex
public java.util.Map<java.lang.String,java.lang.Integer> getFullColumnNameToIndex()- Specified by:
getFullColumnNameToIndexin interfaceColumnDefinition
-
setFullColumnNameToIndex
public void setFullColumnNameToIndex(java.util.Map<java.lang.String,java.lang.Integer> fullColNameToIndex)- Specified by:
setFullColumnNameToIndexin interfaceColumnDefinition
-
getColumnNameToIndex
public java.util.Map<java.lang.String,java.lang.Integer> getColumnNameToIndex()- Specified by:
getColumnNameToIndexin interfaceColumnDefinition
-
setColumnNameToIndex
public void setColumnNameToIndex(java.util.Map<java.lang.String,java.lang.Integer> colNameToIndex)- Specified by:
setColumnNameToIndexin interfaceColumnDefinition
-
getColumnToIndexCache
public java.util.Map<java.lang.String,java.lang.Integer> getColumnToIndexCache()- Specified by:
getColumnToIndexCachein interfaceColumnDefinition
-
setColumnToIndexCache
public void setColumnToIndexCache(java.util.Map<java.lang.String,java.lang.Integer> columnToIndexCache)- Specified by:
setColumnToIndexCachein interfaceColumnDefinition
-
initializeFrom
- Specified by:
initializeFromin interfaceColumnDefinition
-
exportTo
- Specified by:
exportToin interfaceColumnDefinition
-
findColumn
public int findColumn(java.lang.String columnName, boolean useColumnNamesInFindColumn, int indexBase)- Specified by:
findColumnin interfaceColumnDefinition
-
hasLargeFields
public boolean hasLargeFields()Check if fields with type BLOB, MEDIUMBLOB, LONGBLOB, TEXT, MEDIUMTEXT or LONGTEXT exist in this ColumnDefinition. This check is used for making a decision about whether we want to force a buffer row (better for rows with large fields).- Specified by:
hasLargeFieldsin interfaceColumnDefinition- Returns:
- true if this ColumnDefinition has large fields
-