use of com.github.openjson.JSONObject in project openmeetings by apache.
the class TestCalendarService method testCreateWithGuests.
@Test
public void testCreateWithGuests() throws Exception {
String sid = loginNewUser();
AppointmentDTO dto = createEventWithGuests(sid);
// try to change MM list
JSONObject o1 = AppointmentParamConverter.json(dto).put("meetingMembers", new JSONArray().put(new JSONObject().put("user", new JSONObject().put("id", 1))));
Response resp = getClient(getCalendarUrl()).path("/").query("sid", sid).form(new Form().param("appointment", o1.toString()));
assertNotNull("Valid AppointmentDTO should be returned", resp);
assertEquals("Call should be successful", Response.Status.OK.getStatusCode(), resp.getStatus());
dto = resp.readEntity(AppointmentDTO.class);
assertNotNull("Valid DTO should be returned", dto);
assertNotNull("DTO id should be valid", dto.getId());
assertEquals("DTO should have 1 attendees", 1, dto.getMeetingMembers().size());
}
use of com.github.openjson.JSONObject in project openmeetings by apache.
the class TestCalendarService method createEventWithGuests.
private static AppointmentDTO createEventWithGuests(String sid) throws Exception {
JSONObject o = createAppointment("test").put("meetingMembers", new JSONArray().put(new JSONObject().put("user", new JSONObject().put("firstname", "John 1").put("lastname", "Doe").put("address", new JSONObject().put("email", "john1@doe.email")))).put(new JSONObject().put("user", new JSONObject().put("firstname", "John 2").put("lastname", "Doe").put("address", new JSONObject().put("email", "john2@doe.email")))));
Response resp = getClient(getCalendarUrl()).path("/").query("sid", sid).form(new Form().param("appointment", o.toString()));
assertNotNull("Valid AppointmentDTO should be returned", resp);
assertEquals("Call should be successful", Response.Status.OK.getStatusCode(), resp.getStatus());
AppointmentDTO dto = resp.readEntity(AppointmentDTO.class);
assertNotNull("Valid DTO should be returned", dto);
assertNotNull("DTO id should be valid", dto.getId());
assertEquals("DTO should have 2 attendees", 2, dto.getMeetingMembers().size());
for (MeetingMemberDTO mm : dto.getMeetingMembers()) {
assertNotNull("Email should be valid", mm.getUser().getAddress().getEmail());
}
return dto;
}
use of com.github.openjson.JSONObject in project openmeetings by apache.
the class TestCalendarService method testCreateWithGuestsCleanOne.
@Test
public void testCreateWithGuestsCleanOne() throws Exception {
String sid = loginNewUser();
AppointmentDTO dto = createEventWithGuests(sid);
List<MeetingMemberDTO> initialList = new ArrayList<>(dto.getMeetingMembers());
MeetingMemberDao mmDao = getBean(MeetingMemberDao.class);
MeetingMember mm = mmDao.get(initialList.get(initialList.size() - 1).getId());
Long mmId = mm.getId(), mmUserId = mm.getUser().getId();
String hash = mm.getInvitation().getHash();
dto.getMeetingMembers().remove(initialList.size() - 1);
// try to change MM list
JSONObject o = AppointmentParamConverter.json(dto);
Response resp = getClient(getCalendarUrl()).path("/").query("sid", sid).form(new Form().param("appointment", o.toString()));
assertNotNull("Valid AppointmentDTO should be returned", resp);
assertEquals("Call should be successful", Response.Status.OK.getStatusCode(), resp.getStatus());
dto = resp.readEntity(AppointmentDTO.class);
assertNotNull("Valid DTO should be returned", dto);
assertNotNull("DTO id should be valid", dto.getId());
assertEquals("DTO should have 1 attendees", 1, dto.getMeetingMembers().size());
assertNull("Meeting member should deleted", mmDao.get(mmId));
assertNull("Invitation should deleted", getBean(InvitationDao.class).getByHash(hash, true, false));
User uc = getBean(UserDao.class).get(mmUserId);
assertNotNull("Meeting member user should not be deleted", uc);
assertFalse("Meeting member user should not be deleted", uc.isDeleted());
}
use of com.github.openjson.JSONObject in project openmeetings by apache.
the class AppointmentListMessageBodyWriter method writeTo.
@Override
public void writeTo(List<AppointmentDTO> t, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap<String, Object> httpHeaders, OutputStream out) throws IOException {
Writer writer = new OutputStreamWriter(out, UTF_8);
JSONArray rr = new JSONArray();
for (AppointmentDTO dto : t) {
rr.put(AppointmentParamConverter.json(dto));
}
writer.write(new JSONObject().put(ROOT, rr).toString());
writer.flush();
}
Aggregations