Skip to content

Latest commit

 

History

History
2517 lines (1984 loc) · 149 KB

File metadata and controls

2517 lines (1984 loc) · 149 KB

Code Metrics

This file is dynamically maintained by a bot, please do not edit this by hand. It represents various code metrics, such as cyclomatic complexity, maintainability index, and so on.

MyJetWallet.B2C2.Client ❌

The MyJetWallet.B2C2.Client.csproj project file contains:

  • 8 namespaces.
  • 47 named types.
  • 2,279 total lines of source code.
  • Approximately 950 lines of executable code.
  • The highest cyclomatic complexity is 12 ❌.
MyJetWallet.B2C2.Client.Autofac ✔️

The MyJetWallet.B2C2.Client.Autofac namespace contains 1 named types.

  • 1 named types.
  • 45 total lines of source code.
  • Approximately 6 lines of executable code.
  • The highest cyclomatic complexity is 3 ✔️.
AutofacHelper ✔️
  • The AutofacHelper contains 2 members.
  • 42 total lines of source code.
  • Approximately 6 lines of executable code.
  • The highest cyclomatic complexity is 3 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 15 78 3 ✔️ 0 6 19 / 3
Method 35 78 3 ✔️ 0 6 19 / 3

🔗 to AutofacHelper class diagram

🔝 back to MyJetWallet.B2C2.Client.Autofac

MyJetWallet.B2C2.Client ❌

The MyJetWallet.B2C2.Client namespace contains 5 named types.

  • 5 named types.
  • 1,244 total lines of source code.
  • Approximately 496 lines of executable code.
  • The highest cyclomatic complexity is 12 ❌.
B2C2RestClient ❌
  • The B2C2RestClient contains 19 members.
  • 615 total lines of source code.
  • Approximately 248 lines of executable code.
  • The highest cyclomatic complexity is 12 ❌.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 21 100 0 ✔️ 0 1 1 / 0
Field 22 100 0 ✔️ 0 1 1 / 0
Method 24 60 6 ✔️ 0 12 19 / 10
Method 44 59 1 ✔️ 0 8 30 / 13
Method 606 67 2 ✔️ 0 7 22 / 7
Method 629 100 2 ✔️ 0 2 4 / 1
Method 503 58 1 ✔️ 0 8 35 / 14
Method 575 59 5 ✔️ 0 5 30 / 13
Method 321 57 1 ✔️ 0 8 25 / 14
Method 347 46 12 ❌ 0 18 77 / 31
Method 539 58 1 ✔️ 0 8 35 / 14
Method 179 59 1 ✔️ 0 7 30 / 13
Method 285 58 1 ✔️ 0 8 35 / 14
Method 249 55 1 ✔️ 0 9 35 / 16
Method 425 46 10 ☢️ 0 17 77 / 30
Method 75 59 1 ✔️ 0 8 30 / 13
Method 142 56 3 ✔️ 0 11 36 / 15
Method 106 56 3 ✔️ 0 11 35 / 15
Method 210 56 2 ✔️ 0 11 38 / 15

🔗 to B2C2RestClient class diagram

🔝 back to MyJetWallet.B2C2.Client

B2C2WebSocketClient ⚠️
  • The B2C2WebSocketClient contains 37 members.
  • 569 total lines of source code.
  • Approximately 203 lines of executable code.
  • The highest cyclomatic complexity is 8 ⚠️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 25 100 0 ✔️ 0 0 1 / 0
Field 29 100 0 ✔️ 0 2 1 / 0
Field 32 100 0 ✔️ 0 2 1 / 0
Field 24 100 0 ✔️ 0 0 1 / 0
Field 35 100 0 ✔️ 0 1 1 / 0
Field 27 100 0 ✔️ 0 1 1 / 0
Field 30 100 0 ✔️ 0 4 1 / 0
Field 31 100 0 ✔️ 0 1 1 / 0
Field 36 93 0 ✔️ 0 2 1 / 1
Field 26 100 0 ✔️ 0 1 1 / 0
Field 28 93 0 ✔️ 0 1 1 / 1
Field 23 89 0 ✔️ 0 1 1 / 1
Field 38 100 0 ✔️ 0 1 1 / 0
Field 33 100 0 ✔️ 0 1 1 / 0
Method 40 53 8 ⚠️ 0 18 25 / 18
Method 143 66 2 ✔️ 0 6 18 / 8
Method 476 77 4 ✔️ 0 4 9 / 3
Method 488 93 1 ✔️ 0 1 7 / 2
Method 551 71 6 ✔️ 0 3 10 / 6
Method 510 54 6 ✔️ 0 11 40 / 19
Method 494 100 1 ✔️ 0 0 4 / 1
Method 178 55 7 ✔️ 0 10 44 / 17
Method 324 59 6 ✔️ 0 9 41 / 12
Method 270 51 6 ✔️ 0 12 53 / 23
Method 257 73 4 ✔️ 0 5 12 / 4
Method 366 51 5 ✔️ 0 11 50 / 23
Method 223 65 7 ✔️ 0 5 33 / 7
Method 424 76 2 ✔️ 0 7 13 / 4
Method 458 72 1 ✔️ 0 9 17 / 5
Method 499 82 1 ✔️ 0 4 10 / 3
Method 417 82 1 ✔️ 0 2 6 / 3
Method 66 55 3 ✔️ 0 18 41 / 17
Property 37 100 2 ✔️ 0 1 1 / 0
Method 438 92 2 ✔️ 0 2 5 / 1
Method 444 77 2 ✔️ 0 7 13 / 4
Method 162 72 1 ✔️ 0 7 15 / 5
Method 108 56 3 ✔️ 0 14 34 / 16

🔗 to B2C2WebSocketClient class diagram

🔝 back to MyJetWallet.B2C2.Client

IB2C2RestClient ✔️
  • The IB2C2RestClient contains 13 members.
  • 41 total lines of source code.
  • Approximately 34 lines of executable code.
  • The highest cyclomatic complexity is 1 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 11 87 1 ✔️ 0 4 1 / 2
Method 45 87 1 ✔️ 0 3 1 / 2
Method 40 72 1 ✔️ 0 4 7 / 6
Method 42 87 1 ✔️ 0 6 1 / 2
Method 47 87 1 ✔️ 0 3 2 / 2
Method 20 87 1 ✔️ 0 3 1 / 2
Method 32 87 1 ✔️ 0 3 1 / 2
Method 30 72 1 ✔️ 0 4 7 / 6
Method 43 87 1 ✔️ 0 6 1 / 2
Method 13 87 1 ✔️ 0 4 1 / 2
Method 18 87 1 ✔️ 0 4 1 / 2
Method 15 87 1 ✔️ 0 4 2 / 2
Method 22 87 1 ✔️ 0 4 1 / 2

🔗 to IB2C2RestClient class diagram

🔝 back to MyJetWallet.B2C2.Client

IB2C2WebSocketClient ✔️
  • The IB2C2WebSocketClient contains 2 members.
  • 7 total lines of source code.
  • Approximately 4 lines of executable code.
  • The highest cyclomatic complexity is 1 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 11 87 1 ✔️ 0 5 2 / 2
Method 14 87 1 ✔️ 0 2 1 / 2

