Interface IJEMHFieldProcessor
- 
- All Superinterfaces:
- IJEMHFieldProcessorKeys,- IJEMHModuleProvider
 
 public interface IJEMHFieldProcessor extends IJEMHModuleProvider, IJEMHFieldProcessorKeys Field Processors process incoming emails, digesting them as required into a map of keys and values.- Author:
- andy
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from interface com.javahollic.jira.emh.api.IJEMHFieldProcessorKeysIJEMHFieldProcessorKeys.AvailableProcessors
 
- 
 - 
Field Summary- 
Fields inherited from interface com.javahollic.jira.emh.api.IJEMHFieldProcessorKeysADDITIONAL_MAP_VALUES_KEY, CONTENT_ID_FILENAME_MAP, CUSTOM_DIRECTIVES, CUSTOM_FIELD_US, DEFAULT_ISSUE_LINK_DIRECTION, DEFEAT_REPORTER_OVERRIDE_CHECK, DIRECTIVE_DEFINED_ISSUE, JEMH_INTERNAL_KEY_PREFIX, JOIN_GROUP_TO_CUSTOM_FIELD, JOIN_GROUP_TO_PROJECT_ROLE, KEY_AFFECTS_VERSIONS, KEY_ASSIGNEE, KEY_ATTACHMENTS, KEY_CC_USERS, KEY_COMMENT, KEY_COMPONENTS, KEY_DESCRIPTION, KEY_DUE_DATE, KEY_DUE_DATE_FORMAT, KEY_EMAIL_SENDER_USERID, KEY_EMBEDDED_ATTACHMENTS, KEY_ENVIRONMENT, KEY_FALLBACK_EMAIL_SUBJECT_SUMMARY, KEY_FIELD_PROCESSOR_HINT, KEY_FIX_VERSIONS, KEY_ISSUE_KEY, KEY_ISSUE_TEMPLATE, KEY_ISSUETYPE, KEY_ISSUETYPE_STATUS, KEY_JEMH_RECIPIENT, KEY_JSD_AGENT_INTERNAL_COMMENT, KEY_JSD_APPROVAL, KEY_JSD_APPROVAL_DECISION, KEY_LABELS, KEY_LINKTO, KEY_LOG_WORK_DONE, KEY_NOTIFY_ON_EDIT, KEY_ORGANIZATIONS, KEY_OVERRIDE_HINTOGRAM_EMAIL_DELIVERY_ADDRESS, KEY_PARAM, KEY_PARENT_ISSUE_KEY, KEY_PRIORITY, KEY_PROJECT, KEY_RELATED_ISSUE, KEY_REPORTER, KEY_REPORTER_IS_DEFAULT, KEY_SECURITY_LEVEL, KEY_SPRINT, KEY_STRIP_COMMENTS, KEY_SUMMARY, KEY_VIEWABLE, KEY_VOTE, KEY_WATCHERS, KEY_WORK_ESTIMATE, KEY_WORKFLOW, KEY_WORKFLOW_PARAMS, KEY_WORKFLOW_RESOLUTION, KEY_WORKLOG, KEY_WORKLOG_KEEP_ESTIMATE, KEY_WORKLOG_NEW_REMAINING_ESTIMATE, KEY_WORKLOG_PARAMS, KEY_WORKLOG_START_DATE, KEY_WORKLOG_TIME_SPENT, KEY_WORKLOG_VIEWABLE_GROUP, KEY_WORKLOG_VIEWABLE_ROLE, KEY_WORKLOG_VIEWAWBLE, MAPPING_AUTO_JOIN_GROUPS, MAPPING_AUTO_JOIN_GROUPS_AUDIENCE, NON_JIRA_WATCHERS, PROJECT_MAPPING_RULE, RAW_MESSAGE, STANDARD_JIRA_ISSUE_ATTRIBUTES, STRIPPED_BODY_CONTENT
 
- 
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Modifier and Type Method Description voidcopyTo(int id)Handlers should duplicate their locally stored resources, against the given id KEY that relates to the JEMH profile involved.IJEMHFieldProcessorContextgetContext()Provides JEMH with a reference to the processors init paramsStringgetExecutionLog()intgetFieldCount()Collection<Map<String,Object>>getFieldMaps()voidhandleDelete()JEMH can delete profiles, which should also delete any resources that a handler has allocated.voidinit(IJEMHFieldProcessorContext context)booleanisHandlerOptOutOfJEMHPostConfig()JEMH applies much configuration over the top of provided directives, for example, attachment extraction as well as provision of Project Mapping derived values and more.booleanisHandlerOwnsMessage()- 
Methods inherited from interface com.javahollic.jira.emh.api.extension.IJEMHModuleProvidergetDescription, getKey, getName, getStatus, getVendor, getVendorUrl, isUsable
 
- 
 
- 
- 
- 
Method Detail- 
initvoid init(IJEMHFieldProcessorContext context) - Parameters:
- context- providing access to everything required
 
 - 
getContextIJEMHFieldProcessorContext getContext() Provides JEMH with a reference to the processors init params- Returns:
- context
 
 - 
isHandlerOwnsMessageboolean isHandlerOwnsMessage() - Returns:
- true if the handler decides it should own the processing of this email, i.e. should be used instead of other Field Processors, a false value just means the handler should participate in the election allow with any of the other configured default handlers.
 
 - 
isHandlerOptOutOfJEMHPostConfigboolean isHandlerOptOutOfJEMHPostConfig() JEMH applies much configuration over the top of provided directives, for example, attachment extraction as well as provision of Project Mapping derived values and more. This support can be disabled for 'naked' handling, but will require specific information to be available in order to create issues: - project - issueType - reporter - summary- Returns:
- true if handlers should be solely responsible for email processing, or whether JEMH should perform more, eg through Project Mappings
 
 - 
getFieldCountint getFieldCount() - Returns:
- the number of fields the handler has found. This allows the handler to participate in the general handler election (the handler with the most fields found wins). Boosting this return value can skew the election in this handlers favour.
 
 - 
getFieldMapsCollection<Map<String,Object>> getFieldMaps() throws FieldProcessorException - Returns:
- map of JEMH expected keys to values
- Throws:
- FieldProcessorException- if it breaks
 
 - 
handleDeletevoid handleDelete() JEMH can delete profiles, which should also delete any resources that a handler has allocated. Clean up here.
 - 
copyTovoid copyTo(int id) Handlers should duplicate their locally stored resources, against the given id KEY that relates to the JEMH profile involved. see IJEMHFieldProcessorContext.getID()- Parameters:
- id- the id
 
 - 
getExecutionLogString getExecutionLog() - Returns:
- execution log, primarily to support scripted field processor, can be safely null
 
 
- 
 
-