package eu.dnetlib.data.download;

import eu.dnetlib.data.download.rmi.DownloadItem;

/**
 * Created by sandro on 06/11/14.
 */
public class DownloadReport {

    private int numberOfOccurrences;
    private String stackTrace;

	private DownloadItem downloadItem;


    public DownloadReport() {
        this.numberOfOccurrences =1;

    }

	public DownloadReport(int numberOfOccurrences, String stackTrace, DownloadItem downloadItem) {
		this.numberOfOccurrences = numberOfOccurrences;
        this.stackTrace = stackTrace;
		this.downloadItem = downloadItem;
	}

    public void incrementError(){
        this.numberOfOccurrences ++;
    }

    public void incrementError(int numberOfOccurrences){
        this.numberOfOccurrences += numberOfOccurrences;
    }

    /**
     * Getter for property 'numberOfOccurrences'.
     *
     * @return Value for property 'numberOfOccurrences'.
     */
    public int getNumberOfOccurrences() {

        return numberOfOccurrences;
    }

    /**
     * Setter for property 'numberOfOccurrences'.
     *
     * @param numberOfOccurrences Value to set for property 'numberOfOccurrences'.
     */
    public void setNumberOfOccurrences(int numberOfOccurrences) {
        this.numberOfOccurrences = numberOfOccurrences;
    }

    /**
     * Getter for property 'stackTrace'.
     *
     * @return Value for property 'stackTrace'.
     */
    public String getStackTrace() {
        return stackTrace;
    }

    /**
     * Setter for property 'stackTrace'.
     *
     * @param stackTrace Value to set for property 'stackTrace'.
     */
    public void setStackTrace(String stackTrace) {
        this.stackTrace = stackTrace;
    }

	public DownloadItem getDownloadItem() {
		return downloadItem;
	}

	public void setDownloadItem(final DownloadItem downloadItem) {
		this.downloadItem = downloadItem;
	}
}
