@Override public Object getValue( String expression ) { if ( "build.timestamp".equals( expression ) || "maven.build.timestamp".equals( expression ) ) { return mavenBuildTimestamp.formattedTimestamp(); } return null; } }
public Object getValue(String expression) { if ("build.timestamp".equals(expression) || "maven.build.timestamp".equals(expression)) { return mavenBuildTimestamp.formattedTimestamp(); } return null; } }
@Override public Object getValue( String expression ) { if ( "build.timestamp".equals( expression ) || "maven.build.timestamp".equals( expression ) ) { return mavenBuildTimestamp.formattedTimestamp(); } return null; } }
/** * This solves https://issues.apache.org/jira/browse/MRESOURCES-99.<br/> * BUT:<br/> * This should be done different than defining those properties a second time, cause they have already being defined * in Maven Model Builder (package org.apache.maven.model.interpolation) via BuildTimestampValueSource. But those * can't be found in the context which can be got from the maven core.<br/> * A solution could be to put those values into the context by Maven core so they are accessible everywhere. (I'm * not sure if this is a good idea). Better ideas are always welcome. * <p> * The problem at the moment is that maven core handles usage of properties and replacements in * the model, but does not the resource filtering which needed some of the properties. * * @return the new instance with those properties. */ private Properties addSeveralSpecialProperties() { String timeStamp = new MavenBuildTimestamp(new Date(), timestampFormat).formattedTimestamp(); Properties additionalProperties = new Properties(); additionalProperties.put("mdpagegenerator.timestamp", timeStamp); if (project.getBasedir() != null) { additionalProperties.put("project.baseUri", project.getBasedir().getAbsoluteFile().toURI().toString()); } return additionalProperties; }