class ReleaseArtifactTransformation extends AbstractVersionTransformation {

    public void transformForResolve(Artifact artifact, RepositoryRequest request)
            throws ArtifactResolutionException, ArtifactNotFoundException {<FILL_FUNCTION_BODY>}

    public void transformForInstall(Artifact artifact, ArtifactRepository localRepository) {
        ArtifactMetadata metadata = createMetadata(artifact);

        artifact.addMetadata(metadata);
    }

    public void transformForDeployment(
            Artifact artifact, ArtifactRepository remoteRepository, ArtifactRepository localRepository) {
        ArtifactMetadata metadata = createMetadata(artifact);

        artifact.addMetadata(metadata);
    }

    private ArtifactMetadata createMetadata(Artifact artifact) {
        Versioning versioning = new Versioning();
        // TODO Should this be changed for MNG-6754 too?
        versioning.updateTimestamp();
        versioning.addVersion(artifact.getVersion());

        if (artifact.isRelease()) {
            versioning.setRelease(artifact.getVersion());
        }

        return new ArtifactRepositoryMetadata(artifact, versioning);
    }

    protected String constructVersion(Versioning versioning, String baseVersion) {
        return versioning.getRelease();
    }
}

        if (Artifact.RELEASE_VERSION.equals(artifact.getVersion())) {
            try {
                String version = resolveVersion(artifact, request);

                if (Artifact.RELEASE_VERSION.equals(version)) {
                    throw new ArtifactNotFoundException("Unable to determine the release version", artifact);
                }

                artifact.setBaseVersion(version);
                artifact.updateVersion(version, request.getLocalRepository());
            } catch (RepositoryMetadataResolutionException e) {
                throw new ArtifactResolutionException(e.getMessage(), artifact, e);
            }
        }
    
<methods>public non-sealed void <init>() ,public void transformForResolve(org.apache.maven.artifact.Artifact, List<org.apache.maven.artifact.repository.ArtifactRepository>, org.apache.maven.artifact.repository.ArtifactRepository) throws org.apache.maven.artifact.resolver.ArtifactResolutionException, org.apache.maven.artifact.resolver.ArtifactNotFoundException<variables>protected org.apache.maven.artifact.repository.metadata.RepositoryMetadataManager repositoryMetadataManager,protected org.apache.maven.repository.legacy.WagonManager wagonManager