Example usage for org.apache.wicket.protocol.ws.api.event WebSocketPushPayload getMessage

List of usage examples for org.apache.wicket.protocol.ws.api.event WebSocketPushPayload getMessage

Introduction

In this page you can find the example usage for org.apache.wicket.protocol.ws.api.event WebSocketPushPayload getMessage.

Prototype

@Override
    public final IWebSocketPushMessage getMessage() 

Source Link

Usage

From source file:org.apache.openmeetings.web.room.RoomPanel.java

License:Apache License

@Override
public void onEvent(IEvent<?> event) {
    Client _c = getClient();/*from   w  w  w  .  j av  a2s  . c o m*/
    if (_c != null && event.getPayload() instanceof WebSocketPushPayload) {
        WebSocketPushPayload wsEvent = (WebSocketPushPayload) event.getPayload();
        if (wsEvent.getMessage() instanceof RoomMessage) {
            RoomMessage m = (RoomMessage) wsEvent.getMessage();
            IPartialPageRequestHandler handler = wsEvent.getHandler();
            switch (m.getType()) {
            case pollCreated:
                menu.updatePoll(handler, m.getUserId());
                break;
            case pollUpdated:
                menu.updatePoll(handler, null);
                break;
            case recordingToggled:
                menu.update(handler);
                updateInterviewRecordingButtons(handler);
                break;
            case sharingToggled:
                menu.update(handler);
                break;
            case rightUpdated: {
                String uid = ((TextRoomMessage) m).getText();
                Client c = cm.get(uid);
                if (c == null) {
                    log.error("Not existing user in rightUpdated {} !!!!", uid);
                    return;
                }
                boolean self = _c.getUid().equals(c.getUid());
                handler.appendJavaScript(
                        String.format("VideoManager.update(%s);", c.toJson(self).toString(new NullStringer())));
                sidebar.update(handler);
                menu.update(handler);
                wb.update(handler);
                updateInterviewRecordingButtons(handler);
            }
                break;
            case roomEnter:
                sidebar.update(handler);
                menu.update(handler);
                sidebar.addActivity(new Activity(m, Activity.Type.roomEnter), handler);
                break;
            case roomExit:
                sidebar.update(handler);
                sidebar.addActivity(new Activity(m, Activity.Type.roomExit), handler);
                break;
            case roomClosed:
                handler.add(room.setVisible(false));
                roomClosed.open(handler);
                break;
            case requestRightModerator:
                sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.reqRightModerator),
                        handler);
                break;
            case requestRightPresenter:
                sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.reqRightPresenter),
                        handler);
                break;
            case requestRightWb:
                sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.reqRightWb), handler);
                break;
            case requestRightShare:
                sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.reqRightShare), handler);
                break;
            case requestRightRemote:
                sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.reqRightRemote), handler);
                break;
            case requestRightA:
                sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.reqRightA), handler);
                break;
            case requestRightAv:
                sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.reqRightAv), handler);
                break;
            case requestRightMuteOthers:
                sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.reqRightMuteOthers),
                        handler);
                break;
            case activityRemove:
                sidebar.removeActivity(((TextRoomMessage) m).getText(), handler);
                break;
            case haveQuestion:
                if (_c.hasRight(Room.Right.moderator) || getUserId().equals(m.getUserId())) {
                    sidebar.addActivity(new Activity((TextRoomMessage) m, Activity.Type.haveQuestion), handler);
                }
                break;
            case kick: {
                String uid = ((TextRoomMessage) m).getText();
                if (_c.getUid().equals(uid)) {
                    handler.add(room.setVisible(false));
                    getMainPanel().getChat().toggle(handler, false);
                    clientKicked.open(handler);
                    cm.exitRoom(_c);
                }
            }
                break;
            case mute: {
                JSONObject obj = new JSONObject(((TextRoomMessage) m).getText());
                Client c = cm.getBySid(obj.getString("sid"));
                if (c == null) {
                    log.error("Not existing user in mute {} !!!!", obj);
                    return;
                }
                if (!_c.getUid().equals(c.getUid())) {
                    handler.appendJavaScript(String.format(
                            "if (typeof(VideoManager) !== 'undefined') {VideoManager.mute('%s', %s);}",
                            obj.getString("uid"), obj.getBoolean("mute")));
                }
            }
                break;
            case muteOthers: {
                String uid = ((TextRoomMessage) m).getText();
                Client c = cm.get(uid);
                if (c == null) {
                    // no luck
                    return;
                }
                handler.appendJavaScript(String.format(
                        "if (typeof(VideoManager) !== 'undefined') {VideoManager.muteOthers('%s');}", uid));
            }
                break;
            case quickPollUpdated: {
                menu.update(handler);
                handler.appendJavaScript(getQuickPollJs());
            }
                break;
            case kurentoStatus:
                menu.update(handler);
                break;
            }
        }
    }
    super.onEvent(event);
}

