* Populate the table with Wicket elements
*/
@Override
protected void populateItem(final ListItem<Access> listItem)
{
final Access access = listItem.getModelObject();
IPageMapEntry entry = pageMap.getEntry(access.getId());
PageParameters parameters = new PageParameters();
parameters.put("pageId", "" + entry.getNumericId());
Link<?> link = new BookmarkablePageLink("link", InspectorPage.class, parameters);
link.add(new Label<String>("id", "" + entry.getNumericId()));
listItem.add(link);
listItem.add(new Label<String>("class", "" + entry.getClass().getName()));
long size;
int versions;
if (entry instanceof Page)
{
Page<?> page = (Page<?>)entry;
page.detachModels();
size = page.getSizeInBytes();
versions = page.getVersions();
}
else
{
size = Objects.sizeof(entry);
versions = 0;
}
listItem.add(new Label<String>("access", "" +
(accessStack.size() - listItem.getIndex())));
listItem.add(new Label<String>("version", "" + access.getVersion()));
listItem.add(new Label<String>("versions", "" + versions));
listItem.add(new Label<String>("size", size == -1 ? "[Unknown]" : "" +
Bytes.bytes(size)));
}
});