package scrum.client.admin; import ilarkesto.gwt.client.DateAndTime; import ilarkesto.gwt.client.editor.ADateAndTimeEditorModel; import ilarkesto.gwt.client.editor.ATextEditorModel; import scrum.client.DataTransferObject; import scrum.client.communication.ServerDataReceivedEvent; import scrum.client.communication.ServerDataReceivedHandler; import scrum.client.workspace.VisibleDataChangedEvent; public class SystemMessageManager extends GSystemMessageManager implements ServerDataReceivedHandler { private SystemMessage systemMessage = new SystemMessage(); public void onServerDataReceived(ServerDataReceivedEvent event) { DataTransferObject data = event.getData(); if (data.systemMessage != null) { systemMessage = data.systemMessage; log.info("SystemMessage received:", systemMessage); new VisibleDataChangedEvent().fireInCurrentScope(); } } public void activateSystemMessage() { systemMessage.setActive(true); new UpdateSystemMessageServiceCall(systemMessage).execute(); new VisibleDataChangedEvent().fireInCurrentScope(); } public void deactivateSystemMessage() { systemMessage.setActive(false); new UpdateSystemMessageServiceCall(systemMessage).execute(); new VisibleDataChangedEvent().fireInCurrentScope(); } public SystemMessage getSystemMessage() { return systemMessage; } public ATextEditorModel systemMessageTextModel = new ATextEditorModel() { @Override public void setValue(String value) { systemMessage.setText(value); } @Override public String getValue() { return systemMessage.getText(); } }; public ADateAndTimeEditorModel systemMessageExpiresModel = new ADateAndTimeEditorModel() { @Override public DateAndTime getValue() { return systemMessage.getExpires(); } @Override public void setValue(DateAndTime value) { systemMessage.setExpires(value); } }; }