@Override public SharingPolicyEntry addSharingPolicy( User currUser, User sharingWith, SharingPolicyTypeEntry policy, String sharedElementID, String name, String description, Date lifespanstart, Date lifespanend) { try { URI url = this.urlsForSharing.forAdd( currUser, sharingWith, policy, sharedElementID, name, description, lifespanstart, lifespanend); String body = this.http.post(url, "", 200); return Json.deserialize(body, SharingPolicyEntry.class); } catch (IOException | URISyntaxException e) { throw failedToContactServer(e); } }
@Override public Set<SharingPolicyEntry> getAllIncomingSharingPolicies(User currUser) { try { URI url = this.urlsForSharing.forGetAllIncoming(currUser); String body = this.http.get(url, 200); return Json.deserializeSetOfSharingPolicyEntries(body); } catch (IOException | URISyntaxException e) { throw failedToContactServer(e); } }
@Override public SharingPolicyEntry updateSharingPolicy( User currUser, Long policyID, String name, String description, Date lifespanstart, Date lifespanend) { try { URI url = this.urlsForSharing.forUpdate( currUser, policyID, name, description, lifespanstart, lifespanend); String body = this.http.post(url, "", 200); return Json.deserialize(body, SharingPolicyEntry.class); } catch (IOException | URISyntaxException e) { throw failedToContactServer(e); } }