Commit Graph

43 Commits

Author SHA1 Message Date
0xboobface 5b8d65ab27 Introduced new HttpException for unsuccessful HTTP responses
Instead of throwing an IOException with String message, use the new
HttpException. The exception handling code can then use the status
code to be more specific how to handle the exception.

Also: use try-with-resources for the okhttp response where possible
2018-11-14 14:43:26 +01:00
0xboobface 40f0411bf3 Close HTTP connection if websocket request fails
When the websocket "switch over" request fails, close the response
to avoid resource leaks in OkHttp
2018-11-13 17:37:41 +01:00
0xboobface 41a3031f37 Run watchdog every 10 seconds instead of every second 2018-11-13 17:25:01 +01:00
0xboobface 378d3954b0 Add animation for following a model
The preview of the model is animated to move to the followd tab
on the left side. This should help to understand, what happened and
that it happened.
2018-11-13 01:01:49 +01:00
0xboobface c8af7a409a Change log level to trace in getMasterPlaylist 2018-11-10 14:34:05 +01:00
0xboobface 2658536ee6 Be less verbose on playlist parsing errors 2018-11-10 14:31:40 +01:00
0xboobface dc540c795a Avoid NPE in SessionState.X.merge 2018-11-09 18:19:59 +01:00
0xboobface 8b7bb79d8c Change the URL if the name changed 2018-11-07 13:51:26 +01:00
0xboobface 1b11af8872 Try to restore HTTP session with cookies before login in
All the HTTP clients now check, if loading the cookies was sufficient
to restore the HTTP session. If yes, we assume that we are logged in.
If not, the normal login procedure is done.
2018-11-06 22:17:30 +01:00
0xboobface 43793f3728 Use guava caches to store SessionStates and models
Use caches with a maximum size of 4000 elements instead of maps
to avoid running out of heap memory
2018-11-06 20:27:07 +01:00
0xboobface 1fc22876fd Reduce size of received message history to save memory 2018-11-06 19:43:15 +01:00
0xboobface a136c9ccd2 Prepare code to persist http cookies
Save and reload the cookies might help to avoid logins between sessions.
2018-11-06 19:32:21 +01:00
0xboobface 26bd482eac Remove dependency to JavaFX from the server code
The sites had a direct depedency to JavaFX, which prevents the server
to be started with openjdk. The affected code is no located in ConfigUI,
so that the no direct dependency exists.
2018-11-05 18:59:25 +01:00
0xboobface b24b2fe3fe Merge branch 'dev' into camsoda 2018-11-03 00:39:38 +01:00
0xboobface 625b7727d0 Add affiliate link to MyFreeCams 2018-10-31 14:17:47 +01:00
0xboobface 07dee1a631 Add detection of model name changes for MyFreeCams
MyFreeCamsModel now also takes the uid into account instead of only
using the the name. To support this feature between sessions, the uid
is saved as site specific data.
2018-10-31 13:57:04 +01:00
0xboobface b90313dd86 Restart websocket, if no message arrived for 2 mins 2018-10-31 01:34:45 +01:00
0xboobface 4e0fb6aaf0 Ignore models for disabled sites in LocalRecorder 2018-10-26 14:16:17 +02:00
0xboobface 5cd8ae3cff Add possibility to disable sites
Sites can be disabled in the settings, so that they don't get
initialized on start. The UI is not created for them aswell.
2018-10-25 20:11:25 +02:00
0xboobface f0154857d9 Add mechanisms to have credentials/settings for each site
Each site can now provide its own configuration panel. For
Chaturbate and MyFreeCams these panels contain input fields
for the user credentials.
2018-10-25 12:27:46 +02:00
0xboobface 7e6f5bbc2c Add log statement 2018-10-25 10:55:24 +02:00
0xboobface 91a41d446b Add trace log statement for arriving NULLs
This helps to see, if the websocket is still healty
2018-10-25 10:50:57 +02:00
0xboobface 54381c1676 Change filter in HD cams update service
Chnage the filter to include streams from wowza servers
2018-10-25 00:01:59 +02:00
0xboobface 0bcea4e753 Fix message parser
The parser didn't take into accoun, that the arriving string can
contain several messages
2018-10-24 23:40:53 +02:00
0xboobface ff0d1b5eae Fix live preview for wowza servers 2018-10-24 23:39:46 +02:00
0xboobface 0935343dc1 Replace System.out.prints with log messages 2018-10-24 20:04:33 +02:00
0xboobface 0085ce7ab8 Add marker interface to mark tabs, which contain followed models 2018-10-24 20:02:00 +02:00
0xboobface b80fbd4c30 Add proper login and follow/unfollow to MyFreeCamsClient 2018-10-24 19:55:31 +02:00
0xboobface f0d2a720ab Don't try to load followed models, if username is not set 2018-10-24 19:07:45 +02:00
0xboobface 306f07cf63 Display only online models in popular models tab 2018-10-24 18:00:10 +02:00
0xboobface b6a31a258e On error write a log of the recent received strings
When the websocket message parser throws an exception,
write a logfile with the 100 last recent strings, so
that we can debug, what happened.
2018-10-24 16:46:30 +02:00
0xboobface 45c17cfaa4 Implement live preview for MFC 2018-10-24 15:47:56 +02:00
0xboobface 5cb900fe55 Add a few comments to MFC data structures 2018-10-24 15:46:06 +02:00
0xboobface f553ca3db5 Add online / offline selector on MFC Friends tab 2018-10-24 15:00:09 +02:00
0xboobface a8ca3068ed Add tab "Most Popular" to MyFreeCams 2018-10-24 14:02:41 +02:00
0xboobface f4842fcf51 Improve MyFreeCamsClient
- Add watch dog to reestablish a broken connection
- Implemented creation of stream urls properly
- Add HD tab to display MFC HD streams
2018-10-23 14:02:20 +02:00
0xboobface 0f39aa6fc0 Add SiteTab class, which contains the tabs and a header
The header can contains things like, the token label
2018-10-22 18:21:47 +02:00
0xboobface 8c45c45055 Fix model loading 2018-10-22 16:07:52 +02:00
0xboobface 34d43fc637 Remove unused OnlineModelsTab 2018-10-22 14:04:39 +02:00
0xboobface 330e8701e0 Add tipping for MyFreeCams 2018-10-22 14:01:22 +02:00
0xboobface 7a5abfcbcc Add description and tags to MyFreeCamsModel 2018-10-21 19:39:34 +02:00
0xboobface 387661cfdf Abstract more stuff in the site packages 2018-10-21 19:06:01 +02:00
0xboobface 362d90b29b First implementation for MFC
Implemented Tabs are Online and Friends
2018-10-19 23:09:11 +02:00