🔗 to IB2C2WebSocketClient class diagram

🔝 back to MyJetWallet.B2C2.Client

B2C2WebSocketClient.Subscription ✔️
  • The B2C2WebSocketClient.Subscription contains 6 members.
  • 27 total lines of source code.
  • Approximately 7 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 574 75 1 ✔️ 0 5 7 / 4
Method 582 79 1 ✔️ 0 2 6 / 3
Property 570 100 1 ✔️ 0 3 1 / 0
Property 572 100 2 ✔️ 0 1 1 / 0
Property 566 100 1 ✔️ 0 0 1 / 0
Property 568 100 1 ✔️ 0 1 1 / 0

🔗 to B2C2WebSocketClient.Subscription class diagram

🔝 back to MyJetWallet.B2C2.Client

MyJetWallet.B2C2.Client.Converters ✔️

The MyJetWallet.B2C2.Client.Converters namespace contains 2 named types.

  • 2 named types.
  • 50 total lines of source code.
  • Approximately 10 lines of executable code.
  • The highest cyclomatic complexity is 1 ✔️.
B2C2DateTimeConverter ✔️
  • The B2C2DateTimeConverter contains 4 members.
  • 23 total lines of source code.
  • Approximately 5 lines of executable code.
  • The highest cyclomatic complexity is 1 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 32 96 1 ✔️ 0 2 4 / 1
Method 47 83 1 ✔️ 0 2 5 / 2
Method 37 100 1 ✔️ 0 5 4 / 1
Method 42 100 1 ✔️ 0 4 4 / 1

🔗 to B2C2DateTimeConverter class diagram

🔝 back to MyJetWallet.B2C2.Client.Converters

UnixDateTimeFromMillisecondsConverter ✔️
  • The UnixDateTimeFromMillisecondsConverter contains 4 members.
  • 23 total lines of source code.
  • Approximately 5 lines of executable code.
  • The highest cyclomatic complexity is 1 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 8 96 1 ✔️ 0 2 4 / 1
Method 23 83 1 ✔️ 0 2 5 / 2
Method 13 100 1 ✔️ 0 5 4 / 1
Method 18 100 1 ✔️ 0 4 4 / 1

🔗 to UnixDateTimeFromMillisecondsConverter class diagram

🔝 back to MyJetWallet.B2C2.Client.Converters

MyJetWallet.B2C2.Client.DelegateHandlers ✔️

The MyJetWallet.B2C2.Client.DelegateHandlers namespace contains 1 named types.

  • 1 named types.
  • 36 total lines of source code.
  • Approximately 8 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
DelegateHandlerLogger ✔️
  • The DelegateHandlerLogger contains 3 members.
  • 33 total lines of source code.
  • Approximately 8 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 9 100 1 ✔️ 0 0 3 / 0
Method 30 93 2 ✔️ 0 2 8 / 2
Method 13 71 2 ✔️ 0 8 16 / 6

🔗 to DelegateHandlerLogger class diagram

🔝 back to MyJetWallet.B2C2.Client.DelegateHandlers

MyJetWallet.B2C2.Client.Exceptions ✔️

The MyJetWallet.B2C2.Client.Exceptions namespace contains 2 named types.

  • 2 named types.
  • 57 total lines of source code.
  • Approximately 7 lines of executable code.
  • The highest cyclomatic complexity is 4 ✔️.
B2c2RestException ✔️
  • The B2c2RestException contains 6 members.
  • 34 total lines of source code.
  • Approximately 6 lines of executable code.
  • The highest cyclomatic complexity is 4 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 14 85 1 ✔️ 0 2 5 / 2
Method 20 92 1 ✔️ 0 3 4 / 1
Method 25 94 1 ✔️ 0 2 4 / 1
Property 10 100 1 ✔️ 0 1 1 / 0
Property 30 81 4 ✔️ 0 6 10 / 2
Property 12 100 1 ✔️ 0 1 1 / 0

🔗 to B2c2RestException class diagram

🔝 back to MyJetWallet.B2C2.Client.Exceptions

B2c2WebSocketException ✔️
  • The B2c2WebSocketException contains 4 members.
  • 17 total lines of source code.
  • Approximately 1 lines of executable code.
  • The highest cyclomatic complexity is 1 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 10 98 1 ✔️ 0 2 3 / 0
Method 14 100 1 ✔️ 0 1 3 / 0
Method 18 94 1 ✔️ 0 2 4 / 1
Property 8 100 1 ✔️ 0 1 1 / 0

🔗 to B2c2WebSocketException class diagram

🔝 back to MyJetWallet.B2C2.Client.Exceptions

MyJetWallet.B2C2.Client.Models.Rest ✔️

The MyJetWallet.B2C2.Client.Models.Rest namespace contains 22 named types.

  • 22 named types.
  • 604 total lines of source code.
  • Approximately 333 lines of executable code.
  • The highest cyclomatic complexity is 4 ✔️.
AccountInfo ✔️
  • The AccountInfo contains 53 members.
  • 60 total lines of source code.
  • Approximately 106 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 62 100 2 ✔️ 0 2 1 / 2
Property 23 100 2 ✔️ 0 2 1 / 2
Property 57 100 2 ✔️ 0 2 1 / 2
Property 27 100 2 ✔️ 0 2 1 / 2
Property 48 100 2 ✔️ 0 2 1 / 2
Property 17 100 2 ✔️ 0 2 1 / 2
Property 37 100 2 ✔️ 0 2 1 / 2
Property 50 100 2 ✔️ 0 2 1 / 2
Property 13 100 2 ✔️ 0 2 1 / 2
Property 47 100 2 ✔️ 0 2 1 / 2
Property 28 100 2 ✔️ 0 2 1 / 2
Property 29 100 2 ✔️ 0 2 1 / 2
Property 55 100 2 ✔️ 0 2 1 / 2
Property 30 100 2 ✔️ 0 2 1 / 2
Property 54 100 2 ✔️ 0 2 1 / 2
Property 42 100 2 ✔️ 0 2 1 / 2
Property 24 100 2 ✔️ 0 2 1 / 2
Property 19 100 2 ✔️ 0 2 1 / 2
Property 51 100 2 ✔️ 0 2 1 / 2
Property 15 100 2 ✔️ 0 2 1 / 2
Property 56 100 2 ✔️ 0 2 1 / 2
Property 31 100 2 ✔️ 0 2 1 / 2
Property 32 100 2 ✔️ 0 2 1 / 2
Property 52 100 2 ✔️ 0 2 1 / 2
Property 43 100 2 ✔️ 0 2 1 / 2
Property 33 100 2 ✔️ 0 2 1 / 2
Property 38 100 2 ✔️ 0 2 1 / 2
Property 26 100 2 ✔️ 0 2 1 / 2
Property 16 100 2 ✔️ 0 2 1 / 2
Property 49 100 2 ✔️ 0 2 1 / 2
Property 45 100 2 ✔️ 0 2 1 / 2
Property 11 100 2 ✔️ 0 2 2 / 2
Property 34 100 2 ✔️ 0 2 1 / 2
Property 58 100 2 ✔️ 0 2 1 / 2
Property 46 100 2 ✔️ 0 2 1 / 2
Property 61 100 2 ✔️ 0 2 1 / 2
Property 8 100 2 ✔️ 0 2 2 / 2
Property 60 100 2 ✔️ 0 2 1 / 2
Property 35 100 2 ✔️ 0 2 1 / 2
Property 53 100 2 ✔️ 0 2 1 / 2
Property 44 100 2 ✔️ 0 2 1 / 2
Property 39 100 2 ✔️ 0 2 1 / 2
Property 63 100 2 ✔️ 0 2 1 / 2
Property 40 100 2 ✔️ 0 2 1 / 2
Property 25 100 2 ✔️ 0 2 1 / 2
Property 36 100 2 ✔️ 0 2 1 / 2
Property 14 100 2 ✔️ 0 2 1 / 2
Property 20 100 2 ✔️ 0 2 1 / 2
Property 22 100 2 ✔️ 0 2 1 / 2
Property 18 100 2 ✔️ 0 2 1 / 2
Property 41 100 2 ✔️ 0 2 1 / 2
Property 59 100 2 ✔️ 0 2 1 / 2
Property 21 100 2 ✔️ 0 2 1 / 2

