History log of /packages/apps/Email/src/com/android/exchange/EasOutboxService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
18d7222359ac54a5fa788b4a8bb8d58ee16f152b 21-Feb-2010 Marc Blank <mblank@google.com> Send meeting invitations for new/updated Exchange events

* Wrote utility to create an ics file (iCalendar) based on a
CalendarProvider Event. This is a good first pass, but we need
to consider whether to include alarms, etc.
* Use aforementioned utility and new convenience method to send
meeting invitations to attendees of newly created meetings (events)
when they are uploaded to the server via the CalendarSyncAdapter
* Overall, attempted to modify existing provider and rfc822 output
code as little as possible. Rfc822Output is actually very limited
in its capabilities and should be made more robust in future

Change-Id: Ie20b9137df56dc414de6737d05fa40ec9cdf47e0
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
bb9b5163c19449efab72746351479d193be5e122 29-Jan-2010 Makoto Onuki <omakoto@google.com> Move non-exchange specific classes to com.android.email.service.
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
caf56443607856b996d151a0f0364c7acba8f8c7 10-Dec-2009 Marc Blank <mblank@google.com> Fix delay sending stuck mail after tapping "Send outgoing mail"

* Fixes #2317429
* When "Send outgoing messages" is tapped in Outbox MessageList view,
we clear the error state for all "stuck" messages
* We didn't, however, clear the error state of the Mailbox, which doesn't
clear itself until the end of a pingLoop, which can be up to 30 minutes
* The fix is in two parts:
* We clear the error state of the Outbox when a sync is requested by
the UI
* We don't set the error state of the mailbox for non-auth errors when
sending, because we don't want to block OTHER messages from getting sent.

