List of usage examples for org.apache.wicket.protocol.ws.api BaseWebSocketBehavior BaseWebSocketBehavior
public BaseWebSocketBehavior(String resourceName)
From source file:com.wicketinaction.WebSocketResourceDemoPage.java
License:Apache License
public WebSocketResourceDemoPage() { WebSocketChart chartPanel = new WebSocketChart("chartPanel"); chartPanel.add(new BaseWebSocketBehavior(ChartWebSocketResource.NAME)); add(chartPanel);/* w w w . j a v a2s . c om*/ }
From source file:org.apache.openmeetings.web.room.RoomPanel.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); //let's refresh user in client cm.update(getClient().updateUser(userDao)); Component accessDenied = new WebMarkupContainer(ACCESS_DENIED_ID).setVisible(false); room.add(AttributeModifier.append(ATTR_CLASS, r.getType().name())); room.add(menu = new RoomMenuPanel("menu", this)); room.add(AttributeModifier.append("data-room-id", r.getId())); if (interview) { room.add(new WebMarkupContainer("wb-area").add(wb)); } else {/*from www .j av a 2 s . co m*/ Droppable<BaseFileItem> wbArea = new Droppable<BaseFileItem>("wb-area") { private static final long serialVersionUID = 1L; @Override public void onConfigure(JQueryBehavior behavior) { super.onConfigure(behavior); behavior.setOption("hoverClass", Options.asString("ui-state-hover")); behavior.setOption("accept", Options.asString(".recorditem, .fileitem, .readonlyitem")); } @Override public void onDrop(AjaxRequestTarget target, Component component) { Object o = component.getDefaultModelObject(); if (wb.isVisible() && o instanceof BaseFileItem) { BaseFileItem f = (BaseFileItem) o; if (sidebar.getFilesPanel().isSelected(f)) { for (Entry<String, BaseFileItem> e : sidebar.getFilesPanel().getSelected().entrySet()) { wb.sendFileToWb(e.getValue(), false); } } else { wb.sendFileToWb(f, false); } } } }; room.add(wbArea.add(wb)); } room.add(roomEnter); room.add(sidebar = new RoomSidebar("sidebar", this)); add(roomClosed = new RedirectMessageDialog("room-closed", "1098", r.isClosed(), r.getRedirectURL())); if (r.isClosed()) { room.setVisible(false); } else if (cm.listByRoom(r.getId()).size() >= r.getCapacity()) { accessDenied = new ExpiredMessageDialog(ACCESS_DENIED_ID, getString("99"), menu); room.setVisible(false); } else if (r.getId().equals(WebSession.get().getRoomId())) { // secureHash/invitationHash, already checked } else { boolean allowed = false; String deniedMessage = null; if (r.isAppointment()) { Appointment a = apptDao.getByRoom(r.getId()); if (a != null && !a.isDeleted()) { boolean isOwner = a.getOwner().getId().equals(getUserId()); allowed = isOwner; log.debug("appointed room, isOwner ? {}", isOwner); if (!allowed) { for (MeetingMember mm : a.getMeetingMembers()) { if (getUserId().equals(mm.getUser().getId())) { allowed = true; break; } } } if (allowed) { Calendar c = WebSession.getCalendar(); if (isOwner || c.getTime().after(a.getStart()) && c.getTime().before(a.getEnd())) { eventDetail = new EventDetailDialog(EVENT_DETAILS_ID, a); } else { allowed = false; deniedMessage = String.format("%s %s - %s", getString("error.hash.period"), getDateFormat().format(a.getStart()), getDateFormat().format(a.getEnd())); } } } } else { allowed = r.getIspublic() || (r.getOwnerId() != null && r.getOwnerId().equals(getUserId())); log.debug("public ? " + r.getIspublic() + ", ownedId ? " + r.getOwnerId() + " " + allowed); if (!allowed) { User u = getClient().getUser(); for (RoomGroup ro : r.getGroups()) { for (GroupUser ou : u.getGroupUsers()) { if (ro.getGroup().getId().equals(ou.getGroup().getId())) { allowed = true; break; } } if (allowed) { break; } } } } if (!allowed) { if (deniedMessage == null) { deniedMessage = getString("1599"); } accessDenied = new ExpiredMessageDialog(ACCESS_DENIED_ID, deniedMessage, menu); room.setVisible(false); } } waitForModerator = new MessageDialog("wait-for-moderator", getString("204"), getString("696"), DialogButtons.OK, DialogIcon.LIGHT) { private static final long serialVersionUID = 1L; @Override public void onClose(IPartialPageRequestHandler handler, DialogButton button) { // no-op } }; waitApplyModeration = new MessageDialog("wait-apply-moderation", getString("204"), getString(r.isModerated() ? "641" : "498"), DialogButtons.OK, DialogIcon.LIGHT) { private static final long serialVersionUID = 1L; @Override public void onClose(IPartialPageRequestHandler handler, DialogButton button) { // no-op } }; add(room, accessDenied, eventDetail, waitForModerator, waitApplyModeration); if (r.isWaitForRecording()) { add(new MessageDialog("wait-for-recording", getString("1316"), getString("1315"), DialogButtons.OK, DialogIcon.LIGHT) { private static final long serialVersionUID = 1L; @Override public void onConfigure(JQueryBehavior behavior) { super.onConfigure(behavior); behavior.setOption("autoOpen", true); behavior.setOption("resizable", false); } @Override public void onClose(IPartialPageRequestHandler handler, DialogButton button) { //no-op } }); } else { add(new WebMarkupContainer("wait-for-recording").setVisible(false)); } if (room.isVisible()) { add(new NicknameDialog("nickname", this)); add(download); add(new BaseWebSocketBehavior("media")); } else { add(new WebMarkupContainer("nickname").setVisible(false)); } add(clientKicked = new MessageDialog("client-kicked", getString("797"), getString("606"), DialogButtons.OK, DialogIcon.ERROR) { private static final long serialVersionUID = 1L; @Override public void onClose(IPartialPageRequestHandler handler, DialogButton button) { menu.exit(handler); } }); }