/*
- * jFCPlib - FcpMessage.java - Copyright © 2008 David Roden
+ * jFCPlib - FcpMessage.java - Copyright © 2008–2016 David Roden
*
- * This program is free software; you can redistribute it and/or modify
+ * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * 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,
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package net.pterodactylus.fcp;
}
/**
- * Creates a new FCP message with the given name and the given payload input
- * stream. The payload input stream is not read until the message is sent to
- * the node using {@link FcpConnection#sendMessage(FcpMessage)}.
+ * Creates a new FCP message with the given name and the given payload
+ * input stream. The payload input stream is not read until the message is
+ * sent to the node using {@link FcpConnection#sendMessage(FcpMessage)}.
*
* @param name
* The name of the message
*
* @param field
* The name of the field to check for
- * @return <code>true</code> if the message has a field with the given name,
- * <code>false</code> otherwise
+ * @return <code>true</code> if the message has a field with the given
+ * name, <code>false</code> otherwise
*/
public boolean hasField(String field) {
return fields.containsKey(field);
fields.put(field, value);
}
+ public FcpMessage put(String field, String value) {
+ setField(field, value);
+ return this;
+ }
+
/**
* Returns the value of the given field.
*
* Writes this message to the given output stream. If the message has a
* payload (i.e. {@link #payloadInputStream} is not <code>null</code>) the
* payload is written to the given output stream after the message as well.
- * That means that this method can only be called once because on the second
- * invocation the payload input stream could not be read (again).
+ * That means that this method can only be called once because on the
+ * second invocation the payload input stream could not be read (again).
*
* @param outputStream
* The output stream to write the message to