}
final ConfigurationMetaDataEntry[] entries = domain.getAll();
for (int i = 0; i < entries.length; i++)
{
final ConfigurationMetaDataEntry entry = entries[i];
if (entry.getClassName() != null)
{
final ClassConfigDescriptionEntry value = new ClassConfigDescriptionEntry(entry.getKey());
try
{
value.setBaseClass(Class.forName(entry.getClassName(), false, ObjectUtilities.getClassLoader(packageManager.getClass())));
value.setHidden(entry.isHidden());
value.setGlobal(entry.isGlobal());
value.setDescription(entry.getDescription());
configEntryLookup.put(entry.getKey(), value);
continue;
}
catch (Exception e)
{
logger.info("Failed to load defined class '" + entry.getClassName() + "' , fall back to plain-text entry for key " + entry.getKey());
}
}
final String[] tags = entry.getTags();
if (tags.length > 0)
{
final EnumConfigDescriptionEntry value = new EnumConfigDescriptionEntry(entry.getKey());
value.setOptions(tags);
value.setHidden(entry.isHidden());
value.setGlobal(entry.isGlobal());
value.setDescription(entry.getDescription());
configEntryLookup.put(entry.getKey(), value);
continue;
}
final TextConfigDescriptionEntry value = new TextConfigDescriptionEntry(entry.getKey());
value.setHidden(entry.isHidden());
value.setGlobal(entry.isGlobal());
value.setDescription(entry.getDescription());
configEntryLookup.put(entry.getKey(), value);
}
}