MOB-1512 - Date field processing for metadata extraction.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16458 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Mark Rogers
2009-09-23 12:48:41 +00:00
parent a48ac3deca
commit 0a36194042
5 changed files with 31 additions and 2 deletions

View File

@@ -200,7 +200,15 @@
<bean id="extracter.Html" class="org.alfresco.repo.content.metadata.HtmlMetadataExtracter" parent="baseMetadataExtracter" /> <bean id="extracter.Html" class="org.alfresco.repo.content.metadata.HtmlMetadataExtracter" parent="baseMetadataExtracter" />
<bean id="extracter.MP3" class="org.alfresco.repo.content.metadata.MP3MetadataExtracter" parent="baseMetadataExtracter" /> <bean id="extracter.MP3" class="org.alfresco.repo.content.metadata.MP3MetadataExtracter" parent="baseMetadataExtracter" />
<bean id="extracter.OpenDocument" class="org.alfresco.repo.content.metadata.OpenDocumentMetadataExtracter" parent="baseMetadataExtracter" /> <bean id="extracter.OpenDocument" class="org.alfresco.repo.content.metadata.OpenDocumentMetadataExtracter" parent="baseMetadataExtracter" />
<bean id="extracter.RFC822" class="org.alfresco.repo.content.metadata.RFC822MetadataExtracter" parent="baseMetadataExtracter" />
<bean id="extracter.RFC822" class="org.alfresco.repo.content.metadata.RFC822MetadataExtracter" parent="baseMetadataExtracter" >
<property name="supportedDateFormats">
<list>
<value>EEE, d MMM yyyy HH:mm:ss Z</value>
</list>
</property>
</bean>
<bean id="extracter.OpenOffice" class="org.alfresco.repo.content.metadata.OpenOfficeMetadataExtracter" parent="baseMetadataExtracter"> <bean id="extracter.OpenOffice" class="org.alfresco.repo.content.metadata.OpenOfficeMetadataExtracter" parent="baseMetadataExtracter">
<property name="worker"> <property name="worker">
<ref bean="extracter.worker.OpenOffice" /> <ref bean="extracter.worker.OpenOffice" />

View File

@@ -70,6 +70,16 @@
<property name="imap:threadIndex"> <property name="imap:threadIndex">
<type>d:text</type> <type>d:text</type>
</property> </property>
<property name="imap:dateReceived">
<title>Date Received</title>
<type>d:date</type>
<mandatory>false</mandatory>
</property>
<property name="imap:dateSent">
<title>Date Received</title>
<type>d:date</type>
<mandatory>false</mandatory>
</property>
</properties> </properties>
<associations> <associations>
<association name="imap:attachment"> <association name="imap:attachment">

View File

@@ -747,6 +747,10 @@ abstract public class AbstractMappingMetadataExtracter implements MetadataExtrac
{ {
convertedPropertyValue = makeDate((String) propertyValue); convertedPropertyValue = makeDate((String) propertyValue);
} }
else if(propertyValue instanceof Date)
{
convertedPropertyValue = propertyValue;
}
} }
else else
{ {

View File

@@ -51,9 +51,11 @@ import org.alfresco.service.namespace.QName;
* <b>messageTo:</b> -- imap:messageTo * <b>messageTo:</b> -- imap:messageTo
* <b>messageCc:</b> -- imap:messageCc * <b>messageCc:</b> -- imap:messageCc
* <b>messageSubject:</b> -- imap:messageSubject, cm:title, cm:description * <b>messageSubject:</b> -- imap:messageSubject, cm:title, cm:description
* <b>messageSent:</b> -- imap:dateSent
* <b>All <code>{@link Header#getName() header names}:</b> * <b>All <code>{@link Header#getName() header names}:</b>
* <b>Thread-Index:</b> -- imap:threadIndex * <b>Thread-Index:</b> -- imap:threadIndex
* <b>Message-ID:</b> -- imap:messageId * <b>Message-ID:</b> -- imap:messageId
* <b>date:</b> -- imap:dateReceived
* *
* @author Derek Hulley * @author Derek Hulley
* @since 3.2 * @since 3.2
@@ -65,6 +67,7 @@ public class RFC822MetadataExtracter extends AbstractMappingMetadataExtracter
private static final String KEY_MESSAGE_TO = "messageTo"; private static final String KEY_MESSAGE_TO = "messageTo";
private static final String KEY_MESSAGE_CC = "messageCc"; private static final String KEY_MESSAGE_CC = "messageCc";
private static final String KEY_MESSAGE_SUBJECT = "messageSubject"; private static final String KEY_MESSAGE_SUBJECT = "messageSubject";
private static final String KEY_MESSAGE_SENT = "messageSent";
public static String[] SUPPORTED_MIMETYPES = new String[] { MimetypeMap.MIMETYPE_RFC822 }; public static String[] SUPPORTED_MIMETYPES = new String[] { MimetypeMap.MIMETYPE_RFC822 };
@@ -90,6 +93,7 @@ public class RFC822MetadataExtracter extends AbstractMappingMetadataExtracter
putRawValue(KEY_MESSAGE_FROM, InternetAddress.toString(mimeMessage.getFrom()), rawProperties); putRawValue(KEY_MESSAGE_FROM, InternetAddress.toString(mimeMessage.getFrom()), rawProperties);
putRawValue(KEY_MESSAGE_TO, InternetAddress.toString(mimeMessage.getRecipients(RecipientType.TO)), rawProperties); putRawValue(KEY_MESSAGE_TO, InternetAddress.toString(mimeMessage.getRecipients(RecipientType.TO)), rawProperties);
putRawValue(KEY_MESSAGE_CC, InternetAddress.toString(mimeMessage.getRecipients(RecipientType.CC)), rawProperties); putRawValue(KEY_MESSAGE_CC, InternetAddress.toString(mimeMessage.getRecipients(RecipientType.CC)), rawProperties);
putRawValue(KEY_MESSAGE_SENT, mimeMessage.getSentDate(), rawProperties);
String[] subj = mimeMessage.getHeader("Subject"); String[] subj = mimeMessage.getHeader("Subject");
if (subj != null && subj.length > 0) if (subj != null && subj.length > 0)

View File

@@ -13,7 +13,10 @@ messageFrom=imap:messageFrom
messageTo=imap:messageTo messageTo=imap:messageTo
messageCc=imap:messageCc messageCc=imap:messageCc
messageSubject=imap:messageSubject, cm:title, cm:description messageSubject=imap:messageSubject, cm:title, cm:description
messageSent=imap:dateSent
#Add here any values you want to extract. Use Header name for key. #Add here any values you want to extract. Use Header name for key.
Thread-Index=imap:threadIndex Thread-Index=imap:threadIndex
Message-ID=imap:messageId Message-ID=imap:messageId
Date=imap:dateReceived