001 /* 002 * Copyright 2011 The Kuali Foundation. 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.kfs.module.cg.businessobject; 017 018 import java.util.LinkedHashMap; 019 020 import org.kuali.rice.kns.bo.Inactivateable; 021 import org.kuali.rice.kns.bo.PersistableBusinessObjectBase; 022 023 /** 024 * Represents a relationship between a {@link Proposal} and a {@link ResearchRisk}. 025 */ 026 public class ProposalResearchRisk extends PersistableBusinessObjectBase implements Inactivateable { 027 028 private String researchRiskTypeCode; 029 private Long proposalNumber; 030 private boolean active; 031 032 private Proposal proposal; 033 private ResearchRiskType researchRiskType; 034 035 /** 036 * Default constructor. 037 */ 038 public ProposalResearchRisk() { 039 super(); 040 } 041 042 @Override 043 protected LinkedHashMap toStringMapper() { 044 045 LinkedHashMap m = new LinkedHashMap(); 046 m.put("proposalNumber", proposalNumber); 047 m.put("researchRiskTypeCode", researchRiskTypeCode); 048 m.put("active", Boolean.toString(active)); 049 050 return m; 051 } 052 053 /** 054 * Gets the {@link Proposal}. 055 * 056 * @return 057 */ 058 public Proposal getProposal() { 059 return proposal; 060 } 061 062 /** 063 * Sets the {@link Proposal}. 064 * 065 * @param proposal 066 */ 067 public void setProposal(Proposal proposal) { 068 this.proposal = proposal; 069 } 070 071 /** 072 * Gets the {@link ResearchRiskType} of the risk associated with the {@link Proposal}. 073 * 074 * @return the {@link ResearchRiskType}. 075 */ 076 public ResearchRiskType getResearchRiskType() { 077 return researchRiskType; 078 } 079 080 /** 081 * Sets the {@link ResearchRiskType} associated with the {@link Proposal}. 082 * 083 * @param researchRiskType 084 */ 085 public void setResearchRiskType(ResearchRiskType researchRiskType) { 086 this.researchRiskType = researchRiskType; 087 } 088 089 /** 090 * Returns whether or not this object is active. 091 * 092 * @return true or false 093 */ 094 public boolean isActive() { 095 return active; 096 } 097 098 /** 099 * Sets the active indicator for this object. 100 * 101 * @param active 102 */ 103 public void setActive(boolean active) { 104 this.active = active; 105 } 106 107 /** 108 * Gets the key of the {@link Proposal} related to the {@link ResearchRisk}. 109 * 110 * @return the id of the {@link Proposal} related to the {@link ResearchRisk}. 111 */ 112 public Long getProposalNumber() { 113 return proposalNumber; 114 } 115 116 /** 117 * Sets the key of the {@link Proposal} related to the {@link ResearchRisk}. 118 * 119 * @param the id of the {@link Proposal} related to the {@link ResearchRisk}. 120 */ 121 public void setProposalNumber(Long proposalNumber) { 122 this.proposalNumber = proposalNumber; 123 } 124 125 /** 126 * Gets the code of the {@link ResearchRiskType} associated to the {@link Proposal}. 127 * 128 * @return the code of the {@link ResearchRiskType} associated to the {@link Proposal}. 129 */ 130 public String getResearchRiskTypeCode() { 131 return researchRiskTypeCode; 132 } 133 134 /** 135 * Gets the code of the {@link ResearchRiskType} associated to the {@link Proposal}. 136 * 137 * @param the code of the type of the {@link ResearchRiskType} associated to the {@link Proposal}. 138 */ 139 public void setResearchRiskTypeCode(String researchRiskTypeCode) { 140 this.researchRiskTypeCode = researchRiskTypeCode; 141 } 142 143 }