将Java代码转换为Coldfusion代码(CFIMAP) [英] Convert java code to coldfusion code (CFIMAP)

查看:69
本文介绍了将Java代码转换为Coldfusion代码(CFIMAP)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试建立与Office365邮箱的连接。此函数基于Java示例(请参见 https://stackoverflow.com/a/28689722/2482184 )。我快完成了,但是我不知道如何转换原始Java示例中的以下代码行:

I am trying to setup a connection to an office365 mailbox. This function is based on a java example (see https://stackoverflow.com/a/28689722/2482184). I am almost done but i cannot figure out how to convert the following line of code which is in the orignal java example:

Message[] messages = inbox.search(new FlagTerm(new Flags(Flags.Flag.SEEN), false));

在完整功能下方:

<cfscript>
    mailSettings = {};
    mailSettings.server = "outlook.office365.com";
    mailSettings.port = "993";
    mailSettings.username = "xxxx";
    mailSettings.password = "xxxx";
    mailSettings.action = "";
    mailSettings.folder = "INBOX";
    mailSettings.timeout = 5000;

    properties = createObject("Java","java.util.Properties");
    jsession = createObject("Java","javax.mail.Session");
    store = createObject("Java","javax.mail.Store");
    message = CreateObject("Java", "javax.mail.Message");

    properties.init();
    properties.put("mail.store.protocol","imap");
    properties.put("mail.from", mailSettings.username);
    properties.put("mail.imap.port", mailSettings.port);
    properties.put("mail.imap.connectiontimeout",mailSettings.timeout);
    properties.put("mail.imap.timeout",mailSettings.timeout);
    jsession = jsession.getInstance(properties);

    store = jsession.getStore("imaps");
    store.connect(mailSettings.server, mailSettings.username, mailSettings.password);

    inbox  = store.getFolder("#mailSettings.folder#");
    inbox.open( inbox.READ_ONLY );

    /**********
    NEED HELP TO CONVERT THIS LINE BELOW TO COLDFUSION SYNTAX
    ---------
    Message[] messages = inbox.search(new FlagTerm(new Flags(Flags.Flag.SEEN), false));
    ---------
    END NEED HELP
    **********/

    inbox.close(true);

</cfscript>

我知道有一个cfimap标签。我正在尝试找到一种下载电子邮件的更快方法。

I know there is a cfimap tag. I am trying to find a faster method to download emails.

推荐答案

获取对 Flag.SEEN


Flags.Flag -此内部类表示单个系统标志。

Flags.Flag - This inner class represents an individual system flag.

然后使用它来构建其他对象(标志和FlagTerm):

Then use it to build the other objects (Flags and FlagTerm):

Flag = createObject("java", "javax.mail.Flags$Flag");
Seen = createObject("java", "javax.mail.Flags").init(Flag.SEEN);
Term = createObject("java", "javax.mail.search.FlagTerm").init(Seen, false);
// do search ...
messages = inbox.search(Term);

这篇关于将Java代码转换为Coldfusion代码(CFIMAP)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