Commit 1adf5afc authored by Brian Long's avatar Brian Long
Browse files

Merge branch 'develop' into stable

parents e8adafad 9f586018
Loading
Loading
Loading
Loading
+18 −15
Original line number Diff line number Diff line
@@ -40,6 +40,9 @@ public abstract class AbstractMatchMojo extends AbstractRegexMojo {
	@Parameter( property = "patterns", required = true )
	protected List<String> patterns;
	
	@Parameter( property = "negate", required = true, defaultValue = "false" )
	protected boolean negate = false;

	private List<Pattern> compiledPatterns;
	
	@Override
@@ -47,6 +50,8 @@ public abstract class AbstractMatchMojo extends AbstractRegexMojo {
		boolean matches = this.matches(text);
		if (matches)
        	this.getLog().debug("Matches!");
		if (props == null)
			props = this.project.getProperties();
		props.setProperty(newPropertyName, String.valueOf(matches));
	}
	
@@ -79,30 +84,28 @@ public abstract class AbstractMatchMojo extends AbstractRegexMojo {
			
		if (this.allowMultiLineMatch)
			return this.matches(strbuilder.toString());
		return false;
		return this.negate;
	}
	
	protected boolean matches(String text) {
		if (text == null)
			text = "";
		
    	for (Pattern pattern : this.compiledPatterns) {
        	this.getLog().debug("Applying regex pattern: " + pattern);
        		
    		if (text == null) {
    			// TODO we want to capture this somehow
    		} else {
        	this.getLog().debug("Operating on value: " + text);
        	
    		Matcher matcher = pattern.matcher(text);
    		if (this.allowPartialMatch) {
    			if (matcher.find())
        				return true;
    				return !this.negate;
    		} else {
    			if (matcher.matches())
        				return true;
        		}
    				return !this.negate;
    		}
    	}

    	return false;
    	return this.negate;
    }
	
	@Override
+3 −5
Original line number Diff line number Diff line
@@ -82,12 +82,10 @@ public abstract class AbstractRegexMojo extends AbstractMojo {
    	this.getLog().debug("Finding property: " + propertyName);
    	
		Properties props = this.propResolver.resolveScope(propertyName);
		if (props == null) {
        	this.getLog().info("Property not found: " + propertyName);
			return;
		}
		if (props == null)
        	this.getLog().debug("Property not found: " + propertyName);

    	String propertyValue = props.getProperty(propertyName);
    	String propertyValue = props == null ? null : props.getProperty(propertyName);
    	this.executeOnText(props, propertyValue, newPropertyName);
    }
    
+16 −18
Original line number Diff line number Diff line
@@ -45,11 +45,15 @@ public abstract class AbstractReplaceMojo extends AbstractRegexMojo {
    
	@Override
	protected void executeOnText(Properties props, String text, String newPropertyName) {
		if (text == null)
			text = "";
    	String originalText = text;
    	text = this.replaceAll(text);
    	
		if (this.getLog().isDebugEnabled() && !text.equals(originalText))
        	this.getLog().debug("Manipulated value: " + text);
		if (props == null)
			props = this.project.getProperties();
		props.setProperty(newPropertyName, text);
	}
	
@@ -106,21 +110,18 @@ public abstract class AbstractReplaceMojo extends AbstractRegexMojo {
	}
	
	protected String replaceFirst(String text) {
		if (text == null)
			text = "";
		if (this.getLog().isDebugEnabled())
			this.getLog().debug("replace first: " + text.length());
		
    	for (Pair<Pattern, String> regex : this.compiledRegexes) {
        	this.getLog().debug("Applying regex pattern: " + regex.getLeft());
        		
    		if (text == null) {
    			// TODO we want to capture this somehow
    		} else {
        	this.getLog().debug("Operating on value: " + text);
        	
    		Matcher matcher = regex.getLeft().matcher(text);
    		text = matcher.replaceFirst(regex.getRight());
    	}
    	}
    	
    	return text;
	}
@@ -180,21 +181,18 @@ public abstract class AbstractReplaceMojo extends AbstractRegexMojo {
	}
	
	protected String replaceAll(String text) {
		if (text == null)
			text = "";
		if (this.getLog().isDebugEnabled())
			this.getLog().debug("replace all: " + text.length());
		
    	for (Pair<Pattern, String> regex : this.compiledRegexes) {
        	this.getLog().debug("Applying regex pattern: " + regex.getLeft());
        		
    		if (text == null) {
    			// TODO we want to capture this somehow
    		} else {
        	this.getLog().debug("Operating on value: " + text);
        	
    		Matcher matcher = regex.getLeft().matcher(text);
    		text = matcher.replaceAll(regex.getRight());
    	}
    	}
    	
    	return text;
	}
+1 −1
Original line number Diff line number Diff line
@@ -69,7 +69,7 @@ public class MatchFileContentMojo extends AbstractMatchMojo {
			throw new MojoExecutionException("Execution failed due to an I/O related issue", ie);
		}
    	
    	return false;
    	return this.negate;
    }
    
    @Override