for(int i=0; i<contentVersionIds.length; i++)
{
String contentVersionId = contentVersionIds[i];
logger.info("contentVersionId:" + contentVersionId);
ContentVersion contentVersion = ContentVersionController.getContentVersionController().getContentVersionWithId(new Integer(contentVersionIds[i]), db);
if(contentVersion.getStateId().intValue() != ContentVersionVO.WORKING_STATE.intValue())
{
List events = new ArrayList();
ContentVersionVO contentVersionVO = ContentStateController.changeState(contentVersion.getId(), ContentVersionVO.WORKING_STATE, "Automatic by the replace function", true, infoGluePrincipal, contentVersion.getValueObject().getContentId(), db, events);
contentVersion = ContentVersionController.getContentVersionController().getContentVersionWithId(contentVersionVO.getId(), db);
logger.info("Setting the version to working before replacing string...");
}
String value = contentVersion.getVersionValue();
logger.info("searchString:" + searchString);
if(!caseSensitive)
searchString = "(?i)" + searchString;
logger.info("searchString:" + searchString);
value = value.replaceAll(searchString, replaceString);
contentVersion.setVersionValue(value);
replacements++;
}
commitTransaction(db);