![JAR search and dependency download from the Maven repository](/logo.png)
com.github.mygreen.supercsv.builder.ColumnMapping Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of super-csv-annotation Show documentation
Show all versions of super-csv-annotation Show documentation
CSVのJavaライブラリであるSuperCSVに、アノテーション機能を追加したライブラリです。
package com.github.mygreen.supercsv.builder;
import org.supercsv.cellprocessor.ift.CellProcessor;
import com.github.mygreen.supercsv.cellprocessor.format.TextFormatter;
/**
* 解析したカラムのマッピング情報です。
*
* @version 2.0
* @author T.TSUCHIE
*
*/
public class ColumnMapping implements Comparable {
private FieldAccessor field;
private String label;
private int number;
/**
* 部分的なカラムかどうか。
*/
private boolean partialized;
private CellProcessor cellProcessorForReading;
private CellProcessor cellProcessorForWriting;
private TextFormatter> formatter;
/**
* {@link #number}の昇順。
* {@link #number}が同じ場合は、フィールド名の昇順。
*/
@Override
public int compareTo(final ColumnMapping o) {
if(this.number == o.number) {
return this.field.getName().compareTo(o.field.getName());
} else {
return Integer.compare(number, o.number);
}
}
/**
* カラムの名称を取得する。
* @return Beanに定義されているフィールドの名称を取得します。
* 部分的なカラムの場合はnullを返します。
*/
public String getName() {
return field != null ? field.getName() : null;
}
/**
*
* @return 部分的なカラムの場合はnullを返します。
*/
public FieldAccessor getField() {
return field;
}
public void setField(FieldAccessor field) {
this.field = field;
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
/**
* 部分的なカラムかどうか判定する。
* @return trueの場合、部分的なカラムです。
*/
public boolean isPartialized() {
return partialized;
}
/**
* 部分的なカラムかどうか設定する。
* @param partialized trueの場合、部分的なカラムです。
*/
public void setPartialized(boolean partialized) {
this.partialized = partialized;
}
public CellProcessor getCellProcessorForReading() {
return cellProcessorForReading;
}
public void setCellProcessorForReading(CellProcessor cellProcessorForReading) {
this.cellProcessorForReading = cellProcessorForReading;
}
public CellProcessor getCellProcessorForWriting() {
return cellProcessorForWriting;
}
public void setCellProcessorForWriting(CellProcessor cellProcessorForWriting) {
this.cellProcessorForWriting = cellProcessorForWriting;
}
/**
* フィールドのオブジェクトに対するフォーマッタ。
* @return 部分的なカラムの場合、nullを返す。
*/
public TextFormatter> getFormatter() {
return formatter;
}
public void setFormatter(TextFormatter> formatter) {
this.formatter = formatter;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy