All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.morpheusdata.model.ReportResult Maven / Gradle / Ivy

package com.morpheusdata.model;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.morpheusdata.core.providers.ReportProvider;
import com.morpheusdata.model.serializers.ModelAsIdOnlySerializer;

import java.util.Map;

/**
 * Represents a report result. A report result is a particular report run containing all filter information, the user and account who
 * executed it as well as the status. This is passed often into the {@link ReportProvider} methods for both
 * generating a report as well as displaying a report.
 *
 * @author David Estes
 * @since 0.8.0
 */
public class ReportResult extends MorpheusModel {
	@JsonSerialize(using= ModelAsIdOnlySerializer.class)
	protected Account account;
	@JsonSerialize(using=ModelAsIdOnlySerializer.class)
	protected User createdBy;
	protected String name;
	protected ReportType type;
	protected Status status = Status.requested;
	protected String reportTitle;
	protected String filterTitle;
	protected Long reportJobId;

	public Account getAccount() {
		return account;
	}

	public void setAccount(Account account) {
		this.account = account;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public ReportType getType() {
		return type;
	}

	public void setType(ReportType type) {
		this.type = type;
	}

	public Status getStatus() {
		return status;
	}

	public void setStatus(Status status) {
		this.status = status;
	}

	public String getReportTitle() {
		return reportTitle;
	}

	public void setReportTitle(String reportTitle) {
		this.reportTitle = reportTitle;
	}

	public String getFilterTitle() {
		return filterTitle;
	}

	public void setFilterTitle(String filterTitle) {
		this.filterTitle = filterTitle;
	}

	public Long getReportJobId() {
		return reportJobId;
	}

	public void setReportJobId(Long reportJobId) {
		this.reportJobId = reportJobId;
	}

	public User getCreatedBy() {
		return createdBy;
	}

	public void setCreatedBy(User createdBy) {
		this.createdBy = createdBy;
	}

	public enum Status {
		requested,
		generating,
		ready,
		failed
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy