bf102d6ce667f3b904f6768f61410cb456431d18
[jFCPlib.git] / src / main / java / net / pterodactylus / fcp / TestDDAReply.java
1 /*
2  * jFCPlib - TestDDAReply.java - Copyright © 2008 David Roden
3  *
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 2 of the License, or
7  * (at your option) any later version.
8  *
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.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17  */
18
19 package net.pterodactylus.fcp;
20
21 /**
22  * The “TestDDAReply” is sent as a response to {@link TestDDARequest}. If you
23  * specified that you wanted to read files from that directory
24  * {@link #getReadFilename()} will give you a filename. Similarly, if you
25  * specified that you want to write in the directory {@link #getWriteFilename()}
26  * will give you a filename to write {@link #getContentToWrite()} to.
27  *
28  * @author David ‘Bombe’ Roden <bombe@freenetproject.org>
29  */
30 public class TestDDAReply extends BaseMessage {
31
32         /**
33          * Creates a “TestDDAReply” message that wraps the received message.
34          *
35          * @param receivedMessage
36          *            The received message
37          */
38         TestDDAReply(FcpMessage receivedMessage) {
39                 super(receivedMessage);
40         }
41
42         /**
43          * Returns the directory the TestDDRequest was made for.
44          *
45          * @return The directory to test
46          */
47         public String getDirectory() {
48                 return getField("Directory");
49         }
50
51         /**
52          * Returns the filename you have to read to proof your ability to read that
53          * specific directory.
54          *
55          * @return The name of the file to read
56          */
57         public String getReadFilename() {
58                 return getField("ReadFilename");
59         }
60
61         /**
62          * Returns the filename you have to write to to proof your ability to write
63          * to that specific directory.
64          *
65          * @return The name of the file write to
66          */
67         public String getWriteFilename() {
68                 return getField("WriteFilename");
69         }
70
71         /**
72          * If you requested a test for writing permissions you have to write the
73          * return value of this method to the file given by
74          * {@link #getWriteFilename()}.
75          *
76          * @return The content to write to the file
77          */
78         public String getContentToWrite() {
79                 return getField("ContentToWrite");
80         }
81
82 }