Excalibur,

That's correct. The MyProducer class simulates a data feed. If you replace its random generation code with an access to some actual feed (like a database), then you can push your own data.

The main difference is that a database is a synchronous feed (unless you use triggers), while a Lightstreamer Data Adapter interfaces offer asynchronous interfaces (to offer zero latency). That simply means that for synchronous feeds your Data Adapter will usually have to poll the feed to retrieve fresh data.