X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fnet%2Fpterodactylus%2Fjsite%2Fcore%2FRequest.java;h=a61bb94ef0a11f571890dcaac97e67c7e1d31d99;hb=c63257e8cc0ba1a5aca9364b22171abe7279d479;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..a61bb94 100644 --- a/src/net/pterodactylus/jsite/core/Request.java +++ b/src/net/pterodactylus/jsite/core/Request.java @@ -23,17 +23,15 @@ 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 { /** * 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; @@ -107,7 +129,7 @@ public class Request extends AbstractBean { /** * Creates a new request with the given identifier. - * + * * @param node * The node the request belongs to * @param identifier @@ -124,7 +146,7 @@ public class Request extends AbstractBean { /** * Returns the node the request belongs to. - * + * * @return The node the request belongs to */ public Node getNode() { @@ -133,7 +155,7 @@ public class Request extends AbstractBean { /** * Returns the identifier of the request. It is unique per node. - * + * * @return The identifier of the request */ public String getIdentifier() { @@ -142,7 +164,7 @@ public class Request extends AbstractBean { /** * Returns the type of the request. - * + * * @return The type of the request */ @@ -152,12 +174,11 @@ public class Request extends AbstractBean { /** * Sets the type of the request. - * + * * @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); @@ -165,7 +186,7 @@ public class Request extends AbstractBean { /** * Returns the client token of the request. - * + * * @return The client token of the request */ public String getClientToken() { @@ -174,21 +195,113 @@ public class Request extends AbstractBean { /** * Sets the client token of the request. - * + * * @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! - * + * * @return The total number of blocks of a request */ public int getTotalBlocks() { @@ -197,11 +310,11 @@ public class Request extends AbstractBean { /** * Sets the total number of blocks of a request. - * + * * @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);