}
@Override
public void getProperty(String name, List<Value> list)
throws RepositoryDocumentException {
Property prop = metas.get(name);
if (prop == null) {
logger.log(Level.FINEST, "Property not found: {0}", name);
return;
}
if (prop instanceof PropertyString ||
prop instanceof PropertyStringList) {
logger.log(Level.FINEST, "Getting String property: [{0}]", name);
getPropertyStringValue(name, list);
} else if (prop instanceof PropertyBinary ||
prop instanceof PropertyBinaryList) {
logger.log(Level.FINEST, "Getting Binary property: [{0}]", name);
getPropertyBinaryValue(name, list);
} else if (prop instanceof PropertyBoolean ||
prop instanceof PropertyBooleanList) {
logger.log(Level.FINEST, "Getting Boolean property: [{0}]", name);
getPropertyBooleanValue(name, list);
} else if (prop instanceof PropertyDateTime ||
prop instanceof PropertyDateTimeList) {
logger.log(Level.FINEST, "Getting Date property: [{0}]", name);
getPropertyDateValue(name, list);
} else if (prop instanceof PropertyFloat64 ||
prop instanceof PropertyFloat64List) {
logger.log(Level.FINEST, "Getting Double/Float property: [{0}]", name);
getPropertyDoubleValue(name, list);
} else if (prop instanceof PropertyInteger32 ||
prop instanceof PropertyInteger32List) {
logger.log(Level.FINEST, "Getting Integer/Long property: [{0}]", name);
getPropertyLongValue(name, list);
} else if (prop instanceof PropertyId ||
prop instanceof PropertyIdList) {
logger.log(Level.FINEST, "Getting Id property: [{0}]", name);
getPropertyGuidValue(name, list);
} else {
logger.log(Level.FINEST, "Property type for {0} is not determined: ",
prop.getClass().getName());
}
}