/* * @(#)RegulationDispatchActivityInformation.java * * Copyright 2011 Instituto Superior Tecnico * Founding Authors: Anil Kassamali * * https://fenix-ashes.ist.utl.pt/ * * This file is part of the Dispatch Registry Module. * * The Dispatch Registry Module is free software: you can * redistribute it and/or modify it under the terms of the GNU Lesser General * Public License as published by the Free Software Foundation, either version * 3 of the License, or (at your option) any later version. * * The Dispatch Registry Module is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with the Dispatch Registry Module. If not, see . * */ package module.regulation.dispatch.domain.activities; import java.io.IOException; import java.io.InputStream; import module.organization.domain.Person; import module.regulation.dispatch.domain.RegulationDispatchProcessFile; import module.regulation.dispatch.domain.RegulationDispatchQueue; import module.regulation.dispatch.domain.RegulationDispatchWorkflowMetaProcess; import module.workflow.activities.ActivityInformation; import org.joda.time.LocalDate; import pt.utl.ist.fenix.tools.util.Strings; /** * * @author Anil Kassamali * */ public class RegulationDispatchActivityInformation extends ActivityInformation { private static final long serialVersionUID = 1L; private String reference; private LocalDate emissionDate; private String dispatchDescription; private Person emissor; private String regulationReference; private RegulationDispatchQueue queue; private Strings articles; private InputStream file; private String fileName; private Long fileSize; private String mimeType; private RegulationDispatchProcessFile regulationDispatchProcessFile; protected RegulationDispatchActivityInformation() { super(null, null); } public RegulationDispatchActivityInformation(final RegulationDispatchWorkflowMetaProcess process, final AbstractWorkflowActivity activity) { super(process, activity); setReference(process.getReference()); setEmissionDate(process.getEmissionDate()); setDispatchDescription(process.getDispatchDescription()); setEmissor(process.getEmissor()); setRegulationReference(process.getRegulationReference()); setArticles(process.getArticles()); } public RegulationDispatchActivityInformation(final RegulationDispatchWorkflowMetaProcess process, final RegulationDispatchProcessFile file, final AbstractWorkflowActivity activity) { this(process, activity); setRegulationDispatchProcessFile(file); } public String getReference() { return reference; } public void setReference(String reference) { this.reference = reference; } public LocalDate getEmissionDate() { return emissionDate; } public void setEmissionDate(LocalDate emissionDate) { this.emissionDate = emissionDate; } public String getDispatchDescription() { return dispatchDescription; } public void setDispatchDescription(String description) { this.dispatchDescription = description; } public Person getEmissor() { return emissor; } public void setEmissor(Person emissor) { this.emissor = emissor; } public String getRegulationReference() { return regulationReference; } public void setRegulationReference(String regulationReference) { this.regulationReference = regulationReference; } public RegulationDispatchQueue getQueue() { return queue; } public void setQueue(RegulationDispatchQueue queue) { this.queue = queue; } public InputStream getFile() { return file; } public void setFile(InputStream file) { this.file = file; } public String getFileName() { return fileName; } public void setFileName(String fileName) { this.fileName = fileName; } public Long getFileSize() { return fileSize; } public void setFileSize(Long fileSize) { this.fileSize = fileSize; } public String getMimeType() { return mimeType; } public void setMimeType(String mimeType) { this.mimeType = mimeType; } public RegulationDispatchProcessFile getRegulationDispatchProcessFile() { return regulationDispatchProcessFile; } public void setRegulationDispatchProcessFile(RegulationDispatchProcessFile regulationDispatchProcessFile) { this.regulationDispatchProcessFile = regulationDispatchProcessFile; } public Strings getArticles() { return articles; } public void setArticles(Strings articles) { this.articles = articles; } public byte[] getFileContent() throws IOException { byte[] contents = new byte[(int) this.getFileSize().longValue()]; getFile().read(contents); return contents; } }