Bartłomiej Dach
5b2b701915
Ignore possible null in GetResponseString()
...
A null there indicates a deserialisation error and therefore due to the
catch block immediately succeeding the changed line everything will
continue to work as intended.
2021-05-15 00:09:34 +02:00
smoogipoo
7fa5fd5647
Update usages of config with framework changes
2021-03-17 16:10:16 +09:00
Dean Herbert
765cc5cf37
Remove iOS multiplayer blocking code
2021-03-08 14:35:22 +09:00
Dean Herbert
9ed8d902f7
Fix requests being indefinitely queued when user is offline
2021-02-24 19:57:42 +09:00
Dean Herbert
664d243003
Disable multiplayer/spectator on iOS until it can be supported again
2021-02-23 15:22:46 +09:00
Dean Herbert
55d5d8d5be
Send version hash on hub connection
2021-02-15 16:51:40 +09:00
Dean Herbert
9ad38ab20e
Move HubClientConnector retrieval to IAPIProvider
2021-02-15 16:43:56 +09:00
Dean Herbert
03b78d1c4b
Handle SocketExceptions and HttpRequestExceptions more silently
...
These can occur when a network connection is completely unavailable (ie.
host resolution failures are occurring). Currently these would appear as
important errors which spammed the notification overlay every retry
forever, while no network connection is available.
I also took this opportunity to remove a lot of `bool` passing which was
no longer in use (previously the fail count / retry process was
different to what we have today).
2020-12-29 16:22:11 +09:00
Dean Herbert
323da82477
Add website root URL and update most links to use it
...
For what it's worth, I intentionally didn't include news / changelog /
supporter, because these should never change.
2020-12-24 18:11:42 +09:00
Dean Herbert
eb795a2127
Move all endpoint information to a configuration class
2020-12-24 17:58:38 +09:00
Dean Herbert
e89583d732
Prefer connecting to dev server when running in DEBUG
2020-12-24 01:33:19 +09:00
Dean Herbert
57c5d45c02
Standardise and extract common connection failure handling logic
2020-12-18 15:19:38 +09:00
Dean Herbert
d36169f697
Move friend request to a more understandable place in connection flow
2020-12-18 15:16:48 +09:00
Dean Herbert
206bf3713e
Make IAPIProvider read-only bindables into IBindables
2020-12-18 15:16:36 +09:00
Salman Ahmed
8a01e567a1
Fix API potentially getting stuck in connecting state
2020-12-18 03:06:28 +03:00
Salman Ahmed
5d180753fa
Complete connection once friends list is succesfully fetched
2020-12-17 13:44:30 +03:00
Salman Ahmed
78ce6f1cd2
Add friends list to API providers
2020-12-17 13:30:55 +03:00
Dean Herbert
9753dab93b
Remove IOnlineComponent and change existing components to use bindable flow
2020-10-22 14:19:12 +09:00
smoogipoo
ab10732a78
Remove usages of null-forgiving operator
2020-06-09 22:13:48 +09:00
smoogipoo
8aa8d2c880
Resolve NREs
2020-06-03 16:59:37 +09:00
alex
0e2ccac33b
Add spaces to comments
2020-05-04 18:36:24 -07:00
recapitalverb
7866c26f95
Make OsuConfigManager instances readonly
2020-02-14 22:18:56 +07:00
recapitalverb
2bd2cd1d3f
Use OsuConfigManager from ctor instead
2020-02-14 21:59:33 +07:00
recapitalverb
a7c2fd078f
Fix remaining cases
2020-02-14 20:27:21 +07:00
Dean Herbert
756d847ad8
Fix user not getting an initial status
2019-12-18 14:07:03 +09:00
Huo Yaoyuan
61a6106e52
CA2200: don't explictly throw caught exception.
2019-12-17 13:00:23 +08:00
Dean Herbert
c49aeb08c4
Add API methods to perform requests out-of-queue
2019-11-29 20:03:14 +09:00
Dean Herbert
19dfbb0a45
Update obsolete usages
2019-11-21 10:55:31 +09:00
smoogipoo
d693b2a329
Fix multiplayer score submission failing silently
2019-06-16 00:31:14 +09:00
Dean Herbert
f358fce9ab
Move activity (writable) bindable to APIAccess so it correctly transfers between users
2019-06-12 18:04:57 +09:00
Arphox
07e17518e9
Fix all "Maintainability" CodeFactor issues
2019-06-11 10:28:16 +02:00
smoogipoo
35624a5d1c
Invert scheduling order
2019-05-09 13:42:04 +09:00
smoogipoo
3fed165b74
Cleanup some schedules
2019-05-09 13:33:18 +09:00
smoogipoo
c69d813745
Fix bindable potentially being set from background thread
2019-05-09 13:32:18 +09:00
smoogipoo
d7c09e7dbd
Merge remote-tracking branch 'origin/master' into fix-new-inspections
...
# Conflicts:
# osu.Game.Rulesets.Catch/Judgements/CatchDropletJudgement.cs
# osu.Game.Rulesets.Catch/Judgements/CatchJudgement.cs
# osu.Game.Rulesets.Mania/Scoring/ManiaScoreProcessor.cs
# osu.Game.Rulesets.Osu/Replays/OsuAutoGenerator.cs
# osu.Game.Rulesets.Osu/UI/Cursor/CursorTrail.cs
# osu.Game.Tests/Visual/SongSelect/TestCaseBeatmapScoresContainer.cs
# osu.Game/Graphics/OsuFont.cs
# osu.Game/Online/API/Requests/Responses/APILegacyScoreInfo.cs
# osu.Game/Overlays/Profile/Header/BadgeContainer.cs
# osu.Game/Overlays/Profile/ProfileHeader.cs
# osu.Game/Screens/Select/PlaySongSelect.cs
# osu.Game/Skinning/LegacySkinDecoder.cs
2019-05-07 13:20:17 +09:00
smoogipoo
0bd35ab7bb
Turn on warnings, resolve issues
2019-04-25 17:36:17 +09:00
Dean Herbert
612db31c38
Apply newline additions
2019-04-01 12:16:32 +09:00
Dean Herbert
59d0996c8d
Cleanup other instance of same function
2019-03-22 14:31:54 +09:00
Dean Herbert
f0114d776d
Use interface to access API
...
Allows for better testability.
2019-03-13 12:58:18 +09:00
Dean Herbert
400514630d
Fix incomplete comment
2019-03-08 12:44:33 +09:00
Dean Herbert
11e5c6a2a0
Fire initial APIStateChanged on local thread
2019-03-08 12:15:27 +09:00
Dean Herbert
0788a7e9f1
Merge branch 'master' into more-inspections
2019-02-28 14:32:57 +09:00
Dean Herbert
42be7857d1
Use expression body for property get/set where possible
2019-02-28 13:58:19 +09:00
Dean Herbert
26d53d06a9
Fix remaining issues
2019-02-28 13:31:40 +09:00
smoogipoo
d8c55bc729
Adjust namespaces
2019-02-21 19:05:52 +09:00
smoogipoo
bca347427f
Update with framework bindable changes
2019-02-21 18:56:34 +09:00
Dean Herbert
327a34f12a
Merge remote-tracking branch 'upstream/master' into download-tracking-component
...
# Conflicts:
# osu.Game/Beatmaps/Drawables/BeatmapSetDownloader.cs
2019-01-31 18:45:09 +09:00
Dean Herbert
8617aaa2a7
Update licence header (and remove year)
2019-01-24 17:43:03 +09:00
Dean Herbert
7d6d7cf457
Merge remote-tracking branch 'upstream/master' into download-tracking-component
...
# Conflicts:
# osu.Game/Overlays/BeatmapSet/Buttons/DownloadButton.cs
2019-01-23 11:06:29 +09:00
Dean Herbert
045ed741b0
Fix API getting stuck in eternal failing state if login request fails
2019-01-09 15:29:27 +09:00
smoogipoo
aeb2186539
Fix api get user request never failing
2018-12-26 16:06:39 +09:00
smoogipoo
30dbc36fce
Don't clear username on logout
2018-12-22 17:54:19 +09:00
smoogipoo
d9b8df1595
Merge remote-tracking branch 'origin/master' into user-registration
2018-12-22 17:19:28 +09:00
smoogipoo
9d8170efa0
Only go into failing state if previously online
2018-12-19 14:32:43 +09:00
Dean Herbert
6088612a26
Remove all retry logic and simplify overall handling of API requests
2018-12-18 20:20:17 +09:00
Dean Herbert
00998d5443
Fix web requests not getting correctly handled on first connection
2018-12-17 14:29:11 +09:00
Dean Herbert
fc5d5a7752
Merge branch 'master' into user-registration
2018-12-14 19:45:27 +09:00
Dean Herbert
9072af9792
Move bulk of method into separate private method with minor clean-ups
2018-12-14 15:48:34 +09:00
Dean Herbert
7a703f9237
Fix API getting stuck in connecting state on some exceptions
2018-12-09 15:08:25 +09:00
Dean Herbert
1ca00f6662
Add registration API call and related error handling
2018-12-05 17:13:22 +09:00
Dean Herbert
f3f449c749
wip
2018-12-05 13:08:35 +09:00
Dean Herbert
1a974f64de
Initial design for user registration dialog
2018-12-05 12:57:26 +09:00
Dean Herbert
d05cd52d9a
Run the queue faster if multiple requests are pending
2018-09-06 17:38:15 +09:00
Dean Herbert
562a792a99
Use thread instead of LongRunning for API
2018-09-01 13:19:22 +09:00
Dean Herbert
bf6fb1c380
Don't use ConcurrentQueue for API
...
This queue type can hold several references to already dequeued requests. In our usage, this can cause old api calls to hold references to already-disposed screens (and in turn, very large memory portions).
2018-09-01 12:56:09 +09:00
smoogipoo
f1dfe04bd9
Fix broken conditional
2018-06-26 20:13:44 +09:00
Dean Herbert
78ccbcabf3
Fix API getting stuck in an endless loop under a certain unauthorized scenario
2018-06-22 17:34:29 +09:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
smoogipoo
baae4427ff
Move string-token property to OAuth
2018-04-12 14:30:28 +09:00
smoogipoo
e007365916
Save OAuth token to config on every token change
2018-04-12 14:23:49 +09:00
Dean Herbert
0e669c9a3f
Fix many warnings
2018-03-24 18:23:22 +09:00
smoogipoo
f0c0a51108
Convert APIAccess to use cancellation tokens
2018-03-23 20:57:04 +09:00
Dean Herbert
6c4e719e0f
Fix API never stopping its thread
2018-03-23 15:46:55 +09:00
Dean Herbert
ce2997419a
Expose API scheduling internally
2018-03-14 11:37:50 +09:00
Dean Herbert
07642546bb
Make APIAccess a component
2018-03-14 11:29:54 +09:00
Dean Herbert
83cd2fd317
Move token saving logic to APIAccess
2018-03-14 10:15:05 +09:00
Dean Herbert
afc3646450
Move API configuration hooks out of OsuGameBase
...
Also makes username more private, and password completely private.
2018-03-14 10:15:05 +09:00
vperus
ba44813c00
Fixed exit from game save username instead of email. Resolve #2156
2018-03-13 12:10:47 +02:00
Dean Herbert
07bf8549eb
Fix arbitrary API request errors getting identified as timeouts
2018-03-06 17:39:34 +09:00
Dean Herbert
75dcf72520
Improve testability of API
2018-02-16 13:57:39 +09:00
Michael Manis
64d7868c03
Update APi.Username in APIAccess intead of ignoring it.
2018-01-22 01:19:22 -05:00
Dean Herbert
37d393bca0
Update licence headers
2018-01-05 20:21:19 +09:00
Dean Herbert
b0785b2f09
Fix a possible horrendous endless auth loop
2017-11-02 20:26:26 +09:00
Dean Herbert
808c97fcb4
Fix multiple requests potentially being triggered during connect sequence
...
As the Success callbacks happen in a scheduled context, if the Update thread is in a stalled state, this loop can generate many unnecessary API requests.
2017-10-24 17:13:59 +09:00
Dean Herbert
a17cc04cde
Make APIAccess's state only privately settable
2017-09-27 13:16:17 +08:00
Dean Herbert
05c6829deb
Move all APIAccess State changes to the local thread
...
Previously changes to the state were triggering events like Logout, which could get things into a bad state.
2017-09-27 12:18:24 +08:00
Dean Herbert
f705589bf2
Rename NotificationManager to NotificationOverlay
2017-07-28 15:03:42 +09:00
Huo Yaoyuan
88f8619e9a
More missed exceptions.
2017-05-18 02:46:12 +08:00
Dean Herbert
5a9745b492
Update API endpoint
2017-05-16 21:37:55 +09:00
Dean Herbert
041d4f93c0
Fix typo
2017-05-16 20:08:22 +09:00
Dean Herbert
23807aa3b9
Better handling of logged in state
2017-05-16 19:55:45 +09:00
Dean Herbert
2384f7b0c1
Ensure LocalUser is never null
2017-05-16 19:49:50 +09:00
Dean Herbert
039f4a65dc
Combine user models.
2017-03-28 00:08:24 +09:00
Dean Herbert
55df07a872
Fix username being cleared when it shouldn't be.
2017-03-28 00:08:22 +09:00
Dean Herbert
54e1b24fe9
Enforce readonly private members where possible.
2017-03-23 13:50:08 +09:00
Dean Herbert
dad6060149
Fix warnings not covered by resharper locally.
2017-03-09 16:07:34 +09:00
Dean Herbert
0cad5d7d41
Fix most warnings.
2017-03-07 13:05:57 +09:00
Dean Herbert
d00ea4564f
Fix API coming online too early in race scenarios.
2017-02-22 14:09:48 +09:00
Dean Herbert
5757f844bf
Fix a potential crash due to API being too eager to declare online state.
2017-02-07 20:29:40 +09:00
Dean Herbert
6b011a50d2
Naming standardisation and enforcing.
2017-02-07 16:20:36 +09:00