try {
switch (dataType) {
case DcRepository.ValueTypes._DEFINITIONGROUP:
int group = sValue.indexOf("}");
IDefinitions definitions = (IDefinitions) getValue();
if (definitions == null) {
if (key.equals(DcRepository.Settings.stProgramDefinitions))
definitions = new ProgramDefinitions();
else if (key.equals(DcRepository.ModuleSettings.stQuickViewFieldDefinitions))
definitions = new QuickViewFieldDefinitions();
else if (key.equals(DcRepository.ModuleSettings.stWebFieldDefinitions))
definitions = new QuickViewFieldDefinitions();
else
definitions = new DcFieldDefinitions();
}
while (group > -1) {
String value = sValue.substring(1, group);
definitions.add(value);
if (sValue.length() > group + 1) {
sValue = sValue.substring(group + 1, sValue.length());
group = sValue.indexOf("}");
} else {
group = -1;
}
}
if (definitions.getSize() > 0)
value = definitions;
break;
case DcRepository.ValueTypes._DIMENSION:
int index1 = sValue.indexOf("/");