* Returns collection of possible variable keys for this node.
*/
public Collection<String> getVariableKeys() {
Set<String> keys = new HashSet<String>();
PageMarkupSource source = new PageMarkupSource(this);
VariableTransformer transfomer = new VariableTransformer(source, this);
Item i = transfomer.nextMarkupItem();
while (i != null) {
if (i instanceof VariableKeyProvider) {
Collection<String> k = ((VariableKeyProvider) i).getVariableKeys();
if (k != null) {
keys.addAll(k);
}
}
i = transfomer.nextMarkupItem();
}
keys.addAll(SitePlugin.get().getGlobalVariableKeys(getSession()));
return keys;