PageRenderTime 47ms CodeModel.GetById 12ms RepoModel.GetById 0ms app.codeStats 0ms

/eclipse/org.jil.ide.widget/libraries/Messaging.js

http://transit-widget-tools.googlecode.com/
JavaScript | 396 lines | 54 code | 26 blank | 316 comment | 0 complexity | 117d8edb3f81e65e1a34aa3d53decbce MD5 | raw file
  1. /**
  2. * @fileoverview This file is to be used for listing all functions and properties of
  3. * JavaScript objects: Messaging.
  4. *
  5. * @version 0.1
  6. */
  7. Messaging.prototype = new Object();
  8. /**
  9. * @class Messaging is the container object for JIL Messaging objects. <br>
  10. * <br>
  11. * Messaging is a sub-object of <I>Widget</I>. So we use Messaging in this way:
  12. * Widget.Messaging.XXX<br>
  13. */
  14. function Messaging() {
  15. };
  16. Widget.Messaging.prototype=new Messaging();
  17. /**
  18. * Create a message. It can be a sms, mms or email message. <br>
  19. * <br>
  20. * e.g.<br>
  21. * &nbsp;&nbsp;&nbsp;&nbsp;
  22. * var msg = Widget.Messaging.createMessage(Widget.Messaging.MessageTypes.SMSMessage);<br>
  23. * &nbsp;&nbsp;&nbsp;&nbsp;
  24. * document.getElementById("div1").innerHTML = msg.messageType;
  25. *
  26. * @param {String} messageType the type of the message, The possible values are: "sms", "mms", "email".
  27. *
  28. * @returns a {@link Message} object.
  29. * @type {@link Message}
  30. */
  31. Messaging.prototype.createMessage = function(messageType) {
  32. return new Message();
  33. };
  34. /**
  35. * Delete all messages by specified <i>messageType</i> and
  36. * <i>folderType</i> parameters. <br>
  37. * <br>
  38. * e.g.<br>
  39. * &nbsp;&nbsp;&nbsp;&nbsp;
  40. * Widget.Messaging.deleteAllMessages(Widget.Messaging.MessageTypes.SMSMessage, Widget.Messaging.MessageFolderTypes.INBOX);
  41. *
  42. * @param {String} messageType the type of the message, the possible values are: "sms", "mms", "email".
  43. * @param {String} folderType the name of the folder.
  44. *
  45. * @returns
  46. * @type void
  47. */
  48. Messaging.prototype.deleteAllMessages = function(messageType, folderType) {
  49. };
  50. /**
  51. * Delete a message with specified MessageType, FolderType, and message id. <br>
  52. * <br>
  53. * e.g.<br>
  54. * &nbsp;&nbsp;&nbsp;&nbsp;
  55. * var msg = Widget.Messaging.getMessage(Widget.Messaging.MessageTypes.SMSMessage, Widget.Messaging.MessageFolderTypes.INBOX, 3);<br>
  56. * &nbsp;&nbsp;&nbsp;&nbsp;
  57. * Widget.Messaging.deleteMessage(Widget.Messaging.MessageTypes.SMSMessage, Widget.Messaging.MessageFolderTypes.INBOX, msg.messageId);
  58. *
  59. * @param {String} messageType the type of the message, the possible values are: "sms", "mms", "email".
  60. * @param {String} folderType the name of the folder.
  61. * @param {String} id the message id to be deleted.
  62. *
  63. * @returns
  64. * @type void
  65. */
  66. Messaging.prototype.deleteMessage = function(messageType, folderType, id) {
  67. };
  68. /**
  69. * Return a message for the specified MessageType, FolderType, and index value. <br>
  70. * <br>
  71. * e.g.<br>
  72. * &nbsp;&nbsp;&nbsp;&nbsp;
  73. * var msg = Widget.Messaging.getMessage(Widget.Messaging.MessageTypes.SMSMessage, Widget.Messaging.MessageFolderTypes.INBOX, 3);<br>
  74. *
  75. * @param {String} messageType the type of the message, the possible values are: "sms", "mms", "email".
  76. * @param {String} folderType the name of the folder.
  77. * @param {Number} index the index of message. This field should be an interger value, starting from 0.
  78. *
  79. * @returns A {@link Message} objects. null value will be returned if get the message failed
  80. * @type {@link Message}
  81. */
  82. Messaging.prototype.getMessage = function(messageType, folderType, index) {
  83. return new Message();
  84. };
  85. /**
  86. * Query how many messages of a message type are present in the specified folder. <br>
  87. * <br>
  88. * e.g.<br>
  89. * &nbsp;&nbsp;&nbsp;&nbsp;
  90. * var v = Widget.Messaging.getMessageQuantities(Widget.Messaging.MessageTypes.SMSMessage,
  91. * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  92. * Widget.Messaging.MessageFolderTypes.INBOX);
  93. *
  94. * @param {String} messageType the type of the message, the possible values are: "sms", "mms", "email".
  95. * @param {String} folderType the type of the folder.
  96. *
  97. * @returns a {@link MessageQuantities} object
  98. * @type {@link MessageQuantities}
  99. */
  100. Messaging.prototype.getMessageQuantities = function(messageType, folderType) {
  101. return new MessageQuantities();
  102. };
  103. /**
  104. * Attempt to send the specified message. <br>
  105. * <br>
  106. * e.g.<br>
  107. * &nbsp;&nbsp;&nbsp;&nbsp;var msg = Widget.Messaging.createMessage(Widget.Messaging.MessageTypes.SMSMessage);<br>
  108. * &nbsp;&nbsp;&nbsp;&nbsp;msg.addAddress("destination","10086");<br>
  109. * &nbsp;&nbsp;&nbsp;&nbsp;Widget.Messaging.sendMessage(msg);
  110. *
  111. * @param {Message} msg the message to be send
  112. *
  113. * @returns
  114. * @type void
  115. */
  116. Messaging.prototype.sendMessage = function(msg) {
  117. };
  118. /**
  119. * Move a message to folder. This Method move a message to a folder specified by name.<br>
  120. * <br>
  121. * e.g.<br>
  122. * &nbsp;&nbsp;&nbsp;&nbsp;
  123. * var msg = Widget.Messaging.getMessage(Widget.Messaging.MessageTypes.SMSMessage, Widget.Messaging.MessageFolderTypes.INBOX, 3);<br>
  124. * &nbsp;&nbsp;&nbsp;&nbsp;
  125. * Widget.Messaging.moveMessageToFolder(msg, Widget.Messaging.MessageFolderTypes.DRAFTS);<br>
  126. *
  127. * @param {Message} msg the message to be moved
  128. * @param {String} folderType the destination folder that the message will be moved.
  129. *
  130. * @returns
  131. * @type void
  132. */
  133. Messaging.prototype.moveMessageToFolder = function(msg, folderType) {
  134. };
  135. /**
  136. * Copy a message to folder. This Method copy a message to a folder specified by name.<br>
  137. * <br>
  138. * e.g.<br>
  139. * &nbsp;&nbsp;&nbsp;&nbsp;
  140. * var msg = Widget.Messaging.getMessage(Widget.Messaging.MessageTypes.SMSMessage, Widget.Messaging.MessageFolderTypes.SENTBOX, 0);<br>
  141. * &nbsp;&nbsp;&nbsp;&nbsp;
  142. * Widget.Messaging.copyMessageToFolder(msg, Widget.Messaging.MessageFolderTypes.DRAFTS);<br>
  143. *
  144. * @param {Message} msg the message to be copied.
  145. * @param {String} folderType the destination folder that the message will be copied to.
  146. *
  147. * @returns
  148. * @type void
  149. */
  150. Messaging.prototype.copyMessageToFolder = function(msg, folderType) {
  151. };
  152. /**
  153. * Create a folder for specified message type. <br>
  154. * <br>
  155. * e.g.<br>
  156. * &nbsp;&nbsp;&nbsp;&nbsp;
  157. * Widget.Messaging.createFolder(Widget.Messaging.MessageTypes.SMSMessage, "myfolder");<br>
  158. *
  159. * @param {String} messageType the type of the message. The possible values are: "sms", "mms", "email".
  160. * @param {String} folderName the name of the folder to be created.
  161. *
  162. * @returns
  163. * @type void
  164. */
  165. Messaging.prototype.createFolder = function(messageType, folderName) {
  166. };
  167. /**
  168. * Delete a folder from folders of specified message type. <br>
  169. * <br>
  170. * e.g.<br>
  171. * &nbsp;&nbsp;&nbsp;&nbsp;
  172. * Widget.Messaging.deleteFolder(Widget.Messaging.MessageTypes.SMSMessage, "myfolder");<br>
  173. * &nbsp;&nbsp;&nbsp;&nbsp;
  174. *
  175. * @param {String} messageType the type of the message. The possible values are: "sms", "mms", "email".
  176. * @param {String} folderName the name of the folder to be deleted.
  177. *
  178. * @returns
  179. * @type void
  180. */
  181. Messaging.prototype.deleteFolder = function(messageType, folderName) {
  182. };
  183. /**
  184. * This is a callback function which will be triggered when a new message comes. <br>
  185. * <br>
  186. * e.g.<br>
  187. * &nbsp;&nbsp;&nbsp;&nbsp;Widget.Messaging.onMessageArrived = function(msg) {<br>
  188. * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert("new Message's coming from: "+msg.sourceAddress);<br>
  189. * &nbsp;&nbsp;&nbsp;&nbsp;}<br>
  190. *
  191. * @param {Message} msg the new incoming message
  192. *
  193. * @returns
  194. * @type void
  195. */
  196. Messaging.prototype.onMessageArrived = function(msg) {
  197. };
  198. /**
  199. * This is a callback function which will be triggled when send a message failed. <br>
  200. * <br>
  201. * e.g.<br>
  202. * &nbsp;&nbsp;&nbsp;&nbsp;
  203. * Widget.Messaging.onMessageSendingFailure = function(msg, errCode) {<br>
  204. * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  205. * alert("send message failed, error code: "+errCode);<br>
  206. * &nbsp;&nbsp;&nbsp;&nbsp;
  207. * }<br>
  208. *
  209. * @param {Message} msg the message sending failed
  210. * @param {String} errcode possible values maybe: "1: No networking", "2: Unable to establish network connection", "3: Incompatible payload", "4: Unknown error".
  211. *
  212. * @returns
  213. * @type void
  214. */
  215. Messaging.prototype.onMessageSendingFailure = function(msg, errcode) {
  216. };
  217. /**
  218. * Return an array of the folder names available for the specified message type. <br>
  219. * <br>
  220. * e.g.<br>
  221. * &nbsp;&nbsp;&nbsp;&nbsp;
  222. * var folderNames = Widget.Messaging.getFolderNames(Widget.Messaging.MessageTypes.SMSMessage);
  223. *
  224. * @param {String} messageType the type of the message, the possible values are: "sms", "mms", "email".
  225. *
  226. * @returns An array of String objects.
  227. * @type Array
  228. */
  229. Messaging.prototype.getFolderNames = function(messageType) {
  230. return new Array();
  231. };
  232. /**
  233. * This method search messages with designed condition in specified message box.
  234. * This is an asynchronous function, and will invoke Messaging.onMessagesFound()
  235. * when search completes. <br>
  236. * <br>
  237. * e.g.<br>
  238. * &nbsp;&nbsp;&nbsp;&nbsp;var msg = Widget.Messaging.createMessage(Widget.Messaging.MessageTypes.SMSMessage);<br>
  239. * &nbsp;&nbsp;&nbsp;&nbsp;msg.addAddress("destination","10086");<br>
  240. * &nbsp;&nbsp;&nbsp;&nbsp;Widget.Messaging.onMessagesFound = myCallBack;<br>
  241. * &nbsp;&nbsp;&nbsp;&nbsp;Widget.Messaging.findMessages(msg, Widget.Messaging.MessageFolderTypes.INBOX, 0, 9);<br>
  242. * &nbsp;&nbsp;&nbsp;&nbsp;function myCallBack(messages) {<br>
  243. * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var size = messages.length;<br>
  244. * &nbsp;&nbsp;&nbsp;&nbsp;}<br>
  245. *
  246. * @param {Message} comparisonMsg the comparison messaqge which defines the rules for finding.
  247. * @param {String} folderType the name of the folder. Possible values are "inbox", "outbox", "sentbox", "drafts" and "all".
  248. * @param {Number} startInx an integer value to specify the index the returning search results starts from
  249. * @param {Number} endInx an integer value to specify the index to which the returning search results ends at
  250. *
  251. * @returns
  252. * @type void
  253. */
  254. Messaging.prototype.findMessages = function(comparisonMsg, folderType, startInx, endInx) {
  255. };
  256. /**
  257. * Callback method to invoke when Messaging.findMessages completes. <br>
  258. * Called asynchronously when the message send to the recipient failed due to mail format error or
  259. * mail/smsc server rejected or network error.
  260. * <br>
  261. * e.g.<br>
  262. * &nbsp;&nbsp;&nbsp;&nbsp;var msg = Widget.Messaging.createMessage(Widget.Messaging.MessageTypes.SMSMessage);<br>
  263. * &nbsp;&nbsp;&nbsp;&nbsp;msg.addAddress("destination","10086");<br>
  264. * &nbsp;&nbsp;&nbsp;&nbsp;Widget.Messaging.onMessagesFound = myCallBack;<br>
  265. * &nbsp;&nbsp;&nbsp;&nbsp;Widget.Messaging.findMessages(msg, Widget.Messaging.MessageFolderTypes.INBOX, 0, 9);<br>
  266. * &nbsp;&nbsp;&nbsp;&nbsp;function myCallBack(messages) {<br>
  267. * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert("matched message number: "+ messages.length);<br>
  268. * &nbsp;&nbsp;&nbsp;&nbsp;}<br>
  269. *
  270. * @param {Array} messagesFound An array of {@link Message} objects, null value will be returned if no matched messages
  271. * @param {String} folderType the name of the folder.
  272. *
  273. * @returns
  274. * @type void
  275. */
  276. Messaging.prototype.onMessagesFound = function(messagesFound, folderType) {
  277. };
  278. /**
  279. * Get current Email account. <br>
  280. * <br>
  281. * e.g.<br>
  282. * &nbsp;&nbsp;&nbsp;&nbsp;var account = Widget.Messaging.getCurrentEmailAccount();<br>
  283. * &nbsp;&nbsp;&nbsp;&nbsp;alert(account.accountName);<br>
  284. *
  285. * @returns Email account Object
  286. * @type {Account}
  287. */
  288. Messaging.prototype.getCurrentEmailAccount = function(){
  289. return new Account();
  290. };
  291. /**
  292. * Get all Email accounts. <br>
  293. * <br>
  294. * e.g.<br>
  295. * &nbsp;&nbsp;&nbsp;&nbsp;var account = Widget.Messaging.getEmailAccounts();<br>
  296. * &nbsp;&nbsp;&nbsp;&nbsp;alert("Email account number = "+account.length);<br>
  297. *
  298. * @returns Array of Email account Objects
  299. * @type Array
  300. */
  301. Messaging.prototype.getEmailAccounts = function(){
  302. return new Array();
  303. };
  304. /**
  305. * Set the Email account specified by account ID as default Email account. <br>
  306. * <br>
  307. * e.g.<br>
  308. * &nbsp;&nbsp;&nbsp;&nbsp;var account = Widget.Messaging.getEmailAccounts();<br>
  309. * &nbsp;&nbsp;&nbsp;&nbsp;Widget.Messaging.setCurrentEmailAccount(account[0].accountId);<br>
  310. *
  311. * @param {String} AccountId Email account Id
  312. *
  313. * @returns
  314. * @type void
  315. */
  316. Messaging.prototype.setCurrentEmailAccount = function(AccountId){
  317. };
  318. /**
  319. * Delete an Email account specified by account ID. <br>
  320. * <br>
  321. * e.g.<br>
  322. * &nbsp;&nbsp;&nbsp;&nbsp;var account = Widget.Messaging.getEmailAccounts();<br>
  323. * &nbsp;&nbsp;&nbsp;&nbsp;Widget.Messaging.deleteEmailAccount(account[1].accountId);<br>
  324. *
  325. * @param {String} AccountId Email account Id
  326. *
  327. * @returns
  328. * @type void
  329. */
  330. Messaging.prototype.deleteEmailAccount = function(AccountId) {
  331. };
  332. /**
  333. * Email account.
  334. *
  335. * @type Account
  336. */
  337. Messaging.prototype.Account = new Account();
  338. /**
  339. * Attachment. <br>
  340. * <br>
  341. * e.g.<br>
  342. * &nbsp;&nbsp;&nbsp;&nbsp;var attachment = new Widget.Messaging.Attachment();<br>
  343. *
  344. * @type Attachment
  345. */
  346. Messaging.prototype.Attachment = new Attachment();
  347. /**
  348. * Message Object.
  349. *
  350. * @type Message
  351. */
  352. Messaging.prototype.Message = new Message();
  353. /**
  354. * Message folder types.
  355. *
  356. * @type MessageFolderTypes
  357. */
  358. Messaging.prototype.MessageFolderTypes = new MessageFolderTypes();
  359. /**
  360. * MessageQuantities.
  361. *
  362. * @type MessageQuantities
  363. */
  364. Messaging.prototype.MessageQuantities = new MessageQuantities();
  365. /**
  366. * Message types.
  367. *
  368. * @type MessageTypes
  369. */
  370. Messaging.prototype.MessageTypes = new MessageTypes();