Commit Graph

43 Commits

Author SHA1 Message Date
dkanada
54a3ab15a3
Merge pull request #5005 from jellyfin/bytes
JsonSerializer deserialize from bytes where possible
2021-02-05 11:47:06 +09:00
Bond_009
1752423e52 Open FileStream with FileMode.Create instead of FileMode.OpenOrCreate
> The OpenWrite method opens a file if one already exists for the file path,
    or creates a new file if one does not exist. For an existing file,
    it does not append the new text to the existing text. Instead,
    it overwrites the existing characters with the new characters.
    If you overwrite a longer string
    (such as "This is a test of the OpenWrite method") with a shorter string
    (such as "Second run"), the file will contain a mix of the strings
    ("Second runtest of the OpenWrite method").

Ref: https://docs.microsoft.com/en-us/dotnet/api/system.io.file.openwrite?view=net-5.0#remarks
2021-01-12 15:51:32 +01:00
Bond_009
1ea2b200c0 JsonSerializer deserialize from bytes where possible
This is faster and uses way less memory
```
BenchmarkDotNet=v0.12.1, OS=fedora 32
Intel Core i7-6700HQ CPU 2.60GHz (Skylake), 1 CPU, 8 logical and 4 physical cores
.NET Core SDK=5.0.100
  [Host]     : .NET Core 5.0.0 (CoreCLR 5.0.20.51904, CoreFX 5.0.20.51904), X64 RyuJIT
  DefaultJob : .NET Core 5.0.0 (CoreCLR 5.0.20.51904, CoreFX 5.0.20.51904), X64 RyuJIT

| Method |     Mean |   Error |  StdDev |   Gen 0 | Gen 1 | Gen 2 | Allocated |
|------- |---------:|--------:|--------:|--------:|------:|------:|----------:|
|  Bytes | 158.4 us | 2.56 us | 2.14 us | 16.8457 |     - |     - |  52.08 KB |
| String | 172.8 us | 0.78 us | 0.70 us | 41.5039 |     - |     - | 127.82 KB |
| Custom | 155.5 us | 2.95 us | 2.76 us | 10.0098 |     - |     - |  31.27 KB |
```
2021-01-12 15:28:02 +01:00
David
3dec1fd6b2 Use UTF8 encoding and async correctly 2020-12-29 00:35:59 +01:00
David
21fd124bca Code revie 2020-12-27 11:15:46 +01:00
David
043d045448 Put json serializer options in private field 2020-12-24 11:22:34 +01:00
David
e835dfb27d Use sync string instead of file 2020-12-24 10:31:51 +01:00
David
2a574914ea Use streams instead of strings 2020-12-23 19:24:58 +01:00
David
f38970cbd3 Remove xml docs 2020-12-23 15:03:14 +01:00
David
196388d607 Remove custom Json serializer from Emby.Server.Implementations 2020-12-23 13:14:40 +01:00
Bond_009
d4e568c8bf
Replace Task.WaitAll with Task.Wait 2020-11-14 20:30:08 +01:00
Bond_009
49569ca0a0 Use nameof where possible 2020-10-17 16:19:57 +02:00
Patrick Barron
9fa4fff15d Merge branch 'master' into event-rewrite-1
# Conflicts:
#	Emby.Dlna/Emby.Dlna.csproj
#	Emby.Dlna/Eventing/DlnaEventManager.cs
#	Emby.Dlna/Service/BaseService.cs
#	Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs
#	MediaBrowser.Controller/Subtitles/SubtitleDownloadEventArgs.cs
2020-08-24 20:04:13 -04:00
Bond_009
ab2147751f Make MediaBrowser.MediaEncoding warnings free 2020-08-20 12:16:24 +02:00
Patrick Barron
ca1f15af19 Move GenericEventArgs to Jellyfin.Data.Events 2020-08-13 20:52:55 -04:00
Bond-009
9af6eda0b4
Merge pull request #3343 from telans/comment-stops
Add full stop at end of comments (SA1629)
2020-06-16 11:54:58 +02:00
telans
247f9c61e6
fix SA1513/SA1516 2020-06-16 16:11:30 +12:00
telans
9018f8d8be
Add full stop at end of comments (SA1629) 2020-06-16 10:37:52 +12:00
Vasily
40502a33e0
Merge pull request #3203 from Bond-009/warn18
Enable TreatWarningsAsErrors for Jellyfin.Server.Implementations in Release mode
2020-06-03 12:27:59 +03:00
Bond_009
4748105dce Enable TreatWarningsAsErrors for Jellyfin.Server.Implementations in Release mode 2020-05-29 11:28:19 +02:00
Bond_009
30ce346f34 Enable nullabe reference types for MediaBrowser.Model 2020-04-05 18:10:56 +02:00
Bond-009
b477b3874e Fix some warnings 2019-11-22 16:15:31 +01:00
Bond-009
6032f31aa6 Use CultureInvariant string conversion for Guids 2019-08-09 23:17:54 +02:00
Bond-009
d0f2b3a747
Merge branch 'master' into startuptasks 2019-01-30 16:55:07 +01:00
Erwin de Haan
d7c6d16250 Unwrapped CreateDirectory and DeleteDirectory 2019-01-28 22:09:56 +01:00
Erwin de Haan
3a831994f6 Unwrapped GetDirectoryName and DirectorySeperatorChar 2019-01-28 22:06:34 +01:00
Claus Vium
a05d803d4c Fix crash when trying to deserialize a non-existing scheduled task 2019-01-27 21:09:40 +01:00
Bond_009
ffe79c8982 Check if file exists instead of catching exceptions 2019-01-27 17:00:17 +01:00
Bond_009
08b63a7c11 Remove unused function
RunStartupTasks never executes because "startuptasks.txt" is never
created
2019-01-27 10:55:52 +01:00
Bond_009
fd7f420af2 Remove remnants of system events 2019-01-25 22:41:43 +01:00
Erwin de Haan
65bd052f3e ReSharper conform to 'var' settings 2019-01-13 21:37:13 +01:00
Erwin de Haan
0efc699e3d Visual Studio Reformat: Emby.Server.Implementations Part S-S 2019-01-13 20:22:24 +01:00
Erwin de Haan
e9519de07d Fixed removed start tag of XMLComment. 2019-01-12 22:54:47 +01:00
Erwin de Haan
846456b41e Reformatted the files with notes. 2019-01-12 21:41:08 +01:00
Erwin de Haan
ec1f5dc317 Mayor code cleanup
Add Argument*Exceptions now use proper nameof operators.

