604 |
IndexParameters indexParams = getIndexParameters(); |
IndexParameters indexParams = getIndexParameters(); |
605 |
for (int i = 0; i < files.length; i++) { |
for (int i = 0; i < files.length; i++) { |
606 |
String fileName = files[i]; |
String fileName = files[i]; |
607 |
//TODO refactor this |
|
|
String absolute = new File(tempDir, fileName).getAbsolutePath(); |
|
|
StringBuffer url = new StringBuffer("file://"); |
|
|
for (int j = 0; j < absolute.length(); j++) { |
|
|
char c = absolute.charAt(j); |
|
|
if (c == File.separatorChar) |
|
|
url.append('/'); |
|
|
else { |
|
|
String encoding = Utilities.getStringFromHashtable(FrameworkImpl.ATTRIBUTE_NAME_ENCODING, this.docBaseProps); |
|
|
url.append(Utilities.encodeURL(String.valueOf(c), encoding)); |
|
|
} |
|
|
} |
|
608 |
XMLDocument metadataDoc = new XMLDocument(); |
XMLDocument metadataDoc = new XMLDocument(); |
609 |
String id = fileName.substring(0, fileName.lastIndexOf(TEMPFILE_SUFFIX)); |
String id = fileName.substring(0, fileName.lastIndexOf(TEMPFILE_SUFFIX)); |
610 |
fileName = null; |
|
|
//DEBUG System.out.println("a document id : " + id); |
|
611 |
if (Utilities.checkString(id)) { |
if (Utilities.checkString(id)) { |
612 |
String encoding = Utilities.getStringFromHashtable(FrameworkImpl.ATTRIBUTE_NAME_ENCODING, this.docBaseProps); |
String encoding = Utilities.getStringFromHashtable(FrameworkImpl.ATTRIBUTE_NAME_ENCODING, this.docBaseProps); |
613 |
metadataDoc.setId(Utilities.decodeURL(id, encoding)); |
metadataDoc.setId(Utilities.decodeURL(id, encoding)); |
614 |
} |
} |
615 |
try { |
try { |
616 |
metadataDoc.setContent(new URL(url.toString())); |
metadataDoc.setContent(new File(tempDir, fileName).toURL()); |
617 |
if (docs == null) docs = new ArrayList(); |
if (docs == null) docs = new ArrayList(); |
618 |
docs.add(metadataDoc); |
docs.add(metadataDoc); |
619 |
this.harvestedDocs.add(metadataDoc);//keeping track of all additions |
this.harvestedDocs.add(metadataDoc);//keeping track of all additions |