// Path: src/main/java/org/jenkinsci/plugins/SemanticVersioning/naming/NamingStrategy.java
// public interface NamingStrategy extends Describable<NamingStrategy>, Serializable {
// 	String exportNames(AppVersion current, Map<String, String> vars, boolean useBuildNumber, int buildNumber);
// }
// 
// Path: src/main/java/org/jenkinsci/plugins/SemanticVersioning/parsing/BuildDefinitionParser.java
// public interface BuildDefinitionParser extends Describable<BuildDefinitionParser> {
//     AppVersion extractAppVersion(FilePath workspace, PrintStream logger) throws IOException, InvalidBuildFileFormatException;
// }


import hudson.FilePath;
import jenkins.security.MasterToSlaveCallable;
import org.jenkinsci.plugins.SemanticVersioning.naming.NamingStrategy;
import org.jenkinsci.plugins.SemanticVersioning.parsing.BuildDefinitionParser;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.io.Serializable;
import java.net.InetAddress;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
package org.jenkinsci.plugins.SemanticVersioning;



public class SemanticVersioningCallable extends MasterToSlaveCallable<SemanticVersioningResult, IOException> implements Serializable {

	private static final long serialVersionUID = -2239554739563636620L;

	private String env;
	private boolean useBuildNumber;
	
	private FilePath workspace;
	private int buildNumber;
	
	private BuildDefinitionParser parser;
	private NamingStrategy namingStrategy;
	
    public SemanticVersioningCallable() {
	}

	@Override
	public SemanticVersioningResult call() throws IOException {
		
		SemanticVersioningResult out = new SemanticVersioningResult();
		ByteArrayOutputStream baos = new ByteArrayOutputStream();
		PrintStream ps = new PrintStream(baos,true,"utf-8");
		
		ps.println("executing on "+InetAddress.getLocalHost().getHostName());
		
// Path: src/main/java/org/jenkinsci/plugins/SemanticVersioning/naming/NamingStrategy.java
// public interface NamingStrategy extends Describable<NamingStrategy>, Serializable {
// 	String exportNames(AppVersion current, Map<String, String> vars, boolean useBuildNumber, int buildNumber);
// }
// 
// Path: src/main/java/org/jenkinsci/plugins/SemanticVersioning/parsing/BuildDefinitionParser.java
// public interface BuildDefinitionParser extends Describable<BuildDefinitionParser> {
//     AppVersion extractAppVersion(FilePath workspace, PrintStream logger) throws IOException, InvalidBuildFileFormatException;
// }


// Path: src/main/java/org/jenkinsci/plugins/SemanticVersioning/SemanticVersioningCallable.java
import hudson.FilePath;
import jenkins.security.MasterToSlaveCallable;
import org.jenkinsci.plugins.SemanticVersioning.naming.NamingStrategy;
import org.jenkinsci.plugins.SemanticVersioning.parsing.BuildDefinitionParser;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.io.Serializable;
import java.net.InetAddress;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

package org.jenkinsci.plugins.SemanticVersioning;



public class SemanticVersioningCallable extends MasterToSlaveCallable<SemanticVersioningResult, IOException> implements Serializable {

	private static final long serialVersionUID = -2239554739563636620L;

	private String env;
	private boolean useBuildNumber;
	
	private FilePath workspace;
	private int buildNumber;
	
	private BuildDefinitionParser parser;
	private NamingStrategy namingStrategy;
	
    public SemanticVersioningCallable() {
	}

	@Override
	public SemanticVersioningResult call() throws IOException {
		
		SemanticVersioningResult out = new SemanticVersioningResult();
		ByteArrayOutputStream baos = new ByteArrayOutputStream();
		PrintStream ps = new PrintStream(baos,true,"utf-8");
		
		ps.println("executing on "+InetAddress.getLocalHost().getHostName());
		
		try {