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 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
           
 
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()
           
 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
 

Field Detail

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
Constructor Detail

HeaderColumnNameMappingStrategy

public HeaderColumnNameMappingStrategy()
Method Detail

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.