X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Fnet%2Fpterodactylus%2Fjsite%2Fcore%2FRequest.java;h=2c79856d7436118a9ba4fbe42791f04319038271;hb=f42b615dcbe440d9908385754948d6448a3b67ff;hp=82df6f8e8b2e7ae39d3147ad3cafc278658998ad;hpb=416469c4cb7d9ce820c3b2c0bdfeb2077f994042;p=jSite2.git
diff --git a/src/net/pterodactylus/jsite/core/Request.java b/src/net/pterodactylus/jsite/core/Request.java
index 82df6f8..2c79856 100644
--- a/src/net/pterodactylus/jsite/core/Request.java
+++ b/src/net/pterodactylus/jsite/core/Request.java
@@ -25,7 +25,6 @@ import net.pterodactylus.util.beans.AbstractBean;
* A request is an ongoing download or upload reported by the freenet node.
*
* @author David âBombeâ Roden <bombe@freenetproject.org>
- * @version $Id$
*/
public class Request extends AbstractBean {
@@ -33,7 +32,6 @@ public class Request extends AbstractBean {
* The type of a request.
*
* @author David âBombeâ Roden <bombe@freenetproject.org>
- * @version $Id$
*/
public enum Type {
@@ -57,6 +55,18 @@ public class Request extends AbstractBean {
/** Name of the âclient tokenâ property. */
public static final String PROPERTY_CLIENT_TOKEN = "clientToken";
+ /** Name of the âfinishedâ property. */
+ public static final String PROPERTY_FINISHED = "finished";
+
+ /** Name of the âsuccessfulâ property. */
+ public static final String PROPERTY_SUCCESSFUL = "successful";
+
+ /** Name of the âfetchableâ property. */
+ public static final String PROPERTY_FETCHABLE = "fetchable";
+
+ /** Name of the âURIâ property. */
+ public static final String PROPERTY_URI = "uri";
+
/** Name of the âtotal blocksâ property. */
public static final String PROPERTY_TOTAL_BLOCKS = "totalBlocks";
@@ -87,6 +97,18 @@ public class Request extends AbstractBean {
/** The client token of the request. */
private String clientToken;
+ /** Whether the request is finished. */
+ private boolean finished;
+
+ /** Whether the request was finished successfully. */
+ private boolean successful;
+
+ /** Whether the data is already fetchable (in case of put requests). */
+ private boolean fetchable;
+
+ /** The generated URI. */
+ private String uri;
+
/** The total number of blocks. */
private int totalBlocks;
@@ -156,8 +178,7 @@ public class Request extends AbstractBean {
* @param type
* The type of the request
*/
-
- public void setType(Type type) {
+ void setType(Type type) {
Type oldType = this.type;
this.type = type;
fireIfPropertyChanged(PROPERTY_TYPE, oldType, type);
@@ -178,13 +199,105 @@ public class Request extends AbstractBean {
* @param clientToken
* The client token of the request
*/
- public void setClientToken(String clientToken) {
+ void setClientToken(String clientToken) {
String oldClientToken = this.clientToken;
this.clientToken = clientToken;
fireIfPropertyChanged(PROPERTY_CLIENT_TOKEN, oldClientToken, clientToken);
}
/**
+ * Returns whether the request has finished.
+ *
+ * @see #isSuccessful()
+ * @return true
if the request is finished,
+ * false
otherwise
+ */
+ public boolean isFinished() {
+ return finished;
+ }
+
+ /**
+ * Sets whether the request has finished.
+ *
+ * @param finished
+ * true
if the request has finished,
+ * false
otherwise
+ */
+ void setFinished(boolean finished) {
+ boolean oldFinished = this.finished;
+ this.finished = finished;
+ firePropertyChange(PROPERTY_FINISHED, oldFinished, finished);
+ }
+
+ /**
+ * Returns whether the request finished successfully. This value will only
+ * have meaning if {@link #isFinished()} returns true
.
+ *
+ * @return true
if the request finished successfully,
+ * false
otherwise
+ */
+ public boolean isSuccessful() {
+ return successful;
+ }
+
+ /**
+ * Sets whether this request finished successfully.
+ *
+ * @param successful
+ * true
if the request finished successfully,
+ * false
otherwise
+ */
+ void setSuccessful(boolean successful) {
+ boolean oldSuccessful = this.successful;
+ this.successful = successful;
+ firePropertyChange(PROPERTY_SUCCESSFUL, oldSuccessful, successful);
+ }
+
+ /**
+ * Returns whether the data inserted by this {@link Type#put} or
+ * {@link Type#putDir} request is already fetchable by other clients.
+ *
+ * @return true
if the data is already fetchable,
+ * false
otherwise
+ */
+ public boolean isFetchable() {
+ return fetchable;
+ }
+
+ /**
+ * Sets whether the data inserted by this {@link Type#put} or
+ * {@link Type#putDir} request is already fetchable by other clients.
+ *
+ * @param fetchable
+ * true
if the data is already fetchable,
+ * false
otherwise
+ */
+ void setFetchable(boolean fetchable) {
+ boolean oldFetchable = this.fetchable;
+ this.fetchable = fetchable;
+ firePropertyChange(PROPERTY_FETCHABLE, oldFetchable, fetchable);
+ }
+
+ /**
+ * Returns the URI generated by this request.
+ *
+ * @return The generated URI
+ */
+ public String getURI() {
+ return uri;
+ }
+
+ /**
+ * Sets the URI generated by this request.
+ *
+ * @param uri
+ * The generated URI
+ */
+ void setURI(String uri) {
+ this.uri = uri;
+ }
+
+ /**
* Returns the total number of blocks of a request. Until
* {@link #isTotalFinalized()} returns true
this value may
* change!
@@ -201,7 +314,7 @@ public class Request extends AbstractBean {
* @param totalBlocks
* The total number of blocks
*/
- public void setTotalBlocks(int totalBlocks) {
+ void setTotalBlocks(int totalBlocks) {
int oldTotalBlocks = this.totalBlocks;
this.totalBlocks = totalBlocks;
fireIfPropertyChanged(PROPERTY_TOTAL_BLOCKS, oldTotalBlocks, totalBlocks);
@@ -218,7 +331,7 @@ public class Request extends AbstractBean {
* @param requiredBlocks
* the requiredBlocks to set
*/
- public void setRequiredBlocks(int requiredBlocks) {
+ void setRequiredBlocks(int requiredBlocks) {
int oldRequiredBlocks = this.requiredBlocks;
this.requiredBlocks = requiredBlocks;
fireIfPropertyChanged(PROPERTY_REQUIRED_BLOCKS, oldRequiredBlocks, requiredBlocks);
@@ -235,7 +348,7 @@ public class Request extends AbstractBean {
* @param successfulBlocks
* the successfulBlocks to set
*/
- public void setSuccessfulBlocks(int successfulBlocks) {
+ void setSuccessfulBlocks(int successfulBlocks) {
int oldSuccessfulBlocks = this.successfulBlocks;
this.successfulBlocks = successfulBlocks;
fireIfPropertyChanged(PROPERTY_SUCCESSFUL_BLOCKS, oldSuccessfulBlocks, successfulBlocks);
@@ -252,7 +365,7 @@ public class Request extends AbstractBean {
* @param failedBlocks
* the failedBlocks to set
*/
- public void setFailedBlocks(int failedBlocks) {
+ void setFailedBlocks(int failedBlocks) {
int oldFailedBlocks = this.failedBlocks;
this.failedBlocks = failedBlocks;
fireIfPropertyChanged(PROPERTY_FAILED_BLOCKS, oldFailedBlocks, failedBlocks);
@@ -269,7 +382,7 @@ public class Request extends AbstractBean {
* @param fatallyFailedBlocks
* the fatallyFailedBlocks to set
*/
- public void setFatallyFailedBlocks(int fatallyFailedBlocks) {
+ void setFatallyFailedBlocks(int fatallyFailedBlocks) {
int oldFatallyFailedBlocks = this.fatallyFailedBlocks;
this.fatallyFailedBlocks = fatallyFailedBlocks;
fireIfPropertyChanged(PROPERTY_FATALLY_FAILED_BLOCKS, oldFatallyFailedBlocks, fatallyFailedBlocks);
@@ -286,7 +399,7 @@ public class Request extends AbstractBean {
* @param totalFinalized
* the totalFinalized to set
*/
- public void setTotalFinalized(boolean totalFinalized) {
+ void setTotalFinalized(boolean totalFinalized) {
boolean oldTotalFinalized = this.totalFinalized;
this.totalFinalized = totalFinalized;
fireIfPropertyChanged(PROPERTY_TOTAL_FINALIZED, oldTotalFinalized, totalFinalized);