class ProjectBuildingException extends Exception {
    private final String projectId;

    private File pomFile;

    private List<ProjectBuildingResult> results;

    public ProjectBuildingException(String projectId, String message, Throwable cause) {
        super(createMessage(message, projectId, null), cause);
        this.projectId = projectId;
    }

    /**
     * @param projectId
     * @param message
     * @param pomFile   pom file location
     */
    public ProjectBuildingException(String projectId, String message, File pomFile) {
        super(createMessage(message, projectId, pomFile));
        this.projectId = projectId;
        this.pomFile = pomFile;
    }

    /**
     * @param projectId
     * @param message
     * @param pomFile   pom file location
     * @param cause
     */
    protected ProjectBuildingException(String projectId, String message, File pomFile, Throwable cause) {
        super(createMessage(message, projectId, pomFile), cause);
        this.projectId = projectId;
        this.pomFile = pomFile;
    }

    public ProjectBuildingException(List<ProjectBuildingResult> results) {
        super("Some problems were encountered while processing the POMs");
        this.projectId = "";
        this.results = results;
    }

    public File getPomFile() {
        return pomFile;
    }

    /**
     * @deprecated use {@link #getPomFile()}
     */
    @Deprecated
    public String getPomLocation() {<FILL_FUNCTION_BODY>}

    public String getProjectId() {
        return projectId;
    }

    public List<ProjectBuildingResult> getResults() {
        return results;
    }

    private static String createMessage(String message, String projectId, File pomFile) {
        StringBuilder buffer = new StringBuilder(256);
        buffer.append(message);
        buffer.append(" for project ").append(projectId);
        if (pomFile != null) {
            buffer.append(" at ").append(pomFile.getAbsolutePath());
        }
        return buffer.toString();
    }
}

        if (getPomFile() != null) {
            return getPomFile().getAbsolutePath();
        } else {
            return "null";
        }
    
<methods>public void <init>() ,public void <init>(java.lang.String) ,public void <init>(java.lang.Throwable) ,public void <init>(java.lang.String, java.lang.Throwable) <variables>static final long serialVersionUID