🔗 to AccountInfo class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

Error ✔️
  • The Error contains 4 members.
  • 44 total lines of source code.
  • Approximately 9 lines of executable code.
  • The highest cyclomatic complexity is 4 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 9 100 2 ✔️ 0 2 2 / 2
Field 17 76 0 ✔️ 0 3 31 / 1
Property 15 91 4 ✔️ 0 4 2 / 4
Property 12 100 2 ✔️ 0 1 2 / 2

🔗 to Error class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

ErrorCode ✔️
  • The ErrorCode contains 30 members.
  • 33 total lines of source code.
  • Approximately 2 lines of executable code.
  • The highest cyclomatic complexity is 0 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 33 93 0 ✔️ 0 0 1 / 1
Field 27 93 0 ✔️ 0 0 1 / 1
Field 9 93 0 ✔️ 0 0 1 / 1
Field 11 93 0 ✔️ 0 0 1 / 1
Field 12 93 0 ✔️ 0 0 1 / 1
Field 10 93 0 ✔️ 0 0 1 / 1
Field 29 93 0 ✔️ 0 0 1 / 1
Field 6 93 0 ✔️ 0 0 1 / 1
Field 22 93 0 ✔️ 0 0 1 / 1
Field 7 93 0 ✔️ 0 0 1 / 1
Field 18 93 0 ✔️ 0 0 1 / 1
Field 17 93 0 ✔️ 0 0 1 / 1
Field 19 93 0 ✔️ 0 0 1 / 1
Field 5 93 0 ✔️ 0 0 1 / 1
Field 16 93 0 ✔️ 0 0 1 / 1
Field 32 93 0 ✔️ 0 0 1 / 1
Field 28 93 0 ✔️ 0 0 1 / 1
Field 26 93 0 ✔️ 0 0 1 / 1
Field 34 93 0 ✔️ 0 0 1 / 1
Field 14 93 0 ✔️ 0 0 1 / 1
Field 24 93 0 ✔️ 0 0 1 / 1
Field 15 93 0 ✔️ 0 0 1 / 1
Field 13 93 0 ✔️ 0 0 1 / 1
Field 23 93 0 ✔️ 0 0 1 / 1
Field 25 93 0 ✔️ 0 0 1 / 1
Field 31 93 0 ✔️ 0 0 1 / 1
Field 8 93 0 ✔️ 0 0 1 / 1
Field 30 93 0 ✔️ 0 0 1 / 1
Field 20 93 0 ✔️ 0 0 1 / 1
Field 21 93 0 ✔️ 0 0 1 / 1

🔗 to ErrorCode class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

ErrorResponse ✔️
  • The ErrorResponse contains 4 members.
  • 20 total lines of source code.
  • Approximately 8 lines of executable code.
  • The highest cyclomatic complexity is 4 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 17 82 0 ✔️ 0 3 8 / 1
Property 15 91 4 ✔️ 0 4 2 / 4
Property 12 100 2 ✔️ 0 4 2 / 3
Property 9 100 2 ✔️ 0 1 1 / 0

🔗 to ErrorResponse class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

Instrument ✔️
  • The Instrument contains 8 members.
  • 28 total lines of source code.
  • Approximately 15 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 14 100 2 ✔️ 0 1 2 / 2
Property 20 100 2 ✔️ 0 2 2 / 2
Property 23 100 2 ✔️ 0 2 2 / 2
Property 8 100 2 ✔️ 0 1 2 / 2
Property 26 100 2 ✔️ 0 1 2 / 2
Property 17 100 2 ✔️ 0 2 2 / 2
Method 28 100 1 ✔️ 0 0 4 / 1
Property 11 100 2 ✔️ 0 1 2 / 2

🔗 to Instrument class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

LedgerLog ✔️
  • The LedgerLog contains 6 members.
  • 20 total lines of source code.
  • Approximately 12 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 18 100 2 ✔️ 0 2 2 / 2
Property 24 100 2 ✔️ 0 2 2 / 2
Property 15 100 2 ✔️ 0 1 2 / 2
Property 12 100 2 ✔️ 0 1 2 / 2
Property 9 100 2 ✔️ 0 1 2 / 2
Property 21 100 2 ✔️ 0 1 2 / 2

🔗 to LedgerLog class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

LedgersRequest ✔️
  • The LedgersRequest contains 5 members.
  • 8 total lines of source code.
  • Approximately 0 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 11 100 2 ✔️ 0 2 1 / 0
Property 10 100 2 ✔️ 0 2 1 / 0
Property 12 100 2 ✔️ 0 0 1 / 0
Property 14 100 2 ✔️ 0 2 1 / 0
Property 13 100 2 ✔️ 0 2 1 / 0

🔗 to LedgersRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

LedgerType ✔️
  • The LedgerType contains 4 members.
  • 12 total lines of source code.
  • Approximately 6 lines of executable code.
  • The highest cyclomatic complexity is 0 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 23 93 0 ✔️ 0 2 1 / 2
Field 21 93 0 ✔️ 0 2 1 / 2
Field 25 93 0 ✔️ 0 2 1 / 2
Field 27 93 0 ✔️ 0 2 2 / 2

🔗 to LedgerType class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

MarginRequirements ✔️
  • The MarginRequirements contains 4 members.
  • 14 total lines of source code.
  • Approximately 8 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 11 100 2 ✔️ 0 1 2 / 2
Property 17 100 2 ✔️ 0 2 2 / 2
Property 8 100 2 ✔️ 0 2 2 / 2
Property 14 100 2 ✔️ 0 2 2 / 2

🔗 to MarginRequirements class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

OpenPosition ✔️
  • The OpenPosition contains 4 members.
  • 14 total lines of source code.
  • Approximately 10 lines of executable code.
  • The highest cyclomatic complexity is 1 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 18 100 1 ✔️ 0 2 2 / 2
Property 15 100 1 ✔️ 0 2 2 / 2
Property 9 100 1 ✔️ 0 1 2 / 2
Property 12 100 1 ✔️ 0 4 2 / 4

🔗 to OpenPosition class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

OrderRequest ✔️
  • The OrderRequest contains 10 members.
  • 42 total lines of source code.
  • Approximately 26 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 43 100 2 ✔️ 0 1 3 / 2
