クラス AbstractMailReceiver
java.lang.ObjectSE
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.mail.AbstractMailReceiver
- 実装されたすべてのインターフェース:
Aware
、BeanFactoryAware
、BeanNameAware
、DisposableBean
、InitializingBean
、ApplicationContextAware
、ComponentSourceAware
、ExpressionCapable
、MailReceiver
、NamedComponent
- 既知の直属サブクラス
ImapMailReceiver
,Pop3MailReceiver
public abstract class AbstractMailReceiver
extends IntegrationObjectSupport
implements MailReceiver, DisposableBean
MailReceiver
実装の基本クラス。- 作成者:
- Arjen Poutsma, Jonas Partner, Mark Fisher, Iwein Fuld, Oleg Zhurakousky, Gary Russell, Artem Bilan, Dominik Simmen, Yuxin Wang, Ngoc Nhan, Filip Hrisafov
フィールドのサマリー
フィールド修飾子と型フィールド説明static final StringSE
この受信者から見たメッセージをマークするためのデフォルトのユーザーフラグ: "spring-integration-mail-adapter"。クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたフィールド
EXPRESSION_PARSER, logger
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected void
protected void
deleteMessages
(MessageEE[] messages) この受信者のフォルダーから指定されたメッセージを削除します。void
destroy()
protected void
fetchMessages
(MessageEE[] messages) この受信者のフォルダーから指定されたメッセージを取得します。protected FolderEE
protected int
protected PropertiesSE
protected StringSE
protected void
onInit()
サブクラスは、初期化ロジック用にこれを実装できます。protected void
ObjectSE[]
receive()
protected abstract MessageEE[]
サブクラスは、このメソッドを実装して新しいメールメッセージを返す必要があります。protected void
setAdditionalFlags
(MessageEE message) 追加のフラグを設定できるオプションのメソッド。void
setAutoCloseFolder
(boolean autoCloseFolder) boolean
フラグを設定して、取得後にフォルダーを自動的に閉じる(デフォルト)か、代わりに追加のIntegrationMessageHeaderAccessor.CLOSEABLE_RESOURCE
メッセージヘッダーを入力します。void
setEmbeddedPartsAsBytes
(boolean embeddedPartsAsBytes) ヘッダーマッパーが提供されている場合、埋め込みPart
EE(たとえば、Message
EE またはMultipart
EE コンテンツがペイロードの byte[] としてレンダリングされるかどうかを判別します。void
setFlaggedAsFallback
(boolean flaggedAsFallback) メールサーバーで\Recent
またはユーザーフラグがサポートされていない場合に、メッセージにFlags.Flag.FLAGGED
EE フラグを追加するかどうか。void
setHeaderMapper
(HeaderMapper<MimeMessageEE> headerMapper) ヘッダーマッパーを設定します。ヘッダーマッパーが提供されない場合、メッセージペイロードはMimeMessage
EE になり、提供されるとヘッダーがマッピングされ、ペイロードがMimeMessage
EE コンテンツになります。void
setJavaMailAuthenticator
(AuthenticatorEE javaMailAuthenticator) オプションで、セッションの取得に使用する認証システムを設定します。void
setJavaMailProperties
(PropertiesSE javaMailProperties) これらのプロパティ(および JavaMailAuthenticator が提供されている場合)を使用して、新しいSession
EE が作成されます。void
setMaxFetchSize
(int maxFetchSize) receive()
の呼び出しごとにフェッチするメッセージの最大数を指定します。void
setProtocol
(StringSE protocol) void
setSelectorExpression
(Expression selectorExpression) void
setSession
(SessionEE session) Session
EE を設定してください。void
setShouldDeleteMessages
(boolean shouldDeleteMessages) メールメッセージを取得後に削除するかどうかを指定します。void
setSimpleContent
(boolean simpleContent) MimeMessage.getContent()
はメール本文のみを返します。void
setUserFlag
(StringSE userFlag) サーバーが \ Recent をサポートしないがユーザーフラグをサポートする場合にメッセージにフラグを付けるために使用するフラグの名前を設定します。デフォルト "spring-integration-mail-adapter"protected boolean
メールメッセージを受信後に削除するかどうかを示します。toString()
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたメソッド
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentDescription, getComponentName, getComponentSource, getComponentType, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentDescription, setComponentName, setComponentSource, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler
フィールドの詳細
DEFAULT_SI_USER_FLAG
この受信者から見たメッセージをマークするためのデフォルトのユーザーフラグ: "spring-integration-mail-adapter"。- 関連事項:
コンストラクターの詳細
AbstractMailReceiver
public AbstractMailReceiver()AbstractMailReceiver
AbstractMailReceiver
メソッドの詳細
setSelectorExpression
setProtocol
setSession
Session
EE を設定します。それ以外の場合、セッションはSession.getInstance(Properties)
EE またはSession.getInstance(Properties, Authenticator)
EE の呼び出しによって作成されます。- パラメーター:
session
- セッション。- 関連事項:
setJavaMailProperties
これらのプロパティ(および JavaMailAuthenticator が提供されている場合)を使用して、新しいSession
EE が作成されます。このメソッドまたはsetSession(jakarta.mail.Session)
のいずれかを使用しますが、両方は使用しません。- パラメーター:
javaMailProperties
- javamail プロパティ。- 関連事項:
getJavaMailProperties
setJavaMailAuthenticator
オプションで、セッションの取得に使用する認証システムを設定します。setSession(jakarta.mail.Session)
を使用してSession
EE を直接構成している場合、これは使用されません。- パラメーター:
javaMailAuthenticator
- javamail 認証システム。- 関連事項:
setMaxFetchSize
public void setMaxFetchSize(int maxFetchSize) receive()
の呼び出しごとにフェッチするメッセージの最大数を指定します。- パラメーター:
maxFetchSize
- 最大フェッチサイズ。
setShouldDeleteMessages
public void setShouldDeleteMessages(boolean shouldDeleteMessages) メールメッセージを取得後に削除するかどうかを指定します。- パラメーター:
shouldDeleteMessages
- メッセージを削除する場合は true。
shouldDeleteMessages
protected boolean shouldDeleteMessages()メールメッセージを受信後に削除するかどうかを示します。- 戻り値:
- メッセージが削除される場合は true。
getUserFlag
setUserFlag
サーバーが \ Recent をサポートしないがユーザーフラグをサポートする場合にメッセージにフラグを付けるために使用するフラグの名前を設定します。デフォルト "spring-integration-mail-adapter"- パラメーター:
userFlag
- フラグ。- 導入:
- 4.2.2
setHeaderMapper
ヘッダーマッパーを設定します。ヘッダーマッパーが提供されない場合、メッセージペイロードはMimeMessage
EE になり、提供されるとヘッダーがマッピングされ、ペイロードがMimeMessage
EE コンテンツになります。- パラメーター:
headerMapper
- ヘッダーマッパー。- 導入:
- 4.3
- 関連事項:
setEmbeddedPartsAsBytes
public void setEmbeddedPartsAsBytes(boolean embeddedPartsAsBytes) ヘッダーマッパーが提供されている場合、埋め込みPart
EE(たとえば、Message
EE またはMultipart
EE コンテンツがペイロードで byte[] としてレンダリングされるかどうかを決定します。そうでない場合は、Part
EE のままにします。ヘッダーマッパーがない場合、これは効果がありません。その場合、ペイロードは
MimeMessage
EE です。- パラメーター:
embeddedPartsAsBytes
- 設定する embeddedPartsAsBytes。- 導入:
- 4.3
- 関連事項:
setSimpleContent
public void setSimpleContent(boolean simpleContent) MimeMessage.getContent()
はメール本文のみを返します。foo
IMAPMessage
などの一部のサブクラスは、本文とともにヘッダーを返します。To: foo@bar From: bar@baz Subject: Test Email foo
バージョン 5.0 から、メール受信者が発行するメッセージは、javamail が返すMimeMessage
EE 実装と同じ方法でコンテンツをレンダリングします。バージョン 2.2 から 4.3 では、コンテンツは、基になるメッセージ型に関係なく、常に本文のみでした(ヘッダーマッパーが提供されていない限り、ペイロードは基になるMimeMessage
EE によってレンダリングされました)。前の動作に戻すには、このフラグを true に設定します。さらに、ヘッダーマッパーが提供されている場合でも、ペイロードはメールの本文になります。
- パラメーター:
simpleContent
- 単純なコンテンツをレンダリングする場合は true。- 導入:
- 5.0
setAutoCloseFolder
public void setAutoCloseFolder(boolean autoCloseFolder) boolean
フラグを設定して、取得後にフォルダーを自動的に閉じる(デフォルト)か、代わりに追加のIntegrationMessageHeaderAccessor.CLOSEABLE_RESOURCE
メッセージヘッダーを入力します。このヘッダーを取得し、必要に応じてclose()
を呼び出すのは、ダウンストリームフローの責任です。添付ファイル付きのメールのマルチパートコンテンツを解析するときにサーバーとの通信が必要な場合は、フォルダーを開いたままにしておくと便利です。
setSimpleContent(boolean)
およびsetHeaderMapper(HeaderMapper)
オプションは、このフラグの影響を受けません。- パラメーター:
autoCloseFolder
-false
は、フェッチ後にフォルダーを自動的に閉じません。- 導入:
- 5.2
setFlaggedAsFallback
public void setFlaggedAsFallback(boolean flaggedAsFallback) メールサーバーで\Recent
またはユーザーフラグがサポートされていない場合に、メッセージにFlags.Flag.FLAGGED
EE フラグを追加するかどうか。- パラメーター:
flaggedAsFallback
-false
はフォールバックとしてFlags.Flag.FLAGGED
EE フラグを追加しません。- 導入:
- 6.4
getFolder
getFolderOpenMode
protected int getFolderOpenMode()searchForNewMessages
サブクラスは、このメソッドを実装して新しいメールメッセージを返す必要があります。- 戻り値:
- メッセージの配列。
- 例外:
MessagingExceptionEE
- MessagingException。
openFolder
receive
- 次で指定:
- インターフェース
MailReceiver
のreceive
- 例外:
MessagingExceptionEE
closeFolder
protected void closeFolder()fetchMessages
この受信者のフォルダーから指定されたメッセージを取得します。デフォルトの実装はFetchProfile.Item
EE ごとにfetches
EE です。- パラメーター:
messages
- 取得するメッセージ- 例外:
MessagingExceptionEE
- JavaMail エラーの場合
deleteMessages
この受信者のフォルダーから指定されたメッセージを削除します。- パラメーター:
messages
- 削除するメッセージ- 例外:
MessagingExceptionEE
- JavaMail エラーの場合
setAdditionalFlags
追加のフラグを設定できるオプションのメソッド。現在、IMapMailReceiver でのみ実装されています。- パラメーター:
message
- メッセージ。- 例外:
MessagingExceptionEE
- MessagingException。
destroy
public void destroy()- 次で指定:
- インターフェース
DisposableBean
のdestroy
onInit
protected void onInit()クラスからコピーされた説明:IntegrationObjectSupport
サブクラスは、初期化ロジック用にこれを実装できます。- オーバーライド:
- クラス
IntegrationObjectSupport
のonInit
toString
- オーバーライド:
- クラス
IntegrationObjectSupport
のtoString