Map<CharSequence, Item.Type> typeMap = getFieldTypeMap();
Vector<Item> items = doc.getItems();
boolean hasReaders = doc.hasReaders();
String address = doc.getUniversalID() + (hasReaders ? "1" : "0") + doc.getFormName();
for (Item item : items) {
CaseInsensitiveString name = new CaseInsensitiveString(item.getName());
if (/*lastMod.after(getLastScanDate()) && */!(name.startsWith("$") && getIgnoreDollar())) {
try {
String value = null;
Vector<Object> values = null;
switch (item.getTypeEx()) {
case AUTHORS:
case READERS:
case NAMES:
case TEXT:
value = item.getValueString();
values = item.getValues();
break;
case RICHTEXT:
value = ((RichTextItem) item).getUnformattedText();
break;
default:
}
if (value != null && value.length() > 0 && !DominoUtils.isNumber(value)) {
if (item.isNames()) {
if (values != null && !values.isEmpty()) {
for (Object o : values) {
if (o instanceof String) {
CharSequence parmName = caseSensitive_ ? (String) o : new CaseInsensitiveString((String) o);
processName(parmName, name, doc.getAncestorSession(), address);
}
}
}
} else {