use of cz.metacentrum.perun.webgui.json.JsonPostClient in project perun by CESNET.
the class DeleteTask method deleteTask.
/**
* Deletes Task from DB
*
* @param taskId id of Task to be deleted
*/
public void deleteTask(final int taskId) {
this.taskId = taskId;
// test arguments
if (!this.testArguments()) {
return;
}
// whole JSON query
JSONObject jsonQuery = new JSONObject();
jsonQuery.put("task", new JSONNumber(taskId));
// new events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Deleting of Task: " + taskId + " failed.");
events.onError(error);
}
;
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Task: " + taskId + " deleted successfully.");
events.onFinished(jso);
}
;
public void onLoadingStart() {
events.onLoadingStart();
}
;
};
// sending data
JsonPostClient jspc = new JsonPostClient(newEvents);
jspc.sendData(JSON_URL, jsonQuery);
}
use of cz.metacentrum.perun.webgui.json.JsonPostClient in project perun by CESNET.
the class RemoveMember method removeMemberFromGroup.
/**
* Attempts to remove member from group
*
* @param groupId id of group
* @param memberId ID of member to be removed from group
*/
public void removeMemberFromGroup(final int groupId, final int memberId) {
this.memberId = memberId;
this.groupId = groupId;
// test arguments
if (!this.testRemoving()) {
return;
}
// prepare json object
JSONObject jsonQuery = prepareJSONObject();
// new events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Removing member: " + memberId + " from group: " + groupId + " failed.");
events.onError(error);
}
;
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Member: " + memberId + " removed from group: " + groupId);
events.onFinished(jso);
}
;
public void onLoadingStart() {
events.onLoadingStart();
}
;
};
// sending data
JsonPostClient jspc = new JsonPostClient(newEvents);
jspc.sendData(JSON_URL, jsonQuery);
}
use of cz.metacentrum.perun.webgui.json.JsonPostClient in project perun by CESNET.
the class UpdateGroup method updateGroup.
/**
* Updates group details
* @param group Group with updated details
*/
public void updateGroup(Group group) {
if (group == null) {
Window.alert("Group can't be null");
return;
}
// GROUP OBJECT
JSONObject oldGroup = new JSONObject(group);
// RECONSTRUCT OBJECT
JSONObject newGroup = new JSONObject();
newGroup.put("id", oldGroup.get("id"));
// fake new group short name as name in order to update
newGroup.put("name", oldGroup.get("shortName"));
newGroup.put("description", oldGroup.get("description"));
newGroup.put("voId", oldGroup.get("voId"));
newGroup.put("parentGroupId", oldGroup.get("parentGroupId"));
newGroup.put("beanName", oldGroup.get("beanName"));
newGroup.put("createdAt", oldGroup.get("createdAt"));
newGroup.put("createdBy", oldGroup.get("createdBy"));
newGroup.put("modifiedAt", oldGroup.get("modifiedAt"));
newGroup.put("modifiedBy", oldGroup.get("modifiedBy"));
// whole JSON query
JSONObject jsonQuery = new JSONObject();
jsonQuery.put("group", newGroup);
// new events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Updating group failed.");
events.onError(error);
}
;
public void onFinished(JavaScriptObject jso) {
Group gp = jso.cast();
session.getUiElements().setLogSuccessText("Group " + gp.getName() + " successfully updated!");
events.onFinished(jso);
}
;
public void onLoadingStart() {
events.onLoadingStart();
}
;
};
// sending data
JsonPostClient jspc = new JsonPostClient(newEvents);
jspc.sendData(JSON_URL, jsonQuery);
}
use of cz.metacentrum.perun.webgui.json.JsonPostClient in project perun by CESNET.
the class CreateMember method createMember.
/**
* Attempts to create member in VO from candidate
*
* @param voId vo where member should be created
* @param group where member should be created
* @param candidate candidate to be member
*
*/
public void createMember(final int voId, Group group, final Candidate candidate) {
this.voId = voId;
this.group = group;
this.candidate = candidate;
// test arguments
if (!this.testAdding()) {
return;
}
if (!session.isVoAdmin(voId)) {
// GROUP ADMIN HAVE OWN PROCESSING
createMemberAsGroupAdmin(voId, group, candidate);
return;
}
// new events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Creating member: " + candidate.getDisplayName() + " failed.");
events.onError(error);
}
;
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Member " + candidate.getDisplayName() + " created !");
// call validation asynchronously
Member mem = jso.cast();
ValidateMemberAsync request = new ValidateMemberAsync();
request.validateMemberAsync(mem);
events.onFinished(jso);
}
;
public void onLoadingStart() {
events.onLoadingStart();
}
;
};
// sending data
JsonPostClient jspc = new JsonPostClient(newEvents);
jspc.sendData(JSON_URL, prepareJSONObject());
}
use of cz.metacentrum.perun.webgui.json.JsonPostClient in project perun by CESNET.
the class AddApplicationMail method addMail.
/**
* Adds new ApplicationMail
*
* @param appMail
* @param id
*/
public void addMail(ApplicationMail appMail, int id) {
this.appMail = appMail;
this.id = id;
// test arguments
if (!this.testCreating()) {
return;
}
// new events
JsonCallbackEvents newEvents = new JsonCallbackEvents() {
public void onError(PerunError error) {
session.getUiElements().setLogErrorText("Adding email failed.");
events.onError(error);
}
;
public void onFinished(JavaScriptObject jso) {
session.getUiElements().setLogSuccessText("Email added.");
events.onFinished(jso);
}
;
public void onLoadingStart() {
events.onLoadingStart();
}
;
};
// sending data
JsonPostClient jspc = new JsonPostClient(newEvents);
jspc.sendData(JSON_URL, prepareJSONObject());
}
Aggregations