本文整理汇总了Java中org.apache.james.mime4j.stream.MimeConfig类的典型用法代码示例。如果您正苦于以下问题:Java MimeConfig类的具体用法?Java MimeConfig怎么用?Java MimeConfig使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MimeConfig类属于org.apache.james.mime4j.stream包,在下文中一共展示了MimeConfig类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: parse
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
public static MimeBodyPart parse(FileFactory fileFactory, InputStream inputStream)
throws MessagingException, IOException {
MimeBodyPart parsedRootPart = new MimeBodyPart();
MimeConfig parserConfig = new MimeConfig.Builder()
.setMaxHeaderLen(-1)
.setMaxLineLen(-1)
.setMaxHeaderCount(-1)
.build();
MimeStreamParser parser = new MimeStreamParser(parserConfig);
parser.setContentHandler(new PartBuilder(fileFactory, parsedRootPart));
parser.setRecurse();
try {
parser.parse(new EOLConvertingInputStream(inputStream));
} catch (MimeException e) {
throw new MessagingException("Failed to parse decrypted content", e);
}
return parsedRootPart;
}
示例2: parse
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
public static MimeBodyPart parse(FileFactory fileFactory, InputStream inputStream)
throws MessagingException, IOException {
MimeBodyPart parsedRootPart = new MimeBodyPart();
MimeConfig parserConfig = new MimeConfig();
parserConfig.setMaxHeaderLen(-1);
parserConfig.setMaxLineLen(-1);
parserConfig.setMaxHeaderCount(-1);
MimeStreamParser parser = new MimeStreamParser(parserConfig);
parser.setContentHandler(new PartBuilder(fileFactory, parsedRootPart));
parser.setRecurse();
try {
parser.parse(new EOLConvertingInputStream(inputStream));
} catch (MimeException e) {
throw new MessagingException("Failed to parse decrypted content", e);
}
return parsedRootPart;
}
示例3: run
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
public void run(GraphDatabaseService db) {
this.db = db;
MboxHandler myHandler = new MboxHandler();
myHandler.setDb(db);
MimeConfig config=new MimeConfig();
config.setMaxLineLen(-1);
parser = new MimeStreamParser(config);
parser.setContentHandler(myHandler);
parse(new File(mboxPath));
try (Transaction tx = db.beginTx()) {
for (String address : myHandler.getMailUserNameMap().keySet()) {
Node node = myHandler.getMailUserMap().get(address);
node.setProperty(MAILUSER_NAMES, String.join(", ", myHandler.getMailUserNameMap().get(address)));
}
tx.success();
}
try (Transaction tx = db.beginTx()) {
for (String mailId : myHandler.getMailReplyMap().keySet()) {
Node mailNode = myHandler.getMailMap().get(mailId);
Node replyNode = myHandler.getMailMap().get(myHandler.getMailReplyMap().get(mailId));
if (mailNode != null & replyNode != null)
mailNode.createRelationshipTo(replyNode, RelationshipType.withName(MailListExtractor.MAIL_IN_REPLY_TO));
}
tx.success();
}
}
示例4: parseMessage
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
@Override
public Message parseMessage(final InputStream is)
throws IOException
{
try
{
final MessageImpl message = new MessageImpl();
final DecodeMonitor mon = DecodeMonitor.SILENT;
final BodyDescriptorBuilder bdb = new DefaultBodyDescriptorBuilder(null, LenientFieldParser.getParser(), mon);
final MimeTokenStream tokenStream = new MimeTokenStream(new MimeConfig(), mon, bdb);
final MimeStreamParser parser = new MimeStreamParser(tokenStream);
tokenStream.setRecursionMode(RecursionMode.M_NO_RECURSE);
parser.setContentHandler(new MimeUIEntityBuilder(message, new BasicBodyFactory()));
parser.setContentDecoding(true);
parser.parse(is);
return message;
}
catch (final MimeException e)
{
throw new MimeIOException(e);
}
}
示例5: getMimeStreamParser
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
private static MimeStreamParser getMimeStreamParser() {
MimeConfig parserConfig = new MimeConfig.Builder()
.setMaxHeaderLen(-1)
.setMaxLineLen(-1)
.setMaxHeaderCount(-1)
.build();
return new MimeStreamParser(parserConfig);
}
示例6: parse
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
private void parse(InputStream in, boolean recurse) throws IOException, MessagingException {
mHeader.clear();
mFrom = null;
mTo = null;
mCc = null;
mBcc = null;
mReplyTo = null;
xOriginalTo = null;
deliveredTo = null;
xEnvelopeTo = null;
mMessageId = null;
mReferences = null;
mInReplyTo = null;
mSentDate = null;
mBody = null;
MimeConfig parserConfig = new MimeConfig.Builder()
// The default is a mere 10k
.setMaxHeaderLen(-1)
// The default is 1000 characters. Some MUAs generate REALLY long References: headers
.setMaxLineLen(-1)
// Disable the check for header count.
.setMaxHeaderCount(-1)
.build();
MimeStreamParser parser = new MimeStreamParser(parserConfig);
parser.setContentHandler(new MimeMessageBuilder(new DefaultBodyFactory()));
if (recurse) {
parser.setRecurse();
}
try {
parser.parse(new EOLConvertingInputStream(in));
} catch (MimeException me) {
throw new MessagingException(me.getMessage(), me);
}
}
示例7: ResponseDecoder
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
public ResponseDecoder(ImapClientConfiguration configuration,
ImapClientState clientState,
EventExecutorGroup executorGroup) {
super(State.SKIP_CONTROL_CHARS);
this.logger = LogUtils.loggerWithName(ResponseDecoder.class, clientState.getClientName());
this.clientState = clientState;
this.executorGroup = executorGroup;
this.charSeq = new SoftReferencedAppendableCharSequence(configuration.defaultResponseBufferSize());
this.lineParser = new LineParser(charSeq, configuration.maxLineLength());
this.wordParser = new WordParser(charSeq, configuration.maxLineLength());
this.fetchResponseTypeParser = new FetchResponseTypeParser(charSeq, configuration.maxLineLength());
this.atomOrStringParser = new AtomOrStringParser(charSeq, configuration.maxLineLength());
this.literalStringParser = new LiteralStringParser(charSeq, configuration.maxLineLength());
this.bufferedBodyParser = new BufferedBodyParser(charSeq);
this.numberParser = new NumberParser(charSeq, 19);
this.envelopeParser = new EnvelopeParser();
this.nestedArrayParserRecycler = new NestedArrayParser.Recycler<>(literalStringParser);
this.messageBuilder = ((DefaultMessageBuilder) MESSAGE_SERVICE_FACTORY.newMessageBuilder());
MimeConfig mimeConfig = MimeConfig.custom()
.setMaxLineLen(configuration.maxLineLength())
.setMaxHeaderLen(configuration.maxLineLength())
.setMaxHeaderCount(configuration.maxHeaderCount())
.build();
messageBuilder.setMimeEntityConfig(mimeConfig);
this.untaggedResponses = new ArrayList<>();
this.responseBuilder = new TaggedResponse.Builder();
this.allBytesParser = configuration.tracingEnabled() ? new AllBytesParser(charSeq) : null;
}
示例8: getParsedEmail
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
public Email getParsedEmail() throws MimeException, IOException {
MimeConfig mime4jParserConfig = MimeConfig.DEFAULT;
BodyDescriptorBuilder bodyDescriptorBuilder = new DefaultBodyDescriptorBuilder();
MimeStreamParser mime4jParser = new MimeStreamParser(mime4jParserConfig,DecodeMonitor.SILENT,bodyDescriptorBuilder);
mime4jParser.setContentDecoding(true);
mime4jParser.setContentHandler(contentHandler);
mime4jParser.parse(rawEmailFile);
return ((CustomContentHandler)contentHandler).getEmail();
}
示例9: parseEmail
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
private void parseEmail(String messageFileName, ContentHandler contentHandler) throws FileNotFoundException,
MimeException, IOException {
MimeConfig mime4jParserConfig = MimeConfig.DEFAULT;
BodyDescriptorBuilder bodyDescriptorBuilder = new DefaultBodyDescriptorBuilder();
MimeStreamParser mime4jParser = new MimeStreamParser(mime4jParserConfig,DecodeMonitor.SILENT,bodyDescriptorBuilder);
mime4jParser.setContentDecoding(true);
mime4jParser.setContentHandler(contentHandler);
URL url = this.getClass().getClassLoader().getResource(messageFileName);
InputStream mailIn = new FileInputStream(new File(url.getFile()));
mime4jParser.parse(mailIn);
}
示例10: getMimeStreamParser
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
private static MimeStreamParser getMimeStreamParser() {
MimeConfig parserConfig = new MimeConfig();
parserConfig.setMaxHeaderLen(-1);
parserConfig.setMaxLineLen(-1);
parserConfig.setMaxHeaderCount(-1);
return new MimeStreamParser(parserConfig);
}
示例11: parse
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
private void parse(InputStream in, boolean recurse) throws IOException, MessagingException {
mHeader.clear();
mFrom = null;
mTo = null;
mCc = null;
mBcc = null;
mReplyTo = null;
mMessageId = null;
mReferences = null;
mInReplyTo = null;
mSentDate = null;
mBody = null;
MimeConfig parserConfig = new MimeConfig();
parserConfig.setMaxHeaderLen(-1); // The default is a mere 10k
parserConfig.setMaxLineLen(-1); // The default is 1000 characters. Some MUAs generate
// REALLY long References: headers
parserConfig.setMaxHeaderCount(-1); // Disable the check for header count.
MimeStreamParser parser = new MimeStreamParser(parserConfig);
parser.setContentHandler(new MimeMessageBuilder());
if (recurse) {
parser.setRecurse();
}
try {
parser.parse(new EOLConvertingInputStream(in));
} catch (MimeException me) {
throw new MessagingException(me.getMessage(), me);
}
}
示例12: parse
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
protected void parse(InputStream in, boolean recurse) throws IOException, MessagingException {
mHeader.clear();
mFrom = null;
mTo = null;
mCc = null;
mBcc = null;
mReplyTo = null;
mMessageId = null;
mReferences = null;
mInReplyTo = null;
mSentDate = null;
mBody = null;
MimeConfig parserConfig = new MimeConfig();
parserConfig.setMaxHeaderLen(-1); // The default is a mere 10k
parserConfig.setMaxLineLen(-1); // The default is 1000 characters. Some MUAs generate
// REALLY long References: headers
parserConfig.setMaxHeaderCount(-1); // Disable the check for header count.
MimeStreamParser parser = new MimeStreamParser(parserConfig);
parser.setContentHandler(new MimeMessageBuilder());
if (recurse) {
parser.setRecurse();
}
try {
parser.parse(new EOLConvertingInputStream(in));
} catch (MimeException me) {
throw new Error(me);
}
}
示例13: getMessageBuilder
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
/**
* Lazy initialize MessageBuilder instance.
* @return MessageBuilder instance
* @throws MimeException
*/
public static MessageBuilder getMessageBuilder() throws MimeException {
MessageBuilder mb = messageBuilder;
if (mb == null) {
synchronized(MessageParser.class) {
mb = messageBuilder;
if (mb == null) {
MimeConfig config = new MimeConfig();
config.setMaxLineLen(10000);
FieldParser<MailboxListField> fromMailboxListParser = MailboxListFieldImpl.PARSER;
FieldParser<AddressListField> toAddressListParser = AddressListFieldImpl.PARSER;
FieldParser<DateTimeField> dateParser = DateTimeFieldLenientImpl.PARSER;
LenientFieldParser fieldParser = new LenientFieldParser();
fieldParser.setFieldParser(FieldName.TO, toAddressListParser);
fieldParser.setFieldParser(FieldName.REPLY_TO, toAddressListParser);
fieldParser.setFieldParser(FieldName.FROM, fromMailboxListParser);
fieldParser.setFieldParser(FieldName.RESENT_FROM, fromMailboxListParser);
fieldParser.setFieldParser(FieldName.DATE, dateParser);
fieldParser.setFieldParser(FieldName.RESENT_DATE, dateParser);
DefaultMessageBuilder _mb = new DefaultMessageBuilder();
_mb.setMimeEntityConfig(config);
_mb.setFieldParser(fieldParser);
mb = _mb;
messageBuilder = mb;
}
}
}
return mb;
}
示例14: parseEmail
import org.apache.james.mime4j.stream.MimeConfig; //导入依赖的package包/类
private void parseEmail(String messageFileName,
ContentHandler contentHandler) throws
MimeException, IOException {
MimeConfig mime4jParserConfig = MimeConfig.DEFAULT;
BodyDescriptorBuilder bodyDescriptorBuilder = new DefaultBodyDescriptorBuilder();
MimeStreamParser mime4jParser = new MimeStreamParser(mime4jParserConfig, DecodeMonitor.SILENT, bodyDescriptorBuilder);
mime4jParser.setContentDecoding(true);
mime4jParser.setContentHandler(contentHandler);
URL url = this.getClass().getClassLoader().getResource(messageFileName);
InputStream mailIn = new FileInputStream(new File(url.getFile()));
mime4jParser.parse(mailIn);
}