Property 11 100 2 ✔️ 0 1 3 / 2
Property 47 100 2 ✔️ 0 2 3 / 2
Property 35 100 2 ✔️ 0 3 3 / 2
Property 15 100 2 ✔️ 0 1 3 / 2
Property 31 100 2 ✔️ 0 4 3 / 4
Property 23 100 2 ✔️ 0 4 3 / 2
Property 27 100 2 ✔️ 0 2 3 / 2
Property 19 100 2 ✔️ 0 4 3 / 4
Property 39 100 2 ✔️ 0 4 3 / 4

🔗 to OrderRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

OrderResponse ✔️
  • The OrderResponse contains 9 members.
  • 35 total lines of source code.
  • Approximately 22 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 15 100 2 ✔️ 0 1 3 / 2
Property 41 100 2 ✔️ 0 4 2 / 4
Property 29 100 2 ✔️ 0 2 4 / 2
Property 18 100 2 ✔️ 0 1 2 / 2
Property 11 100 2 ✔️ 0 1 2 / 2
Property 24 100 2 ✔️ 0 3 2 / 2
Property 34 100 2 ✔️ 0 2 4 / 2
Property 21 100 2 ✔️ 0 4 2 / 4
Property 38 100 2 ✔️ 0 3 3 / 2

🔗 to OrderResponse class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

OrderType ✔️
  • The OrderType contains 3 members.
  • 9 total lines of source code.
  • Approximately 2 lines of executable code.
  • The highest cyclomatic complexity is 0 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 8 93 0 ✔️ 0 0 2 / 1
Field 10 93 0 ✔️ 0 0 1 / 1
Field 5 93 0 ✔️ 0 0 1 / 1

🔗 to OrderType class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

PaginationRequest ✔️
  • The PaginationRequest contains 2 members.
  • 5 total lines of source code.
  • Approximately 1 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 5 100 2 ✔️ 0 0 1 / 0
Property 6 100 2 ✔️ 0 0 1 / 1

🔗 to PaginationRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

PaginationResponse<T> ✔️
  • The PaginationResponse<T> contains 3 members.
  • 6 total lines of source code.
  • Approximately 0 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 5 100 2 ✔️ 0 0 1 / 0
Property 7 100 2 ✔️ 0 0 1 / 0
Property 6 100 2 ✔️ 0 0 1 / 0

🔗 to PaginationResponse&lt;T&gt; class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

RequestForQuoteRequest ✔️
  • The RequestForQuoteRequest contains 6 members.
  • 27 total lines of source code.
  • Approximately 14 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 23 100 1 ✔️ 0 0 3 / 0
Method 27 79 1 ✔️ 0 2 6 / 3
Property 11 100 2 ✔️ 0 2 3 / 3
Property 14 100 2 ✔️ 0 1 2 / 2
Property 21 100 2 ✔️ 0 2 3 / 2
Property 17 100 2 ✔️ 0 4 2 / 4

🔗 to RequestForQuoteRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

RequestForQuoteResponse ✔️
  • The RequestForQuoteResponse contains 9 members.
  • 44 total lines of source code.
  • Approximately 25 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 36 100 1 ✔️ 0 0 3 / 0
Method 40 67 1 ✔️ 0 3 10 / 7
Property 14 100 2 ✔️ 0 1 3 / 2
Property 10 100 2 ✔️ 0 1 2 / 2
Property 17 100 2 ✔️ 0 1 2 / 2
Property 23 100 2 ✔️ 0 2 2 / 2
Property 27 100 2 ✔️ 0 2 3 / 2
Property 20 100 2 ✔️ 0 4 2 / 4
Property 34 100 2 ✔️ 0 4 6 / 4

🔗 to RequestForQuoteResponse class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

Side ✔️
  • The Side contains 3 members.
  • 10 total lines of source code.
  • Approximately 6 lines of executable code.
  • The highest cyclomatic complexity is 0 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 10 82 0 ✔️ 0 2 2 / 3
Field 7 93 0 ✔️ 0 0 1 / 1
Field 13 82 0 ✔️ 0 2 2 / 3

🔗 to Side class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

Trade ✔️
  • The Trade contains 10 members.
  • 42 total lines of source code.
  • Approximately 26 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 33 100 1 ✔️ 0 0 3 / 0
Method 37 65 1 ✔️ 0 3 11 / 8
Property 31 100 2 ✔️ 0 2 2 / 2
Property 16 100 2 ✔️ 0 1 2 / 2
Property 28 100 2 ✔️ 0 1 2 / 2
Property 22 100 2 ✔️ 0 2 2 / 2
Property 25 100 2 ✔️ 0 2 2 / 2
Property 13 100 2 ✔️ 0 1 2 / 2
Property 19 100 2 ✔️ 0 4 2 / 4
Property 10 100 2 ✔️ 0 1 2 / 2

🔗 to Trade class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

TradeLog ✔️
  • The TradeLog contains 9 members.
  • 29 total lines of source code.
  • Approximately 18 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 21 100 2 ✔️ 0 1 2 / 2
Property 30 100 2 ✔️ 0 2 2 / 2
Property 18 100 2 ✔️ 0 1 2 / 2
Property 33 100 2 ✔️ 0 1 2 / 2
Property 24 100 2 ✔️ 0 2 2 / 2
Property 12 100 2 ✔️ 0 1 2 / 2
Property 9 100 2 ✔️ 0 1 2 / 2
Property 27 100 2 ✔️ 0 1 2 / 2
Property 15 100 2 ✔️ 0 2 2 / 2

🔗 to TradeLog class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

TradeRequest ✔️
  • The TradeRequest contains 7 members.
  • 31 total lines of source code.
  • Approximately 17 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 24 100 1 ✔️ 0 0 3 / 0
Method 28 71 1 ✔️ 0 3 8 / 5
Property 9 100 2 ✔️ 0 1 2 / 2
Property 12 100 2 ✔️ 0 1 2 / 2
Property 18 100 2 ✔️ 0 2 2 / 2
Property 22 100 2 ✔️ 0 2 3 / 2
Property 15 100 2 ✔️ 0 4 2 / 4

🔗 to TradeRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

TradesHistoryRequest ✔️
  • The TradesHistoryRequest contains 4 members.
  • 7 total lines of source code.
  • Approximately 0 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 8 100 2 ✔️ 0 2 1 / 0
Property 7 100 2 ✔️ 0 2 1 / 0
Property 9 100 2 ✔️ 0 0 1 / 0
Property 10 100 2 ✔️ 0 2 1 / 0

🔗 to TradesHistoryRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.Rest

MyJetWallet.B2C2.Client.Settings ✔️

The MyJetWallet.B2C2.Client.Settings namespace contains 2 named types.

  • 2 named types.
  • 21 total lines of source code.
  • Approximately 3 lines of executable code.
  • The highest cyclomatic complexity is 3 ✔️.
B2C2ClientSettings ✔️
  • The B2C2ClientSettings contains 3 members.
  • 11 total lines of source code.
  • Approximately 2 lines of executable code.
  • The highest cyclomatic complexity is 3 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 10 82 3 ✔️ 0 3 5 / 2
Property 8 100 1 ✔️ 0 0 1 / 0
Property 7 100 1 ✔️ 0 0 1 / 0

