public class ReplicatedDHT extends Object
api_rdht.erl).
Instances of this class can be generated using a given connection to a
scalaris node using ReplicatedDHT(Connection) or without a
connection (ReplicatedDHT()) in which case a new connection is
created using ConnectionFactory.createConnection().
String key;
int timeout;
DeleteResult result;
TransactionSingleOp sc = new ReplicatedDHT();
sc.delete(key); // delete(String)
sc.delete(key, timeout); // delete(String, int)
result = sc.getLastDeleteResult(); // getLastDeleteResult()
ConnectionPolicy that has been set when the connection
was created. By default, ConnectionFactory uses
DefaultConnectionPolicy which implements automatic connection-retries
by classifying nodes as good or bad depending on their previous state. The
number of automatic retries is adjustable (default: 3).| Constructor and Description |
|---|
ReplicatedDHT()
Constructor, uses the default connection returned by
ConnectionFactory.createConnection(). |
ReplicatedDHT(Connection conn)
Constructor, uses the given connection to an erlang node.
|
| Modifier and Type | Method and Description |
|---|---|
void |
closeConnection()
Closes the transaction's connection to a scalaris node.
|
DeleteResult |
delete(OtpErlangString key)
Tries to delete all replicas of the given key in 2000ms.
|
DeleteResult |
delete(OtpErlangString key,
int timeout)
Tries to delete all replicas of the given key.
|
DeleteResult |
delete(String key)
Tries to delete all replicas of the given key in 2000ms.
|
DeleteResult |
delete(String key,
int timeout)
Tries to delete all replicas of the given key.
|
DeleteResult |
getLastDeleteResult()
Returns the result of the last call to
delete(String). |
public ReplicatedDHT()
throws ConnectionException
ConnectionFactory.createConnection().ConnectionException - if the connection failspublic ReplicatedDHT(Connection conn)
conn - connection to use for the transactionpublic DeleteResult delete(OtpErlangString key) throws ConnectionException, TimeoutException, UnknownException
key - the key to deleteConnectionException - if the connection is not active or a communication error
occurs or an exit signal was received or the remote node
sends a message containing an invalid cookieTimeoutException - if a timeout occurred while trying to delete the valueUnknownException - if any other error occursdelete(OtpErlangString, int)public DeleteResult delete(OtpErlangString key, int timeout) throws ConnectionException, TimeoutException, UnknownException
key - the key to deletetimeout - the time (in milliseconds) to wait for resultsConnectionException - if the connection is not active or a communication error
occurs or an exit signal was received or the remote node
sends a message containing an invalid cookieTimeoutException - if a timeout occurred while trying to delete the valueUnknownException - if any other error occurspublic DeleteResult delete(String key) throws ConnectionException, TimeoutException, UnknownException
key - the key to deleteConnectionException - if the connection is not active or a communication error
occurs or an exit signal was received or the remote node
sends a message containing an invalid cookieTimeoutException - if a timeout occurred while trying to delete the valueUnknownException - if any other error occursdelete(String, int)public DeleteResult delete(String key, int timeout) throws ConnectionException, TimeoutException, UnknownException
key - the key to deletetimeout - the time (in milliseconds) to wait for resultsConnectionException - if the connection is not active or a communication error
occurs or an exit signal was received or the remote node
sends a message containing an invalid cookieTimeoutException - if a timeout occurred while trying to delete the valueUnknownException - if any other error occursdelete(OtpErlangString, int)public DeleteResult getLastDeleteResult()
delete(String).UnknownException - is thrown if an unknown reason was encountereddelete(String)public void closeConnection()
ConnectionExceptions!