{
throw new IllegalStateException("Something went wrong in creating " +
"the array for the stack trace element.",
e);
}
OpenType foundType = type.getType("LockedMonitors");
if (foundType != null)
try
{
CompositeType mType = new CompositeType(MonitorInfo.class.getName(),
"Information on a object monitor lock",
new String[] { "ClassName",
"IdentityHashCode",
"LockedStackDepth",
"LockedStackFrame"
},
new String[] { "Name of the class",
"Identity hash code " +
"of the class",
"Stack depth at time " +
"of lock",
"Stack frame at time " +
"of lock",
},
new OpenType[] {
SimpleType.STRING, SimpleType.INTEGER,
SimpleType.INTEGER, getStackTraceType()
});
if (!(foundType.equals(new ArrayType(1, mType))))
throw new IllegalArgumentException("Field LockedMonitors is not of " +
"type " + mType.getClassName());
}
catch (OpenDataException e)
{
throw new IllegalStateException("Something went wrong in creating " +
"the composite data type for the " +
"object monitor information array.", e);
}
foundType = type.getType("LockedSynchronizers");
if (foundType != null)
try
{
CompositeType lType = new CompositeType(LockInfo.class.getName(),
"Information on a lock",
new String[] { "ClassName",
"IdentityHashCode"
},
new String[] { "Name of the class",
"Identity hash code " +
"of the class"
},
new OpenType[] {
SimpleType.STRING, SimpleType.INTEGER
});
if (!(foundType.equals(new ArrayType(1, lType))))
throw new IllegalArgumentException("Field LockedSynchronizers is not of " +
"type " + lType.getClassName());
}
catch (OpenDataException e)
{