1.项目背景:
ifttt是“if this then that”的缩写,事实上是让你的网络行为能够引发连锁反应、让你使用更为方便。ifttt旨在帮助人们利用各网站的开放API,将各个网站或应用衔接,完成任务。ifttt通过流程将各种信息串联起来,然后再集中把你要的信息呈现给你。解决了信息的冗杂,收取或关注重要信息的问题。
2.项目简介:
本项目是由java编写的一款基于触发器-动作框架的IFTTT窗口程序。
用户可以指定this和that事件。当应用监测到this事件发生时,将自动执行that事件。
当前可供选择的this事件有:
定时器
指定的QQ邮箱收到邮件(可指定发件人邮箱包含某一子串)
当前可供选择的that事件有:
通过QQ邮箱发送邮件
发布新浪微博
3.项目分析:
项目结构
本项目主要包括三个模块:
UI模块
UI模块定义了各种窗口,提供了友好的用户界面,并对用户的操作作出响应。
task模块
task模块主要有两方面功能。
管理数据。task模块记录各个任务的信息,并提供访问、添加、删除任务的接口。
执行任务。收到用户请求后,task模块讲在后台执行指定任务。
database模块
database模块提供了将任务信息转换并存储的方法与将任务信息读取并解析的方法。
在程序启动时,从database中读取上一次保存的任务信息。
在程序终止时,当前的任务信息将保存到database中。
文件结构
src
ifttt
ifttt.java//程序入口
task
TaskManager.java//任务管理类
TaskHandler.java//任务执行类
Task.java//任务类
ThisClock.java//子任务类,this事件–定时器
ThisMail.java//子任务类,this事件–收到邮件
ThatMail.java//子任务类,that事件–发邮件
ThatWeibo.java//子任务类,that事件–发微博
ui
ClockPanel.java//通