A doc.zip fájlban vagy a bedolgozókönyvtár alatt lévő fájlrendszeren jelen lévő statikus HTML fájlokon kívül a súgó a dokumentáció bedolgozó által dinamikusan létrehozott dokumentumokat is meg tudja jeleníteni. Az ilyen bedolgozónak tartalmaznia kell Java kódra felkészített előállítási tartalmat, amelyet ellenkező esetben a súgórendszer egy statikus fájlból olvasna ki. Ha az org.eclipse.help.IHelpContentProducer elemet megvalósító osztályt az org.eclipse.help.contentProducer kiterjesztési pont segítségével biztosítja a bedolgozó a súgórendszernek, akkor a súgórendszer meghívja a getInputStream függvényt a bedolgozóból elért minden dokumentumhoz. Ha nem null InputStream elemet eredményez, akkor átadódik a böngészőnek megjelenítés érdekében. Ha az IHelpContentProdcuer nullát ad vissza, akkor a súgórendszer alapértelmezés szerint a doc.zip fájlban és a bedolgozókönyvtárban keresi a dokumentumot.
Az IHelpConentProducer egy megvalósítása például az alábbi lehet:
package com.my.company.doc;
public class DynamicTopics implements IHelpContentProducer {
public InputStream getInputStream(
String pluginID,
String name,
Locale locale) {
if (name.indexOf("dynamic") >= 0)
return new ByteArrayInputStream(
("<html><body>Content generated "
+ new Date().toString()
+ ".</body></html>")
.getBytes());
else
return null;
}
}
a kiterjesztés által a plugin.xml fájlban azonosítva az alábbi módon:
<extension point="org.eclipse.help.contentProducer"
name="dynamicTopics"
id="my.company.doc.dynamicTopics">
<contentProducer producer="com.my.company.doc.DynamicTopics" />
</extension>
egy HTML dokumentumtartalmat hoz létre az összes dokumentumhivatkozáshoz,
amelyben megtalálható a "dinamikus" szó az elérési út vagy fájlnév
részeként.
A bedolgozó a metódus vagy az alapul szolgáló keretrendszer teljes szabadságával rendelkezik, amely létrehozza a tartalmat. Biztosítani kell, hogy a tartalom a megfelelő nyelven kerül létrehozásra és kódolásra, hogy a böngésző meg tudja jeleníteni. A felhasználó által használt területi beállítások biztosítva vannak a getInputStream metódusnak. Ha nem biztosítható fordítható tartalom, akkor ennek kell lennie a platform alapértelmezett területi beállításainak.