Commit graph

2473 commits

Author SHA1 Message Date
Ricki Hirner 68e5525e1f Fetch remote records in chunks of max. 50 to avoid server and memory problems
* performance optimisation
* refactoring
2013-12-24 12:49:23 +01:00
Ricki Hirner 38ae48e685 Fetch resources for uploading one-by-one to save memory 2013-12-24 12:49:18 +01:00
Ricki Hirner ee8611f90b Refactoring
* Contacts/Event.toEntity() return ByteArrayOutputStream instead of String
* throw DavNoContentException instead of returning null to avoid NullPointerExceptions
* always close input/output streams
* always call consumeContent() for HTTP response entities to avoid memory leaks
2013-12-22 00:58:58 +01:00
Ricki Hirner 3bdbf37608 throw RecordNotFoundExceptions only when specific records are requested 2013-12-21 20:54:54 +01:00
Ricki Hirner f72f0f3b91 Refactoring
* add overflow marker "…" to LoggingInputStream
* split the populate() methods
* always close cursors (resolves #120)
* introduce LocalStorageException and its subclass RecordNotFoundException and catch RemoteException earlier
* split synchronize() method into phases
* commit after every added/modified record (obsoletes MAX_UPDATES_BEFORE_COMMIT)
* read contact photos from (high-res) asset instead of the thumbnail blob (resolves #121)
2013-12-20 22:42:18 +01:00
Ricki Hirner c01d969e21 Version bump to 0.5.3-alpha
* add null checks (should fix #117)
* more detailed DAV exceptions for error handling
* better logging (limited to 10 kB per log entry) to avoid memory problems
* DavMultiget creates requests itself (instead of WebDavResource)
2013-12-15 19:50:20 +01:00
Ricki Hirner 0256c50694 Version bump to 0.5.2-alpha 2013-12-11 17:08:10 +01:00
Ricki Hirner 7bc145ca47 avoid NullPointerExceptions when contact data rows with custom types have no LABEL 2013-12-11 15:48:21 +01:00
Ricki Hirner 6056bab6e2 Amend EditSchema and VCard fields
* write PRODID with DAVdroid and ez-vcard version to VCards
* remove limit of 1 for contact Web sites in contact EditSchema
* add organization to contact EditSchema
* don't set null values in ORG/ROLE
2013-12-11 15:19:50 +01:00
Ricki Hirner fa675658a8 More input checks
* check Android's DURATION, RRULE, RDATE, EXRULE, EXDATE values for empty strings before processing
* catch InvalidArgumentException on invalid RRULE values from Android
* add Depth: 0 to REPORT multi-get requests as required by CalDAV/CardDAV RFCs
* fix crash bug on multi-get responses without content (see issue #113)
2013-12-11 14:48:05 +01:00
Ricki Hirner 4f722ee392 Version bump to 0.5.1; fix crash bug (fixes #108) 2013-12-08 14:00:48 +01:00
Ricki Hirner 3066856e09 Ignore invalid IM addresses (fixes #105), Lombok 1.12.2 2013-12-08 13:31:59 +01:00
Ricki Hirner 14784504c8 Version bump to 0.5
* don't download contact photos from URLs (we only want thumbs anyway)
* always use yyyy-MM-dd for birthdays/anniversaries
2013-12-06 20:47:22 +01:00
Ricki Hirner 723fd58285 Add more vCard fields
* support for vCard organization (company / job title)
* support for vCard IMPP addresses (closes #105)
* refactoring
2013-12-06 14:19:00 +01:00
Ricki Hirner 3f10968228 VCard 3 support
* switch to ez-vcard instead if iCal4j-vcard
* generate VCard 3 by default (fixes #67)
* support for more phone number/email/address types, including "custom" types
* limit to 1 URL and 1 note (Android limit)
* support for anniversaries
2013-12-04 14:04:18 +01:00
Ricki Hirner b5cd37daed Fix crash bug when ORGANIZER has no URI scheme 2013-12-03 20:34:50 +01:00
Ricki Hirner effdc7fee4 Version 0.4.4
* allow to enter account name at the end of account setup (fixes #13)
* advise user to enter email address as account name (closes #24)
* support for iCal TRANSP (availability free/busy field)
* create better UIDs using iCal4j UidGenerator and Settings.Secure.ANDROID_ID
* better ORGANIZER/ATTENDEE support, but there are big Android issues yet
* various improvements and bug fixes
2013-12-01 16:08:36 +01:00
Ricki Hirner 1409da386e Provide DTEND for single-time events and DURATION for recurring events to Android calendar data provider (fixes #60) 2013-11-30 00:50:13 +01:00
Ricki Hirner 5528d19257 CalDAV: ignore collections without VEVENT support (for instance, VTODO collections) 2013-11-30 00:06:16 +01:00
Ricki Hirner b5f7597c38 add DURATION iCal->Android, collection refactoring 2013-11-26 22:20:00 +01:00
Ricki Hirner 48011928a3 version bump to 0.4.3-alpha 2013-11-24 13:21:59 +01:00
Ricki Hirner 62a066b55d treat 404 on DELETE as success (fixes #94) 2013-11-24 13:20:44 +01:00
Ricki Hirner 2039071c77 support for reminders; better support for recurring events; bug fixes
* use DURATION instead of DTEND when required (fixes #60)
* send VTIMEZONEs along with VEVENTs (fixes #66)
* support for reminders (closes #70)
* bug fixes (UID parsing)
2013-11-24 13:15:31 +01:00
Ricki Hirner 5995d3d319 security fix: validate certificates and not only host names (thanks Günter) 2013-11-24 03:07:50 +01:00
Ricki Hirner b14bd337de version bump to 0.4.2
* imports calendar default time zone on account creation
2013-11-22 15:11:39 +01:00
Ricki Hirner 70075f9f09 Bug fixes, SDK level 19
* use SDK level 19
* add action to all preference intents (fixes #92)
* use StrictHostnameVerifier instead of HttpsURLConnection.getDefaultHostnameVerifier() (fixes #88)
* use per-WebDavResource instead of static DavHttpClient to enable different settings for different accounts
2013-11-22 15:11:08 +01:00
Ricki Hirner 15ff7dfa18 Bug fixes, refactoring, version bump
* don't manually decode URLs for comparing (because we now always use encoded URLs)
* .ics: VERSION before PRODID
* refactoring: move WebDavResource.httpClient to new singleton DavHttpClient
* close input streams in propfind/multi-get
* version bumpt to 0.4.1
2013-11-17 15:49:10 +01:00
Ricki Hirner 7c19e1ac5b Fix invalid URLs one more time 2013-11-17 13:04:57 +01:00
Ricki Hirner 190e3f766f Preserve order in multiget requests (thanks Marten, fixes #65) 2013-11-15 11:21:03 +01:00
Ricki Hirner e95a5ce742 SNI support (fixes #9); only available for API level >= 17 (Android 4.2+) 2013-11-15 01:05:18 +01:00
Ricki Hirner 43e723dd5f Merge pull request #74 from oliver/master
fix NumberFormatException when parsing "ff" alpha value into a Byte
2013-11-14 01:41:46 -08:00
Oliver Gerlich 31bdfbe690 fix NumberFormatException when parsing "ff" alpha value into a Byte 2013-11-13 22:09:14 +01:00
Ricki Hirner 03290e2653 import Apple calendar-color with r,g,b,a (see issue #31) 2013-11-12 22:17:46 +01:00
Ricki Hirner 09e36b9b6f don't decode URI pathes (fixes #58), don't expect GET/POST/PUT on collections 2013-11-12 18:39:05 +01:00
Ricki Hirner c69212957a Version bump to 0.3.8 (version code 12) 2013-11-09 12:45:09 +01:00
Ricki Hirner 91691218b9 Importing calendar colors from <calendar:color xmlns="http://apple.com/ns/ical/"> element (see #31) 2013-11-09 12:43:21 +01:00
Ricki Hirner e5e9e0511c avoid NullPointerException (hint from ANR) 2013-11-09 10:54:29 +01:00
Ricki Hirner 25923cf3b2 Always append trailing slash to address-book/calendar home set to avoid redirections 2013-11-09 01:36:09 +01:00
Ricki Hirner 29b4087278 RoboHydra tests, URL sanitizing
* RoboHydra tests
* intelligent URL sanitizing (fixes #58, fixes #49, see issue #11, should fix #45)
2013-11-09 01:13:38 +01:00
Ricki Hirner 4ac38a9eb7 refactoring, RoboHydra tests 2013-11-09 01:04:35 +01:00
Ricki Hirner d48bb41003 basic WebDAV tests 2013-11-03 01:40:24 +01:00
Ricki Hirner 6039f884e3 Version bump to 0.3.7 (version code 11) 2013-11-02 16:18:17 +01:00
Ricki Hirner 0b291381e6 support for structured addresses (closes #29); bug fixes 2013-11-02 16:09:48 +01:00
Ricki Hirner ceebea5d1d iCal4j update, handle relative URLs with colons
* iCal4j 1.0.5 -> 1.0.5.2, iCal4j-vcard 0.9.5 -> 0.9.6.2
* handle relative URLs with colons in name (see issue 45)
2013-11-01 15:27:48 +01:00
Ricki Hirner a162eb664c improved photo parsing, DELETE statement
* let ical4l-vcard do the photo parsing; tested with posteo, OwnCloud,
eM Client; fixes #53
* improved DELETE statement to avoid
"android.database.sqlite.SQLiteException: Expression tree is too large"
(fixes #54)
* added "file name required" validation
2013-11-01 12:13:45 +01:00
Ricki Hirner 6dbe2cff9b Version bump to 0.3.6
* show app version in main activity
2013-10-30 17:27:44 +01:00
Ricki Hirner b0f6eab402 don't follow redirects (see issue #52) 2013-10-30 17:20:04 +01:00
Ricki Hirner 5065a5c06a better vcard parsing error logging, always append trailing slash to collection URLs 2013-10-30 15:14:19 +01:00
Ricki Hirner db32d909b0 Main activity, minor changes
* Main activity with description and links
* Decrease MAX_UPDATES_BEFORE_COMMIT to 25 (may fix #25)
2013-10-30 12:17:26 +01:00
Ricki Hirner 15886746a8 version 0.3.5-alpha
enhancements:
- don't show calendars/address books in account when no calendars/address books were added

bug fixes:
- select only events from correct calendar when querying (fixes #37)
- ignore non-OK values in multi-status response (fixes #35)
- fix wrong entries in setup calendar/addressbook selection
- commit after every 100 resource downloads to avoid TransactionTooLargeException
- don't delete resources without file name (fixes #33)
- avoid crashes when content providers return null cursors
- ignore invalid URLs (for instance, with spaces) in WebDAV multi-status responses
2013-10-27 01:38:47 +02:00