2 * jFCPlib - ModifyPeer.java - Copyright © 2008–2016 David Roden
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 package net.pterodactylus.fcp;
21 * The “ModifyPeer” request lets you modify certain properties of a peer.
23 * @author David ‘Bombe’ Roden <bombe@freenetproject.org>
25 public class ModifyPeer extends FcpMessage {
27 public ModifyPeer(String identifier, String nodeIdentifier) {
29 setField("Identifier", identifier);
30 setField("NodeIdentifier", nodeIdentifier);
34 public ModifyPeer(String nodeIdentifier, Boolean allowLocalAddresses, Boolean disabled, Boolean listenOnly) {
36 setField("NodeIdentifier", nodeIdentifier);
37 if (allowLocalAddresses != null) {
38 setAllowLocalAddresses(allowLocalAddresses);
40 if (disabled != null) {
41 setEnabled(!disabled);
43 if (listenOnly != null) {
44 setListenOnly(listenOnly);
48 public void setAllowLocalAddresses(boolean allowLocalAddresses) {
49 setField("AllowLocalAddresses", String.valueOf(allowLocalAddresses));
52 public void setEnabled(boolean enabled) {
53 setField("IsDisabled", String.valueOf(!enabled));
56 public void setListenOnly(boolean listenOnly) {
57 setField("IsListenOnly", String.valueOf(listenOnly));
60 public void setBurstOnly(boolean burstOnly) {
61 setField("IsBurstOnly", String.valueOf(burstOnly));
64 public void setIgnoreSource(boolean ignoreSource) {
65 setField("IgnoreSourcePort", String.valueOf(ignoreSource));