🔗 to B2C2ClientSettings class diagram

🔝 back to MyJetWallet.B2C2.Client.Settings

ClientNames ✔️
  • The ClientNames contains 1 members.
  • 4 total lines of source code.
  • Approximately 1 lines of executable code.
  • The highest cyclomatic complexity is 0 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 5 93 0 ✔️ 0 0 1 / 1

🔗 to ClientNames class diagram

🔝 back to MyJetWallet.B2C2.Client.Settings

MyJetWallet.B2C2.Client.Models.WebSocket ✔️

The MyJetWallet.B2C2.Client.Models.WebSocket namespace contains 12 named types.

  • 12 named types.
  • 222 total lines of source code.
  • Approximately 87 lines of executable code.
  • The highest cyclomatic complexity is 4 ✔️.
ConnectResponse ✔️
  • The ConnectResponse contains 3 members.
  • 11 total lines of source code.
  • Approximately 6 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 9 100 2 ✔️ 0 1 2 / 2
Property 12 100 2 ✔️ 0 2 2 / 2
Property 15 100 2 ✔️ 0 1 2 / 2

🔗 to ConnectResponse class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

ErrorCode ✔️
  • The ErrorCode contains 20 members.
  • 23 total lines of source code.
  • Approximately 2 lines of executable code.
  • The highest cyclomatic complexity is 0 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Field 12 93 0 ✔️ 0 0 1 / 1
Field 13 93 0 ✔️ 0 0 1 / 1
Field 6 93 0 ✔️ 0 0 1 / 1
Field 21 93 0 ✔️ 0 0 1 / 1
Field 7 93 0 ✔️ 0 0 1 / 1
Field 20 93 0 ✔️ 0 0 1 / 1
Field 8 93 0 ✔️ 0 0 1 / 1
Field 24 93 0 ✔️ 0 0 1 / 1
Field 9 93 0 ✔️ 0 0 1 / 1
Field 15 93 0 ✔️ 0 0 1 / 1
Field 16 93 0 ✔️ 0 0 1 / 1
Field 5 93 0 ✔️ 0 0 1 / 1
Field 17 93 0 ✔️ 0 0 1 / 1
Field 14 93 0 ✔️ 0 0 1 / 1
Field 22 93 0 ✔️ 0 0 1 / 1
Field 10 93 0 ✔️ 0 0 1 / 1
Field 23 93 0 ✔️ 0 0 1 / 1
Field 11 93 0 ✔️ 0 0 1 / 1
Field 18 93 0 ✔️ 0 0 1 / 1
Field 19 93 0 ✔️ 0 0 1 / 1

🔗 to ErrorCode class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

ErrorResponse ✔️
  • The ErrorResponse contains 8 members.
  • 46 total lines of source code.
  • Approximately 17 lines of executable code.
  • The highest cyclomatic complexity is 4 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 18 100 2 ✔️ 0 2 2 / 2
Field 29 77 0 ✔️ 0 3 21 / 1
Property 27 91 4 ✔️ 0 4 2 / 4
Property 24 100 2 ✔️ 0 2 2 / 2
Property 9 100 2 ✔️ 0 1 2 / 2
Property 21 100 2 ✔️ 0 1 2 / 2
Property 12 100 2 ✔️ 0 1 2 / 2
Property 15 100 2 ✔️ 0 1 2 / 2

🔗 to ErrorResponse class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

Errors ✔️
  • The Errors contains 2 members.
  • 8 total lines of source code.
  • Approximately 4 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 8 100 2 ✔️ 0 1 2 / 2
Property 11 100 2 ✔️ 0 1 2 / 2

🔗 to Errors class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

IRequest ❓
  • The IRequest contains 0 members.
  • 3 total lines of source code.
  • Approximately 0 lines of executable code.
  • The highest cyclomatic complexity is 0 ❓.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code

🔗 to IRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

Levels ✔️
  • The Levels contains 2 members.
  • 8 total lines of source code.
  • Approximately 6 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 9 100 2 ✔️ 0 4 2 / 3
Property 12 100 2 ✔️ 0 4 2 / 3

🔗 to Levels class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

PriceMessage ✔️
  • The PriceMessage contains 5 members.
  • 17 total lines of source code.
  • Approximately 12 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 16 100 2 ✔️ 0 1 2 / 2
Property 13 100 2 ✔️ 0 1 2 / 2
Property 10 100 2 ✔️ 0 2 2 / 2
Property 19 100 2 ✔️ 0 1 2 / 2
Property 22 100 2 ✔️ 0 4 2 / 4

🔗 to PriceMessage class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

QuantityPrice ✔️
  • The QuantityPrice contains 3 members.
  • 14 total lines of source code.
  • Approximately 6 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 13 84 1 ✔️ 0 1 5 / 2
Property 11 100 2 ✔️ 0 2 2 / 2
Property 8 100 2 ✔️ 0 2 2 / 2

🔗 to QuantityPrice class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

SubscribeMessage ✔️
  • The SubscribeMessage contains 5 members.
  • 17 total lines of source code.
  • Approximately 10 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 8 100 2 ✔️ 0 1 2 / 2
Property 11 100 2 ✔️ 0 1 2 / 2
Property 14 100 2 ✔️ 0 2 2 / 2
Property 20 100 2 ✔️ 0 1 2 / 2
Property 17 100 2 ✔️ 0 1 2 / 2

🔗 to SubscribeMessage class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

SubscribeRequest ✔️
  • The SubscribeRequest contains 4 members.
  • 14 total lines of source code.
  • Approximately 9 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 8 100 2 ✔️ 0 1 2 / 3
Property 11 100 2 ✔️ 0 1 2 / 2
Property 14 100 2 ✔️ 0 2 2 / 2
Property 17 100 2 ✔️ 0 1 2 / 2

🔗 to SubscribeRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

UnsubscribeMessage ✔️
  • The UnsubscribeMessage contains 4 members.
  • 14 total lines of source code.
  • Approximately 8 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 8 100 2 ✔️ 0 1 2 / 2
Property 11 100 2 ✔️ 0 1 2 / 2
Property 17 100 2 ✔️ 0 1 2 / 2
Property 14 100 2 ✔️ 0 1 2 / 2

🔗 to UnsubscribeMessage class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

UnsubscribeRequest ✔️
  • The UnsubscribeRequest contains 3 members.
  • 11 total lines of source code.
  • Approximately 7 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Property 8 100 2 ✔️ 0 1 2 / 3
Property 11 100 2 ✔️ 0 1 2 / 2
Property 14 100 2 ✔️ 0 1 2 / 2

🔗 to UnsubscribeRequest class diagram

🔝 back to MyJetWallet.B2C2.Client.Models.WebSocket

🔝 back to MyJetWallet.B2C2.Client

TestApp ✔️

The TestApp.csproj project file contains:

  • 1 namespaces.
  • 1 named types.
  • 103 total lines of source code.
  • Approximately 31 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
TestApp ✔️

The TestApp namespace contains 1 named types.

  • 1 named types.
  • 103 total lines of source code.
  • Approximately 31 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Program ✔️
  • The Program contains 2 members.
  • 100 total lines of source code.
  • Approximately 31 lines of executable code.
  • The highest cyclomatic complexity is 2 ✔️.
