package com.erggroup.mass.ant; import java.io.File; import java.util.ArrayList; import java.util.Collections; import net.sourceforge.clearcase.api.IClearcase; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.Project; /** * */ public class Utils { public static PackageVersion getHighestVersion( File packageDirectory ) { return Utils.getHighestVersion(packageDirectory,"mas"); } public static PackageVersion getHighestVersion( File packageDirectory, String scope) { File[] existing = packageDirectory.listFiles(); ArrayList versions = new ArrayList(existing.length); for ( int i=0; i 0 ) { return (PackageVersion)Collections.max(versions); } return null; } /** * Set the working directory for the current project to the VOB root * * @param project the project whose working directory will be set. */ public static void setWorkingDirectory( IClearcase clearcase, Project project ) { File baseDirectory = project.getBaseDir().getParentFile(); while ( baseDirectory != null && baseDirectory.getParentFile() != null && baseDirectory.getParentFile().getParentFile() != null ) { baseDirectory = baseDirectory.getParentFile(); } IClearcase.Status chdir = clearcase.cleartool( "cd " + baseDirectory.getAbsolutePath() ); if ( !chdir.status ) { project.log(chdir.message,Project.MSG_ERR); throw new BuildException("Could not change to VOB root directory \'" + baseDirectory.getAbsolutePath() + "\'."); } } }