au.com.bytecode.opencsv.bean
Class HeaderColumnNameMappingStrategy<T>

java.lang.Object
  extended by au.com.bytecode.opencsv.bean.HeaderColumnNameMappingStrategy<T>
All Implemented Interfaces:
MappingStrategy<T>
Direct Known Subclasses:
ColumnPositionMappingStrategy, HeaderColumnNameTranslateMappingStrategy

public class HeaderColumnNameMappingStrategy<T>
extends 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  Map<String,PropertyDescriptor> descriptorMap
           
protected  String[] header
           
protected  Class<T> type
           
 
Constructor Summary
HeaderColumnNameMappingStrategy()
           
 
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()
           
 PropertyDescriptor findDescriptor(int col)
          Implementation will have to return a property descriptor from a bean based on the current column.
protected  PropertyDescriptor findDescriptor(String name)
           
protected  String getColumnName(int col)
           
 Class<T> getType()
           
protected  Map<String,PropertyDescriptor> loadDescriptorMap(Class<T> cls)
           
protected  boolean matches(String name, PropertyDescriptor desc)
           
 void setType(Class<T> type)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

header

protected String[] header

descriptorMap

protected Map<String,PropertyDescriptor> descriptorMap

type

protected Class<T> type
Constructor Detail

HeaderColumnNameMappingStrategy

public HeaderColumnNameMappingStrategy()
Method Detail

captureHeader

public void captureHeader(CSVReader reader)
                   throws 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:
IOException - if parsing fails

findDescriptor

public PropertyDescriptor findDescriptor(int col)
                                  throws 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:
IntrospectionException

getColumnName

protected String getColumnName(int col)

findDescriptor

protected PropertyDescriptor findDescriptor(String name)
                                     throws IntrospectionException
Throws:
IntrospectionException

matches

protected boolean matches(String name,
                          PropertyDescriptor desc)

loadDescriptorMap

protected Map<String,PropertyDescriptor> loadDescriptorMap(Class<T> cls)
                                                    throws IntrospectionException
Throws:
IntrospectionException

createBean

public T createBean()
             throws InstantiationException,
                    IllegalAccessException
Specified by:
createBean in interface MappingStrategy<T>
Throws:
InstantiationException
IllegalAccessException

getType

public Class<T> getType()

setType

public void setType(Class<T> type)


Copyright © 2012. All Rights Reserved.