Member kind Line number Maintainability index Cyclomatic complexity Depth of inheritance Class coupling Lines of source / executable code
Method 17 49 2 ✔️ 0 9 92 / 30
Method 110 100 1 ✔️ 0 1 4 / 1

🔗 to Program class diagram

🔝 back to TestApp

🔝 back to TestApp

Metric definitions

  • Maintainability index: Measures ease of code maintenance. Higher values are better.
  • Cyclomatic complexity: Measures the number of branches. Lower values are better.
  • Depth of inheritance: Measures length of object inheritance hierarchy. Lower values are better.
  • Class coupling: Measures the number of classes that are referenced. Lower values are better.
  • Lines of source code: Exact number of lines of source code. Lower values are better.
  • Lines of executable code: Approximates the lines of executable code. Lower values are better.

Mermaid class diagrams

AutofacHelper class diagram
classDiagram
class AutofacHelper{
    +RegisterB2C2RestClient(ContainerBuilder builder, B2C2ClientSettings settings)$ void
    +RegisterB2C2WebSocketClient(ContainerBuilder builder, B2C2ClientSettings settings)$ void
}

Loading
B2C2RestClient class diagram
classDiagram
IB2C2RestClient <|-- B2C2RestClient : implements
class B2C2RestClient{
    -HttpClient _httpClient
    -ILogger<B2C2RestClient> _log
    +.ctor(B2C2ClientSettings settings, IHttpClientFactory clientFactory, ILogger<B2C2RestClient> logger) B2C2RestClient
    +BalanceAsync(CancellationToken ct = null) Task<IReadOnlyDictionary<string, decimal>>
    +InstrumentsAsync(CancellationToken ct = null) Task<IReadOnlyCollection<Instrument>>
    +RequestForQuoteAsync(RequestForQuoteRequest requestForQuoteRequest, CancellationToken ct = null) Task<RequestForQuoteResponse>
    +OrderAsync(OrderRequest orderRequest, CancellationToken ct = null) Task<OrderResponse>
    +GetOrderAsync(string orderId, CancellationToken ct = null) Task<OrderResponse>
    +TradeAsync(TradeRequest tradeRequest, CancellationToken ct = null) Task<Trade>
    +GetTradeHistoryAsync(int offset = 0, int limit = 50, CancellationToken ct = null) Task<List<TradeLog>>
    +GetTradeAsync(string tradeId, CancellationToken ct = null) Task<TradeLog>
    +GetLedgerHistoryAsync(int offset = 0, int limit = 50, CancellationToken ct = null) Task<List<LedgerLog>>
    +GetLedgerHistoryAsync(LedgersRequest request, CancellationToken ct = null) Task<PaginationResponse<List<LedgerLog>>>
    +GetTradeHistoryAsync(TradesHistoryRequest request, CancellationToken ct = null) Task<PaginationResponse<List<TradeLog>>>
    +GetAccountInfoAsync(CancellationToken ct = null) Task<AccountInfo>
    +GetMarginRequirementsAsync(string currency, CancellationToken ct = null) Task<MarginRequirements>
    +GetCursors(IEnumerable<string> values) (string, string)
    +CheckForErrorInResponse(string response, HttpStatusCode status, Guid guid) void
    +Dispose() void
}

Loading
B2C2WebSocketClient class diagram
classDiagram
IB2C2WebSocketClient <|-- B2C2WebSocketClient : implements
class B2C2WebSocketClient{
    -TimeSpan _timeOut
    -string _baseUri
    -string _authorizationToken
    -ILogger<B2C2WebSocketClient> _log
    -ClientWebSocket _clientWebSocket
    -SemaphoreSlim _sync
    -ConcurrentDictionary<string, Subscription> _awaitingSubscriptions
    -ConcurrentDictionary<string, Func<PriceMessage, Task>> _instrumentHandlers
    -ConcurrentDictionary<string, decimal[]> _instrumentLevels
    -ConcurrentDictionary<string, Subscription> _awaitingUnsubscriptions
    -HashSet<string> _tradableInstruments
    -CancellationTokenSource _cancellationTokenSource
    -DateTime _lastPriceUpdate
    -MyTaskTimer _timer
    +Task SubscriptionThread
    +.ctor(B2C2ClientSettings settings, ILogger<B2C2WebSocketClient> logger, TimeSpan? timeOut = null) B2C2WebSocketClient
    +SubscribeAsync(string instrument, decimal[] levels, Func<PriceMessage, Task> handler, CancellationToken ct = null) Task
    +UnsubscribeAsync(string instrument, CancellationToken ct = null) Task
    +Connect() Task
    +TryConnect(CancellationToken ct) Task<bool>
    +HandleMessagesCycleAsync() Task
    +HandleWebSocketMessageAsync(string jsonMessage) Task
    +HandleTradableInstrumentMessage(JToken jToken) void
    +HandleSubscribeMessage(JToken jToken) Task
    +HandlePriceMessage(JToken jToken) Task
    +HandleUnsubscribeMessage(JToken jToken) Task
    +StringToArraySegment(string message)$ ArraySegment<byte>
    +IsSubscriptionInProgress(string instrument) bool
    +ThrowIfSubscriptionIsAlreadyExist(string instrument) void
    +ThrowIfUnsubscriptionAlreadyExists(string instrument) Task
    +SendMessageToWebSocket(IRequest request, CancellationToken ct = null) Task
    +ConnectIfNeeded() Task
    +Dispose() void
    +WebSocketClient() void
    +Start() void
    +DoTime() Task
    +Dispose(bool disposing) void
}

Loading
IB2C2RestClient class diagram
classDiagram
IDisposable <|-- IB2C2RestClient : implements
class IB2C2RestClient{
    +BalanceAsync(CancellationToken ct = null)* Task<IReadOnlyDictionary<string, decimal>>
    +InstrumentsAsync(CancellationToken ct = null)* Task<IReadOnlyCollection<Instrument>>
    +RequestForQuoteAsync(RequestForQuoteRequest requestForQuoteRequest, CancellationToken ct = null)* Task<RequestForQuoteResponse>
    +OrderAsync(OrderRequest orderRequest, CancellationToken ct = null)* Task<OrderResponse>
    +GetOrderAsync(string orderId, CancellationToken ct = null)* Task<OrderResponse>
    +TradeAsync(TradeRequest tradeRequest, CancellationToken ct = null)* Task<Trade>
    +GetTradeHistoryAsync(int offset = 0, int limit = 50, CancellationToken ct = null)* Task<List<TradeLog>>
    +GetTradeAsync(string tradeId, CancellationToken ct = null)* Task<TradeLog>
    +GetLedgerHistoryAsync(int offset = 0, int limit = 50, CancellationToken ct = null)* Task<List<LedgerLog>>
    +GetLedgerHistoryAsync(LedgersRequest request, CancellationToken ct = null)* Task<PaginationResponse<List<LedgerLog>>>
    +GetTradeHistoryAsync(TradesHistoryRequest request, CancellationToken ct = null)* Task<PaginationResponse<List<TradeLog>>>
    +GetAccountInfoAsync(CancellationToken ct = null)* Task<AccountInfo>
    +GetMarginRequirementsAsync(string currency, CancellationToken ct = null)* Task<MarginRequirements>
}

