if ( ioService.exists( newProjectPath ) ) {
throw new FileAlreadyExistsException( newProjectPath.toString() );
}
final Path oldProjectDir = Paths.convert( projectDirectory );
final Project oldProject = resolveProject( oldProjectDir );
content.setName( newName );
final Path newPathToPomXML = Paths.convert( newProjectPath.resolve( "pom.xml" ) );
ioService.startBatch();
ioService.move( projectDirectory, newProjectPath, makeCommentedOption( comment ) );
pomService.save( newPathToPomXML, content, null, comment );
ioService.endBatch();
final Project newProject = resolveProject( Paths.convert( newProjectPath ) );
invalidateDMOCache.fire( new InvalidateDMOProjectCacheEvent( sessionInfo, oldProject, oldProjectDir ) );
renameProjectEvent.fire( new RenameProjectEvent( oldProject, newProject ) );
return newPathToPomXML;
} catch ( final Exception e ) {