Index: maven-release-manager/src/main/java/org/apache/maven/shared/release/scm/DefaultScmTranslator.java =================================================================== --- maven-release-manager/src/main/java/org/apache/maven/shared/release/scm/DefaultScmTranslator.java (revision 0) +++ maven-release-manager/src/main/java/org/apache/maven/shared/release/scm/DefaultScmTranslator.java (revision 0) @@ -0,0 +1,52 @@ +package org.apache.maven.shared.release.scm; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * Default SCM Translator which gets used if no other one gets + * detected via the role-hint. + * + * The DefaultScmTranslator will change nothing but only return the default SCM values. + * If a SCM has special Url or Tag rules, it should implement an own + * ScmTranslator instead. + * + * @author Mark Struberg + */ +public class DefaultScmTranslator implements ScmTranslator +{ + + /** {@inheritDoc} */ + public String translateBranchUrl( String url, String branchName, String branchBase ) + { + return url; + } + + /** {@inheritDoc} */ + public String translateTagUrl( String url, String tag, String tagBase ) + { + return url; + } + + /** {@inheritDoc} */ + public String resolveTag( String tag ) + { + return tag; + } +} Property changes on: maven-release-manager/src/main/java/org/apache/maven/shared/release/scm/DefaultScmTranslator.java ___________________________________________________________________ Added: svn:eol-style + native Index: maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhase.java =================================================================== --- maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhase.java (revision 1332950) +++ maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhase.java (working copy) @@ -51,6 +51,7 @@ import org.apache.maven.shared.release.ReleaseResult; import org.apache.maven.shared.release.config.ReleaseDescriptor; import org.apache.maven.shared.release.env.ReleaseEnvironment; +import org.apache.maven.shared.release.scm.DefaultScmTranslator; import org.apache.maven.shared.release.scm.ReleaseScmCommandException; import org.apache.maven.shared.release.scm.ScmTranslator; import org.apache.maven.shared.release.util.ReleaseUtil; @@ -251,18 +252,17 @@ ScmRepository scmRepository = getScmRepository( releaseDescriptor, releaseEnvironment ); ScmTranslator scmTranslator = getScmTranslator( scmRepository ); - if ( scmTranslator != null ) + if ( scmTranslator == null ) { - releaseModel.setScm( createReleaseScm( releaseModel.getScm(), scmTranslator, releaseDescriptor ) ); + String message = "No SCM translator found - rewriting with the default values"; + result.appendDebug(message); + getLogger().debug( message ); + + // use this ScmTranslator as default. This will just set the tag + scmTranslator = new DefaultScmTranslator(); } - else - { - String message = "No SCM translator found - skipping rewrite"; - result.appendDebug( message ); - - getLogger().debug( message ); - } + releaseModel.setScm( createReleaseScm( releaseModel.getScm(), scmTranslator, releaseDescriptor ) ); } // rewrite dependencies