diff options
| author | Sam Anthony <sam@samanthony.xyz> | 2024-11-23 13:51:12 -0500 |
|---|---|---|
| committer | Sam Anthony <sam@samanthony.xyz> | 2024-11-23 13:51:12 -0500 |
| commit | 3c62b863509131e78c18ed13c6b83e4fc508848f (patch) | |
| tree | cf246e91da283edf704af936b9cef7eb8e09a6f8 /src/main/java/derms/replica/replica1/ResponderClient.java | |
| parent | e3b72053e8b04f2df013da0d7d49fe33927461a9 (diff) | |
| download | soen423-3c62b863509131e78c18ed13c6b83e4fc508848f.zip | |
import replica code from assignment
Diffstat (limited to 'src/main/java/derms/replica/replica1/ResponderClient.java')
| -rw-r--r-- | src/main/java/derms/replica/replica1/ResponderClient.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/main/java/derms/replica/replica1/ResponderClient.java b/src/main/java/derms/replica/replica1/ResponderClient.java new file mode 100644 index 0000000..b21b67e --- /dev/null +++ b/src/main/java/derms/replica/replica1/ResponderClient.java @@ -0,0 +1,34 @@ +package derms.replica.replica1; + +import java.net.MalformedURLException; +import java.net.UnknownHostException; +import java.util.HashMap; +import java.util.Map; + +public class ResponderClient extends Client<Responder, ResponderServer> { + public ResponderID id; + + public ResponderClient(ResponderID id) { + super(Responder.class, ResponderServer.class); + this.id = id; + } + + public ResponderClient(City city, short idNum) { + this(new ResponderID(city, idNum)); + } + + public void add(ResourceID rid, ResourceName name, int duration) throws UnknownHostException, MalformedURLException { + Responder server = connect(new City(rid.city)); + server.addResource(new Resource(rid, name, duration)); + } + + public void remove(ResourceID rid, int duration) throws UnknownHostException, MalformedURLException, NoSuchResourceException { + Responder server = connect(new City(rid.city)); + server.removeResource(rid, duration); + } + + public Resource[] listResources(ResourceName name) throws UnknownHostException, MalformedURLException, ServerCommunicationError { + Responder server = connect(id.city); + return server.listResourceAvailability(name); + } +} |