org.alfresco.repo.content.metadata
Class RFC822MetadataExtracter

java.lang.Object
  extended by org.alfresco.repo.content.metadata.AbstractMappingMetadataExtracter
      extended by org.alfresco.repo.content.metadata.RFC822MetadataExtracter
All Implemented Interfaces:
ContentWorker, MetadataExtracter

public class RFC822MetadataExtracter
extends AbstractMappingMetadataExtracter

Metadata extractor for RFC822 mime emails. Default configuration: (see RFC822MetadataExtractor.properties)

   messageFrom:              --      imap:messageFrom, cm:originator
   messageTo:                --      imap:messageTo
   messageCc:                --      imap:messageCc
   messageSubject:           --      imap:messageSubject, cm:title, cm:description, cm:subjectline
   messageSent:              --      imap:dateSent, cm:sentdate
   messageReceived:          --      imap:dateReceived
   All header names:
      Thread-Index:          --      imap:threadIndex
      Message-ID:            --      imap:messageId
 

Since:
3.2

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.alfresco.repo.content.metadata.MetadataExtracter
MetadataExtracter.OverwritePolicy
 
Field Summary
protected static java.lang.String KEY_MESSAGE_CC
           
protected static java.lang.String KEY_MESSAGE_FROM
           
protected static java.lang.String KEY_MESSAGE_RECEIVED
           
protected static java.lang.String KEY_MESSAGE_SENT
           
protected static java.lang.String KEY_MESSAGE_SUBJECT
           
protected static java.lang.String KEY_MESSAGE_TO
           
static java.lang.String[] SUPPORTED_MIMETYPES
           
 
Fields inherited from class org.alfresco.repo.content.metadata.AbstractMappingMetadataExtracter
logger, NAMESPACE_PROPERTY_PREFIX, supportedDateFormats
 
Constructor Summary
RFC822MetadataExtracter()
           
 
Method Summary
protected  java.util.Map extractRaw(org.alfresco.service.cmr.repository.ContentReader reader)
          Override to provide the raw extracted metadata values.
 java.util.Map getCurrentMapping()
          Back door for RM
 
Methods inherited from class org.alfresco.repo.content.metadata.AbstractMappingMetadataExtracter
checkIsSupported, extract, extract, extract, filterSystemProperties, getDefaultMapping, getExtractionTime, getMapping, getMimetypeService, getReliability, init, isSupported, makeDate, newRawMap, putRawValue, readMappingProperties, readMappingProperties, register, setDictionaryService, setFailOnTypeConversion, setInheritDefaultMapping, setMapping, setMappingProperties, setMimetypeService, setOverwritePolicy, setOverwritePolicy, setRegistry, setSupportedDateFormats, setSupportedMimetypes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

KEY_MESSAGE_FROM

protected static final java.lang.String KEY_MESSAGE_FROM
See Also:
Constant Field Values

KEY_MESSAGE_TO

protected static final java.lang.String KEY_MESSAGE_TO
See Also:
Constant Field Values

KEY_MESSAGE_CC

protected static final java.lang.String KEY_MESSAGE_CC
See Also:
Constant Field Values

KEY_MESSAGE_SUBJECT

protected static final java.lang.String KEY_MESSAGE_SUBJECT
See Also:
Constant Field Values

KEY_MESSAGE_SENT

protected static final java.lang.String KEY_MESSAGE_SENT
See Also:
Constant Field Values

KEY_MESSAGE_RECEIVED

protected static final java.lang.String KEY_MESSAGE_RECEIVED
See Also:
Constant Field Values

SUPPORTED_MIMETYPES

public static java.lang.String[] SUPPORTED_MIMETYPES
Constructor Detail

RFC822MetadataExtracter

public RFC822MetadataExtracter()
Method Detail

extractRaw

protected java.util.Map extractRaw(org.alfresco.service.cmr.repository.ContentReader reader)
                            throws java.lang.Throwable
Description copied from class: AbstractMappingMetadataExtracter
Override to provide the raw extracted metadata values. An extracter should extract as many of the available properties as is realistically possible. Even if the default mapping doesn't handle all properties, it is possible for each instance of the extracter to be configured differently and more or less of the properties may be used in different installations.

Raw values must not be trimmed or removed for any reason. Null values and empty strings are

  • Null: Removed
  • Empty String: Passed to the OverwritePolicy
  • Non Serializable: Converted to String or fails if that is not possible

Properties extracted and their meanings and types should be thoroughly described in the class-level javadocs of the extracter implementation, for example:

 editor: - the document editor        -->  cm:author
 title:  - the document title         -->  cm:title
 user1:  - the document summary
 user2:  - the document description   -->  cm:description
 user3:  -
 user4:  -
 

Specified by:
extractRaw in class AbstractMappingMetadataExtracter
Parameters:
reader - the document to extract the values from. This stream provided by the reader must be closed if accessed directly.
Returns:
Returns a map of document property values keyed by property name.
Throws:
java.lang.Throwable
See Also:
AbstractMappingMetadataExtracter.getDefaultMapping()

getCurrentMapping

public final java.util.Map getCurrentMapping()
Back door for RM

Returns:


Copyright © 2005 - 2010 Alfresco Software, Inc. All Rights Reserved.