Dean Herbert
a16c8f1ebc
Update all beatmap overlay views to use APIBeatmap
/APIBeatmapSet
2021-10-29 18:50:55 +09:00
Dean Herbert
b8ee7e05f4
Expose more pieces of APIBeatmap
for testing purposes
2021-10-29 18:35:27 +09:00
Dean Herbert
b5834044e0
Update GetScoreRequest
to support requests with interface types
2021-10-29 17:43:39 +09:00
Dean Herbert
17a83f701a
Store mods as APIMods
for the time being
2021-10-29 15:13:49 +09:00
Dean Herbert
06b6bcfd29
Add xmldoc for CreateScoreInfo
function for now
...
I don't actually know how temporary this one is going to be. The usages
are quite deep - ie. converting to a `ScoreInfo` to get a calculated
total score for ordering purposes.
2021-10-29 14:51:07 +09:00
Dean Herbert
cd7bd935f6
Remove Statistics
from interface until we figure how to properly deserialise
2021-10-29 14:18:10 +09:00
Dean Herbert
3f030cebf4
Remove local score copying in GetScoresRequest
to allow APIScoreInfo.Beatmap
to be APIBeatmap
2021-10-29 14:14:25 +09:00
Dean Herbert
1944c255a7
Implement score interfaces
2021-10-29 13:49:30 +09:00
Dean Herbert
817369903a
Rename API score classes
2021-10-29 13:40:56 +09:00
Dan Balasescu
44ba4419a2
Merge branch 'master' into beatmap-refactor/tournament
2021-10-28 15:25:34 +09:00
Dean Herbert
db6343c44c
Correctly redirect BPM
from API to interface
2021-10-27 17:09:51 +09:00
Dean Herbert
40d963fc8a
Allow setting of APIBeatmap.Length
(and don't serialise twice)
2021-10-27 16:44:21 +09:00
Dean Herbert
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
Dan Balasescu
f687ed8599
Merge pull request #15283 from peppy/test-api-beatmap-set
...
Add ability to make test `APIBeatmapSet`s from test scenes
2021-10-26 15:34:19 +09:00
Dan Balasescu
efe6763226
Merge branch 'master' into move-online-beatmap-metrics
2021-10-26 14:24:40 +09:00
Dan Balasescu
676e7ff2a6
Merge pull request #15287 from peppy/get-beatmap-request-via-interface
...
Allow API beatmap requests using interface type
2021-10-26 13:50:46 +09:00
Dean Herbert
d7ac94038a
Update GetBeatmapRequest
to use AddParameter
2021-10-26 12:05:31 +09:00
Bartłomiej Dach
a49a1f41cb
Merge branch 'master' into move-online-beatmap-metrics
2021-10-25 20:33:49 +02:00
Dean Herbert
b65d199f6a
Fix incorrect length when calling APIBeatmap.ToBeatmapInfo
2021-10-25 17:01:47 +09:00
Dean Herbert
6adb0f068b
Fix multiple issues with json serialisation of online info (causing tournament failures)
2021-10-25 16:52:50 +09:00
Dean Herbert
67ef1c40e6
Allow API beatmap requests using interface type
2021-10-25 15:59:40 +09:00
Dean Herbert
2c308f3008
Rename BeatmapMetrics
to APIFailTimes
2021-10-25 15:34:41 +09:00
Dean Herbert
20baae9094
Move online metrics out of BeatmapInfo
model
2021-10-25 15:32:18 +09:00
Dean Herbert
045dd94a6e
Move online metrics out of BeatmapSetInfo
model
2021-10-25 15:12:39 +09:00
Dean Herbert
19312435d0
Add ability to make test APIBeatmaps
from test scenes
...
Allow tests to create a sample `APIBeatmapSet`
One step towards removing calls to `ToBeatmap` / `ToBeatmapSet`.
2021-10-25 14:18:13 +09:00
Dean Herbert
c701579c69
Refactor BeatmapMetadataContainer
and usages to use interface types
2021-10-22 21:38:50 +09:00
Dean Herbert
28d8820976
Merge pull request #15224 from peppy/no-more-beatmap-metadata-base
...
Remove `BeatmapMetadata` base class from API classes
2021-10-22 21:07:29 +09:00
Dean Herbert
ea473428e8
Fix incorrect length mapping in APIBeatmap
2021-10-22 15:54:40 +09:00
Dean Herbert
de33b2f45a
Return set metadata if available before falling back to empty object
2021-10-22 15:00:31 +09:00
Dean Herbert
fb7cf35481
Remove BeatmapMetadata
base class from APIBeatmap
2021-10-21 21:48:14 +09:00
Dean Herbert
6dd54a417f
Remove BeatmapMetadata
base class from APIBeatmapSet
2021-10-21 21:32:07 +09:00
Dean Herbert
c580ec865f
APIBeatmapSet.Covers
is never null
2021-10-21 19:34:01 +09:00
Dean Herbert
0fe0b5dc09
APIBeatmap
implements IBeatmapInfo
2021-10-21 19:14:31 +09:00
Dean Herbert
40a176e86e
APIBeatmapSet
implements IBeatmapSetInfo
2021-10-21 19:14:19 +09:00
Dan Balasescu
8ae05ee8f7
Merge branch 'master' into online-info-as-interface
2021-10-21 17:14:57 +09:00
Dean Herbert
0706ad70fb
Move BeatmapSetOnlineInfo
to an interface type
2021-10-21 16:58:42 +09:00
Dean Herbert
a5c155bc87
Remove APIPlaylistBeatmap
subclass
2021-10-21 16:43:46 +09:00
Dean Herbert
ad112cbbc5
Fix intendation in a way it doesn't regress with older inspectcode
2021-10-18 14:28:29 +09:00
Dean Herbert
6d6eed61aa
Fix new indentation inspections
2021-10-18 14:00:35 +09:00
Dan Balasescu
9491e5a547
Merge pull request #14954 from peppy/rename-result-response
...
Rename `APIRequest.Result` to `Response`
2021-10-06 10:52:33 +09:00
Dean Herbert
c23acb8f05
Merge pull request #14967 from bdach/fix-accidental-json-property-rename
...
Fix "most played beatmap" request breakage after property rename
2021-10-06 05:00:12 +09:00
Bartłomiej Dach
baa8baaa1e
Fix "most played beatmap" request breakage after property rename
2021-10-05 21:17:19 +02:00
Bartłomiej Dach
12da27cde7
Add test coverage for loading process on channel join
2021-10-05 20:52:40 +02:00
Dean Herbert
b41fa41c85
Rename APIRequest.Result
to Response
2021-10-05 14:28:56 +09:00
Dean Herbert
853cf6feaa
Rename last remaining BeatmapInfo Beatmap
usage
2021-10-04 17:35:53 +09:00
Dan Balasescu
5937a93e2d
Merge pull request #14949 from peppy/login-error-display
...
Show login failure messages on login form
2021-10-04 17:23:11 +09:00
Dean Herbert
3a0b7ba8ff
Add fallback to use Message
when Hint
is not available
2021-10-04 16:18:55 +09:00
Dean Herbert
266b4c7124
Expose login errors from IAPIProvider
and show on the login form
2021-10-04 15:40:24 +09:00
Dean Herbert
5aaafce597
Make AuthenticateWithLogin
throw instead of return a bool
success status
2021-10-04 15:40:00 +09:00
Dean Herbert
ec61c3c5ee
Rename all remaining cases
2021-10-03 00:55:29 +09:00
Dan Balasescu
d9b4fae4e5
Merge branch 'master' into chat-command
2021-09-13 13:32:44 +09:00
Davran Dilshat
1b264a2dd0
make user lookup string public
2021-09-11 16:22:29 +01:00
Dan Balasescu
f4b1d8b9d1
Merge pull request #14704 from peppy/modicon-imod-support
...
Update `LeaderboardModSelector` to avoid creating mod instances
2021-09-10 16:43:32 +09:00
Dean Herbert
309460e505
Merge pull request #14675 from ekrctb/featured-artist-markers
...
Add featured artist markers to beatmap listing and overlay
2021-09-10 14:30:33 +09:00
Dean Herbert
28e9329136
Update LeaderboardModSelector
to avoid creating mod instances
2021-09-10 12:43:21 +09:00
Dean Herbert
76e877f160
Disable APIMod/Mod cross equality support
2021-09-10 11:24:56 +09:00
Dean Herbert
cf633973a9
Refactor exposed mod retrieval methods for better safety
2021-09-10 11:09:13 +09:00
Dean Herbert
ce6b022a90
Remove unused IMod
specification from APIMod
2021-09-10 10:59:30 +09:00
Dean Herbert
2edb851008
Add ability to lookup mod from a type specification
2021-09-09 16:50:59 +09:00
Dean Herbert
4d0530ca9d
Add new methods to ruleset for quicker mod lookups
2021-09-09 16:46:14 +09:00
Dean Herbert
e66d76d26e
Avoid settings copy if there are no settings
2021-09-09 15:43:55 +09:00
ekrctb
7543f9dfb0
Add featured artist track ID online info
2021-09-08 12:21:24 +09:00
Davran Dilshat
be9540e535
fix "key" having wrong url parameter name
2021-09-07 17:17:10 +01:00
ekrctb
b6c80f04b0
Add "featured artists" filter to beatmap search
2021-09-07 16:44:45 +09:00
Dean Herbert
1c4a3c584a
Use correct lookup type to ensure username based lookups always prefer username
2021-09-06 15:04:27 +09:00
Davran Dilshat
e78dc1bb4c
more code quality :/
2021-09-05 15:27:28 +01:00
Davran Dilshat
e409f2dc6d
add xmldoc
2021-09-05 10:42:38 +01:00
rednir
8104b15874
remove braces
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2021-08-30 13:23:33 +01:00
Davran Dilshat
90c313e2ad
add methods to get a user from their username
2021-08-29 19:19:55 +01:00
Dean Herbert
8cd972a9fe
Merge branch 'master' into pinned-comment
2021-08-24 14:37:31 +09:00
Dean Herbert
da8eba9996
Return early to avoid updating state and failure count in fail cases
2021-08-20 12:11:41 +09:00
Dean Herbert
a6b7ca1a4c
Ensure all request failures are correctly handled during login
2021-08-19 19:55:14 +09:00
Opelkuh
7d7c5c06f0
Fix code formatting
2021-08-15 16:02:25 +02:00
Opelkuh
2f9f1ba862
Add test for ChannelManager.MarkChannelAsRead
2021-08-15 15:44:23 +02:00
Gagah Pangeran Rosfatiputra
480d5ffa5d
add pinned comment to users setter in comment bundle
2021-08-13 19:40:37 +07:00
Gagah Pangeran Rosfatiputra
39b13efdd5
add pinned comments property in comment bundle
2021-08-13 13:13:28 +07:00
Gagah Pangeran Rosfatiputra
0901333ef3
add pinned property in comment
2021-08-13 12:57:29 +07:00
Dean Herbert
556962a3d8
Add missing xmldoc comment
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-08-03 14:50:56 +09:00
Dean Herbert
617ff40de7
Add the ability to not use MessagePack when creating a HubConnector
2021-08-02 18:50:22 +09:00
Dean Herbert
185ea776f5
Fix incorrect authorisation loss exception handling with recent changes
2021-07-30 18:11:40 +09:00
Dean Herbert
3a5324c947
Fix aborting an APIRequest
potentially resulting in incorrect success
2021-07-29 13:01:52 +09:00
Dean Herbert
1ed4fdd5f5
Avoid deserialisation JSON request content when error is not present (or not relevant)
2021-07-28 20:13:40 +09:00
Dean Herbert
bb3747ffc9
Fix beatmap search requests double-escaping
...
Closes #14008 .
2021-07-25 17:06:40 +09:00
Dean Herbert
17168b8137
Fix authentication loss not handled correctly
...
This handles the case where on initial API connection, the server
responds with an `Unauthorized` response. It doesn't perform this same
checking/handling on every API request, which is probably what we want
eventually.
Opting to not address the full issue because I know this is going to be
a long one (see
05c50c0f6c/osu.Game/Online/API/APIAccess.cs (L233)
).
2021-07-23 19:03:19 +09:00
Dean Herbert
57e5f5575a
Fix derived API request types firing success when they shouldn't
...
The usual case of `virtual`/`override` being dangerous when logic is
added to the base implementation. As such, I've removed this completely.
2021-07-22 14:23:27 +09:00
Dan Balasescu
747c475b95
Merge pull request #13932 from peppy/fix-multiple-request-completion-states
...
Fix API request potentially firing failed events after completion
2021-07-21 15:11:03 +09:00
Bartłomiej Dach
1e634d9db0
Adjust user beatmap sections on profile overlay to match web
2021-07-20 21:55:17 +02:00
Dean Herbert
80c2b1449b
Fix API request potentially firing failed events after completion
...
Specifically, `Cancel()` calls were not thread safe. Due to a series of
events, `ListPollingComponent` could call `Cancel` from a non-update
thread, leading to a race condition where both a `Success` and `Fail`
event can be fired.
This is intended to be the simplest fix possible, locking and guarding
specifically on the callbacks. Further work could be done in the future
to improve the flow surrounding `pendingFailure`, potentially reducing
redundant work and cleaning up the code, but that's not happening here.
Closes https://github.com/ppy/osu/issues/13632 .
2021-07-19 20:27:01 +09:00
PercyDan54
e1c646b9b2
Remove redundant arguments
2021-07-05 23:52:39 +08:00
smoogipoo
ca0eaab8e2
Add test
2021-06-29 16:30:46 +09:00
Dean Herbert
26312bf60a
Merge branch 'master' into chat-mention
2021-06-11 20:03:44 +09:00
Dean Herbert
061e3d7f26
Move legacy ScoreInfo
to be completely based on presence of classic mod
2021-06-08 18:00:09 +09:00
Craftplacer
5e44329e0b
Add DummyAPIAccess request handler
...
Make CreateChannelRequest.channel public
2021-06-05 14:43:26 +02:00
Gagah Pangeran Rosfatiputra
d4013bd885
add GetWikiRequest
2021-04-20 16:40:30 +07:00
Gagah Pangeran Rosfatiputra
f3555ad08c
add APIWikiPage response
2021-04-20 16:12:32 +07:00
Dean Herbert
9267d23dc2
Make year nullable rather than defaulting to zero
2021-05-20 15:23:49 +09:00
Andrei Zavatski
16ffedde8a
Add year parameter to GetNewsRequest
2021-05-19 15:17:57 +03:00
Andrei Zavatski
881d82ccb6
Merge remote-tracking branch 'refs/remotes/ppy/master' into news-sidebar-new
2021-05-15 19:08:48 +03:00
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
Andrei Zavatski
4b97224932
Implement NewsSideBar component
2021-05-10 09:53:52 +03:00