From source file:org.apache.syncope.client.console.widgets.ApprovalsWidget.java

License:Apache License

@Override
public void onEvent(final IEvent<?> event) {
    if (event.getPayload() instanceof WebSocketPushPayload) {
        WebSocketPushPayload wsEvent = (WebSocketPushPayload) event.getPayload();
        if (wsEvent.getMessage() instanceof ApprovalsWidgetMessage) {
            List<WorkflowFormTO> updatedApprovals = ((ApprovalsWidgetMessage) wsEvent.getMessage())
                    .getUpdatedApprovals();
            if (!latestAlerts.getObject().equals(updatedApprovals)) {
                latestAlerts.getObject().clear();
                latestAlerts.getObject().addAll(updatedApprovals);

                ApprovalsWidget.this.linkAlertsNumber
                        .setDefaultModelObject(ApprovalsWidget.this.latestAlerts.getObject().size());
                wsEvent.getHandler().add(ApprovalsWidget.this.linkAlertsNumber);

                ApprovalsWidget.this.headerAlertsNumber
                        .setDefaultModelObject(ApprovalsWidget.this.latestAlerts.getObject().size());
                wsEvent.getHandler().add(ApprovalsWidget.this.headerAlertsNumber);

                ApprovalsWidget.this.latestFive.removeAll();
                wsEvent.getHandler().add(ApprovalsWidget.this.latestAlertsList);
            }/*from   w w w.  ja  v a  2  s .  co m*/
        }
    }
}

From source file:org.apache.syncope.client.console.widgets.JobWidget.java

License:Apache License

@Override
public void onEvent(final IEvent<?> event) {
    if (event.getPayload() instanceof WebSocketPushPayload) {
        WebSocketPushPayload wsEvent = (WebSocketPushPayload) event.getPayload();
        if (wsEvent.getMessage() instanceof JobWidgetMessage) {
            List<JobTO> updatedAvailable = ((JobWidgetMessage) wsEvent.getMessage()).getUpdatedAvailable();
            if (!updatedAvailable.equals(available)) {
                available.clear();/*from  w  w w .  jav  a  2 s  .  c o  m*/
                available.addAll(updatedAvailable);
                if (availableJobsPanel != null) {
                    availableJobsPanel.modelChanged();
                    wsEvent.getHandler().add(availableJobsPanel);
                }
            }

            List<ExecTO> updatedRecent = ((JobWidgetMessage) wsEvent.getMessage()).getUpdatedRecent();
            if (!updatedRecent.equals(recent)) {
                recent.clear();
                recent.addAll(updatedRecent);
                if (recentExecPanel != null) {
                    recentExecPanel.modelChanged();
                    wsEvent.getHandler().add(recentExecPanel);
                }
            }
        }
    } else if (event.getPayload() instanceof JobActionPanel.JobActionPayload) {
        available.clear();
        available.addAll(getAvailable(SyncopeConsoleSession.get()));
        availableJobsPanel.modelChanged();
        JobActionPanel.JobActionPayload.class.cast(event.getPayload()).getTarget().add(availableJobsPanel);
    }
}

From source file:org.apache.syncope.client.console.widgets.ReconciliationWidget.java

License:Apache License

@Override
public void onEvent(final IEvent<?> event) {
    if (event.getPayload() instanceof WebSocketPushPayload) {
        WebSocketPushPayload wsEvent = (WebSocketPushPayload) event.getPayload();
        if (wsEvent.getMessage() instanceof ReconciliationJobNotRunningMessage) {
            overlay.setVisible(false);/*from www .  j  a va  2s . c o m*/

            addOrReplace(buildExecFragment());

            wsEvent.getHandler().add(ReconciliationWidget.this);

            SyncopeConsoleSession.get().setCheckReconciliationJob(false);
        }
    }
}

From source file:org.efaps.ui.wicket.pages.main.MainPage.java

License:Apache License

@Override
public void onEvent(final IEvent<?> _event) {
    if (_event.getPayload() instanceof WebSocketPushPayload) {
        final WebSocketPushPayload wsEvent = (WebSocketPushPayload) _event.getPayload();
        if (wsEvent != null) {
            final IWebSocketPushMessage msg = wsEvent.getMessage();
            if (msg instanceof PushMsg) {
                this.socketMsg.setDefaultModelObject(wsEvent.getMessage().toString());
                final MarkupContainer msgContainer = this.socketMsg.getParent();
                msgContainer.add(new AttributeModifier("style", new Model<>("display:block")));
                wsEvent.getHandler().add(msgContainer);
            } else if (msg instanceof UIUserSession) {
                final String sessId = ((UIUserSession) msg).getSessionId();
                if (sessId.endsWith(getSession().getId())) {
                    getSession().invalidate();
                }//from  www.ja va2s. c o m
            }
        }
    }
}