Added exception messages to quite a few Argument*Exceptions.

Fixed rethorwing to be proper syntax.

Added a ton of null checkes. (This is only a start, there are about 500 places that need proper null handling)

Added some TODOs to log certain exceptions.

Fix sln again.

Fixed all AssemblyInfo's and added proper copyright (where I could find them)

We live in *current year*.

Fixed the use of braces.

Fixed a ton of properties, and made a fair amount of functions static that should be and can be static.

Made more Methods that should be static static.

You can now use static to find bad functions!

Removed unused variable. And added one more proper XML comment.
2019-01-10 20:38:53 +01:00
Bond_009
a997bb609f Remove unnecessary using statements 2019-01-05 01:49:52 +03:00
Bond_009
391b48614d Remove FireEventIfNotNull
It's a pretty useless "helper" class
2019-01-05 01:49:52 +03:00
Bond_009
ea4c914123 Fix exception logging 2018-12-30 22:44:39 +01:00
Bond_009
0f8b3c6347 Use Microsoft.Extensions.Logging abstraction 2018-12-30 22:44:38 +01:00
Bond_009
6e5d2aadaa Remove custom ToArray extension 2018-12-28 16:48:26 +01:00
stefan
48facb797e Update to 3.5.2 and .net core 2.1 2018-09-12 19:26:21 +02:00
Luke Pulverenti
0d28929e17 update download progress reporting 2017-11-03 14:11:04 -04:00
Luke Pulverenti
bfcd1b520f merge common implementations and server implementations 2017-08-16 02:43:41 -04:00