(ValueContainer) findObject(ValueContainer.class);
String keywordName = element.getText();
// Get the keyword from the property's type.
Property property = (Property) findObject(Property.class);
Type type = property.getType();
if (type != null) {
KeywordSearchContainer keywordCont =
new KeywordSearchContainer();
keywordCont.setKeywordName(keywordName);
TypeVisitor keywordFinder = new AbstractTypeVisitor() {
public void visitKeywords(Keywords visitee, Object obj) {
KeywordSearchContainer ksc =
(KeywordSearchContainer) obj;
Keyword keyword =
visitee.getKeyword(ksc.getKeywordName());
if (keyword != null) {
ksc.setKeyword(keyword);
}
}
public void visitTypeRef(TypeRef visitee, Object obj) {
TypeDefinition td = getTypeDef(visitee.getReference());
if (td != null) {
Type t = td.getType();
if (t != null) {
t.accept(this, obj);
}
}
}
};
type.accept(keywordFinder, keywordCont);