UltraCore Realtime engine

The UltraCore realtime engine supports pushing realtime events to the browser. The technology behind the realtime implementation uses a dedicated connection between the browser and the server. The dedicated connection is used to stream realtime events directly to the client. The engine can work both in streaming and long polling mode (Comet style). The best possible protocol is automatically determined by the framework, depending on the browsers capabilities. Implementing realtime applications is as simple as implementing a realtime event handler, and generating realtime events that should be processed. The event listeners can push GUI updates to the browser, by just returning a modified GUI component. Example realtime event listener:

page.subscribeToTopic("topicName", new RealtimeListener() {

public Component liveEvent(Object eventData, Page currentPage) {

Text text = (Text) currentPage.getByName("realtimetext");

text.text = eventData.toString();

return text;

}

});

The event listener receives events from a publisher that publishes events for topic 'topicName'. In this case, the publisher sends a date object to the listeners, and the listener modifies a text object (renders date in text) in the current page.

Example event publisher:

public class UDPEventGenerator extends Thread {

public void run() {

try {

while (true) {

EventManager eventManager = EventManager.getInstance();

eventManager.publishEvent("topicName", ""+new java.util.Date());

Thread.sleep(300L);

}

} catch (Exception ex) {

ex.printStackTrace();

}

}

}

This simple publisher example raises an event for topic 'topicName' and sends the current date to this event.


Sign up on our Newsletter

Contact Us

ULTRA4 - Advanced Information Systems
K. Tzerras - J. van Slooten Partnership

Telephone

+30 2310 688087

Address

Akadimou 115
56224 Thessaloniki, Greece

Email

info@ultra4.eu

Find Us

© 2020 Ultra4.eu. All Rights Reserved. Developed & Designed by ULTRA4 Advanced Information Systems

Main Menu

Business Web Apps made easy

We use cookies to improve your experience on our website. By browsing this website, you agree to our use of cookies.
View GDPR Privacy Policy docs ]