Change-Id: I768138b6f31eb696811aa94f621b6fa758ec1a5e
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
4b59cfc8ed4054ffb5ad85cea8aba94a430cc2cb 09-Oct-2009 Marc Blank <mblank@google.com> Fix problem with timeouts and sending attachments (#2178288)

* Standard Exchange command timeouts are 20 seconds
* For sending, however, these need to be significantly longer to
handle the case of sending large attachments, as sending (of any
length) happens in a single HTTP Post command
* Having an infinite timeout leads to the (small) possibility of the
Outbox hanging for a long time, holding up the sending of other
mail, so we set a long, but not infinite timeout for this case
* Timeout now set for 15 minutes
* Prevent sync of Outbox and Drafts (the UI triggers these by changing
the contents of these boxes, but we need to ignore the pings that
are generated this way)

Change-Id: I5b830d6b4e94525d95138b2112be12898a37882e
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
3e1c871f049f13e433e8e5c4dd8ad789dd93c6c8 23-Sep-2009 Marc Blank <mblank@google.com> Fix EAS sending, which was inadvertently broken by a change in EmailProvider

* syncServerId in the Message table can now be NULL; this broke a test
used by EasOutboxService and SyncManager to determine whether there
were sendable messages in the Outbox
* Changed test to allow for NULL in syncServerId

Change-Id: Id76c7a45bc306abe7a927ab2395700f54a01a298
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
7e89834cfd920a3c4c3fe29d18fae2f7cf4fcbbc 18-Sep-2009 Marc Blank <mblank@google.com> Fix problem w/ SmartReply & SmartForward in Exchange 2003

* It doesn't like URLEncoded commands; go figure!
* Fixes #2127892

Change-Id: Ibae8cad990ed45accb6699716fda56f45c850939
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
0d1f7add7d62bb3aad32e29baf1764de83ec5ec3 18-Sep-2009 Marc Blank <mblank@google.com> Add logging to EasOutboxService to help find sending issues

Change-Id: I8188fd2977724ae4ee6a8703098b7068c14b92fd
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
2d5691cac1874eb3491353ab608a84c2a75e2b62 15-Sep-2009 Marc Blank <mblank@google.com> Support bcc in Exchange (Fixes #2117849)

* Must send the bcc header for EAS

Change-Id: I38d119beed334c6bb23a09b87375804f8c03ea76
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
1d98989222f2d023ddb08a70d5abb850029f95dc 09-Sep-2009 Marc Blank <mblank@google.com> Implement SmartReply/SmartForward for EAS; fixes #2098779

* SmartForward and SmartReply are EAS commands that automatically
include the original message and, if a forward, all original
attachments, regardless of whether they've been downloaded to
the device
* Both commands improve battery life by sending less data; greatly
so for SmartForward if there are attachments

Change-Id: I12432cd5275a3b54e9a80d5cd59da437c4a086cc
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
9178dcc9e97f51c5295b0f66105841977c0df950 20-Aug-2009 Marc Blank <mblank@google.com> Fix bugs re: sending via EAS

* Make sure each call to sendMessage returns a proper result code
* Exit outbox sync on irrecoverable errors
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
d366346a640c93d70b78ddadfbc3a3b74944359b 20-Aug-2009 Marc Blank <mblank@google.com> Implement sendMessageStatus callback in EAS

* Change API for callback to include message subject (when msg is isn't valid)
* Update users of callback to add the new argument
* Use API in EasOutboxService to send status messages back to the UI

Still TODO: Add relevant error codes for sending problems that are not related
to connection or login issues
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
f4d7ddb0c2aba62d3a8c0d4ddbc5d15a4d15e3a3 19-Aug-2009 Marc Blank <mblank@google.com> Fix message sending from EAS (the service wasn't properly set up)

* Cleanup of EasSyncService
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
6b52af214c9961d8d11220a851a24928a5b91553 14-Aug-2009 Marc Blank <mblank@google.com> Implement adaptive ping timeout; release wake lock waiting for connectivity

* Remove unused/duplicated classes (e.g. Base64, WbxmlSerializer, etc.)
* Code cleanup in AbstractSyncService, EasSyncService
* Remove last references to HttpURLConnection (using HttpClient now)
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
1ba0fd37a158c1477025aa530206fefdc4b3fe5b 13-Aug-2009 Marc Blank <mblank@google.com> Cleanup; delete unused files, change log statements

* Two files were unused and therefore deleted
* userLog was changed to avoid using string concatentation until the logging
decision is made
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
c640cbbaf385566e1b6de361b2b23156e10f695d 13-Aug-2009 Andrew Stadler <stadler@android.com> Update SMTP to send from provider messages, and attachments

* Change Sender definition (remove old Message from API) and update
any existing calls through that API
* Rewrite SMTPSender to use provider messages
* Add attachments to RFC822Output
* Minor bugfixes in RFC822Output
* Unit tests
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
b37b1b4bfeda936a1de283be6ad805f5f8b3ef55 12-Aug-2009 Marc Blank <mblank@google.com> Stream rfc822 messages to a temporary file, and send using an InputStreamEntity

* Removes the need to store the entire outgoing message in memory
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
4f195e716c1e7d3b0e313a42f260594841e45498 12-Aug-2009 Marc Blank <mblank@google.com> Use new Rfc822Output class for sending mail; fix bug in Rfc822Output

* Change EasOutboxService to use the new Rfc822Output class for sending
* Fix small bug in Rfc822Output (was writing both in Base64 and plain text)
* Fix bug in SyncManager related to auto-starting EAS outbox
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
1e7829fb650f73ec13c1efadf1bc220d4ab19956 08-Aug-2009 Marc Blank <mblank@google.com> Switch from HttpURLConnection to HttpClient
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
f00dccd32125c727cc18d837b59c15c95f5d78bc 31-Jul-2009 Marc Blank <mblank@google.com> Massive reworking of EAS serialization; much smaller and faster now

* Remove all use of Strings in favor of the parser's static final int's
* Strings remain in Tags for debugging output only
* Renamed lots of classes to be more consistent
* Centralized logging behavior in Eas class
* Found and fixed some bugs in the process:
- Account deletion wasn't removing HostAuth's correctly in the trigger
- Adding a second EAS account was trashing the first one
- Fixed looping sync behavior caused by Exchange 2003 bug
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
b6493a07ef625c0e290890c2e60256b47a066e5e 05-Jul-2009 Marc Blank <mblank@google.com> Major refactor and cleanup of EAS code

* Rewrote push logic to encompass multiple folders (i.e. calendar/contacts)
* Change inbox from push frequency to ping frequency after initial sync
* Implement upsync logic for email (i.e. sending changes to the server)
* Did cleanup of some files (there's still some to do) re: format, style
* Initial one-way sync of Contacts data - add and delete are implemented
* Created adapter package for all parts of the EAS adapter
* Created utility package for utility code that will eventually be merged
with code in the Email application (Base64, QuotedPrintable, etc.)
* SyncManager/AbstractSyncService can be used in the future for other
protocols, especially IMAP push
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
09d13e6295310deaf7697592b3d9867ae66c9b80 24-Jun-2009 Marc Blank <mblank@google.com> Clean up Exchange code

Clean up imports to point to the com.android.exchange version of EmailContent
Clean up some line wrapping
Update EmailContent with latest version from Email project
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java
2c67f1f8b869454ed24c0ac3c813aca26d2f3978 16-Jun-2009 Marc Blank <mblank@google.com> Initial submission for EAS support (email)

* There is some temporary code ensuring that SyncManager runs (this will be removed when Exchange
is entirely independent)
* The service interface (aidl) is in place for most user-facing actions (load more, start sync, etc.)
* EAS account validation is done via aidl
* Folder and message sync appear to be functional in this early submission
* Provider now does cascading deletes (Account -> HostAuth and Mailbox, Mailbox -> Message,
Message -> Attachment and Body)
/packages/apps/Email/src/com/android/exchange/EasOutboxService.java