1 /** 2 * Copyright 2005-2015 The Kuali Foundation 3 * 4 * Licensed under the Educational Community License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.opensource.org/licenses/ecl2.php 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 package org.kuali.rice.krad.uif.util; 17 18 import org.kuali.rice.core.api.util.AbstractKeyValue; 19 import org.kuali.rice.krad.uif.element.Message; 20 21 /** 22 * KeyMessage object for key-value pairs that contain rich content in the value portion. By translating this content 23 * to message, the content will be parsed and replaced appropriately for KeyValue controls. 24 * 25 * @author Kuali Rice Team (rice.collab@kuali.org) 26 */ 27 public class KeyMessage extends AbstractKeyValue { 28 private Message message; 29 30 /** 31 * Constructor for KeyMessage 32 * 33 * @param key key 34 * @param value value 35 * @param message message with messageText set to value 36 */ 37 public KeyMessage(String key, String value, Message message) { 38 super(key, value); 39 this.message = message; 40 } 41 42 /** 43 * Constructor for KeyMessage 44 * 45 * @param key key 46 * @param value value 47 * @param message message with messageText set to value 48 * @param disabled boolean whether to enable the key/value or not 49 */ 50 public KeyMessage(String key, String value, Message message, boolean disabled) { 51 this(key, value, message); 52 this.disabled = disabled; 53 } 54 55 /** 56 * Set the key 57 * 58 * @param key 59 */ 60 public void setKey(String key) { 61 this.key = key; 62 } 63 64 /** 65 * Set the value 66 * 67 * @param value 68 */ 69 public void setValue(String value) { 70 this.value = value; 71 } 72 73 /** 74 * Get the message. The message will contain the translated/parsed value after its lifecycle executes. 75 * 76 * @return message with translated structure 77 */ 78 public Message getMessage() { 79 return message; 80 } 81 82 /** 83 * Set the message. The message should have the rich message value as its messageText 84 * 85 * @param message 86 */ 87 public void setMessage(Message message) { 88 this.message = message; 89 } 90 91 92 }