📄 dialogmessage.java
字号:
/** * Changes the PeerGroup name of the originator of this DialogMessage object * * @param groupName the new PeerGroup name */ public void setGroupName(String groupName) { this.groupName = groupName != null ? groupName : DEFAULT_GROUP; } /** * Get the command encapsulated by this DialogMessage object * * @return the command encapsulated by this DialogMessage object */ public String getCommand() { return this.command; } /** * Changes the command encapsulated by this DialogMessage object * * @param command the new command encapsulated by this DialogMessage object */ public void setCommand(String command) { this.command = command; } /** * Get the label encapsulated by this DialogMessage object * * @return the label encapsulated by this DialogMessage object */ public String getLabel() { return this.label; } /** * Changes the label encapsulated by this DialogMessage object * * @param label the new label encapsulated by this DialogMessage object */ public void setLabel(String label) { this.label = label; } /** * Get the time at which this DialogMessage object was created * * @return the timestamp of this DialogMessage object */ public Date getTimeStamp() { return this.timeStamp; } public MessageElement addMessageElement(String key, MessageElement me) { MessageElement ome = null; if (key != null && me != null) { if (this.elements == null) { this.elements = new HashMap<String, MessageElement>(); } ome = this.elements.put(key, me); } return ome; } public void addMessageElements(Map<String, MessageElement> me) { String key; if (me == null) { return; } for (String s : me.keySet()) { key = s; addMessageElement(key, me.get(key)); } } public MessageElement getMessageElement(String key) { return this.elements != null ? this.elements.get(key) : null; } public Map<String, MessageElement> getMessageElements() { return this.elements; } public Iterator getMessageElementIterator() { return this.elements != null ? this.elements.keySet().iterator() : Collections.EMPTY_MAP.keySet().iterator(); } public Message toMessage(DialogMessage template) { Message msg = new Message(); overlay(template); setLabel(null); /// add the relevant messge elements String s = getHtmlMessage(); if (s != null) { msg.addMessageElement(new StringMessageElement(keys.message, s.trim(), null)); if (plainTextMessage == null) { String plainText = Text.replace(s.trim(), Text.MARKUP, Text.EMPTY).trim(); msg.addMessageElement(new StringMessageElement(keys.legacyMessage, plainText, null)); } else { msg.addMessageElement(new StringMessageElement(keys.legacyMessage, plainTextMessage, null)); } } s = getOriginator(); if (s != null) { msg.addMessageElement(new StringMessageElement(keys.originator, s, null)); } s = getGroupId(); if (s != null) { msg.addMessageElement(new StringMessageElement(keys.groupId, s, null)); } s = getGroupName(); if (s != null) { msg.addMessageElement(new StringMessageElement(keys.groupName, s, null)); } s = getCommand(); if (s != null) { msg.addMessageElement(new StringMessageElement(keys.command, s, null)); } // xxx: msg.addMessageElement String key; for (Iterator mei = getMessageElementIterator(); mei.hasNext();) { key = (String) mei.next(); msg.addMessageElement(getMessageElement(key)); } return msg; } /** * Get a string representation of this DialogMessage object * * @return a string representation of this DialogMessage object */ public String toString() { StringBuffer sb = new StringBuffer(); sb.append("originator: ").append(this.originator).append(NEW_LINE); sb.append("htmlMessage: ").append(this.htmlMessage).append(NEW_LINE); sb.append("groupId: ").append(this.groupId).append(NEW_LINE); sb.append("groupName: ").append(this.groupName).append(NEW_LINE); sb.append("command: ").append(this.command).append(NEW_LINE); sb.append("label: ").append(this.label).append(NEW_LINE); sb.append("timeStamp: ").append(this.timeStamp).append(NEW_LINE); sb.append("keys: ").append(this.keys.originator).append(NEW_LINE); String k; for (Iterator ei = getMessageElementIterator(); ei.hasNext();) { k = (String) ei.next(); sb.append("element: ").append(k).append(NEW_LINE); sb.append(getMessageElement(k).toString()).append(NEW_LINE); } return sb.toString(); } /** * Create a copy of this DialogMessage object * * @return the newly created copy of this DialogMessage object */ @SuppressWarnings({"CloneDoesntCallSuperClone"}) public Object clone() { return new DialogMessage(this); } /** * Get the content of the element with the indicated tag int the * Message object msg. * * @param msg the Message containing the desired tag * @param tag the desired tag */ protected static String getElement(Message msg, String tag) { return getElement(msg, tag, null); } /** * Get the content of the element with the indicated tag int the * Message object msg. * * @param msg the Message containing the desired tag * @param tag the desired tag * @param defaultValue the value to be returned if the desired * tag was not found */ protected static String getElement(Message msg, String tag, String defaultValue) { MessageElement me = msg.getMessageElement(tag); return me != null ? me.toString() : defaultValue; } protected void setKeys(DialogKeys keys) { this.keys = keys; } /** * Make sure that all the relevant tags of the DialogMessage * object are set to sensible default values * * @param dialogMessage the DialogMessage which to check for sensible default * values */ protected void overlay(DialogMessage dialogMessage) { String s = getOriginator(); // check that orignator is set if (s == null || s.trim().length() == 0 || s.equals(DEFAULT_ORIGINATOR)) { setOriginator(dialogMessage.getOriginator()); } // check that there is a useful htmlMessage s = getHtmlMessage(); if (s == null || s.trim().length() == 0) { setHtmlMessage(dialogMessage.getHtmlMessage()); } // check that the PeerGroup id is set s = getGroupId(); if (s == null || s.trim().length() == 0 || s.equals(DEFAULT_GROUP_ID)) { setGroupId(dialogMessage.getGroupId()); } // check that the group name is set s = getGroupName(); if (s == null || s.trim().length() == 0 || s.equals(DEFAULT_GROUP)) { setGroupName(dialogMessage.getGroupName()); } // check that the command is set s = getCommand(); if (s == null || s.trim().length() == 0) { setCommand(dialogMessage.getCommand()); } // check that the label is set s = getLabel(); if (s == null || s.trim().length() == 0) { setLabel(dialogMessage.getLabel()); } } /** * Changes the time this DialogMessage was created * * @param timeStamp the new timestamp of this DialogMessage object */ private void setTimeStamp(Date timeStamp) { this.timeStamp = timeStamp; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -