}
private void removeMergeFailed(Version version, PlainChangesLog changesLog) throws RepositoryException
{
PropertyData mergeFailed =
(PropertyData)dataManager.getItemData(nodeData(), new QPathEntry(Constants.JCR_MERGEFAILED, 0),
ItemType.PROPERTY);
if (mergeFailed == null)
return;
List<ValueData> mf = new ArrayList<ValueData>();
for (ValueData mfvd : mergeFailed.getValues())
{
try
{
byte[] mfb = mfvd.getAsByteArray();
if (!version.getUUID().equals(new String(mfb)))
{
mf.add(new TransientValueData(mfb));
}
}
catch (IOException e)
{
throw new RepositoryException("Remove jcr:mergeFailed error " + e, e);
}
}
if (mf.size() > 0)
{
PropertyData mergeFailedRef =
TransientPropertyData.createPropertyData(nodeData(), Constants.JCR_MERGEFAILED, PropertyType.REFERENCE,
true, mf);
changesLog.add(ItemState.createUpdatedState(mergeFailedRef));
}
else