MergedRecord.java
- package com.gh.mygreen.xlsmapper.fieldprocessor;
- import org.apache.poi.ss.util.CellRangeAddress;
- /**
- * ネストしたレコードを処理するために、親のレコードの結合情報を保持しておくためのクラス。
- *
- * @since 1.4
- * @author T.TSUCHIE
- *
- */
- public class MergedRecord {
-
- /**
- * 該当する見出し情報
- */
- private final RecordHeader headerRecord;
-
- /**
- * 結合された領域の情報
- */
- private final CellRangeAddress mergedRange;
-
- /**
- * 結合されたサイズ
- */
- private final int mergedSize;
-
- public MergedRecord(final RecordHeader headerRecord, final CellRangeAddress mergedRange, int mergedSize) {
- this.headerRecord = headerRecord;
- this.mergedRange = mergedRange;
- this.mergedSize = mergedSize;
- }
-
- /**
- * 該当する見出しの情報を取得する。
- * @return
- */
- public RecordHeader getHeaderRecord() {
- return headerRecord;
- }
-
- /**
- * 結合情報を取得する。
- * @return
- */
- public CellRangeAddress getMergedRange() {
- return mergedRange;
- }
-
- /**
- * 結合された行の幅を取得する。
- * @return
- */
- public int getRowSpan() {
- return mergedRange.getLastRow() - mergedRange.getFirstRow() + 1;
- }
-
- /**
- * 結合された列の幅を取得する。
- * @return
- */
- public int getColSpan() {
- return mergedRange.getLastColumn() - mergedRange.getFirstColumn() + 1;
- }
-
- /**
- * 結合されたサイズを取得する。
- * <p>Horizontalの場合は縦幅、Verticalの場合は横幅が設定される。
- * @return
- */
- public int getMergedSize() {
- return mergedSize;
- }
-
- }