Loading
IB2C2WebSocketClient class diagram
classDiagram
IStartable <|-- IB2C2WebSocketClient : implements
IDisposable <|-- IB2C2WebSocketClient : implements
class IB2C2WebSocketClient{
    +SubscribeAsync(string instrument, decimal[] levels, Func<PriceMessage, Task> handler, CancellationToken ct = null)* Task
    +UnsubscribeAsync(string instrument, CancellationToken ct = null)* Task
}

Loading
B2C2WebSocketClient.Subscription class diagram
classDiagram
class Subscription{
    +string Tag
    +TaskCompletionSource<int> TaskCompletionSource
    +Func<PriceMessage, Task> Function
    +decimal[] Levels
    +.ctor(string tag, TaskCompletionSource<int> taskCompletionSource, Func<PriceMessage, Task> function, decimal[] levels) Subscription
    +.ctor(string tag, TaskCompletionSource<int> taskCompletionSource, decimal[] levels) Subscription
}

Loading
B2C2DateTimeConverter class diagram
classDiagram
class B2C2DateTimeConverter{
    +CanConvert(Type objectType) bool
    +ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) object
    +WriteJson(JsonWriter writer, object value, JsonSerializer serializer) void
    +Convert(string dateTimeStr)$ DateTime
}

Loading
UnixDateTimeFromMillisecondsConverter class diagram
classDiagram
class UnixDateTimeFromMillisecondsConverter{
    +CanConvert(Type objectType) bool
    +ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) object
    +WriteJson(JsonWriter writer, object value, JsonSerializer serializer) void
    +Convert(string dateTimeStr)$ DateTime
}

Loading
DelegateHandlerLogger class diagram
classDiagram
class DelegateHandlerLogger{
    +.ctor() DelegateHandlerLogger
    +SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) Task<HttpResponseMessage>
    +Dispose(bool disposing) void
}

Loading
B2c2RestException class diagram
classDiagram
class B2c2RestException{
    +ErrorResponse ErrorResponse
    +Guid RequestId
    +string Message
    +.ctor(ErrorResponse errorResponse, Guid requestId) B2c2RestException
    +.ctor(string message, Exception e, Guid requestId) B2c2RestException
    +.ctor(string message, Guid requestId) B2c2RestException
}

Loading
B2c2WebSocketException class diagram
classDiagram
class B2c2WebSocketException{
    +ErrorResponse ErrorResponse
    +.ctor(string message, Exception e) B2c2WebSocketException
    +.ctor(string message) B2c2WebSocketException
    +.ctor(string message, ErrorResponse errorResponse) B2c2WebSocketException
}

Loading
AccountInfo class diagram
classDiagram
class AccountInfo{
    +decimal RiskExposure
    +decimal MaxRiskExposure
    +decimal BtcMaxQtyPerTrade
    +decimal UstMaxQtyPerTrade
    +decimal EthMaxQtyPerTrade
    +decimal LtcMaxQtyPerTrade
    +decimal BchMaxQtyPerTrade
    +decimal XrpMaxQtyPerTrade
    +decimal EosMaxQtyPerTrade
    +decimal XauMaxQtyPerTrade
    +decimal ZecMaxQtyPerTrade
    +decimal XlmMaxQtyPerTrade
    +decimal AdaMaxQtyPerTrade
    +decimal DotMaxQtyPerTrade
    +decimal UscMaxQtyPerTrade
    +decimal LnkMaxQtyPerTrade
    +decimal AudMaxQtyPerTrade
    +decimal CadMaxQtyPerTrade
    +decimal ChfMaxQtyPerTrade
    +decimal CnhMaxQtyPerTrade
    +decimal EurMaxQtyPerTrade
    +decimal GbpMaxQtyPerTrade
    +decimal JpyMaxQtyPerTrade
    +decimal MxnMaxQtyPerTrade
    +decimal SgdMaxQtyPerTrade
    +decimal UsdMaxQtyPerTrade
    +decimal BnbMaxQtyPerTrade
    +decimal KsmMaxQtyPerTrade
    +decimal TrxMaxQtyPerTrade
    +decimal UniMaxQtyPerTrade
    +decimal XtzMaxQtyPerTrade
    +decimal DogMaxQtyPerTrade
    +decimal IcpMaxQtyPerTrade
    +decimal SolMaxQtyPerTrade
    +decimal MatMaxQtyPerTrade
    +decimal NzdMaxQtyPerTrade
    +decimal BusMaxQtyPerTrade
    +decimal AvxMaxQtyPerTrade
    +decimal LunMaxQtyPerTrade
    +decimal BsvMaxQtyPerTrade
    +decimal EtcMaxQtyPerTrade
    +decimal GlmMaxQtyPerTrade
    +decimal ShbMaxQtyPerTrade
    +decimal DaiMaxQtyPerTrade
    +decimal CmpMaxQtyPerTrade
    +decimal EtwMaxQtyPerTrade
    +decimal AtmMaxQtyPerTrade
    +decimal NerMaxQtyPerTrade
    +decimal ZarMaxQtyPerTrade
    +decimal SehMaxQtyPerTrade
    +decimal RehMaxQtyPerTrade
    +decimal AavMaxQtyPerTrade
    +decimal TryMaxQtyPerTrade
}

Loading
Error class diagram
classDiagram
class Error{
    -IDictionary<int, string> CodesMessages$
    +ErrorCode Code
    +string Message
    +string Documentation
}

Loading
ErrorCode class diagram
classDiagram
class ErrorCode{
    -None$
    -GenericUnknownError$
    -InstrumentNotAllowed$
    -TheRfqDoesNotBelongToYou$
    -DifferentInstrument$
    -DifferentSide$
    -DifferentPrice$
    -DifferentQuantity$
    -QuoteIsNotValid$
    -PriceNotValid$
    -QuantityTooBig$
    -NotEnoughBalance$
    -MaxRiskExposureReached$
    -MaxCreditExposureReached$
    -NoBtcAddressAssociated$
    -TooManyDecimals$
    -TradingIsDisabled$
    -IllegalParameter$
    -SettlementIsDisabled$
    -QuantityIsTooSmall$
    -TheFieldValidUntilIsMalformed$
    -OrderHasExpired$
    -CurrencyNotAllowed$
    -OnlySupportFok$
    -FieldRequired$
    -ThisContractIsAlreadyClosed$
    -TheGivenQuantityMustBeSmallerOrEqualToTheContractQuantity$
    -NotHaveEnoughMargin$
    -ContractUpdatesAreOnlyForClosingAContract$
    -OtherError$
}

Loading
ErrorResponse class diagram
classDiagram
class ErrorResponse{
    -IDictionary<int, string> CodesMessages$
    +HttpStatusCode Status
    +IReadOnlyList<Error> Errors
    +string Documentation
}

Loading
Instrument class diagram
classDiagram
class Instrument{
    +string Name
    +string Underlier
    +bool IsTradable
    +decimal QuantityPrecision
    +decimal MaxQuantityPerTrade
    +decimal MinQuantityPerTrade
    +int PriceSignificantDigits
    +ToString() string
}

