package kornell.api.client; import kornell.core.entity.CourseClass; import kornell.core.entity.Institution; import kornell.core.entity.Roles; import kornell.core.to.InstitutionEmailWhitelistTO; import kornell.core.to.InstitutionHostNamesTO; import kornell.core.to.InstitutionRegistrationPrefixesTO; import kornell.core.to.RolesTO; public class InstitutionClient extends RESTClient { private String institutionUUID; public InstitutionClient(String uuid) { this.institutionUUID = uuid; } public void get(Callback<Institution> cb) { GET("/institutions/" + institutionUUID).sendRequest(null, cb); } public void update(Institution institution, Callback<Institution> cb) { PUT("/institutions/" + institutionUUID).withContentType(Institution.TYPE).withEntityBody(institution).go(cb); } public void getRegistrationPrefixes(Callback<InstitutionRegistrationPrefixesTO> cb) { GET("/institutions/" + institutionUUID + "/registrationPrefixes").sendRequest(null, cb); } public void getAdmins(String bindMode, Callback<RolesTO> cb) { GET("institutions",institutionUUID,"admins"+"?bind="+bindMode).withContentType(CourseClass.TYPE).go(cb); } public void updateAdmins(Roles roles, Callback<Roles> cb) { PUT("institutions",institutionUUID,"admins").withContentType(Roles.TYPE).withEntityBody(roles).go(cb); } public void getHostnames(Callback<InstitutionHostNamesTO> cb) { GET("institutions",institutionUUID,"hostnames").go(cb); } public void updateHostnames(InstitutionHostNamesTO institutionHostNamesTO, Callback<InstitutionHostNamesTO> cb) { PUT("institutions",institutionUUID,"hostnames").withContentType(InstitutionHostNamesTO.TYPE).withEntityBody(institutionHostNamesTO).go(cb); } public void getEmailWhitelist(Callback<InstitutionEmailWhitelistTO> cb) { GET("institutions",institutionUUID,"emailWhitelist").go(cb); } public void updateEmailWhitelist(InstitutionEmailWhitelistTO institutionEmailWhitelistTO, Callback<InstitutionEmailWhitelistTO> cb) { PUT("institutions",institutionUUID,"emailWhitelist").withContentType(InstitutionEmailWhitelistTO.TYPE).withEntityBody(institutionEmailWhitelistTO).go(cb); } public void getUploadURL(String filename, Callback<String> callback) { GET("institutions", institutionUUID, "uploadUrl", filename).go(callback); } }