@Override public void deleteVersionsBeforeDate( Serializable fileId, Date beforeDate ) { List<VersionSummary> versionList = unifiedRepository.getVersionSummaries( fileId ); int listSize = versionList.size(); int removedCount = 0; for ( VersionSummary versionSummary : versionList ) { if ( listSize - removedCount <= 1 ) { break; // Don't delete the last instance of this file. } if ( versionSummary.getDate().before( beforeDate ) ) { Serializable versionId = versionSummary.getId(); getLogger().debug( "removing version " + versionId.toString() ); unifiedRepository.deleteFileAtVersion( fileId, versionId ); removedCount++; } } }
/** * @return Wrapped {@link VersionSummary} with a {@link ObjectRevision}. */ protected ObjectRevision createObjectRevision( final VersionSummary versionSummary ) { return new PurObjectRevision( versionSummary.getId(), versionSummary.getAuthor(), versionSummary.getDate(), versionSummary.getMessage() ); }
@Override public void keepNumberOfVersions( Serializable fileId, int versionCount ) { List<VersionSummary> versionList = unifiedRepository.getVersionSummaries( fileId ); int i = 0; int listSize = versionList.size(); if ( listSize > versionCount ) { getLogger().info( "version count: removing versions" ); } for ( VersionSummary versionSummary : versionList ) { if ( i < listSize - versionCount ) { Serializable versionId = versionSummary.getId(); getLogger().debug( "removing version " + versionId.toString() ); unifiedRepository.deleteFileAtVersion( fileId, versionId ); i++; } else { break; } } }
@Override public List<ObjectRevision> getRevisions( ObjectId fileId ) throws KettleException { String absPath = null; try { List<ObjectRevision> versions = new ArrayList<ObjectRevision>(); List<VersionSummary> versionSummaries = unifiedRepository.getVersionSummaries( fileId.getId() ); for ( VersionSummary versionSummary : versionSummaries ) { versions.add( new PurObjectRevision( versionSummary.getId(), versionSummary.getAuthor(), versionSummary .getDate(), versionSummary.getMessage() ) ); } return versions; } catch ( Exception e ) { throw new KettleException( "Could not retrieve version history of object with path [" + absPath + "]", e ); } }
String versionId = (String) versionSummary.getId(); session.getWorkspace().getVersionManager().getVersionHistory( versionableNode.getPath() ).removeVersion( versionId );
@Override public VersionSummaryDto marshal( final VersionSummary v ) { VersionSummaryDto s = new VersionSummaryDto(); s.setId( v.getId().toString() ); s.setAuthor( v.getAuthor() ); s.setDate( v.getDate() ); s.setMessage( v.getMessage() ); s.setVersionedFileId( v.getVersionedFileId().toString() ); s.setLabels( v.getLabels() ); s.setAclOnlyChange( v.isAclOnlyChange() ); return s; }