Loading
LedgerLog class diagram
classDiagram
class LedgerLog{
    +string TransactionId
    +string Reference
    +string Currency
    +decimal Amount
    +string Type
    +DateTime Created
}

Loading
LedgersRequest class diagram
classDiagram
class LedgersRequest{
    +DateTime? CreatedBefore
    +DateTime? CreatedAfter
    +string Currency
    +LedgerType? Type
    +DateTime? Since
}

Loading
LedgerType class diagram
classDiagram
class LedgerType{
    -RealizedPnl$
    -Funding$
    -Trade$
    -Transfer$
}

Loading
MarginRequirements class diagram
classDiagram
class MarginRequirements{
    +decimal MarginRequirement
    +string Currency
    +decimal MarginUsage
    +decimal Equity
}

Loading
OpenPosition class diagram
classDiagram
class OpenPosition{
    +string Instrument
    +Side Side
    +decimal AverageEntryPrice
    +decimal AggregatePosition
}

Loading
OrderRequest class diagram
classDiagram
class OrderRequest{
    +string ClientOrderId
    +string Instrument
    +Side Side
    +decimal? Price
    +decimal Quantity
    +OrderType OrderType
    +bool? ForceOpen
    +DateTime ValidUntil
    +int AcceptableSlippage
    +string ExecutingUnit
}

Loading
OrderResponse class diagram
classDiagram
class OrderResponse{
    +string OrderId
    +string ClientOrderId
    +string Instrument
    +Side Side
    +decimal? Price
    +decimal ExecutedPrice
    +decimal Quantity
    +IReadOnlyCollection<Trade> Trades
    +DateTime Created
}

Loading
OrderType class diagram
classDiagram
class OrderType{
    -None$
    -FOK$
    -MKT$
}

Loading
PaginationRequest class diagram
classDiagram
class PaginationRequest{
    +string Cursor
    +int Limit
}

Loading
PaginationResponse<T> class diagram
classDiagram
class PaginationResponse<T>{
    +T Data
    +string Previous
    +string Next
}

Loading
RequestForQuoteRequest class diagram
classDiagram
class RequestForQuoteRequest{
    +string ClientRfqId
    +string Instrument
    +Side Side
    +decimal Quantity
    +.ctor() RequestForQuoteRequest
    +.ctor(string instrument, Side side, decimal quantity) RequestForQuoteRequest
}

Loading
RequestForQuoteResponse class diagram
classDiagram
class RequestForQuoteResponse{
    +string Id
    +string ClientRfqId
    +string Instrument
    +Side Side
    +decimal Price
    +decimal Quantity
    +DateTime ValidUntil
    +.ctor() RequestForQuoteResponse
    +.ctor(string id, string clientRfqId, string instrument, Side side, double price, double quantity, DateTime validUntil) RequestForQuoteResponse
}

Loading
Side class diagram
classDiagram
class Side{
    -None$
    -Buy$
    -Sell$
}

Loading
Trade class diagram
classDiagram
class Trade{
    +string TradeId
    +string RfqId
    +string Instrument
    +Side Side
    +decimal Price
    +decimal Quantity
    +string Order
    +DateTime Created
    +.ctor() Trade
    +.ctor(string tradeId, string rfqId, string instrument, Side side, double price, double quantity, string order, DateTime created) Trade
}

Loading
TradeLog class diagram
classDiagram
class TradeLog{
    +string TradeId
    +string RequestForQuoteId
    +decimal Volume
    +string Direction
    +string AssetPair
    +decimal Price
    +string User
    +DateTime Created
    +string Order
}

Loading
TradeRequest class diagram
classDiagram
class TradeRequest{
    +string Id
    +string Instrument
    +Side Side
    +decimal Price
    +decimal Quantity
    +.ctor() TradeRequest
    +.ctor(RequestForQuoteResponse requestForQuoteResponse) TradeRequest
}

Loading
TradesHistoryRequest class diagram
classDiagram
class TradesHistoryRequest{
    +DateTime? CreatedBefore
    +DateTime? CreatedAfter
    +string Instrument
    +DateTime? Since
}

Loading
B2C2ClientSettings class diagram
classDiagram
class B2C2ClientSettings{
    +string Url
    +string AuthorizationToken
    +.ctor(string url, string authorizationToken) B2C2ClientSettings
}

Loading
ClientNames class diagram
classDiagram
class ClientNames{
    -string B2C2ClientName$
}

Loading
ConnectResponse class diagram
classDiagram
class ConnectResponse{
    +string Event
    +IReadOnlyList<string> Instruments
    +bool Success
}

Loading
ErrorCode class diagram
classDiagram
class ErrorCode{
    -None$
    -AuthenticationFailure$
    -AuthorizationNotInTheHeaders$
    -EndpointDoesNotExist$
    -InstrumentIsNotAllowed$
    -SubscriptionIsInvalid$
    -UnableToJsoniseYourMessage$
    -AlreadyConnected$
    -AlreadySubscribed$
    -NotSubscribedYet$
    -InvalidFormat$
    -InvalidMessage$
    -NotAbleToQuoteAtTheMoment$
    -UnexpectedError$
    -UsernameChanged$
    -ConnectivityIssues$
    -AuthorizationHeaderIsMalformed$
    -SubscriptionForALevelIsNotValidAnymore$
    -TheGivenInstrumentDoesNotEndWithSpotOrCfd$
    -GenericError$
}

Loading
ErrorResponse class diagram
classDiagram
class ErrorResponse{
    -IDictionary<int, string> CodesMessages$
    +string Event
    +bool Success
    +string Tag
    +ErrorCode Code
    +string Message
    +Errors Errors
    +string Documentation
}

Loading
Errors class diagram
classDiagram
class Errors{
    +string[] Instrument
    +string[] Levels
}

Loading
IRequest class diagram
classDiagram
class IRequest{
}

Loading
Levels class diagram
classDiagram
class Levels{
    +IReadOnlyList<QuantityPrice> Buy
    +IReadOnlyList<QuantityPrice> Sell
}

Loading
PriceMessage class diagram
classDiagram
class PriceMessage{
    +Levels Levels
    +string Instrument
    +string Event
    +bool Success
    +DateTime Timestamp
}

Loading
QuantityPrice class diagram
classDiagram
class QuantityPrice{
    +decimal Quantity
    +decimal Price
    +.ctor(double quantity, double price) QuantityPrice
}

Loading
SubscribeMessage class diagram
classDiagram
class SubscribeMessage{
    +string Event
    +string Instrument
    +decimal[] Levels
    +string Tag
    +bool Success
}

Loading
SubscribeRequest class diagram
classDiagram
IRequest <|-- SubscribeRequest : implements
class SubscribeRequest{
    +string Event
    +string Instrument
    +decimal[] Levels
    +string Tag
}

Loading
UnsubscribeMessage class diagram
classDiagram
class UnsubscribeMessage{
    +string Event
    +string Instrument
    +string Tag
    +bool Success
}

Loading
UnsubscribeRequest class diagram
classDiagram
IRequest <|-- UnsubscribeRequest : implements
class UnsubscribeRequest{
    +string Event
    +string Instrument
    +string Tag
}

Loading
Program class diagram
classDiagram
class Program{
    +Main(string[] args)$ Task
    +Print(object obj)$ void
}

Loading

This file is maintained by a bot.