in src/main/java/org/apache/openejb/tools/release/cmd/Tck.java [98:150]
private static void updatePom(final String staging, final File pom) throws IOException {
System.out.println(pom.getAbsolutePath());
final String n = System.getProperty("line.separator");
final String repositoryDefinition = " <repository>" + n +
" <id>nexus-staging</id>" + n +
" <name>Nexus Staging Repository</name>" + n +
" <url>" + staging + "</url>" + n +
" <layout>default</layout>" + n +
" <snapshots>" + n +
" <enabled>false</enabled>" + n +
" </snapshots>" + n +
" <releases>" + n +
" <enabled>true</enabled>" + n +
" <checksumPolicy>ignore</checksumPolicy>" + n +
" </releases>" + n +
" </repository>";
InputStream in = IO.read(pom);
// Yank any existing nexus-staging repo
in = new DelimitedTokenReplacementInputStream(in, "<repository>", "</repository>", new StringTokenHandler() {
@Override
public String handleToken(final String token) throws IOException {
if (token.contains("<id>nexus-staging</id>")) {
return "";
}
return "<repository>" + token + "</repository>";
}
});
// add the new one
in = new ReplaceStringInputStream(in, "<repositories>", "<repositories>" + n + repositoryDefinition);
// Yank SNAPSHOT
in = new DelimitedTokenReplacementInputStream(in, "<openejb.version>", "</openejb.version>", new StringTokenHandler() {
@Override
public String handleToken(final String s) throws IOException {
return "<openejb.version>" + Release.openejbVersion + "</openejb.version>";
}
});
in = new DelimitedTokenReplacementInputStream(in, "<tomee.version>", "</tomee.version>", new StringTokenHandler() {
@Override
public String handleToken(final String s) throws IOException {
return "<tomee.version>" + Release.tomeeVersion + "</tomee.version>";
}
});
update(pom, in);
}