/** * This is the only constructor that will populate the versioningEnabled and versionCommentEnabled flags. Other * constructors will leave the values as null. * * @param repoTree * @param repositoryDirectory * @param modifiedUser * @param objectType * @param description * @param lock * @param deleted */ public EERepositoryObject( RepositoryFileTree repoTree, RepositoryDirectoryInterface repositoryDirectory, String modifiedUser, RepositoryObjectType objectType, String description, RepositoryLock lock, boolean deleted ) { this( repoTree.getFile(), repositoryDirectory, modifiedUser, objectType, description, lock, deleted ); setVersioningEnabled( repoTree.getVersioningEnabled() ); setVersionCommentEnabled( repoTree.getVersionCommentEnabled() ); }
@Override public List<RepositoryElementMetaInterface> getRepositoryObjects( ) { if ( fileChildren == null ) { fileChildren = new ArrayList<>(); synchronized ( fileChildren ) { UnifiedRepositoryLockService lockService = (UnifiedRepositoryLockService) registry.getService( ILockService.class ); RepositoryFileTree tree = repository.getTree( new RepositoryRequest( this.self.getPath(), showHidden, 1, null ) ); for ( RepositoryFileTree tchild : tree.getChildren() ) { RepositoryFile child = tchild.getFile(); if ( !child.isFolder() ) { RepositoryLock lock = null; try { lock = lockService.getLock( child ); RepositoryObjectType objectType = PurRepository.getObjectType( child.getName() ); EERepositoryObject repositoryObject = new EERepositoryObject( child, this, null, objectType, null, lock, false ); repositoryObject.setVersioningEnabled( tchild.getVersioningEnabled() ); repositoryObject.setVersionCommentEnabled( tchild.getVersionCommentEnabled() ); fileChildren.add( repositoryObject ); } catch ( KettleException e ) { logger.error( "Error converting Unified Repository file to PDI RepositoryObject: " + child.getPath() + ". File will be skipped", e ); } } } } } return fileChildren; }