if (auditHistory != null)
{
List<AuditRecord> auditRecords = new ArrayList<AuditRecord>();
// AuditRecord aRecord = null;
ValueFactoryImpl vf = (ValueFactoryImpl)node.getSession().getValueFactory();
// Search all auditRecords
List<NodeData> auditRecordsNodeData = dm.getChildNodesData(auditHistory);
for (NodeData nodeData : auditRecordsNodeData)
{
// Searching properties
List<PropertyData> auditRecordNodeData = dm.getChildPropertiesData(nodeData);
// define variables
String user = null;
InternalQName propertyName = null;
Value[] oldValue = null;
Value[] newValue = null;
int eventType = -1;
Calendar date = null;
// version stuff
String version = null;
String versionName = null;
// loading data
try
{
for (PropertyData propertyData : auditRecordNodeData)
{
ValueData value = propertyData.getValues().get(0);
if (propertyData.getQPath().getName().equals(AuditService.EXO_AUDITRECORD_USER))
{
user = ValueDataUtil.getString(value);
}
else if (propertyData.getQPath().getName().equals(AuditService.EXO_AUDITRECORD_EVENTTYPE))
{
eventType = ValueDataUtil.getLong(value).intValue();
}
else if (propertyData.getQPath().getName().equals(AuditService.EXO_AUDITRECORD_CREATED))
{
date = ValueDataUtil.getDate(value);
}
else if (propertyData.getQPath().getName().equals(AuditService.EXO_AUDITRECORD_PROPERTYNAME))
{
propertyName = InternalQName.parse(ValueDataUtil.getString(value));
}
else if (propertyData.getQPath().getName().equals(AuditService.EXO_AUDITRECORD_AUDITVERSION))
{
version = ValueDataUtil.getString(value);
}
else if (propertyData.getQPath().getName().equals(AuditService.EXO_AUDITRECORD_AUDITVERSIONNAME))
{
versionName = ValueDataUtil.getString(value);
}
else if (propertyData.getQPath().getName().equals(AuditService.EXO_AUDITRECORD_OLDVALUE))
{
oldValue = new Value[propertyData.getValues().size()];
for (int i = 0; i < propertyData.getValues().size(); i++)
oldValue[i] = vf.loadValue(propertyData.getValues().get(i), propertyData.getType());
}
else if (propertyData.getQPath().getName().equals(AuditService.EXO_AUDITRECORD_NEWVALUE))
{
newValue = new Value[propertyData.getValues().size()];
for (int i = 0; i < propertyData.getValues().size(); i++)
newValue[i] = vf.loadValue(propertyData.getValues().get(i), propertyData.getType());
}
}
}
catch (IllegalStateException e)
{