public class org.apache.isis.subdomains.excel.applib.util.SheetPivoter extends java.lang.Object
{
private org.apache.poi.ss.usermodel.Sheet sourceSheet;
private org.apache.poi.ss.usermodel.Sheet targetSheet;
private org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations;
private int numberOfColumnAnnotationsInSource;
private int numberOfValueAnnotationsInSource;
private int numberOfDecorationAnnotationsInSource;
private int rowAnnotatedColumnNumber;
private java.util.List columnHeaderValueRows;
private org.apache.poi.ss.usermodel.Row fieldNameRow;
int columnLabelOffsetX;
int valueRowOffsetY;
int decoRowOffsetX;
int valuesStartAtRownumber;
public void <init>()
{
org.apache.isis.subdomains.excel.applib.util.AnnotationList v;
java.util.ArrayList v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new org.apache.isis.subdomains.excel.applib.util.AnnotationList;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: void <init>(java.util.List)>(v);
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations> = v;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.util.List columnHeaderValueRows> = v;
return;
}
public void pivot(org.apache.poi.ss.usermodel.Sheet, org.apache.poi.ss.usermodel.Sheet)
{
org.apache.poi.ss.usermodel.Sheet v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v;
java.util.ArrayList v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: org.apache.poi.ss.usermodel.Sheet;
v := @parameter: org.apache.poi.ss.usermodel.Sheet;
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet> = v;
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet> = v;
v = new org.apache.isis.subdomains.excel.applib.util.AnnotationList;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: void <init>(java.util.List)>(v);
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations> = v;
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void getAnnotationsFromSource()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void setOffsets()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void validateAndAdaptSourceDataIfNeeded()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void defineSomeCellStyles()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void createEmptyHeaderRowsAndCells()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void fillInHeaderRows()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void pivotSourceRows()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void addSummations()>();
return;
}
private void getAnnotationsFromSource()
{
java.lang.Integer v, v, v;
org.apache.poi.ss.usermodel.Cell v;
boolean v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet v;
org.apache.poi.ss.usermodel.Sheet v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v, v, v, v, v, v;
java.lang.String[] v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v, v, v, v, v;
int v, v, v, v, v, v;
java.lang.String v, v;
double v;
java.util.Iterator v;
org.apache.poi.ss.usermodel.Row v, v;
java.lang.Object v, v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(0);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = newarray (java.lang.String)[4];
v[0] = "row";
v[1] = "deco";
v[2] = "column";
v[3] = "value";
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: java.lang.String getStringCellValue()>();
v = interfaceinvoke v.<java.util.List: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List list>;
v = new org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: java.lang.String getStringCellValue()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: int getColumnIndex()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(1);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: int getColumnIndex()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: double getNumericCellValue()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: void <init>(java.lang.String,java.lang.Integer,java.lang.Integer)>(v, v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("row");
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int rowAnnotatedColumnNumber> = v;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("column");
v = interfaceinvoke v.<java.util.List: int size()>();
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfColumnAnnotationsInSource> = v;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("value");
v = interfaceinvoke v.<java.util.List: int size()>();
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfValueAnnotationsInSource> = v;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("deco");
v = interfaceinvoke v.<java.util.List: int size()>();
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfDecorationAnnotationsInSource> = v;
return;
}
private void setOffsets()
{
int v, v, v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfDecorationAnnotationsInSource>;
v = 1 + v;
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int columnLabelOffsetX> = v;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfColumnAnnotationsInSource>;
v = 0 + v;
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int valueRowOffsetY> = v;
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int decoRowOffsetX> = 1;
return;
}
private void validateAndAdaptSourceDataIfNeeded() throws org.apache.isis.subdomains.excel.applib.dom.ExcelService$Exception
{
java.lang.Integer v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v;
int v, v, v, v, v;
boolean v, v;
org.apache.poi.ss.usermodel.Sheet v;
java.util.Iterator v, v;
java.lang.IllegalArgumentException v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v;
java.lang.Object v, v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.lang.IllegalArgumentException sourceNotValid()>();
if v == null goto label;
throw v;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: java.util.Iterator rowIterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
if v < 4 goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int rowAnnotatedColumnNumber>;
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Cell adaptOrCreateEmptySourceCell(int,int)>(v, v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("column");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Cell adaptOrCreateEmptySourceCell(int,int)>(v, v);
goto label;
label:
return;
}
private org.apache.poi.ss.usermodel.Cell adaptOrCreateEmptySourceCell(int, int)
{
org.apache.poi.ss.usermodel.CellType v, v, v, v;
org.apache.poi.ss.usermodel.Sheet v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
int v, v;
org.apache.poi.ss.usermodel.Cell v, v;
org.apache.poi.ss.usermodel.Row v, v;
java.lang.String v;
boolean v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
if v != null goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellValue(java.lang.String)>("(empty)");
return v;
label:
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: org.apache.poi.ss.usermodel.CellType getCellType()>();
v = <org.apache.poi.ss.usermodel.CellType: org.apache.poi.ss.usermodel.CellType BLANK>;
if v != v goto label;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellValue(java.lang.String)>("(empty)");
return v;
label:
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: org.apache.poi.ss.usermodel.CellType getCellType()>();
v = <org.apache.poi.ss.usermodel.CellType: org.apache.poi.ss.usermodel.CellType STRING>;
if v != v goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: java.lang.String getStringCellValue()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("");
if v == 0 goto label;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellValue(java.lang.String)>("(empty)");
label:
return v;
}
private java.lang.IllegalArgumentException sourceNotValid()
{
org.apache.poi.ss.usermodel.CellType v, v, v, v;
java.lang.Integer v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v;
int v, v, v;
org.apache.poi.ss.usermodel.Cell v;
boolean v, v;
org.apache.poi.ss.usermodel.Sheet v, v;
java.util.Iterator v;
java.lang.IllegalArgumentException v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v;
org.apache.poi.ss.usermodel.Row v;
java.lang.Object v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = 0;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("value");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = 4;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: int getLastRowNum()>();
if v > v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
if v == null goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: org.apache.poi.ss.usermodel.CellType getCellType()>();
v = <org.apache.poi.ss.usermodel.CellType: org.apache.poi.ss.usermodel.CellType BLANK>;
if v == v goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: org.apache.poi.ss.usermodel.CellType getCellType()>();
v = <org.apache.poi.ss.usermodel.CellType: org.apache.poi.ss.usermodel.CellType NUMERIC>;
if v == v goto label;
v = 1;
label:
v = v + 1;
goto label;
label:
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Values other than CELL_TYPE_NUMERIC found.");
return v;
label:
return null;
}
private void createEmptyHeaderRowsAndCells()
{
java.lang.Integer v;
boolean v, v;
org.apache.poi.ss.usermodel.Sheet v, v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v, v, v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v, v;
org.apache.poi.ss.usermodel.Row v, v, v;
java.lang.Object v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = 1;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("column");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = staticinvoke <org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.util.List getDistinctValuesInSourceSheetColumn(org.apache.poi.ss.usermodel.Sheet,java.lang.Integer)>(v, v);
v = interfaceinvoke v.<java.util.List: int size()>();
v = v * v;
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfDecorationAnnotationsInSource>;
v = 1 + v;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfValueAnnotationsInSource>;
v = v * v;
v = v + v;
v = 0;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("column");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = v;
v = v + 1;
v = 0 + v;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row createRow(int)>(v);
v = 0;
label:
if v >= v goto label;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
v = v + 1;
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.util.List columnHeaderValueRows>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = v + 1;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row createRow(int)>(v);
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Row fieldNameRow> = v;
v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int valuesStartAtRownumber> = v;
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Row fieldNameRow>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
v = v + 1;
goto label;
label:
return;
}
private void fillInHeaderRows()
{
java.lang.Integer v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v, v;
int v, v, v, v, v, v, v, v, v;
boolean v, v;
java.util.Iterator v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v, v;
java.lang.Object v, v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = 0;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("column");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int columnLabelOffsetX>;
v = v - 1;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void getFieldNameCell(int,int,int)>(v, v, v);
v = v + 1;
goto label;
label:
v = 0;
v = 0;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("column");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int columnLabelOffsetX>;
v = v;
v = v + 1;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void getColumnLabelCellsFor(int,int,int,int)>(v, v, v, v);
v = v + 1;
goto label;
label:
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void fillInFieldNameRow()>();
return;
}
private void getFieldNameCell(int, int, int)
{
org.apache.poi.ss.usermodel.Sheet v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
int v, v, v;
org.apache.poi.ss.usermodel.Cell v, v;
org.apache.poi.ss.usermodel.Row v, v;
org.apache.poi.ss.usermodel.CellStyle v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(3);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: void copyCell(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle fieldNameStyle>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellStyle(org.apache.poi.ss.usermodel.CellStyle)>(v);
return;
}
private void getColumnLabelCellsFor(int, int, int, int)
{
java.lang.Integer v, v, v;
org.apache.poi.ss.usermodel.Cell v, v;
boolean v;
org.apache.poi.ss.usermodel.Sheet v, v, v, v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v, v, v, v;
org.apache.poi.ss.usermodel.CellStyle v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v;
org.apache.poi.ss.usermodel.Row v, v;
java.lang.Object v, v, v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("column");
v = 1;
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = staticinvoke <org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.util.List getDistinctValuesInSourceSheetColumn(org.apache.poi.ss.usermodel.Sheet,java.lang.Integer)>(v, v);
v = interfaceinvoke v.<java.util.List: int size()>();
v = v * v;
v = v + 1;
goto label;
label:
v = 1;
v = v + 1;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfColumnAnnotationsInSource>;
if v >= v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = staticinvoke <org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.util.List getDistinctValuesInSourceSheetColumn(org.apache.poi.ss.usermodel.Sheet,java.lang.Integer)>(v, v);
v = interfaceinvoke v.<java.util.List: int size()>();
v = v * v;
v = v + 1;
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfValueAnnotationsInSource>;
v = v * v;
v = v - 1;
v = v;
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = staticinvoke <org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.util.List getDistinctValuesInSourceSheetColumn(org.apache.poi.ss.usermodel.Sheet,java.lang.Integer)>(v, v);
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = v;
v = v + 1;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: void copyCell(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columnHeaderValueStyle>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellStyle(org.apache.poi.ss.usermodel.CellStyle)>(v);
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = v;
v = v + 1;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columnHeaderValueStyle>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellStyle(org.apache.poi.ss.usermodel.CellStyle)>(v);
v = v + 1;
goto label;
label:
v = v + 1;
goto label;
label:
return;
}
private void fillInFieldNameRow()
{
java.lang.Integer v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v, v;
short v;
int v, v, v, v, v, v, v, v, v, v, v;
boolean v, v;
java.util.Iterator v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v, v, v;
org.apache.poi.ss.usermodel.Row v, v, v;
java.lang.Object v, v, v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Row fieldNameRow>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int rowAnnotatedColumnNumber>;
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void getFieldNameCell(int,int,int)>(0, v, v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int decoRowOffsetX>;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("deco");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v;
v = v + 1;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Row fieldNameRow>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void getFieldNameCell(int,int,int)>(v, v, v);
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.util.List columnHeaderValueRows>;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfColumnAnnotationsInSource>;
v = v - 1;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
label:
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: short getLastCellNum()>();
if v >= v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("value");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v;
v = v + 1;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Row fieldNameRow>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void getFieldNameCell(int,int,int)>(v, v, v);
goto label;
label:
return;
}
private void pivotSourceRows()
{
java.lang.Integer v, v, v, v, v, v;
org.apache.poi.ss.usermodel.Cell v, v, v, v, v;
boolean v, v, v, v, v;
org.apache.poi.ss.usermodel.Sheet v, v, v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v, v;
org.apache.isis.subdomains.excel.applib.dom.AggregationType v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v;
java.util.Iterator v, v, v, v;
org.apache.poi.ss.usermodel.Row v, v, v;
java.lang.Object v, v, v, v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: java.util.Iterator rowIterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
if v < 4 goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int rowAnnotatedColumnNumber>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.lang.Integer getRowPosCellInTarget(org.apache.poi.ss.usermodel.Cell,int)>(v, 0);
if v != null goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: int getLastRowNum()>();
v = v + 1;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row createRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(0);
staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: void copyCell(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
v = 0;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfDecorationAnnotationsInSource>;
if v >= v goto label;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Cell findDecorationFor(org.apache.poi.ss.usermodel.Cell,java.lang.Integer)>(v, v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int decoRowOffsetX>;
v = v + v;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: void copyCell(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
v = v + 1;
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("value");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.dom.AggregationType getAggregationTypeFromSource(int)>(v);
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void addValuesToPivot(int,int,int,org.apache.isis.subdomains.excel.applib.dom.AggregationType)>(v, v, v, v);
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("value");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Row fieldNameRow>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: java.lang.String getStringCellValue()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(3);
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: java.lang.String getStringCellValue()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.dom.AggregationType getAggregationTypeFromSource(int)>(v);
specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: void reWriteFieldNamesToReflectAggregationType(org.apache.isis.subdomains.excel.applib.dom.AggregationType,org.apache.poi.ss.usermodel.Cell)>(v, v);
goto label;
label:
return;
}
private org.apache.poi.ss.usermodel.Cell findDecorationFor(org.apache.poi.ss.usermodel.Cell, java.lang.Integer)
{
java.lang.Integer v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v;
int v, v, v, v, v;
org.apache.poi.ss.usermodel.Cell v, v, v;
boolean v;
org.apache.poi.ss.usermodel.Sheet v, v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v;
org.apache.poi.ss.usermodel.Row v, v;
java.lang.Object v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: org.apache.poi.ss.usermodel.Cell;
v := @parameter: java.lang.Integer;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("deco");
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = 4;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: int getLastRowNum()>();
if v > v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int rowAnnotatedColumnNumber>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: boolean cellValueEquals(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
if v == 0 goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
return v;
label:
v = v + 1;
goto label;
label:
return null;
}
private void addValuesToPivot(int, int, int, org.apache.isis.subdomains.excel.applib.dom.AggregationType)
{
java.lang.Integer v, v, v;
int[] v, v;
org.apache.poi.ss.usermodel.Cell v, v, v, v, v, v;
boolean v;
org.apache.poi.ss.usermodel.Sheet v, v, v, v, v, v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
java.util.List v;
org.apache.isis.subdomains.excel.applib.dom.AggregationType v;
org.apache.poi.ss.usermodel.CellType v, v;
org.apache.isis.subdomains.excel.applib.util.AnnotationList v;
short v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v;
java.util.Iterator v;
org.apache.poi.ss.usermodel.Row v, v, v, v, v, v, v, v;
java.lang.Object v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: org.apache.isis.subdomains.excel.applib.dom.AggregationType;
v = 0;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int columnLabelOffsetX>;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(0);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: short getLastCellNum()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.isis.subdomains.excel.applib.util.AnnotationList annotations>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationList: java.util.List getByAnnotation_OrderBy_OrderAscending(java.lang.String)>("column");
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.util.AnnotationTriplet: java.lang.Integer getColnumber()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = v;
v = v + 1;
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.lang.Integer getColPosCellInTarget(org.apache.poi.ss.usermodel.Cell,int,int,int)>(v, v, v, v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(3);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Row fieldNameRow>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: java.lang.Integer getColPosCellInTarget(org.apache.poi.ss.usermodel.Cell,int,int,int)>(v, v, v, v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
if v == null goto label;
if v == null goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: org.apache.poi.ss.usermodel.CellType getCellType()>();
v = <org.apache.poi.ss.usermodel.CellType: org.apache.poi.ss.usermodel.CellType BLANK>;
if v != v goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$1: int[] $SwitchMap$org$apache$isis$subdomains$excel$applib$dom$AggregationType>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.dom.AggregationType: int ordinal()>();
v = v[v];
lookupswitch(v)
{
case 1: goto label;
case 2: goto label;
default: goto label;
};
label:
staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: void copyCell(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
goto label;
label:
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellValue(double)>(1.0);
goto label;
label:
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$1: int[] $SwitchMap$org$apache$isis$subdomains$excel$applib$dom$AggregationType>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.dom.AggregationType: int ordinal()>();
v = v[v];
lookupswitch(v)
{
case 1: goto label;
case 2: goto label;
default: goto label;
};
label:
staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: org.apache.poi.ss.usermodel.Cell addCellValueTo(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
goto label;
label:
if v != null goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellValue(double)>(1.0);
goto label;
label:
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: double getNumericCellValue()>();
v = v + 1.0;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellValue(double)>(v);
label:
return;
}
private java.lang.Integer getColPosCellInTarget(org.apache.poi.ss.usermodel.Cell, int, int, int)
{
org.apache.poi.ss.usermodel.Sheet v;
java.lang.Integer v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
int v, v, v, v;
org.apache.poi.ss.usermodel.Cell v, v;
org.apache.poi.ss.usermodel.Row v;
boolean v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: org.apache.poi.ss.usermodel.Cell;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v = v;
label:
if v >= v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: boolean cellValueEquals(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
if v == 0 goto label;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
return v;
label:
v = v + 1;
goto label;
label:
return null;
}
private java.lang.Integer getRowPosCellInTarget(org.apache.poi.ss.usermodel.Cell, int)
{
org.apache.poi.ss.usermodel.Sheet v, v;
java.lang.Integer v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
int v, v, v;
org.apache.poi.ss.usermodel.Cell v, v;
org.apache.poi.ss.usermodel.Row v;
boolean v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: org.apache.poi.ss.usermodel.Cell;
v := @parameter: int;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int valueRowOffsetY>;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: int getLastRowNum()>();
if v > v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: boolean cellValueEquals(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
if v == 0 goto label;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
return v;
label:
v = v + 1;
goto label;
label:
return null;
}
private void addSummations()
{
org.apache.poi.ss.usermodel.Cell v, v, v;
boolean v;
org.apache.poi.ss.usermodel.Sheet v, v, v, v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
org.apache.poi.ss.usermodel.CellStyle v, v, v, v, v;
short v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v;
org.apache.poi.ss.usermodel.Row v, v, v;
java.lang.Object v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int valueRowOffsetY>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: short getLastCellNum()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: int getLastRowNum()>();
v = v + 1;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfValueAnnotationsInSource>;
if v >= 2 goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: java.util.Iterator rowIterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int valueRowOffsetY>;
if v <= v goto label;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int columnLabelOffsetX>;
v = staticinvoke <org.apache.poi.ss.util.CellReference: java.lang.String convertNumToColString(int)>(v);
v = v - 1;
v = staticinvoke <org.apache.poi.ss.util.CellReference: java.lang.String convertNumToColString(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = v + 1;
v = staticinvoke <java.lang.String: java.lang.String valueOf(int)>(v);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: int getRowNum()>();
v = v + 1;
v = staticinvoke <java.lang.String: java.lang.String valueOf(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("SUM(\u0001\u0001:\u0001\u)");
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellFormula(java.lang.String)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle rowSumStyle>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellStyle(org.apache.poi.ss.usermodel.CellStyle)>(v);
goto label;
label:
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle rowSumStyle>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellStyle(org.apache.poi.ss.usermodel.CellStyle)>(v);
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row createRow(int)>(v);
v = 0;
label:
if v >= v goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int columnLabelOffsetX>;
if v < v goto label;
v = staticinvoke <org.apache.poi.ss.util.CellReference: java.lang.String convertNumToColString(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int valueRowOffsetY>;
v = v + 2;
v = staticinvoke <java.lang.String: java.lang.String valueOf(int)>(v);
v = staticinvoke <java.lang.String: java.lang.String valueOf(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("SUM(\u0001\u0001:\u0001\u)");
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellFormula(java.lang.String)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columSumStyle>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellStyle(org.apache.poi.ss.usermodel.CellStyle)>(v);
goto label;
label:
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columSumStyle>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellStyle(org.apache.poi.ss.usermodel.CellStyle)>(v);
label:
v = v + 1;
goto label;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int numberOfValueAnnotationsInSource>;
if v >= 2 goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell createCell(int)>(v);
v = staticinvoke <org.apache.poi.ss.util.CellReference: java.lang.String convertNumToColString(int)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: int valueRowOffsetY>;
v = v + 2;
v = staticinvoke <java.lang.String: java.lang.String valueOf(int)>(v);
v = staticinvoke <java.lang.String: java.lang.String valueOf(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("SUM(\u0001\u0001:\u0001\u)");
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellFormula(java.lang.String)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle totalSumStyle>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellStyle(org.apache.poi.ss.usermodel.CellStyle)>(v);
label:
return;
}
private void reWriteFieldNamesToReflectAggregationType(org.apache.isis.subdomains.excel.applib.dom.AggregationType, org.apache.poi.ss.usermodel.Cell)
{
org.apache.isis.subdomains.excel.applib.dom.AggregationType v;
int[] v;
int v, v;
org.apache.poi.ss.usermodel.Cell v;
java.lang.String v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: org.apache.isis.subdomains.excel.applib.dom.AggregationType;
v := @parameter: org.apache.poi.ss.usermodel.Cell;
if v == null goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: java.lang.String getStringCellValue()>();
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$1: int[] $SwitchMap$org$apache$isis$subdomains$excel$applib$dom$AggregationType>;
v = virtualinvoke v.<org.apache.isis.subdomains.excel.applib.dom.AggregationType: int ordinal()>();
v = v[v];
lookupswitch(v)
{
case 1: goto label;
case 2: goto label;
default: goto label;
};
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u (sum)");
goto label;
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u (count)");
label:
interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: void setCellValue(java.lang.String)>(v);
label:
return;
}
private org.apache.isis.subdomains.excel.applib.dom.AggregationType getAggregationTypeFromSource(int)
{
org.apache.isis.subdomains.excel.applib.dom.AggregationType v;
org.apache.poi.ss.usermodel.Sheet v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
int v;
org.apache.poi.ss.usermodel.Cell v;
org.apache.poi.ss.usermodel.Row v;
java.lang.String v;
boolean v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v := @parameter: int;
v = <org.apache.isis.subdomains.excel.applib.dom.AggregationType: org.apache.isis.subdomains.excel.applib.dom.AggregationType SUM>;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet sourceSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(2);
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
if v == null goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Cell: java.lang.String getStringCellValue()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("COUNT");
if v == 0 goto label;
v = <org.apache.isis.subdomains.excel.applib.dom.AggregationType: org.apache.isis.subdomains.excel.applib.dom.AggregationType COUNT>;
label:
return v;
}
static java.util.List getDistinctValuesInSourceSheetColumn(org.apache.poi.ss.usermodel.Sheet, java.lang.Integer)
{
org.apache.poi.ss.usermodel.Sheet v;
java.util.Iterator v;
java.lang.Integer v;
java.util.ArrayList v;
int v, v, v;
org.apache.poi.ss.usermodel.Cell v;
org.apache.poi.ss.usermodel.Row v;
java.lang.Object v;
boolean v, v, v;
v := @parameter: org.apache.poi.ss.usermodel.Sheet;
v := @parameter: java.lang.Integer;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = 4;
label:
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: int getLastRowNum()>();
if v > v goto label;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Row getRow(int)>(v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Row: org.apache.poi.ss.usermodel.Cell getCell(int)>(v);
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.apache.isis.subdomains.excel.applib.util.PivotUtils: boolean cellValueEquals(org.apache.poi.ss.usermodel.Cell,org.apache.poi.ss.usermodel.Cell)>(v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
if v != 0 goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
return v;
}
private void defineSomeCellStyles()
{
org.apache.poi.ss.usermodel.Sheet v, v, v, v, v, v;
org.apache.isis.subdomains.excel.applib.util.SheetPivoter v;
org.apache.poi.ss.usermodel.CellStyle v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.poi.ss.usermodel.FillPatternType v, v, v, v, v;
short v, v, v, v, v;
org.apache.poi.ss.usermodel.Font v, v, v, v;
org.apache.poi.ss.usermodel.BorderStyle v, v, v, v;
org.apache.poi.ss.usermodel.Workbook v, v, v, v, v, v;
v := @this: org.apache.isis.subdomains.excel.applib.util.SheetPivoter;
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Workbook getWorkbook()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Workbook: org.apache.poi.ss.usermodel.Font createFont()>();
<org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.Font boldFont> = v;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.Font boldFont>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.Font: void setBold(boolean)>(1);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Workbook getWorkbook()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Workbook: org.apache.poi.ss.usermodel.CellStyle createCellStyle()>();
<org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle fieldNameStyle> = v;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle fieldNameStyle>;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: short fieldnameBgColorIndex>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillForegroundColor(short)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle fieldNameStyle>;
v = <org.apache.poi.ss.usermodel.FillPatternType: org.apache.poi.ss.usermodel.FillPatternType SOLID_FOREGROUND>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillPattern(org.apache.poi.ss.usermodel.FillPatternType)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle fieldNameStyle>;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.Font boldFont>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFont(org.apache.poi.ss.usermodel.Font)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Workbook getWorkbook()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Workbook: org.apache.poi.ss.usermodel.CellStyle createCellStyle()>();
<org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columnHeaderValueStyle> = v;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columnHeaderValueStyle>;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: short columnHeaderValueBgColorIndex>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillForegroundColor(short)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columnHeaderValueStyle>;
v = <org.apache.poi.ss.usermodel.FillPatternType: org.apache.poi.ss.usermodel.FillPatternType SOLID_FOREGROUND>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillPattern(org.apache.poi.ss.usermodel.FillPatternType)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columnHeaderValueStyle>;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.Font boldFont>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFont(org.apache.poi.ss.usermodel.Font)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Workbook getWorkbook()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Workbook: org.apache.poi.ss.usermodel.CellStyle createCellStyle()>();
<org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle rowSumStyle> = v;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle rowSumStyle>;
v = <org.apache.poi.ss.usermodel.BorderStyle: org.apache.poi.ss.usermodel.BorderStyle THIN>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setBorderLeft(org.apache.poi.ss.usermodel.BorderStyle)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle rowSumStyle>;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: short sumBgColorIndex>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillForegroundColor(short)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle rowSumStyle>;
v = <org.apache.poi.ss.usermodel.FillPatternType: org.apache.poi.ss.usermodel.FillPatternType SOLID_FOREGROUND>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillPattern(org.apache.poi.ss.usermodel.FillPatternType)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Workbook getWorkbook()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Workbook: org.apache.poi.ss.usermodel.CellStyle createCellStyle()>();
<org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columSumStyle> = v;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columSumStyle>;
v = <org.apache.poi.ss.usermodel.BorderStyle: org.apache.poi.ss.usermodel.BorderStyle THIN>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setBorderTop(org.apache.poi.ss.usermodel.BorderStyle)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columSumStyle>;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: short sumBgColorIndex>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillForegroundColor(short)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle columSumStyle>;
v = <org.apache.poi.ss.usermodel.FillPatternType: org.apache.poi.ss.usermodel.FillPatternType SOLID_FOREGROUND>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillPattern(org.apache.poi.ss.usermodel.FillPatternType)>(v);
v = v.<org.apache.isis.subdomains.excel.applib.util.SheetPivoter: org.apache.poi.ss.usermodel.Sheet targetSheet>;
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Sheet: org.apache.poi.ss.usermodel.Workbook getWorkbook()>();
v = interfaceinvoke v.<org.apache.poi.ss.usermodel.Workbook: org.apache.poi.ss.usermodel.CellStyle createCellStyle()>();
<org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle totalSumStyle> = v;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle totalSumStyle>;
v = <org.apache.poi.ss.usermodel.BorderStyle: org.apache.poi.ss.usermodel.BorderStyle THIN>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setBorderTop(org.apache.poi.ss.usermodel.BorderStyle)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle totalSumStyle>;
v = <org.apache.poi.ss.usermodel.BorderStyle: org.apache.poi.ss.usermodel.BorderStyle THIN>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setBorderLeft(org.apache.poi.ss.usermodel.BorderStyle)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle totalSumStyle>;
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: short sumBgColorIndex>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillForegroundColor(short)>(v);
v = <org.apache.isis.subdomains.excel.applib.util.SheetPivoter$TargetLayOut: org.apache.poi.ss.usermodel.CellStyle totalSumStyle>;
v = <org.apache.poi.ss.usermodel.FillPatternType: org.apache.poi.ss.usermodel.FillPatternType SOLID_FOREGROUND>;
interfaceinvoke v.<org.apache.poi.ss.usermodel.CellStyle: void setFillPattern(org.apache.poi.ss.usermodel.FillPatternType)>(v);
return;
}
}