3

Can we delete a specific version of Document in Alfresco?? As while I am trying to delete document by my code it will delete a document with version history. I want to delete specific version of Document.

Dhaval Soni
  • 85
  • 1
  • 10

1 Answers1

5

You want VersionService.deleteVersion(NodeRef, Version) - that will let you delete one version out of the history

Do something like:

VersionHistory history = versionService.getVersionHistory(nodeRef);
for (Version version : history.getAllVersions())
{
     if (version.getVersionLabel().equals("2.99"))
     {
         versionService.deleteVersion(nodeRef, version);
         break;
     }
}

Or:

VersionHistory history = versionService.getVersionHistory(nodeRef);
try {
    Version version = history.getVersion("1.42");
    versionService.deleteVersion(nodeRef, version);
} catch(VersionDoesNotExistException e) {
    System.err.println("It seems to have already gone!");
}
Gagravarr
  • 47,320
  • 10
  • 111
  • 156
  • 1
    What's the problem? Get the version service, ask the user which version they want to delete, then grab the version (as above) and call delete, job done! – Gagravarr Apr 01 '13 at 09:36