au.com.bytecode.opencsv.bean
Class HeaderColumnNameMappingStrategy<T>
java.lang.Object
au.com.bytecode.opencsv.bean.HeaderColumnNameMappingStrategy<T>
- All Implemented Interfaces:
- MappingStrategy<T>
- Direct Known Subclasses:
- ColumnPositionMappingStrategy, HeaderColumnNameTranslateMappingStrategy
public class HeaderColumnNameMappingStrategy<T>
- extends java.lang.Object
- implements MappingStrategy<T>
Copyright 2007 Kyle Miller.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Field Summary |
protected java.util.Map<java.lang.String,java.beans.PropertyDescriptor> |
descriptorMap
|
protected java.lang.String[] |
header
|
protected java.lang.Class<T> |
type
|
Method Summary |
void |
captureHeader(CSVReader reader)
Implementation of this method can grab the header line before parsing begins to use to map columns
to bean properties. |
T |
createBean()
|
java.beans.PropertyDescriptor |
findDescriptor(int col)
Implementation will have to return a property descriptor from a bean based on the current column. |
protected java.beans.PropertyDescriptor |
findDescriptor(java.lang.String name)
|
protected java.lang.String |
getColumnName(int col)
|
java.lang.Class<T> |
getType()
|
protected java.util.Map<java.lang.String,java.beans.PropertyDescriptor> |
loadDescriptorMap(java.lang.Class<T> cls)
|
protected boolean |
matches(java.lang.String name,
java.beans.PropertyDescriptor desc)
|
void |
setType(java.lang.Class<T> type)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
header
protected java.lang.String[] header
descriptorMap
protected java.util.Map<java.lang.String,java.beans.PropertyDescriptor> descriptorMap
type
protected java.lang.Class<T> type
HeaderColumnNameMappingStrategy
public HeaderColumnNameMappingStrategy()
captureHeader
public void captureHeader(CSVReader reader)
throws java.io.IOException
- Description copied from interface:
MappingStrategy
- Implementation of this method can grab the header line before parsing begins to use to map columns
to bean properties.
- Specified by:
captureHeader
in interface MappingStrategy<T>
- Parameters:
reader
- the CSVReader to use for header parsing
- Throws:
java.io.IOException
- if parsing fails
findDescriptor
public java.beans.PropertyDescriptor findDescriptor(int col)
throws java.beans.IntrospectionException
- Description copied from interface:
MappingStrategy
- Implementation will have to return a property descriptor from a bean based on the current column.
- Specified by:
findDescriptor
in interface MappingStrategy<T>
- Parameters:
col
- the column to find the description for
- Returns:
- the related PropertyDescriptor
- Throws:
java.beans.IntrospectionException
getColumnName
protected java.lang.String getColumnName(int col)
findDescriptor
protected java.beans.PropertyDescriptor findDescriptor(java.lang.String name)
throws java.beans.IntrospectionException
- Throws:
java.beans.IntrospectionException
matches
protected boolean matches(java.lang.String name,
java.beans.PropertyDescriptor desc)
loadDescriptorMap
protected java.util.Map<java.lang.String,java.beans.PropertyDescriptor> loadDescriptorMap(java.lang.Class<T> cls)
throws java.beans.IntrospectionException
- Throws:
java.beans.IntrospectionException
createBean
public T createBean()
throws java.lang.InstantiationException,
java.lang.IllegalAccessException
- Specified by:
createBean
in interface MappingStrategy<T>
- Throws:
java.lang.InstantiationException
java.lang.IllegalAccessException
getType
public java.lang.Class<T> getType()
setType
public void setType(java.lang.Class<T> type)
Copyright © 2011. All Rights Reserved.