Issue #2648 Update hprof info to match grid changes in 14.3
Former-commit-id:2dcc596c83
[formerlya608d3a7e9
] [formerly2dcc596c83
[formerlya608d3a7e9
] [formerly2c82f5ea7a
[formerly c391a6fbb543e467030f45a494e00bc4246c6a36]]] Former-commit-id:2c82f5ea7a
Former-commit-id:8f3ad535c6
[formerly17dfcd8c70
] Former-commit-id:de10019851
This commit is contained in:
parent
ba32067353
commit
bb04f26de0
1 changed files with 37 additions and 8 deletions
|
@ -177,7 +177,6 @@ public class D2DGridResourceExporter extends RequestableResourceExporter {
|
||||||
} catch (IllegalStateException e) {
|
} catch (IllegalStateException e) {
|
||||||
/* heap dump is from after 14.2 */
|
/* heap dump is from after 14.2 */
|
||||||
}
|
}
|
||||||
resource.getBoolean("reprojectedData");
|
|
||||||
int floats = entry.getValue();
|
int floats = entry.getValue();
|
||||||
int size = floats * 4 / 1024;
|
int size = floats * 4 / 1024;
|
||||||
String suffix = "KB";
|
String suffix = "KB";
|
||||||
|
@ -216,8 +215,15 @@ public class D2DGridResourceExporter extends RequestableResourceExporter {
|
||||||
SmartInstance gridGeometry = generalGridData.get("gridGeometry");
|
SmartInstance gridGeometry = generalGridData.get("gridGeometry");
|
||||||
SmartInstance gridRange = gridGeometry.get("gridRange");
|
SmartInstance gridRange = gridGeometry.get("gridRange");
|
||||||
int[] index = gridRange.getIntArray("index");
|
int[] index = gridRange.getIntArray("index");
|
||||||
width = index[2] - index[0];
|
if (index != null) {
|
||||||
height = index[3] - index[1];
|
/* GeneralGridEnvelope */
|
||||||
|
this.width = index[2] - index[0];
|
||||||
|
this.height = index[3] - index[1];
|
||||||
|
} else {
|
||||||
|
/* GridEnvelope2D */
|
||||||
|
this.width = gridRange.getInt("width");
|
||||||
|
this.height = gridRange.getInt("height");
|
||||||
|
}
|
||||||
|
|
||||||
SmartInstance buffer = generalGridData.get("scalarData");
|
SmartInstance buffer = generalGridData.get("scalarData");
|
||||||
scalarCapacity = getCapacity(buffer);
|
scalarCapacity = getCapacity(buffer);
|
||||||
|
@ -237,11 +243,34 @@ public class D2DGridResourceExporter extends RequestableResourceExporter {
|
||||||
if (buffer == null) {
|
if (buffer == null) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
while (buffer != null) {
|
||||||
try {
|
try {
|
||||||
|
/*
|
||||||
|
* Eventually we hope to find a FloatBuffer, before 14.3 it
|
||||||
|
* even happens on the first try.
|
||||||
|
*/
|
||||||
return buffer.getInt("capacity");
|
return buffer.getInt("capacity");
|
||||||
} catch (IllegalStateException e) {
|
} catch (IllegalStateException e1) {
|
||||||
return buffer.get("buffer").getInt("capacity");
|
/*
|
||||||
|
* This case will pull the buffer out of a
|
||||||
|
* FloatBufferWrapper
|
||||||
|
*/
|
||||||
|
|
||||||
|
SmartInstance tmp = buffer.get("buffer");
|
||||||
|
if (tmp == null) {
|
||||||
|
/*
|
||||||
|
* This case will pull a source out of a
|
||||||
|
* GeographicDataSource or a FilteredDataSource,
|
||||||
|
* hopefully after recursing enough we will get to a
|
||||||
|
* FloatBufferWrapper.
|
||||||
|
*/
|
||||||
|
tmp = buffer.get("wrappedSource");
|
||||||
}
|
}
|
||||||
|
buffer = tmp;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
System.err.println("Unable to count floats in GeneralGridData.");
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getFloatCount() {
|
public int getFloatCount() {
|
||||||
|
|
Loading…
Add table
Reference in a new issue