/*
* The Kuali Financial System, a comprehensive financial management system for higher education.
*
* Copyright 2005-2014 The Kuali Foundation
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package org.kuali.kfs.sys.document.datadictionary;
import java.util.Map;
import org.kuali.kfs.sys.businessobject.AccountingLineParser;
import org.kuali.rice.kns.datadictionary.TransactionalDocumentEntry;
/**
* An extension of the Rice TransactionalDocumentEntry that allows for KFS-centric properties, such as
* Accounting Document validations
*/
public class FinancialSystemTransactionalDocumentEntry extends TransactionalDocumentEntry {
private Map<Class, String> validationMap;
private Map<String, AccountingLineGroupDefinition> accountingLineGroups;
private Class<? extends AccountingLineParser> importedLineParserClass;
private Integer maxDictionaryValidationDepth;
protected boolean allowsErrorCorrection = false;
protected boolean potentiallySensitive = false;
/**
* Gets the validationMap attribute.
* @return Returns the validationMap.
*/
public Map<Class, String> getValidationMap() {
return validationMap;
}
/**
* Sets the validationMap attribute value.
* @param validationMap The validationMap to set.
*/
public void setValidationMap(Map<Class, String> validationMap) {
this.validationMap = validationMap;
}
/**
* Gets the accountingLineGroups attribute.
* @return Returns the accountingLineGroups.
*/
public Map<String, AccountingLineGroupDefinition> getAccountingLineGroups() {
return accountingLineGroups;
}
/**
* Sets the accountingLineGroups attribute value.
* @param accountingLineGroups The accountingLineGroups to set.
*/
public void setAccountingLineGroups(Map<String, AccountingLineGroupDefinition> accountingLineGroups) {
this.accountingLineGroups = accountingLineGroups;
}
/**
* Gets the importedLineParserClass attribute.
* @return Returns the importedLineParserClass.
*/
public Class<? extends AccountingLineParser> getImportedLineParserClass() {
return importedLineParserClass;
}
/**
* Sets the importedLineParserClass attribute value.
* @param importedLineParserClass The importedLineParserClass to set.
*/
public void setImportedLineParserClass(Class<? extends AccountingLineParser> importedLineParser) {
this.importedLineParserClass = importedLineParser;
}
/**
* Gets the maxDictionaryValidationDepth attribute.
* @return Returns the maxDictionaryValidationDepth.
*/
public Integer getMaxDictionaryValidationDepth() {
return maxDictionaryValidationDepth;
}
/**
* Sets the maxDictionaryValidationDepth attribute value.
* @param maxDictionaryValidationDepth The maxDictionaryValidationDepth to set.
*/
public void setMaxDictionaryValidationDepth(Integer maxDictionaryValidationDepth) {
this.maxDictionaryValidationDepth = maxDictionaryValidationDepth;
}
/**
This field contains a value of true or false.
If true, then error correction is allowed for the document.
*/
public void setAllowsErrorCorrection(boolean allowsErrorCorrection) {
this.allowsErrorCorrection = allowsErrorCorrection;
}
/**
*
* @see org.kuali.rice.kns.datadictionary.TransactionalDocumentEntry#getAllowsErrorCorrection()
*/
public boolean getAllowsErrorCorrection() {
return allowsErrorCorrection;
}
/**
* Gets the potentiallySensitive attribute.
* @return Returns the potentiallySensitive.
*/
public boolean isPotentiallySensitive() {
return potentiallySensitive;
}
/**
* Sets the potentiallySensitive attribute value.
* @param potentiallySensitive The potentiallySensitive to set.
*/
public void setPotentiallySensitive(boolean potentiallySensitive) {
this.potentiallySensitive = potentiallySensitive;
}
}