Shinokuni
|
beebed751f
|
Add tests for credentials
|
2021-10-04 18:35:26 +02:00 |
Shinokuni
|
71df7a7a31
|
Replace SImpleXML with KonsumeXML and KotlinXMLBuilder
|
2021-09-22 22:50:54 +02:00 |
Shinokuni
|
4c86b17043
|
Move OPMLHelper class to app module
|
2021-09-20 19:56:34 +02:00 |
Shinokuni
|
5d03ea0580
|
Migrate koin to v3.0
|
2021-09-20 19:27:12 +02:00 |
Shinokuni
|
f4628b5a49
|
Add jacoco implementation
|
2021-09-16 22:29:25 +02:00 |
Shinokuni
|
b76ffb4fc6
|
Remove unused RSS resource
|
2021-09-04 18:22:44 +02:00 |
Shinokuni
|
8aec040fbc
|
Remove old getRSSContentTYpe method
|
2021-09-04 18:18:53 +02:00 |
Shinokuni
|
6025202346
|
Use new adapters configuration in LocalRSSDataSource
|
2021-09-04 18:03:39 +02:00 |
Shinokuni
|
0ac0a1c347
|
Call JSONItemsAdapter in JSONFeedAdapter
|
2021-09-04 17:42:24 +02:00 |
Shinokuni
|
6f2aad79c0
|
Call RSS2ItemAdapter in RSS2FeedAdapter
|
2021-09-04 17:24:13 +02:00 |
Shinokuni
|
d50d65384c
|
Call RSS1ItemAdapter in RSS1FeedAdapter
|
2021-09-04 16:59:08 +02:00 |
Shinokuni
|
7a417e83de
|
Call ATOMItemAdapter in ATOMFeedAdapter
|
2021-09-04 16:34:18 +02:00 |
Shinokuni
|
58122cb456
|
Merge branch 'develop' into feature/local_rss_memory_improvements
|
2021-09-04 15:16:33 +02:00 |
Shinokuni
|
63a8891880
|
Fix tests
|
2021-09-02 13:54:27 +02:00 |
Shinokuni
|
1654d32211
|
MIgrate Account entity to kotlin
|
2021-09-01 19:41:45 +02:00 |
Shinokuni
|
40c3a52948
|
Migrate Folder entity to kotlin
|
2021-09-01 19:01:32 +02:00 |
Shinokuni
|
61f8798be5
|
Migrate Feed entity to kotlin
|
2021-09-01 18:46:54 +02:00 |
Shinokuni
|
4539fdff92
|
Remove kapt declaration from API module
|
2021-08-18 19:04:10 +02:00 |
Shinokuni
|
83aa9c8a31
|
Fix RSS1 root parsing
|
2021-08-17 21:46:17 +02:00 |
Shinokuni
|
f6b9791bfd
|
Make xml adapters compile
|
2021-08-17 21:45:16 +02:00 |
Shinokuni
|
767662df59
|
Xml adapters now receive a Konsumer object instead of an input stream
|
2021-08-17 21:18:03 +02:00 |
Shinokuni
|
655ab2bc83
|
Guess RSS type by using konsume-xml instead of reading content by hand
|
2021-08-15 16:28:17 +02:00 |
Shinokuni
|
1533f67de8
|
Merge retrofit and retrofit services declarations in ApiModule
|
2021-08-14 19:46:54 +02:00 |
Shinokuni
|
137e591573
|
Migrate last java classes from API module to kotlin except data sources
|
2021-07-20 19:58:45 +02:00 |
Shinokuni
|
a5501b2524
|
Migrate java classes from services pacakge to Kotlin except data sources
|
2021-07-20 19:30:26 +02:00 |
Shinokuni
|
25ebc8305d
|
Add tests for FreshRSS adapters
|
2021-07-20 15:38:05 +02:00 |
Shinokuni
|
be90fa8d99
|
Add tests for Nextcloud News adapters
|
2021-07-19 18:52:54 +02:00 |
Shinokuni
|
7a51364f48
|
Migrate API module instrumented tests into simple unit tests
|
2021-07-19 17:30:10 +02:00 |
Shinokuni
|
3c752b777a
|
Remove moshi codegen, use manual adapters instead
|
2021-07-19 17:11:54 +02:00 |
Shinokuni
|
d51c7ed90a
|
Fix OPML export not working with API 29+
|
2021-07-16 17:34:03 +02:00 |
Shinokuni
|
bd333afbf2
|
Fix failing test
|
2021-07-11 16:25:11 +02:00 |
Shinokuni
|
629ca050a3
|
Remove url building in AuthInterceptor
|
2021-07-08 19:05:25 +02:00 |
Shinokuni
|
8c9b2b2ab1
|
Nextcloud News : get read/unread starred items at initial synchronisation
|
2021-07-05 21:00:40 +02:00 |
Shinokuni
|
42cb3adee9
|
Update dependencies
|
2021-07-03 19:44:42 +02:00 |
Shinokuni
|
bdc277f216
|
Fix failing tests
|
2021-07-02 19:13:49 +02:00 |
Shinokuni
|
cbff42b4f2
|
Remove jcenter dependency
|
2021-07-02 18:56:11 +02:00 |
Shinokuni
|
f412ae2f1e
|
Get starred items separately only for initial synchronisation and fetch starred items ids everytime
|
2021-04-20 23:22:32 +02:00 |
Shinokuni
|
2411449863
|
Add a new table which merge FreshRSS items read/star state
|
2021-04-20 23:19:12 +02:00 |
Shinokuni
|
fa7b7346cd
|
Improve some adapters syntax
|
2021-04-14 17:58:33 +02:00 |
Shinokuni
|
0c9c601d41
|
Add new synchronization process for FreshRSS with read state and starred items sync
|
2020-12-28 15:48:32 +01:00 |
Shinokuni
|
009dda1d00
|
Fix FreshRSS items ids parsing
|
2020-12-18 18:16:23 +01:00 |
Shinokuni
|
c3a94b9003
|
Update kotlin gradle plugin
|
2020-11-24 23:23:26 +01:00 |
Shinokuni
|
7270ed0f85
|
Remove unused class
|
2020-11-22 23:24:50 +01:00 |
Shinokuni
|
e9e1a94401
|
Merge branch 'master' into develop
|
2020-11-22 19:03:10 +01:00 |
Shinokuni
|
f2607c307c
|
Replace Nextcloud News /user depreciated api call by /ocs/v1.php/cloud/users/{userId}
|
2020-11-15 19:13:21 +01:00 |
Shinokuni
|
1cba1b6e17
|
Accept null value for Nextcloud News feed attribute folderId
|
2020-11-11 22:22:07 +01:00 |
Shinokuni
|
cec3c467cf
|
Accept null value for Nextcloud News feed attribute folderId. Fixes #87
|
2020-11-11 21:59:05 +01:00 |
Shinokuni
|
a8e3a689d5
|
Move api androidTest/ tests to test/
It's useless to make an instrumented test if Context is only used to retrieve a resource file. It can be done with classLoader
|
2020-11-09 22:00:55 +01:00 |
Shinokuni
|
e548b44ac8
|
Fix LocalRSSDataSource tests
|
2020-11-07 13:43:24 +01:00 |
Shinokuni
|
f2daac5068
|
Move Niddler instantiation in api module
|
2020-11-03 21:13:38 +01:00 |
Shinokuni
|
cfa764e78b
|
Sync FreshRSS items star state
|
2020-11-02 22:35:57 +01:00 |
Shinokuni
|
da6b68fd2e
|
Use a different retrofit builder for each service
|
2020-10-27 21:30:26 +01:00 |
Shinokuni
|
04e2f3eadb
|
Add star/unstar api calls for FreshRSS
|
2020-10-25 21:27:11 +01:00 |
Shinokuni
|
9ceb5e6dd7
|
Add star/unstar api calls for Nextcloud News
|
2020-10-25 19:14:01 +01:00 |
Shinokuni
|
847a9d2004
|
Fix LocalRSSDataSource tests
|
2020-10-25 14:03:49 +01:00 |
Shinokuni
|
86c58b9280
|
Wrap Freshrss and Nextcloud News adapters code in a try/catch to throw ParseException
|
2020-10-25 12:49:19 +01:00 |
Shinokuni
|
39e613e7e6
|
Fix url being rewritten for not freshrss/nextcloud news http calls
|
2020-10-25 11:56:20 +01:00 |
Shinokuni
|
412ec3f1b8
|
Rename LibUtils to ApiUtils
|
2020-10-23 21:33:27 +02:00 |
Shinokuni
|
5e76eb4134
|
Reorganize api utils package
|
2020-10-23 21:30:34 +02:00 |
Shinokuni
|
afce72bbe1
|
Add tests for AuthInterceptor
|
2020-10-23 19:44:13 +02:00 |
Shinokuni
|
fcfff57e1d
|
Merge branch 'develop' into feature/di
|
2020-10-23 19:08:52 +02:00 |
Shinokuni
|
6294b5556f
|
Delete unused code
|
2020-10-21 21:42:22 +02:00 |
Shinokuni
|
f3330ba07d
|
Remove last references to the old http manager
|
2020-10-19 22:54:29 +02:00 |
Shinokuni
|
725cb291ef
|
Fix FreshRSS and Nextcloud News authentications
|
2020-10-16 12:36:24 +02:00 |
Shinokuni
|
49c5ba06b3
|
Inject AuthInterceptor to deal with retrofit dynamic url and credentials
|
2020-10-15 19:04:50 +02:00 |
Shinokuni
|
add729f5e2
|
Add Koin with api, db and app modules
|
2020-10-13 22:11:13 +02:00 |
Shinokuni
|
9b5dddeff4
|
Don't build repositories and data sources dependencies in them
|
2020-10-11 22:31:55 +02:00 |
Shinokuni
|
343562657b
|
Fix test dependencies build error
|
2020-10-07 22:10:44 +02:00 |
Shinokuni
|
c26a2da6a7
|
Refactor and update gradle dependencies
|
2020-10-06 22:45:19 +02:00 |
Shinokuni
|
b8219b5dde
|
Clean LibUtils class
|
2020-10-06 22:20:53 +02:00 |
Shinokuni
|
b6d4f9296d
|
Move isRSSType() method to LocalRSSHelper
|
2020-10-06 22:15:19 +02:00 |
Shinokuni
|
6874ef2452
|
If a response doesn't have a content-type header, throw UnknownFormatException instead of ParseException
|
2020-10-05 22:24:47 +02:00 |
Shinokuni
|
ec53cbd683
|
Fix content-type not being parsed when getting url rss type
|
2020-10-05 22:18:02 +02:00 |
Shinokuni
|
cc17c8884b
|
Add tests for JsonReaderExtensions
|
2020-10-04 23:13:37 +02:00 |
Shinokuni
|
8304e7709f
|
Add tests for method LocalRSSDataSource.handleSpecialCases()
|
2020-10-04 22:53:00 +02:00 |
Shinokuni
|
63497bd049
|
Always parse feed and items in the same time to detect malformed feeds
|
2020-10-04 22:17:52 +02:00 |
Shinokuni
|
101753a1a7
|
Improve some RSS2 items tests
|
2020-10-03 16:29:15 +02:00 |
Shinokuni
|
ca3efd4509
|
Add support for media:content element type attribute
|
2020-10-02 19:46:40 +02:00 |
Shinokuni
|
6733890c16
|
Improve jsonfeed items tests and fallback to current date time if it is missing
|
2020-10-02 19:08:12 +02:00 |
Shinokuni
|
5c4cc81628
|
Fallback to current date time if it is missing for RSS1 and ATOM items
|
2020-10-02 18:53:52 +02:00 |
Shinokuni
|
10a7b99e59
|
Fallback to current date time if a RSS2 item doesn't have any date
|
2020-10-01 21:17:51 +02:00 |
Shinokuni
|
e41ab29264
|
Rename DateUtils.stringToLocalDateTime() to parse()
|
2020-10-01 19:38:48 +02:00 |
Shinokuni
|
d4e546b6c1
|
Fix rss url parsing bug
|
2020-10-01 19:29:59 +02:00 |
Shinokuni
|
6f2ff36ece
|
Add tests for Konsumer.nullableTextRecursively()
|
2020-09-30 18:10:18 +02:00 |
Shinokuni
|
872a894db0
|
Replace RSS2 atom:link element value by response url, as atom:link element is unreliable
|
2020-09-29 23:30:51 +02:00 |
Shinokuni
|
7eecbc8e8b
|
Check item link nullabilty before validateItem() in RSS1ItemsAdapter as item link is used as guid
|
2020-09-29 23:16:26 +02:00 |
Shinokuni
|
9027a1c140
|
Add tests for Konsume-xml extensions
|
2020-09-29 23:08:22 +02:00 |
Shinokuni
|
2bfb061f48
|
Treat empty strings as null values in jsonfeed adapters
|
2020-09-29 22:37:16 +02:00 |
Shinokuni
|
d958dcbf04
|
Simplify ATOMItemsAdapter fromXml method
|
2020-09-29 22:23:54 +02:00 |
Shinokuni
|
2bbc8c3e10
|
Add test for RSS2 media:group element
|
2020-09-29 22:18:56 +02:00 |
Shinokuni
|
f6f5f27dd4
|
Fix RSS2 items tests
|
2020-09-29 11:29:22 +02:00 |
Shinokuni
|
3c68fafd8e
|
Set a global limit for the authors concatenation
|
2020-09-28 14:34:06 +02:00 |
Shinokuni
|
bcedd025ba
|
Add xml content type detection for RSS1
|
2020-09-26 13:32:30 +02:00 |
Shinokuni
|
a4d6139848
|
Parse content:encoded element in RSS1 items
|
2020-09-25 14:34:19 +02:00 |
Shinokuni
|
de383d5e7d
|
Parse recursively items content/description
|
2020-09-25 13:50:00 +02:00 |
Shinokuni
|
847739c559
|
Rename rss assets folder to rss2
|
2020-09-23 22:39:12 +02:00 |
Shinokuni
|
22fe77d5cf
|
Concatenate jsonfeed authors when they are several
|
2020-09-23 22:29:47 +02:00 |
Shinokuni
|
c742c4fbf2
|
Add adapter for RSS1 items
|
2020-09-23 22:02:41 +02:00 |
Shinokuni
|
694d684223
|
Add adapter for RSS1 feed
|
2020-09-23 18:57:53 +02:00 |
Shinokuni
|
963350d1dd
|
Prepare files for the addition of RSS1 adapters
|
2020-09-20 19:00:49 +02:00 |
Shinokuni
|
cb41f3c7ac
|
Catch JSONFeedAdapter exceptions
|
2020-09-20 18:48:43 +02:00 |
Shinokuni
|
694ff6331e
|
Add tests for XmlAdapter
|
2020-09-20 18:44:55 +02:00 |
Shinokuni
|
de21a308b6
|
Fix LocalRSSHelper unit tests
|
2020-09-20 18:22:53 +02:00 |
Shinokuni
|
5998fa9126
|
Delete unused code
|
2020-09-20 18:17:43 +02:00 |
Shinokuni
|
6a1ddaeabb
|
Use LocalRSSDataSource isUrlRSSResource
|
2020-09-20 18:12:05 +02:00 |
Shinokuni
|
581de2e1dd
|
Use nullable attributes in ATOM adapters
|
2020-09-19 18:50:23 +02:00 |
Shinokuni
|
0eb518d692
|
Ignore media content sub elements
|
2020-09-19 17:25:36 +02:00 |
Shinokuni
|
ccce0a810d
|
Fix some RSS2 parsing issues
|
2020-09-18 14:12:07 +02:00 |
Shinokuni
|
f6f8807b3a
|
Preserve feeds elements whitespaces
|
2020-09-17 22:17:58 +02:00 |
Shinokuni
|
82c29d0732
|
Use new LocalRSSDataSource in LocalFeedRepository
|
2020-09-17 22:15:33 +02:00 |
Shinokuni
|
838768800a
|
Handle the absence of some tags in RSS2 and ATOM feeds
|
2020-09-17 22:11:05 +02:00 |
Shinokuni
|
4b999e9fd6
|
Add jsonfeed parsing in LocalRSSDataSource
|
2020-09-16 13:57:45 +02:00 |
Shinokuni
|
ca29c4acb0
|
Add adapter for jsonfeed items
|
2020-09-15 23:30:56 +02:00 |
Shinokuni
|
592fa4603a
|
Add support for jsonfeed new mime-type : application/feed+json
|
2020-09-15 13:51:17 +02:00 |
Shinokuni
|
c9c316b579
|
Add adapter for parsing jsonfeed feed
|
2020-09-15 13:48:52 +02:00 |
Shinokuni
|
0c48bd2adb
|
Add adapter for parsing atom entries
|
2020-09-14 19:41:10 +02:00 |
Shinokuni
|
5c342a45b6
|
Add adapter for parsing atom feed
|
2020-09-14 17:56:25 +02:00 |
Shinokuni
|
8b4b7b0f1c
|
Fix opml parser tests
|
2020-09-13 15:33:06 +02:00 |
Shinokuni
|
156601e0c5
|
Use multiple streams based on a byteArray for parsing the body response
|
2020-09-13 15:15:42 +02:00 |
Shinokuni
|
15e1723893
|
Move cleanText method to api package
|
2020-09-13 12:38:51 +02:00 |
Shinokuni
|
8e5900833b
|
Support multiple creator elements in RSS items
|
2020-09-13 12:28:33 +02:00 |
Shinokuni
|
20e814f36d
|
Add adapter for RSS item parsing
|
2020-09-12 19:34:03 +02:00 |
Shinokuni
|
4bf56b8f7f
|
Use UnknownFormatException instead of ParseException for some cases
|
2020-09-12 12:02:03 +02:00 |
Shinokuni
|
8089d9ae6c
|
Start replacing simplexml with konsume-xml by parsing RSS feed channel with it
|
2020-09-11 22:53:50 +02:00 |
Shinokuni
|
752135621d
|
Move DateUtils in api package
|
2020-08-30 16:39:08 +02:00 |
Shinokuni
|
4e27a0b86f
|
Add some unit tests for RSS type and content guess methods
|
2020-08-28 22:50:53 +02:00 |
Shinokuni
|
51cea7c4c2
|
Add data source for local rss, with tests
|
2020-08-25 23:35:19 +02:00 |
Shinokuni
|
355b5a4375
|
Add new helper class to get RSS feed type, with tests
|
2020-08-24 21:38:46 +02:00 |
Shinokuni
|
594a0a67fa
|
Use more mime types to open opml files
|
2020-08-16 23:04:26 +02:00 |
Shinokuni
|
3657f740df
|
Add another read OPML test
|
2020-08-10 23:31:10 +02:00 |
Shinokuni
|
ab86bcbcc2
|
Add write opml test
|
2020-08-08 22:40:23 +02:00 |
Shinokuni
|
5fe10a848c
|
Close streams at end of tests
|
2020-08-04 15:23:57 +02:00 |
Shinokuni
|
7976140834
|
Test opml version before parsing
|
2020-08-04 14:08:21 +02:00 |
Shinokuni
|
e92367bbc1
|
Add test for OPML read case
|
2020-08-03 23:45:21 +02:00 |
Shinokuni
|
b3dd60e1fb
|
Add support for OPML sub outlines
|
2020-08-03 23:43:55 +02:00 |
Shinokuni
|
f6cfa52bc0
|
OPML head tag isn't required
|
2020-08-03 23:41:37 +02:00 |
Shinokuni
|
ea9739a19a
|
Delete :api sample tests
|
2020-08-03 23:23:31 +02:00 |
Shinokuni
|
f014284316
|
Merge OPMLMatcher code into OPMLParser
|
2020-08-02 15:16:05 +02:00 |
Shinokuni
|
1695c3baf6
|
Fix webview crash in lollipop
|
2020-07-28 14:09:27 +02:00 |
Shinokuni
|
4956a7f3b9
|
Forgot changed imports
|
2020-07-19 11:16:24 +02:00 |
Shinokuni
|
295a34203e
|
Rename module readropslibrary to api
|
2020-07-19 10:40:53 +02:00 |